From 12e3f6f41cbf50f4aba74bd46d10319f50044400 Mon Sep 17 00:00:00 2001 From: sbwml Date: Sun, 17 Apr 2022 03:50:24 +0800 Subject: [PATCH] backup --- README.md | 11 + brook/Makefile | 44 + chinadns-ng/Makefile | 40 + hysteria/Makefile | 53 + luci-app-passwall/Makefile | 176 + .../luasrc/controller/passwall.lua | 491 + .../luasrc/model/cbi/passwall/api/api.lua | 617 + .../luasrc/model/cbi/passwall/api/brook.lua | 134 + .../model/cbi/passwall/api/gen_hysteria.lua | 70 + .../model/cbi/passwall/api/gen_naiveproxy.lua | 28 + .../cbi/passwall/api/gen_shadowsocks.lua | 108 + .../model/cbi/passwall/api/gen_trojan.lua | 86 + .../model/cbi/passwall/api/gen_v2ray.lua | 709 + .../cbi/passwall/api/gen_v2ray_proto.lua | 111 + .../model/cbi/passwall/api/hysteria.lua | 134 + .../model/cbi/passwall/api/trojan_go.lua | 183 + .../luasrc/model/cbi/passwall/api/v2ray.lua | 181 + .../luasrc/model/cbi/passwall/api/xray.lua | 181 + .../luasrc/model/cbi/passwall/client/acl.lua | 123 + .../model/cbi/passwall/client/acl_config.lua | 296 + .../model/cbi/passwall/client/app_update.lua | 44 + .../model/cbi/passwall/client/auto_switch.lua | 66 + .../model/cbi/passwall/client/global.lua | 461 + .../model/cbi/passwall/client/haproxy.lua | 121 + .../luasrc/model/cbi/passwall/client/log.lua | 8 + .../model/cbi/passwall/client/node_config.lua | 863 + .../model/cbi/passwall/client/node_list.lua | 151 + .../cbi/passwall/client/node_subscribe.lua | 142 + .../passwall/client/node_subscribe_config.lua | 110 + .../model/cbi/passwall/client/other.lua | 148 + .../luasrc/model/cbi/passwall/client/rule.lua | 91 + .../model/cbi/passwall/client/rule_list.lua | 265 + .../model/cbi/passwall/client/shunt_rules.lua | 79 + .../model/cbi/passwall/server/api/app.lua | 197 + .../cbi/passwall/server/api/hysteria.lua | 24 + .../cbi/passwall/server/api/shadowsocks.lua | 19 + .../model/cbi/passwall/server/api/trojan.lua | 61 + .../model/cbi/passwall/server/api/v2ray.lua | 246 + .../model/cbi/passwall/server/index.lua | 73 + .../luasrc/model/cbi/passwall/server/user.lua | 728 + .../passwall/app_update/brook_version.htm | 159 + .../passwall/app_update/hysteria_version.htm | 159 + .../passwall/app_update/trojan_go_version.htm | 175 + .../passwall/app_update/v2ray_version.htm | 175 + .../view/passwall/app_update/xray_version.htm | 175 + .../view/passwall/auto_switch/footer.htm | 22 + .../luasrc/view/passwall/global/faq.htm | 43 + .../luasrc/view/passwall/global/footer.htm | 143 + .../luasrc/view/passwall/global/status.htm | 278 + .../luasrc/view/passwall/haproxy/status.htm | 26 + .../luasrc/view/passwall/log/log.htm | 30 + .../view/passwall/node_list/link_add_node.htm | 108 + .../passwall/node_list/link_share_man.htm | 960 + .../view/passwall/node_list/node_list.htm | 475 + .../view/passwall/rule/rule_version.htm | 76 + .../luasrc/view/passwall/server/log.htm | 34 + .../passwall/server/users_list_status.htm | 38 + luci-app-passwall/po/zh-cn/passwall.po | 1377 + luci-app-passwall/po/zh_Hans | 1 + .../root/etc/config/passwall_server | 4 + luci-app-passwall/root/etc/init.d/passwall | 80 + .../root/etc/init.d/passwall_server | 16 + .../root/etc/uci-defaults/luci-passwall | 35 + .../root/usr/share/passwall/0_default_config | 156 + .../root/usr/share/passwall/app.sh | 1529 + .../root/usr/share/passwall/helper_dnsmasq.sh | 98 + .../usr/share/passwall/helper_dnsmasq_add.lua | 430 + .../usr/share/passwall/helper_smartdns.sh | 39 + .../share/passwall/helper_smartdns_add.lua | 394 + .../root/usr/share/passwall/iptables.sh | 1321 + .../root/usr/share/passwall/monitor.sh | 48 + .../root/usr/share/passwall/rule_update.lua | 401 + .../root/usr/share/passwall/rules/block_host | 0 .../root/usr/share/passwall/rules/block_ip | 0 .../root/usr/share/passwall/rules/chnlist | 67226 ++++++++++++++++ .../root/usr/share/passwall/rules/chnroute | 8632 ++ .../root/usr/share/passwall/rules/chnroute6 | 1944 + .../root/usr/share/passwall/rules/direct_host | 27 + .../root/usr/share/passwall/rules/direct_ip | 6 + .../usr/share/passwall/rules/domains_excluded | 24 + .../root/usr/share/passwall/rules/gfwlist | 12219 +++ .../usr/share/passwall/rules/lanlist_ipv4 | 9 + .../usr/share/passwall/rules/lanlist_ipv6 | 13 + .../root/usr/share/passwall/rules/proxy_host | 13 + .../root/usr/share/passwall/rules/proxy_ip | 19 + .../root/usr/share/passwall/subscribe.lua | 1226 + .../root/usr/share/passwall/test.sh | 274 + .../share/rpcd/acl.d/luci-app-passwall.json | 11 + luci-app-ssr-plus/Makefile | 119 + .../luasrc/controller/shadowsocksr.lua | 143 + .../model/cbi/shadowsocksr/advanced.lua | 102 + .../model/cbi/shadowsocksr/client-config.lua | 655 + .../luasrc/model/cbi/shadowsocksr/client.lua | 112 + .../luasrc/model/cbi/shadowsocksr/control.lua | 143 + .../luasrc/model/cbi/shadowsocksr/log.lua | 20 + .../model/cbi/shadowsocksr/server-config.lua | 150 + .../luasrc/model/cbi/shadowsocksr/server.lua | 140 + .../luasrc/model/cbi/shadowsocksr/servers.lua | 151 + .../luasrc/model/cbi/shadowsocksr/status.lua | 195 + .../luasrc/view/shadowsocksr/cache.htm | 29 + .../luasrc/view/shadowsocksr/certupload.htm | 4 + .../luasrc/view/shadowsocksr/check.htm | 29 + .../luasrc/view/shadowsocksr/checkport.htm | 25 + .../luasrc/view/shadowsocksr/ping.htm | 3 + .../luasrc/view/shadowsocksr/refresh.htm | 37 + .../luasrc/view/shadowsocksr/reset.htm | 25 + .../luasrc/view/shadowsocksr/server_list.htm | 145 + .../luasrc/view/shadowsocksr/socket.htm | 6 + .../luasrc/view/shadowsocksr/ssrurl.htm | 366 + .../luasrc/view/shadowsocksr/status.htm | 22 + .../luasrc/view/shadowsocksr/subscribe.htm | 18 + luci-app-ssr-plus/po/zh-cn/ssr-plus.po | 758 + luci-app-ssr-plus/po/zh_Hans | 1 + .../root/etc/config/shadowsocksr | 0 .../root/etc/init.d/shadowsocksr | 934 + luci-app-ssr-plus/root/etc/ssrplus/ad.conf | 0 luci-app-ssr-plus/root/etc/ssrplus/black.list | 0 .../root/etc/ssrplus/china_ssr.txt | 8621 ++ luci-app-ssr-plus/root/etc/ssrplus/deny.list | 14 + .../root/etc/ssrplus/gfw_base.conf | 108 + .../root/etc/ssrplus/gfw_list.conf | 23036 ++++++ .../root/etc/ssrplus/netflix.list | 25 + .../root/etc/ssrplus/netflixip.list | 15 + .../root/etc/ssrplus/oversea_list.conf | 192 + luci-app-ssr-plus/root/etc/ssrplus/white.list | 7 + .../root/etc/uci-defaults/luci-ssr-plus | 37 + luci-app-ssr-plus/root/usr/bin/ssr-monitor | 114 + luci-app-ssr-plus/root/usr/bin/ssr-rules | 424 + luci-app-ssr-plus/root/usr/bin/ssr-switch | 155 + .../share/rpcd/acl.d/luci-app-ssr-plus.json | 11 + .../root/usr/share/shadowsocksr/chinaipset.sh | 7 + .../usr/share/shadowsocksr/gen_config.lua | 284 + .../usr/share/shadowsocksr/genred2config.sh | 95 + .../root/usr/share/shadowsocksr/gfw2ipset.sh | 47 + .../usr/share/shadowsocksr/ssrplusupdate.sh | 6 + .../root/usr/share/shadowsocksr/subscribe.lua | 638 + .../root/usr/share/shadowsocksr/update.lua | 198 + naiveproxy/Makefile | 130 + naiveproxy/patches/100-macros.patch | 38 + naiveproxy/src/init_env.sh | 96 + shadowsocks-rust/Makefile | 85 + shadowsocksr-libev/Makefile | 64 + .../0001-Add-ss-server-and-ss-check.patch | 397 + ...Revert-verify_simple-and-auth_simple.patch | 20 + .../patches/0003-Refine-Usage.patch | 37 + .../patches/100-fix-gcc-10.patch | 20 + ...-Fix-Werror-sizeof-pointer-memaccess.patch | 11 + .../102-Read-listening-mode-from-config.patch | 34 + ...Add-TPROXY-support-for-TCP-ssr-redir.patch | 154 + shadowsocksr-libev/src/server/Makefile.am | 55 + shadowsocksr-libev/src/server/Makefile.in | 919 + shadowsocksr-libev/src/server/README.md | 3 + shadowsocksr-libev/src/server/acl.c | 597 + shadowsocksr-libev/src/server/acl.h | 53 + shadowsocksr-libev/src/server/auth.c | 993 + shadowsocksr-libev/src/server/auth.h | 30 + shadowsocksr-libev/src/server/base64.c | 119 + shadowsocksr-libev/src/server/base64.h | 16 + shadowsocksr-libev/src/server/cache.c | 308 + shadowsocksr-libev/src/server/cache.h | 62 + shadowsocksr-libev/src/server/check.c | 236 + shadowsocksr-libev/src/server/common.h | 58 + shadowsocksr-libev/src/server/crc32.c | 97 + shadowsocksr-libev/src/server/encrypt.c | 1645 + shadowsocksr-libev/src/server/encrypt.h | 222 + shadowsocksr-libev/src/server/http.c | 152 + shadowsocksr-libev/src/server/http.h | 34 + shadowsocksr-libev/src/server/http_simple.c | 625 + shadowsocksr-libev/src/server/http_simple.h | 21 + shadowsocksr-libev/src/server/jconf.c | 260 + shadowsocksr-libev/src/server/jconf.h | 78 + shadowsocksr-libev/src/server/json.c | 1002 + shadowsocksr-libev/src/server/json.h | 249 + shadowsocksr-libev/src/server/list.c | 370 + shadowsocksr-libev/src/server/list.h | 61 + shadowsocksr-libev/src/server/netutils.c | 297 + shadowsocksr-libev/src/server/netutils.h | 98 + shadowsocksr-libev/src/server/obfs.c | 205 + shadowsocksr-libev/src/server/obfs.h | 100 + shadowsocksr-libev/src/server/obfsutil.c | 36 + shadowsocksr-libev/src/server/protocol.h | 34 + shadowsocksr-libev/src/server/resolv.c | 444 + shadowsocksr-libev/src/server/resolv.h | 50 + shadowsocksr-libev/src/server/rule.c | 137 + shadowsocksr-libev/src/server/rule.h | 58 + shadowsocksr-libev/src/server/server.c | 2209 + shadowsocksr-libev/src/server/server.h | 115 + shadowsocksr-libev/src/server/tls.c | 263 + shadowsocksr-libev/src/server/tls.h | 33 + shadowsocksr-libev/src/server/tls1.2_ticket.c | 609 + shadowsocksr-libev/src/server/tls1.2_ticket.h | 20 + shadowsocksr-libev/src/server/udprelay.c | 1452 + shadowsocksr-libev/src/server/udprelay.h | 95 + shadowsocksr-libev/src/server/uthash.h | 1074 + shadowsocksr-libev/src/server/utils.c | 448 + shadowsocksr-libev/src/server/utils.h | 232 + shadowsocksr-libev/src/server/verify.c | 188 + shadowsocksr-libev/src/server/verify.h | 19 + simple-obfs/Makefile | 71 + tcping/Makefile | 34 + trojan-go/Makefile | 48 + trojan-plus/Makefile | 69 + trojan/Makefile | 68 + v2ray-core/Makefile | 151 + v2ray-geodata/Makefile | 77 + v2ray-plugin/Makefile | 68 + v2raya/Makefile | 81 + v2raya/files/v2raya.config | 37 + v2raya/files/v2raya.init | 70 + .../010-fix-panic-in-go-1.18-462.patch | 32 + xray-core/Makefile | 47 + xray-plugin/Makefile | 38 + 212 files changed, 165145 insertions(+) create mode 100644 README.md create mode 100644 brook/Makefile create mode 100644 chinadns-ng/Makefile create mode 100644 hysteria/Makefile create mode 100644 luci-app-passwall/Makefile create mode 100644 luci-app-passwall/luasrc/controller/passwall.lua create mode 100755 luci-app-passwall/luasrc/model/cbi/passwall/api/api.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/brook.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/gen_hysteria.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/gen_naiveproxy.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/gen_shadowsocks.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/gen_trojan.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/gen_v2ray.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/gen_v2ray_proto.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/hysteria.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/trojan_go.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/v2ray.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/api/xray.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/acl.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/acl_config.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/app_update.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/auto_switch.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/global.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/haproxy.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/log.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/node_config.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/node_list.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/node_subscribe.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/node_subscribe_config.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/other.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/rule.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/rule_list.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/client/shunt_rules.lua create mode 100755 luci-app-passwall/luasrc/model/cbi/passwall/server/api/app.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/server/api/hysteria.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/server/api/shadowsocks.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/server/api/trojan.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/server/api/v2ray.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/server/index.lua create mode 100644 luci-app-passwall/luasrc/model/cbi/passwall/server/user.lua create mode 100644 luci-app-passwall/luasrc/view/passwall/app_update/brook_version.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/app_update/hysteria_version.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/app_update/trojan_go_version.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/app_update/v2ray_version.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/app_update/xray_version.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/auto_switch/footer.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/global/faq.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/global/footer.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/global/status.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/haproxy/status.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/log/log.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/node_list/link_add_node.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/node_list/link_share_man.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/node_list/node_list.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/rule/rule_version.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/server/log.htm create mode 100644 luci-app-passwall/luasrc/view/passwall/server/users_list_status.htm create mode 100644 luci-app-passwall/po/zh-cn/passwall.po create mode 120000 luci-app-passwall/po/zh_Hans create mode 100644 luci-app-passwall/root/etc/config/passwall_server create mode 100755 luci-app-passwall/root/etc/init.d/passwall create mode 100755 luci-app-passwall/root/etc/init.d/passwall_server create mode 100755 luci-app-passwall/root/etc/uci-defaults/luci-passwall create mode 100644 luci-app-passwall/root/usr/share/passwall/0_default_config create mode 100755 luci-app-passwall/root/usr/share/passwall/app.sh create mode 100755 luci-app-passwall/root/usr/share/passwall/helper_dnsmasq.sh create mode 100644 luci-app-passwall/root/usr/share/passwall/helper_dnsmasq_add.lua create mode 100755 luci-app-passwall/root/usr/share/passwall/helper_smartdns.sh create mode 100644 luci-app-passwall/root/usr/share/passwall/helper_smartdns_add.lua create mode 100755 luci-app-passwall/root/usr/share/passwall/iptables.sh create mode 100755 luci-app-passwall/root/usr/share/passwall/monitor.sh create mode 100755 luci-app-passwall/root/usr/share/passwall/rule_update.lua create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/block_host create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/block_ip create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/chnlist create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/chnroute create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/chnroute6 create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/direct_host create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/direct_ip create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/domains_excluded create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/gfwlist create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/lanlist_ipv4 create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/lanlist_ipv6 create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/proxy_host create mode 100644 luci-app-passwall/root/usr/share/passwall/rules/proxy_ip create mode 100755 luci-app-passwall/root/usr/share/passwall/subscribe.lua create mode 100755 luci-app-passwall/root/usr/share/passwall/test.sh create mode 100644 luci-app-passwall/root/usr/share/rpcd/acl.d/luci-app-passwall.json create mode 100644 luci-app-ssr-plus/Makefile create mode 100644 luci-app-ssr-plus/luasrc/controller/shadowsocksr.lua create mode 100644 luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua create mode 100644 luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/client-config.lua create mode 100644 luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/client.lua create mode 100644 luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/control.lua create mode 100644 luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/log.lua create mode 100644 luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/server-config.lua create mode 100644 luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/server.lua create mode 100644 luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/servers.lua create mode 100644 luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/status.lua create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/cache.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/certupload.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/check.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/checkport.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/ping.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/refresh.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/reset.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/server_list.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/socket.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/ssrurl.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/status.htm create mode 100644 luci-app-ssr-plus/luasrc/view/shadowsocksr/subscribe.htm create mode 100644 luci-app-ssr-plus/po/zh-cn/ssr-plus.po create mode 120000 luci-app-ssr-plus/po/zh_Hans create mode 100644 luci-app-ssr-plus/root/etc/config/shadowsocksr create mode 100755 luci-app-ssr-plus/root/etc/init.d/shadowsocksr create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/ad.conf create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/black.list create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/china_ssr.txt create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/deny.list create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/gfw_base.conf create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/gfw_list.conf create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/netflix.list create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/netflixip.list create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/oversea_list.conf create mode 100644 luci-app-ssr-plus/root/etc/ssrplus/white.list create mode 100755 luci-app-ssr-plus/root/etc/uci-defaults/luci-ssr-plus create mode 100755 luci-app-ssr-plus/root/usr/bin/ssr-monitor create mode 100755 luci-app-ssr-plus/root/usr/bin/ssr-rules create mode 100755 luci-app-ssr-plus/root/usr/bin/ssr-switch create mode 100644 luci-app-ssr-plus/root/usr/share/rpcd/acl.d/luci-app-ssr-plus.json create mode 100755 luci-app-ssr-plus/root/usr/share/shadowsocksr/chinaipset.sh create mode 100755 luci-app-ssr-plus/root/usr/share/shadowsocksr/gen_config.lua create mode 100755 luci-app-ssr-plus/root/usr/share/shadowsocksr/genred2config.sh create mode 100755 luci-app-ssr-plus/root/usr/share/shadowsocksr/gfw2ipset.sh create mode 100755 luci-app-ssr-plus/root/usr/share/shadowsocksr/ssrplusupdate.sh create mode 100755 luci-app-ssr-plus/root/usr/share/shadowsocksr/subscribe.lua create mode 100755 luci-app-ssr-plus/root/usr/share/shadowsocksr/update.lua create mode 100644 naiveproxy/Makefile create mode 100644 naiveproxy/patches/100-macros.patch create mode 100755 naiveproxy/src/init_env.sh create mode 100644 shadowsocks-rust/Makefile create mode 100644 shadowsocksr-libev/Makefile create mode 100644 shadowsocksr-libev/patches/0001-Add-ss-server-and-ss-check.patch create mode 100644 shadowsocksr-libev/patches/0002-Revert-verify_simple-and-auth_simple.patch create mode 100644 shadowsocksr-libev/patches/0003-Refine-Usage.patch create mode 100644 shadowsocksr-libev/patches/100-fix-gcc-10.patch create mode 100644 shadowsocksr-libev/patches/101-Fix-Werror-sizeof-pointer-memaccess.patch create mode 100644 shadowsocksr-libev/patches/102-Read-listening-mode-from-config.patch create mode 100644 shadowsocksr-libev/patches/103-Add-TPROXY-support-for-TCP-ssr-redir.patch create mode 100644 shadowsocksr-libev/src/server/Makefile.am create mode 100644 shadowsocksr-libev/src/server/Makefile.in create mode 100644 shadowsocksr-libev/src/server/README.md create mode 100644 shadowsocksr-libev/src/server/acl.c create mode 100644 shadowsocksr-libev/src/server/acl.h create mode 100644 shadowsocksr-libev/src/server/auth.c create mode 100644 shadowsocksr-libev/src/server/auth.h create mode 100644 shadowsocksr-libev/src/server/base64.c create mode 100644 shadowsocksr-libev/src/server/base64.h create mode 100644 shadowsocksr-libev/src/server/cache.c create mode 100644 shadowsocksr-libev/src/server/cache.h create mode 100644 shadowsocksr-libev/src/server/check.c create mode 100644 shadowsocksr-libev/src/server/common.h create mode 100644 shadowsocksr-libev/src/server/crc32.c create mode 100644 shadowsocksr-libev/src/server/encrypt.c create mode 100644 shadowsocksr-libev/src/server/encrypt.h create mode 100644 shadowsocksr-libev/src/server/http.c create mode 100644 shadowsocksr-libev/src/server/http.h create mode 100644 shadowsocksr-libev/src/server/http_simple.c create mode 100644 shadowsocksr-libev/src/server/http_simple.h create mode 100644 shadowsocksr-libev/src/server/jconf.c create mode 100644 shadowsocksr-libev/src/server/jconf.h create mode 100644 shadowsocksr-libev/src/server/json.c create mode 100644 shadowsocksr-libev/src/server/json.h create mode 100644 shadowsocksr-libev/src/server/list.c create mode 100644 shadowsocksr-libev/src/server/list.h create mode 100644 shadowsocksr-libev/src/server/netutils.c create mode 100644 shadowsocksr-libev/src/server/netutils.h create mode 100644 shadowsocksr-libev/src/server/obfs.c create mode 100644 shadowsocksr-libev/src/server/obfs.h create mode 100644 shadowsocksr-libev/src/server/obfsutil.c create mode 100644 shadowsocksr-libev/src/server/protocol.h create mode 100644 shadowsocksr-libev/src/server/resolv.c create mode 100644 shadowsocksr-libev/src/server/resolv.h create mode 100644 shadowsocksr-libev/src/server/rule.c create mode 100644 shadowsocksr-libev/src/server/rule.h create mode 100644 shadowsocksr-libev/src/server/server.c create mode 100644 shadowsocksr-libev/src/server/server.h create mode 100644 shadowsocksr-libev/src/server/tls.c create mode 100644 shadowsocksr-libev/src/server/tls.h create mode 100644 shadowsocksr-libev/src/server/tls1.2_ticket.c create mode 100644 shadowsocksr-libev/src/server/tls1.2_ticket.h create mode 100644 shadowsocksr-libev/src/server/udprelay.c create mode 100644 shadowsocksr-libev/src/server/udprelay.h create mode 100644 shadowsocksr-libev/src/server/uthash.h create mode 100644 shadowsocksr-libev/src/server/utils.c create mode 100644 shadowsocksr-libev/src/server/utils.h create mode 100644 shadowsocksr-libev/src/server/verify.c create mode 100644 shadowsocksr-libev/src/server/verify.h create mode 100644 simple-obfs/Makefile create mode 100644 tcping/Makefile create mode 100644 trojan-go/Makefile create mode 100644 trojan-plus/Makefile create mode 100644 trojan/Makefile create mode 100644 v2ray-core/Makefile create mode 100644 v2ray-geodata/Makefile create mode 100644 v2ray-plugin/Makefile create mode 100644 v2raya/Makefile create mode 100644 v2raya/files/v2raya.config create mode 100755 v2raya/files/v2raya.init create mode 100644 v2raya/patches/010-fix-panic-in-go-1.18-462.patch create mode 100644 xray-core/Makefile create mode 100644 xray-plugin/Makefile diff --git a/README.md b/README.md new file mode 100644 index 000000000..2f04b90f6 --- /dev/null +++ b/README.md @@ -0,0 +1,11 @@ +# Psswall & SSRP 插件防炸上游备份 + +## 所需依赖 + +```shell +svn co https://github.com/immortalwrt/packages/trunk/net/dns2socks package/helloworld-deps/dns2socks +svn co https://github.com/immortalwrt/packages/trunk/net/microsocks package/helloworld-deps/microsocks +svn co https://github.com/immortalwrt/packages/trunk/net/ipt2socks package/helloworld-deps/ipt2socks +svn co https://github.com/immortalwrt/packages/trunk/net/pdnsd-alt package/helloworld-deps/pdnsd +svn co https://github.com/immortalwrt/packages/trunk/net/redsocks2 package/helloworld-deps/redsocks2 +``` \ No newline at end of file diff --git a/brook/Makefile b/brook/Makefile new file mode 100644 index 000000000..c82788aa8 --- /dev/null +++ b/brook/Makefile @@ -0,0 +1,44 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=brook +PKG_VERSION:=20220406 +PKG_RELEASE:=$(AUTORELEASE) + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/txthinking/brook/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=cf4433263cc755edfe56be66d206b7ee5083faaaa8b30bb4102174ad73e22764 + +PKG_MAINTAINER:=Tianling Shen +PKG_LICENSE:=GPL-3.0 +PKG_LICENSE_FILES:=LICENSE + +PKG_BUILD_DEPENDS:=golang/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/txthinking/brook +GO_PKG_BUILD_PKG:=$(GO_PKG)/cli/brook + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk + +define Package/brook + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + TITLE:=A cross-platform proxy software + DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle + URL:=https://github.com/txthinking/brook +endef + +define Package/brook/description + Brook is a cross-platform strong encryption and not detectable proxy. + Zero-Configuration. +endef + +$(eval $(call GoBinPackage,brook)) +$(eval $(call BuildPackage,brook)) diff --git a/chinadns-ng/Makefile b/chinadns-ng/Makefile new file mode 100644 index 000000000..8158b4d75 --- /dev/null +++ b/chinadns-ng/Makefile @@ -0,0 +1,40 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=chinadns-ng +PKG_VERSION:=1.0-beta.25 +PKG_RELEASE:=$(AUTORELEASE) + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/zfl9/chinadns-ng.git +PKG_SOURCE_DATE:=2021-05-08 +PKG_SOURCE_VERSION:=14cc6348d67b09cae37d9bce554c89c2c0e0b265 +PKG_MIRROR_HASH:=3b66fc0888d9488e3b8e39df3016d51fae1b43325d292381e94aa3c7d2318282 + +PKG_LICENSE:=AGPL-3.0-only +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=pexcn + +PKG_BUILD_PARALLEL:=1 +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/chinadns-ng + SECTION:=net + CATEGORY:=Network + SUBMENU:=IP Addresses and Names + TITLE:=ChinaDNS next generation, refactoring with epoll and ipset. + URL:=https://github.com/zfl9/chinadns-ng + DEPENDS:=+ipset +endef + +define Package/chinadns-ng/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/chinadns-ng $(1)/usr/bin +endef + +$(eval $(call BuildPackage,chinadns-ng)) diff --git a/hysteria/Makefile b/hysteria/Makefile new file mode 100644 index 000000000..730ee2fb6 --- /dev/null +++ b/hysteria/Makefile @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=hysteria +PKG_VERSION:=1.0.3 +PKG_RELEASE:=$(AUTORELEASE) + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/HyNetwork/hysteria/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=aa187a860d517404ec2293603c8ad47c4d06776a0e621befb0bc769c3d93779d + +PKG_LICENSE:=MIT +PKG_LICENSE_FILE:=LICENSE +PKG_MAINTAINER:=Tianling Shen + +PKG_BUILD_DEPENDS:=golang/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/tobyxdd/hysteria +GO_PKG_BUILD_PKG:=$(GO_PKG)/cmd +GO_PKG_LDFLAGS_X:=main.appVersion=$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk + +define Package/hysteria + SECTION:=net + CATEGORY:=Network + TITLE:=A feature-packed network utility optimized for networks of poor quality + URL:=https://github.com/tobyxdd/hysteria + DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle +endef + +define Package/hysteria/description + Hysteria is a feature-packed network utility optimized for networks + of poor quality (e.g. satellite connections, congested public Wi-Fi, + connecting from China to servers abroad) powered by a custom version + of QUIC protocol. +endef + +define Package/hysteria/install + $(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR)) + + $(INSTALL_DIR) $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/cmd $(1)/usr/bin/hysteria +endef + +$(eval $(call GoBinPackage,hysteria)) +$(eval $(call BuildPackage,hysteria)) diff --git a/luci-app-passwall/Makefile b/luci-app-passwall/Makefile new file mode 100644 index 000000000..49375acaf --- /dev/null +++ b/luci-app-passwall/Makefile @@ -0,0 +1,176 @@ +# Copyright (C) 2018-2020 L-WRT Team +# Copyright (C) 2021-2022 xiaorouji +# +# This is free software, licensed under the GNU General Public License v3. + +include $(TOPDIR)/rules.mk + +PKG_NAME:=luci-app-passwall +PKG_VERSION:=4.53 +PKG_RELEASE:=1 + +PKG_CONFIG_DEPENDS:= \ + CONFIG_PACKAGE_$(PKG_NAME)_Transparent_Proxy \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Brook \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS_NG \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Haproxy \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Hysteria \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_IPv6_Nat \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_PDNSD \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Server \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Server \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Simple_Obfs \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Trojan_GO \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Trojan_Plus \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_V2ray \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_V2ray_Plugin \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Xray \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Xray_Plugin + +LUCI_TITLE:=LuCI support for PassWall +LUCI_PKGARCH:=all +LUCI_DEPENDS:=+coreutils +coreutils-base64 +coreutils-nohup +curl \ + +dns2socks +ip-full +libuci-lua +lua +luci-compat +luci-lib-jsonc \ + +microsocks +resolveip +tcping +unzip \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Brook:brook \ + +PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS_NG:chinadns-ng \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Haproxy:haproxy \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Hysteria:hysteria \ + +PACKAGE_$(PKG_NAME)_INCLUDE_IPv6_Nat:ip6tables-mod-nat \ + +PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy:naiveproxy \ + +PACKAGE_$(PKG_NAME)_INCLUDE_PDNSD:pdnsd-alt \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client:shadowsocks-libev-ss-local \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client:shadowsocks-libev-ss-redir \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server:shadowsocks-libev-ss-server \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client:shadowsocks-rust-sslocal \ + +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client:shadowsocksr-libev-ssr-local \ + +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client:shadowsocksr-libev-ssr-redir \ + +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Server:shadowsocksr-libev-ssr-server \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Simple_Obfs:simple-obfs \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Trojan_GO:trojan-go \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Trojan_Plus:trojan-plus \ + +PACKAGE_$(PKG_NAME)_INCLUDE_V2ray:v2ray-core \ + +PACKAGE_$(PKG_NAME)_INCLUDE_V2ray_Plugin:v2ray-plugin \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Xray:xray-core \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Xray_Plugin:xray-plugin + +define Package/$(PKG_NAME)/config +menu "Configuration" + +config PACKAGE_$(PKG_NAME)_Transparent_Proxy + bool "Transparent Proxy" + select PACKAGE_dnsmasq-full + select PACKAGE_ipset + select PACKAGE_ipt2socks + select PACKAGE_iptables + select PACKAGE_iptables-legacy + select PACKAGE_iptables-mod-iprange + select PACKAGE_iptables-mod-socket + select PACKAGE_iptables-mod-tproxy + select PACKAGE_kmod-ipt-nat + default y + +config PACKAGE_$(PKG_NAME)_INCLUDE_Brook + bool "Include Brook" + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS_NG + bool "Include ChinaDNS-NG" + default y + +config PACKAGE_$(PKG_NAME)_INCLUDE_Haproxy + bool "Include Haproxy" + default y if aarch64||arm||i386||x86_64 + +config PACKAGE_$(PKG_NAME)_INCLUDE_Hysteria + bool "Include Hysteria" + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_IPv6_Nat + depends on PACKAGE_ip6tables + bool "Include IPv6 Nat" + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy + bool "Include NaiveProxy" + depends on !(arc||(arm&&TARGET_gemini)||armeb||mips||mips64||powerpc) + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_PDNSD + bool "Include PDNSD" + default y + +config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client + bool "Include Shadowsocks Libev Client" + default y + +config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server + bool "Include Shadowsocks Libev Server" + default y if aarch64||arm||i386||x86_64 + +config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client + bool "Include Shadowsocks Rust Client" + depends on aarch64||arm||i386||mips||mipsel||x86_64 + default y if aarch64 + +config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client + bool "Include ShadowsocksR Libev Client" + default y + +config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Server + bool "Include ShadowsocksR Libev Server" + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_Simple_Obfs + bool "Include Simple-Obfs (Shadowsocks Plugin)" + default y + +config PACKAGE_$(PKG_NAME)_INCLUDE_Trojan_GO + bool "Include Trojan-GO" + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_Trojan_Plus + bool "Include Trojan-Plus" + default y + +config PACKAGE_$(PKG_NAME)_INCLUDE_V2ray + bool "Include V2ray" + default y if aarch64||arm||i386||x86_64 + +config PACKAGE_$(PKG_NAME)_INCLUDE_V2ray_Plugin + bool "Include V2ray-Plugin (Shadowsocks Plugin)" + default y if aarch64||arm||i386||x86_64 + +config PACKAGE_$(PKG_NAME)_INCLUDE_Xray + bool "Include Xray" + default y if aarch64||arm||i386||x86_64 + +config PACKAGE_$(PKG_NAME)_INCLUDE_Xray_Plugin + bool "Include Xray-Plugin (Shadowsocks Plugin)" + default n + +endmenu +endef + +define Package/$(PKG_NAME)/conffiles +/etc/config/passwall +/etc/config/passwall_server +/usr/share/passwall/rules/direct_host +/usr/share/passwall/rules/direct_ip +/usr/share/passwall/rules/proxy_host +/usr/share/passwall/rules/proxy_ip +/usr/share/passwall/rules/block_host +/usr/share/passwall/rules/block_ip +/usr/share/passwall/rules/lanlist_ipv4 +/usr/share/passwall/rules/lanlist_ipv6 +/usr/share/passwall/rules/domains_excluded +endef + +include $(TOPDIR)/feeds/luci/luci.mk + +# call BuildPackage - OpenWrt buildroot signature diff --git a/luci-app-passwall/luasrc/controller/passwall.lua b/luci-app-passwall/luasrc/controller/passwall.lua new file mode 100644 index 000000000..badd747c7 --- /dev/null +++ b/luci-app-passwall/luasrc/controller/passwall.lua @@ -0,0 +1,491 @@ +-- Copyright (C) 2018-2020 L-WRT Team +-- Copyright (C) 2021-2022 xiaorouji + +module("luci.controller.passwall", package.seeall) +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local ucic = luci.model.uci.cursor() +local http = require "luci.http" +local util = require "luci.util" +local i18n = require "luci.i18n" +local brook = require("luci.model.cbi." .. appname ..".api.brook") +local v2ray = require("luci.model.cbi." .. appname ..".api.v2ray") +local xray = require("luci.model.cbi." .. appname ..".api.xray") +local trojan_go = require("luci.model.cbi." .. appname ..".api.trojan_go") +local hysteria = require("luci.model.cbi." .. appname ..".api.hysteria") + +function index() + appname = require "luci.model.cbi.passwall.api.api".appname + entry({"admin", "services", appname}).dependent = true + entry({"admin", "services", appname, "reset_config"}, call("reset_config")).leaf = true + entry({"admin", "services", appname, "show"}, call("show_menu")).leaf = true + entry({"admin", "services", appname, "hide"}, call("hide_menu")).leaf = true + if not nixio.fs.access("/etc/config/passwall") then return end + if nixio.fs.access("/etc/config/passwall_show") then + e = entry({"admin", "services", appname}, alias("admin", "services", appname, "settings"), _("Pass Wall"), -1) + e.dependent = true + e.acl_depends = { "luci-app-passwall" } + end + --[[ Client ]] + entry({"admin", "services", appname, "settings"}, cbi(appname .. "/client/global"), _("Basic Settings"), 1).dependent = true + entry({"admin", "services", appname, "node_list"}, cbi(appname .. "/client/node_list"), _("Node List"), 2).dependent = true + entry({"admin", "services", appname, "node_subscribe"}, cbi(appname .. "/client/node_subscribe"), _("Node Subscribe"), 3).dependent = true + entry({"admin", "services", appname, "auto_switch"}, cbi(appname .. "/client/auto_switch"), _("Auto Switch"), 4).leaf = true + entry({"admin", "services", appname, "other"}, cbi(appname .. "/client/other", {autoapply = true}), _("Other Settings"), 92).leaf = true + if nixio.fs.access("/usr/sbin/haproxy") then + entry({"admin", "services", appname, "haproxy"}, cbi(appname .. "/client/haproxy"), _("Load Balancing"), 93).leaf = true + end + entry({"admin", "services", appname, "app_update"}, cbi(appname .. "/client/app_update"), _("App Update"), 95).leaf = true + entry({"admin", "services", appname, "rule"}, cbi(appname .. "/client/rule"), _("Rule Manage"), 96).leaf = true + entry({"admin", "services", appname, "rule_list"}, cbi(appname .. "/client/rule_list"), _("Rule List"), 97).leaf = true + entry({"admin", "services", appname, "node_subscribe_config"}, cbi(appname .. "/client/node_subscribe_config")).leaf = true + entry({"admin", "services", appname, "node_config"}, cbi(appname .. "/client/node_config")).leaf = true + entry({"admin", "services", appname, "shunt_rules"}, cbi(appname .. "/client/shunt_rules")).leaf = true + entry({"admin", "services", appname, "acl"}, cbi(appname .. "/client/acl"), _("Access control"), 98).leaf = true + entry({"admin", "services", appname, "acl_config"}, cbi(appname .. "/client/acl_config")).leaf = true + entry({"admin", "services", appname, "log"}, form(appname .. "/client/log"), _("Watch Logs"), 999).leaf = true + + --[[ Server ]] + entry({"admin", "services", appname, "server"}, cbi(appname .. "/server/index"), _("Server-Side"), 99).leaf = true + entry({"admin", "services", appname, "server_user"}, cbi(appname .. "/server/user")).leaf = true + + --[[ API ]] + entry({"admin", "services", appname, "server_user_status"}, call("server_user_status")).leaf = true + entry({"admin", "services", appname, "server_user_log"}, call("server_user_log")).leaf = true + entry({"admin", "services", appname, "server_get_log"}, call("server_get_log")).leaf = true + entry({"admin", "services", appname, "server_clear_log"}, call("server_clear_log")).leaf = true + entry({"admin", "services", appname, "link_add_node"}, call("link_add_node")).leaf = true + entry({"admin", "services", appname, "autoswitch_add_node"}, call("autoswitch_add_node")).leaf = true + entry({"admin", "services", appname, "autoswitch_remove_node"}, call("autoswitch_remove_node")).leaf = true + entry({"admin", "services", appname, "get_now_use_node"}, call("get_now_use_node")).leaf = true + entry({"admin", "services", appname, "get_redir_log"}, call("get_redir_log")).leaf = true + entry({"admin", "services", appname, "get_log"}, call("get_log")).leaf = true + entry({"admin", "services", appname, "clear_log"}, call("clear_log")).leaf = true + entry({"admin", "services", appname, "status"}, call("status")).leaf = true + entry({"admin", "services", appname, "haproxy_status"}, call("haproxy_status")).leaf = true + entry({"admin", "services", appname, "socks_status"}, call("socks_status")).leaf = true + entry({"admin", "services", appname, "connect_status"}, call("connect_status")).leaf = true + entry({"admin", "services", appname, "ping_node"}, call("ping_node")).leaf = true + entry({"admin", "services", appname, "urltest_node"}, call("urltest_node")).leaf = true + entry({"admin", "services", appname, "set_node"}, call("set_node")).leaf = true + entry({"admin", "services", appname, "copy_node"}, call("copy_node")).leaf = true + entry({"admin", "services", appname, "clear_all_nodes"}, call("clear_all_nodes")).leaf = true + entry({"admin", "services", appname, "delete_select_nodes"}, call("delete_select_nodes")).leaf = true + entry({"admin", "services", appname, "update_rules"}, call("update_rules")).leaf = true + entry({"admin", "services", appname, "brook_check"}, call("brook_check")).leaf = true + entry({"admin", "services", appname, "brook_update"}, call("brook_update")).leaf = true + entry({"admin", "services", appname, "v2ray_check"}, call("v2ray_check")).leaf = true + entry({"admin", "services", appname, "v2ray_update"}, call("v2ray_update")).leaf = true + entry({"admin", "services", appname, "xray_check"}, call("xray_check")).leaf = true + entry({"admin", "services", appname, "xray_update"}, call("xray_update")).leaf = true + entry({"admin", "services", appname, "trojan_go_check"}, call("trojan_go_check")).leaf = true + entry({"admin", "services", appname, "trojan_go_update"}, call("trojan_go_update")).leaf = true + entry({"admin", "services", appname, "hysteria_check"}, call("hysteria_check")).leaf = true + entry({"admin", "services", appname, "hysteria_update"}, call("hysteria_update")).leaf = true +end + +local function http_write_json(content) + http.prepare_content("application/json") + http.write_json(content or {code = 1}) +end + +function reset_config() + luci.sys.call('/etc/init.d/passwall stop') + luci.sys.call('[ -f "/usr/share/passwall/0_default_config" ] && cp -f /usr/share/passwall/0_default_config /etc/config/passwall') + luci.http.redirect(api.url()) +end + +function show_menu() + luci.sys.call("touch /etc/config/passwall_show") + luci.sys.call("rm -rf /tmp/luci-*") + luci.sys.call("/etc/init.d/rpcd restart >/dev/null") + luci.http.redirect(api.url()) +end + +function hide_menu() + luci.sys.call("rm -rf /etc/config/passwall_show") + luci.sys.call("rm -rf /tmp/luci-*") + luci.sys.call("/etc/init.d/rpcd restart >/dev/null") + luci.http.redirect(luci.dispatcher.build_url("admin", "status", "overview")) +end + +function link_add_node() + local lfile = "/tmp/links.conf" + local link = luci.http.formvalue("link") + luci.sys.call('echo \'' .. link .. '\' > ' .. lfile) + luci.sys.call("lua /usr/share/passwall/subscribe.lua add log") +end + +function autoswitch_add_node() + local key = luci.http.formvalue("key") + if key and key ~= "" then + for k, e in ipairs(api.get_valid_nodes()) do + if e.node_type == "normal" and e["remark"]:find(key) then + luci.sys.call(string.format("uci -q del_list passwall.@auto_switch[0].tcp_node='%s' && uci -q add_list passwall.@auto_switch[0].tcp_node='%s'", e.id, e.id)) + end + end + end + luci.http.redirect(api.url("auto_switch")) +end + +function autoswitch_remove_node() + local key = luci.http.formvalue("key") + if key and key ~= "" then + for k, e in ipairs(ucic:get(appname, "@auto_switch[0]", "tcp_node") or {}) do + if e and (ucic:get(appname, e, "remarks") or ""):find(key) then + luci.sys.call(string.format("uci -q del_list passwall.@auto_switch[0].tcp_node='%s'", e)) + end + end + end + luci.http.redirect(api.url("auto_switch")) +end + +function get_now_use_node() + local e = {} + local data, code, msg = nixio.fs.readfile("/tmp/etc/passwall/id/TCP") + if data then + e["TCP"] = util.trim(data) + end + local data, code, msg = nixio.fs.readfile("/tmp/etc/passwall/id/UDP") + if data then + e["UDP"] = util.trim(data) + end + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function get_redir_log() + local proto = luci.http.formvalue("proto") + proto = proto:upper() + if proto == "UDP" and (ucic:get(appname, "@global[0]", "udp_node") or "nil") == "tcp" and not nixio.fs.access("/tmp/etc/passwall/" .. proto .. ".log") then + proto = "TCP" + end + if nixio.fs.access("/tmp/etc/passwall/" .. proto .. ".log") then + local content = luci.sys.exec("cat /tmp/etc/passwall/" .. proto .. ".log") + content = content:gsub("\n", "
") + luci.http.write(content) + else + luci.http.write(string.format("", i18n.translate("Not enabled log"))) + end +end + +function get_log() + -- luci.sys.exec("[ -f /tmp/log/passwall.log ] && sed '1!G;h;$!d' /tmp/log/passwall.log > /tmp/log/passwall_show.log") + luci.http.write(luci.sys.exec("[ -f '/tmp/log/passwall.log' ] && cat /tmp/log/passwall.log")) +end + +function clear_log() + luci.sys.call("echo '' > /tmp/log/passwall.log") +end + +function status() + -- local dns_mode = ucic:get(appname, "@global[0]", "dns_mode") + local e = {} + e.dns_mode_status = luci.sys.call("netstat -apn | grep ':7913 ' >/dev/null") == 0 + e.haproxy_status = luci.sys.call(string.format("/bin/top -bn1 | grep -v grep | grep '%s/bin/' | grep haproxy >/dev/null", appname)) == 0 + e["tcp_node_status"] = luci.sys.call(string.format("/bin/top -bn1 | grep -v -E 'grep|acl/|acl_' | grep '%s/bin/' | grep -i 'TCP' >/dev/null", appname)) == 0 + + if (ucic:get(appname, "@global[0]", "udp_node") or "nil") == "tcp" then + e["udp_node_status"] = e["tcp_node_status"] + else + e["udp_node_status"] = luci.sys.call(string.format("/bin/top -bn1 | grep -v -E 'grep|acl/|acl_' | grep '%s/bin/' | grep -i 'UDP' >/dev/null", appname)) == 0 + end + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function haproxy_status() + local e = luci.sys.call(string.format("/bin/top -bn1 | grep -v grep | grep '%s/bin/' | grep haproxy >/dev/null", appname)) == 0 + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function socks_status() + local e = {} + local index = luci.http.formvalue("index") + local id = luci.http.formvalue("id") + e.index = index + e.socks_status = luci.sys.call(string.format("/bin/top -bn1 | grep -v -E 'grep|acl/|acl_' | grep '%s/bin/' | grep '%s' | grep 'SOCKS_' > /dev/null", appname, id)) == 0 + local use_http = ucic:get(appname, id, "http_port") or 0 + e.use_http = 0 + if tonumber(use_http) > 0 then + e.use_http = 1 + e.http_status = luci.sys.call(string.format("/bin/top -bn1 | grep -v -E 'grep|acl/|acl_' | grep '%s/bin/' | grep '%s' | grep -E 'HTTP_|HTTP2SOCKS' > /dev/null", appname, id)) == 0 + end + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function connect_status() + local e = {} + e.use_time = "" + local url = luci.http.formvalue("url") + local result = luci.sys.exec('curl --connect-timeout 3 -o /dev/null -I -skL -w "%{http_code}:%{time_starttransfer}" ' .. url) + local code = tonumber(luci.sys.exec("echo -n '" .. result .. "' | awk -F ':' '{print $1}'") or "0") + if code ~= 0 then + local use_time = luci.sys.exec("echo -n '" .. result .. "' | awk -F ':' '{print $2}'") + if use_time:find("%.") then + e.use_time = string.format("%.2f", use_time * 1000) + else + e.use_time = string.format("%.2f", use_time / 1000) + end + e.ping_type = "curl" + end + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function ping_node() + local index = luci.http.formvalue("index") + local address = luci.http.formvalue("address") + local port = luci.http.formvalue("port") + local e = {} + e.index = index + local nodes_ping = ucic:get(appname, "@global_other[0]", "nodes_ping") or "" + if nodes_ping:find("tcping") and luci.sys.exec("echo -n $(command -v tcping)") ~= "" then + if api.is_ipv6(address) then + address = api.get_ipv6_only(address) + end + e.ping = luci.sys.exec(string.format("echo -n $(tcping -q -c 1 -i 1 -t 2 -p %s %s 2>&1 | grep -o 'time=[0-9]*' | awk -F '=' '{print $2}') 2>/dev/null", port, address)) + end + if e.ping == nil or tonumber(e.ping) == 0 then + e.ping = luci.sys.exec("echo -n $(ping -c 1 -W 1 %q 2>&1 | grep -o 'time=[0-9]*' | awk -F '=' '{print $2}') 2>/dev/null" % address) + end + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function urltest_node() + local index = luci.http.formvalue("index") + local id = luci.http.formvalue("id") + local e = {} + e.index = index + local result = luci.sys.exec(string.format("/usr/share/passwall/test.sh url_test_node %s %s", id, "urltest_node")) + local code = tonumber(luci.sys.exec("echo -n '" .. result .. "' | awk -F ':' '{print $1}'") or "0") + if code ~= 0 then + local use_time = luci.sys.exec("echo -n '" .. result .. "' | awk -F ':' '{print $2}'") + if use_time:find("%.") then + e.use_time = string.format("%.2f", use_time * 1000) + else + e.use_time = string.format("%.2f", use_time / 1000) + end + end + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function set_node() + local protocol = luci.http.formvalue("protocol") + local section = luci.http.formvalue("section") + ucic:set(appname, "@global[0]", protocol .. "_node", section) + ucic:commit(appname) + luci.sys.call("/etc/init.d/passwall restart > /dev/null 2>&1 &") + luci.http.redirect(api.url("log")) +end + +function copy_node() + local section = luci.http.formvalue("section") + local uuid = api.gen_uuid() + ucic:section(appname, "nodes", uuid) + for k, v in pairs(ucic:get_all(appname, section)) do + local filter = k:find("%.") + if filter and filter == 1 then + else + xpcall(function() + ucic:set(appname, uuid, k, v) + end, + function(e) + end) + end + end + ucic:delete(appname, uuid, "add_from") + ucic:set(appname, uuid, "add_mode", 1) + ucic:commit(appname) + luci.http.redirect(api.url("node_config", uuid)) +end + +function clear_all_nodes() + ucic:set(appname, '@global[0]', "enabled", "0") + ucic:set(appname, '@global[0]', "tcp_node", "nil") + ucic:set(appname, '@global[0]', "udp_node", "nil") + ucic:set_list(appname, "@auto_switch[0]", "tcp_node", {}) + ucic:foreach(appname, "socks", function(t) + ucic:delete(appname, t[".name"]) + end) + ucic:foreach(appname, "haproxy_config", function(t) + ucic:delete(appname, t[".name"]) + end) + ucic:foreach(appname, "acl_rule", function(t) + ucic:set(appname, t[".name"], "tcp_node", "default") + ucic:set(appname, t[".name"], "udp_node", "default") + end) + ucic:foreach(appname, "nodes", function(node) + ucic:delete(appname, node['.name']) + end) + + ucic:commit(appname) + luci.sys.call("/etc/init.d/" .. appname .. " stop") +end + +function delete_select_nodes() + local ids = luci.http.formvalue("ids") + local auto_switch_tcp_node_list = ucic:get(appname, "@auto_switch[0]", "tcp_node") or {} + string.gsub(ids, '[^' .. "," .. ']+', function(w) + for k, v in ipairs(auto_switch_tcp_node_list) do + if v == w then + luci.sys.call(string.format("uci -q del_list passwall.@auto_switch[0].tcp_node='%s'", w)) + end + end + if (ucic:get(appname, "@global[0]", "tcp_node") or "nil") == w then + ucic:set(appname, '@global[0]', "tcp_node", "nil") + end + if (ucic:get(appname, "@global[0]", "udp_node") or "nil") == w then + ucic:set(appname, '@global[0]', "udp_node", "nil") + end + ucic:foreach(appname, "socks", function(t) + if t["node"] == w then + ucic:delete(appname, t[".name"]) + end + end) + ucic:foreach(appname, "haproxy_config", function(t) + if t["lbss"] == w then + ucic:delete(appname, t[".name"]) + end + end) + ucic:foreach(appname, "acl_rule", function(t) + if t["tcp_node"] == w then + ucic:set(appname, t[".name"], "tcp_node", "default") + end + if t["udp_node"] == w then + ucic:set(appname, t[".name"], "udp_node", "default") + end + end) + ucic:delete(appname, w) + end) + ucic:commit(appname) + luci.sys.call("/etc/init.d/" .. appname .. " restart > /dev/null 2>&1 &") +end + +function update_rules() + local update = luci.http.formvalue("update") + luci.sys.call("lua /usr/share/passwall/rule_update.lua log '" .. update .. "' > /dev/null 2>&1 &") + http_write_json() +end + +function server_user_status() + local e = {} + e.index = luci.http.formvalue("index") + e.status = luci.sys.call(string.format("/bin/top -bn1 | grep -v 'grep' | grep '%s/bin/' | grep -i '%s' >/dev/null", appname .. "_server", luci.http.formvalue("id"))) == 0 + http_write_json(e) +end + +function server_user_log() + local id = luci.http.formvalue("id") + if nixio.fs.access("/tmp/etc/passwall_server/" .. id .. ".log") then + local content = luci.sys.exec("cat /tmp/etc/passwall_server/" .. id .. ".log") + content = content:gsub("\n", "
") + luci.http.write(content) + else + luci.http.write(string.format("", i18n.translate("Not enabled log"))) + end +end + +function server_get_log() + luci.http.write(luci.sys.exec("[ -f '/tmp/log/passwall_server.log' ] && cat /tmp/log/passwall_server.log")) +end + +function server_clear_log() + luci.sys.call("echo '' > /tmp/log/passwall_server.log") +end + +function brook_check() + local json = brook.to_check("") + http_write_json(json) +end + +function brook_update() + local json = nil + local task = http.formvalue("task") + if task == "move" then + json = brook.to_move(http.formvalue("file")) + else + json = brook.to_download(http.formvalue("url"), http.formvalue("size")) + end + + http_write_json(json) +end + +function v2ray_check() + local json = v2ray.to_check("") + http_write_json(json) +end + +function v2ray_update() + local json = nil + local task = http.formvalue("task") + if task == "extract" then + json = v2ray.to_extract(http.formvalue("file"), http.formvalue("subfix")) + elseif task == "move" then + json = v2ray.to_move(http.formvalue("file")) + else + json = v2ray.to_download(http.formvalue("url"), http.formvalue("size")) + end + + http_write_json(json) +end + +function xray_check() + local json = xray.to_check("") + http_write_json(json) +end + +function xray_update() + local json = nil + local task = http.formvalue("task") + if task == "extract" then + json = xray.to_extract(http.formvalue("file"), http.formvalue("subfix")) + elseif task == "move" then + json = xray.to_move(http.formvalue("file")) + else + json = xray.to_download(http.formvalue("url"), http.formvalue("size")) + end + + http_write_json(json) +end + +function trojan_go_check() + local json = trojan_go.to_check("") + http_write_json(json) +end + +function trojan_go_update() + local json = nil + local task = http.formvalue("task") + if task == "extract" then + json = trojan_go.to_extract(http.formvalue("file"), http.formvalue("subfix")) + elseif task == "move" then + json = trojan_go.to_move(http.formvalue("file")) + else + json = trojan_go.to_download(http.formvalue("url"), http.formvalue("size")) + end + + http_write_json(json) +end + +function hysteria_check() + local json = hysteria.to_check("") + http_write_json(json) +end + +function hysteria_update() + local json = nil + local task = http.formvalue("task") + if task == "move" then + json = hysteria.to_move(http.formvalue("file")) + else + json = hysteria.to_download(http.formvalue("url"), http.formvalue("size")) + end + + http_write_json(json) +end + diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/api.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/api.lua new file mode 100755 index 000000000..50d3e989a --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/api.lua @@ -0,0 +1,617 @@ +module("luci.model.cbi.passwall.api.api", package.seeall) +fs = require "nixio.fs" +sys = require "luci.sys" +uci = require"luci.model.uci".cursor() +util = require "luci.util" +datatypes = require "luci.cbi.datatypes" +jsonc = require "luci.jsonc" +i18n = require "luci.i18n" + +appname = "passwall" +curl = "/usr/bin/curl" +curl_args = {"-skfL", "--connect-timeout 3", "--retry 3", "-m 60"} +command_timeout = 300 +LEDE_BOARD = nil +DISTRIB_TARGET = nil + +function base64Decode(text) + local raw = text + if not text then return '' end + text = text:gsub("%z", "") + text = text:gsub("%c", "") + text = text:gsub("_", "/") + text = text:gsub("-", "+") + local mod4 = #text % 4 + text = text .. string.sub('====', mod4 + 1) + local result = nixio.bin.b64decode(text) + if result then + return result:gsub("%z", "") + else + return raw + end +end + +function url(...) + local url = string.format("admin/services/%s", appname) + local args = { ... } + for i, v in pairs(args) do + if v ~= "" then + url = url .. "/" .. v + end + end + return require "luci.dispatcher".build_url(url) +end + +function trim(s) + return (s:gsub("^%s*(.-)%s*$", "%1")) +end + +function is_exist(table, value) + for index, k in ipairs(table) do + if k == value then + return true + end + end + return false +end + +function repeat_exist(table, value) + local count = 0 + for index, k in ipairs(table) do + if k:find("-") and k == value then + count = count + 1 + end + end + if count > 1 then + return true + end + return false +end + +function get_args(arg) + local var = {} + for i, arg_k in pairs(arg) do + if i > 0 then + local v = arg[i + 1] + if v then + if repeat_exist(arg, v) == false then + var[arg_k] = v + end + end + end + end + return var +end + +function strToTable(str) + if str == nil or type(str) ~= "string" then + return {} + end + + return loadstring("return " .. str)() +end + +function is_normal_node(e) + if e and e.type and e.protocol and (e.protocol == "_balancing" or e.protocol == "_shunt") then + return false + end + return true +end + +function is_special_node(e) + return is_normal_node(e) == false +end + +function is_ip(val) + if is_ipv6(val) then + val = get_ipv6_only(val) + end + return datatypes.ipaddr(val) +end + +function is_ipv6(val) + local str = val + local address = val:match('%[(.*)%]') + if address then + str = address + end + if datatypes.ip6addr(str) then + return true + end + return false +end + +function is_ipv6addrport(val) + if is_ipv6(val) then + local address, port = val:match('%[(.*)%]:([^:]+)$') + if port then + return datatypes.port(port) + end + end + return false +end + +function get_ipv6_only(val) + local result = "" + if is_ipv6(val) then + result = val + if val:match('%[(.*)%]') then + result = val:match('%[(.*)%]') + end + end + return result +end + +function get_ipv6_full(val) + local result = "" + if is_ipv6(val) then + result = val + if not val:match('%[(.*)%]') then + result = "[" .. result .. "]" + end + end + return result +end + +function get_ip_type(val) + if is_ipv6(val) then + return "6" + elseif datatypes.ip4addr(val) then + return "4" + end + return "" +end + +function is_mac(val) + return datatypes.macaddr(val) +end + +function ip_or_mac(val) + if val then + if get_ip_type(val) == "4" then + return "ip" + end + if is_mac(val) then + return "mac" + end + end + return "" +end + +function iprange(val) + if val then + local ipStart, ipEnd = val:match("^([^/]+)-([^/]+)$") + if (ipStart and datatypes.ip4addr(ipStart)) and (ipEnd and datatypes.ip4addr(ipEnd)) then + return true + end + end + return false +end + +function get_valid_nodes() + local nodes_ping = uci_get_type("global_other", "nodes_ping") or "" + local nodes = {} + uci:foreach(appname, "nodes", function(e) + e.id = e[".name"] + if e.type and e.remarks then + if e.protocol and (e.protocol == "_balancing" or e.protocol == "_shunt") then + e["remark"] = "%s:[%s] " % {i18n.translatef(e.type .. e.protocol), e.remarks} + e["node_type"] = "special" + nodes[#nodes + 1] = e + end + if e.port and e.address then + local address = e.address + if is_ip(address) or datatypes.hostname(address) then + local type = e.type + if (type == "V2ray" or type == "Xray") and e.protocol then + local protocol = e.protocol + if protocol == "vmess" then + protocol = "VMess" + elseif protocol == "vless" then + protocol = "VLESS" + else + protocol = protocol:gsub("^%l",string.upper) + end + type = type .. " " .. protocol + end + if is_ipv6(address) then address = get_ipv6_full(address) end + e["remark"] = "%s:[%s]" % {type, e.remarks} + if nodes_ping:find("info") then + e["remark"] = "%s:[%s] %s:%s" % {type, e.remarks, address, e.port} + end + e.node_type = "normal" + nodes[#nodes + 1] = e + end + end + end + end) + return nodes +end + +function get_full_node_remarks(n) + local remarks = "" + if n then + if n.protocol and (n.protocol == "_balancing" or n.protocol == "_shunt") then + remarks = "%s:[%s] " % {i18n.translatef(n.type .. n.protocol), n.remarks} + else + local type2 = n.type + if (n.type == "V2ray" or n.type == "Xray") and n.protocol then + local protocol = n.protocol + if protocol == "vmess" then + protocol = "VMess" + elseif protocol == "vless" then + protocol = "VLESS" + else + protocol = protocol:gsub("^%l",string.upper) + end + type2 = type2 .. " " .. protocol + end + remarks = "%s:[%s] %s:%s" % {type2, n.remarks, n.address, n.port} + end + end + return remarks +end + +function gen_uuid(format) + local uuid = sys.exec("echo -n $(cat /proc/sys/kernel/random/uuid)") + if format == nil then + uuid = string.gsub(uuid, "-", "") + end + return uuid +end + +function uci_get_type(type, config, default) + local value = uci:get_first(appname, type, config, default) or sys.exec("echo -n $(uci -q get " .. appname .. ".@" .. type .."[0]." .. config .. ")") + if (value == nil or value == "") and (default and default ~= "") then + value = default + end + return value +end + +function uci_get_type_id(id, config, default) + local value = uci:get(appname, id, config, default) or sys.exec("echo -n $(uci -q get " .. appname .. "." .. id .. "." .. config .. ")") + if (value == nil or value == "") and (default and default ~= "") then + value = default + end + return value +end + +function chmod_755(file) + if file and file ~= "" then + if not fs.access(file, "rwx", "rx", "rx") then + fs.chmod(file, 755) + end + end +end + +function get_customed_path(e) + return uci_get_type("global_app", e .. "_file") +end + +function is_finded(e) + return luci.sys.exec('type -t -p "/bin/%s" -p "%s" "%s"' % {e, get_customed_path(e), e}) ~= "" and true or false +end + + +function clone(org) + local function copy(org, res) + for k,v in pairs(org) do + if type(v) ~= "table" then + res[k] = v; + else + res[k] = {}; + copy(v, res[k]) + end + end + end + + local res = {} + copy(org, res) + return res +end + +function get_bin_version_cache(file, cmd) + sys.call("mkdir -p /tmp/etc/passwall_tmp") + if fs.access(file) then + chmod_755(file) + local md5 = sys.exec("echo -n $(md5sum " .. file .. " | awk '{print $1}')") + if fs.access("/tmp/etc/passwall_tmp/" .. md5) then + return sys.exec("echo -n $(cat /tmp/etc/passwall_tmp/%s)" % md5) + else + local version = sys.exec(string.format("echo -n $(%s %s)", file, cmd)) + sys.call("echo '" .. version .. "' > " .. "/tmp/etc/passwall_tmp/" .. md5) + return version + end + end + return "" +end + +function get_v2ray_path() + local path = uci_get_type("global_app", "v2ray_file") + return path +end + +function get_v2ray_version(file) + if file == nil then file = get_v2ray_path() end + local cmd = "-version | awk '{print $2}' | sed -n 1P" + return get_bin_version_cache(file, cmd) +end + +function get_xray_path() + local path = uci_get_type("global_app", "xray_file") + return path +end + +function get_xray_version(file) + if file == nil then file = get_xray_path() end + local cmd = "-version | awk '{print $2}' | sed -n 1P" + return get_bin_version_cache(file, cmd) +end + +function get_trojan_go_path() + local path = uci_get_type("global_app", "trojan_go_file") + return path +end + +function get_trojan_go_version(file) + if file == nil then file = get_trojan_go_path() end + local cmd = "-version | awk '{print $2}' | sed -n 1P" + return get_bin_version_cache(file, cmd) +end + +function get_brook_path() + local path = uci_get_type("global_app", "brook_file") + return path +end + +function get_brook_version(file) + if file == nil then file = get_brook_path() end + local cmd = "-v | awk '{print $3}'" + return get_bin_version_cache(file, cmd) +end + +function get_hysteria_path() + local path = uci_get_type("global_app", "hysteria_file") + return path +end + +function get_hysteria_version(file) + if file == nil then file = get_hysteria_path() end + local cmd = "-v | awk '{print $3}'" + return get_bin_version_cache(file, cmd) +end + +function is_file(path) + if path and #path > 1 then + if sys.exec('[ -f "%s" ] && echo -n 1' % path) == "1" then + return true + end + end + return nil +end + +function is_dir(path) + if path and #path > 1 then + if sys.exec('[ -d "%s" ] && echo -n 1' % path) == "1" then + return true + end + end + return nil +end + +function get_final_dir(path) + if is_dir(path) then + return path + else + return get_final_dir(fs.dirname(path)) + end +end + +function get_free_space(dir) + if dir == nil then dir = "/" end + if sys.call("df -k " .. dir .. " >/dev/null 2>&1") == 0 then + return tonumber(sys.exec("echo -n $(df -k " .. dir .. " | awk 'NR>1' | awk '{print $4}')")) + end + return 0 +end + +function get_file_space(file) + if file == nil then return 0 end + if fs.access(file) then + return tonumber(sys.exec("echo -n $(du -k " .. file .. " | awk '{print $1}')")) + end + return 0 +end + +function _unpack(t, i) + i = i or 1 + if t[i] ~= nil then return t[i], _unpack(t, i + 1) end +end + +function exec(cmd, args, writer, timeout) + local os = require "os" + local nixio = require "nixio" + + local fdi, fdo = nixio.pipe() + local pid = nixio.fork() + + if pid > 0 then + fdo:close() + + if writer or timeout then + local starttime = os.time() + while true do + if timeout and os.difftime(os.time(), starttime) >= timeout then + nixio.kill(pid, nixio.const.SIGTERM) + return 1 + end + + if writer then + local buffer = fdi:read(2048) + if buffer and #buffer > 0 then + writer(buffer) + end + end + + local wpid, stat, code = nixio.waitpid(pid, "nohang") + + if wpid and stat == "exited" then return code end + + if not writer and timeout then nixio.nanosleep(1) end + end + else + local wpid, stat, code = nixio.waitpid(pid) + return wpid and stat == "exited" and code + end + elseif pid == 0 then + nixio.dup(fdo, nixio.stdout) + fdi:close() + fdo:close() + nixio.exece(cmd, args, nil) + nixio.stdout:close() + os.exit(1) + end +end + +function compare_versions(ver1, comp, ver2) + local table = table + + if not ver1 then ver1 = "" end + if not ver2 then ver2 = "" end + + local av1 = util.split(ver1, "[%.%-]", nil, true) + local av2 = util.split(ver2, "[%.%-]", nil, true) + + local max = table.getn(av1) + local n2 = table.getn(av2) + if (max < n2) then max = n2 end + + for i = 1, max, 1 do + local s1 = tonumber(av1[i] or 0) or 0 + local s2 = tonumber(av2[i] or 0) or 0 + + if comp == "~=" and (s1 ~= s2) then return true end + if (comp == "<" or comp == "<=") and (s1 < s2) then return true end + if (comp == ">" or comp == ">=") and (s1 > s2) then return true end + if (s1 ~= s2) then return false end + end + + return not (comp == "<" or comp == ">") +end + +function auto_get_arch() + local arch = nixio.uname().machine or "" + if fs.access("/usr/lib/os-release") then + LEDE_BOARD = sys.exec("echo -n $(grep 'LEDE_BOARD' /usr/lib/os-release | awk -F '[\\042\\047]' '{print $2}')") + end + if fs.access("/etc/openwrt_release") then + DISTRIB_TARGET = sys.exec("echo -n $(grep 'DISTRIB_TARGET' /etc/openwrt_release | awk -F '[\\042\\047]' '{print $2}')") + end + + if arch == "mips" then + if LEDE_BOARD and LEDE_BOARD ~= "" then + if string.match(LEDE_BOARD, "ramips") == "ramips" then + arch = "ramips" + else + arch = sys.exec("echo '" .. LEDE_BOARD .. "' | grep -oE 'ramips|ar71xx'") + end + elseif DISTRIB_TARGET and DISTRIB_TARGET ~= "" then + if string.match(DISTRIB_TARGET, "ramips") == "ramips" then + arch = "ramips" + else + arch = sys.exec("echo '" .. DISTRIB_TARGET .. "' | grep -oE 'ramips|ar71xx'") + end + end + end + + return util.trim(arch) +end + +function get_file_info(arch) + local file_tree = "" + local sub_version = "" + + if arch == "x86_64" then + file_tree = "amd64" + elseif arch == "aarch64" then + file_tree = "arm64" + elseif arch == "ramips" then + file_tree = "mipsle" + elseif arch == "ar71xx" then + file_tree = "mips" + elseif arch:match("^i[%d]86$") then + file_tree = "386" + elseif arch:match("^armv[5-8]") then + file_tree = "arm" + sub_version = arch:match("[5-8]") + if LEDE_BOARD and string.match(LEDE_BOARD, "bcm53xx") == "bcm53xx" then + sub_version = "5" + elseif DISTRIB_TARGET and string.match(DISTRIB_TARGET, "bcm53xx") == + "bcm53xx" then + sub_version = "5" + end + sub_version = "5" + end + + return file_tree, sub_version +end + +function get_api_json(url) + local jsonc = require "luci.jsonc" + local json_content = luci.sys.exec(curl .. " " .. _unpack(curl_args) .. " " .. url) + if json_content == "" then return {} end + return jsonc.parse(json_content) or {} +end + +function common_to_check(api_url, local_version, match_file_name) + local json = get_api_json(api_url) + + if #json > 0 then + json = json[1] + end + + if json.tag_name == nil then + return { + code = 1, + error = i18n.translate("Get remote version info failed.") + } + end + + local remote_version = json.tag_name + local has_update = compare_versions(local_version:match("[^v]+"), "<", remote_version:match("[^v]+")) + + if not has_update then + return { + code = 0, + local_version = local_version, + remote_version = remote_version + } + end + + local asset = {} + for _, v in ipairs(json.assets) do + if v.name and v.name:match(match_file_name) then + asset = v + break + end + end + if not asset.browser_download_url then + return { + code = 1, + local_version = local_version, + remote_version = remote_version, + html_url = json.html_url, + data = asset, + error = i18n.translate("New version found, but failed to get new version download url.") + } + end + + return { + code = 0, + has_update = true, + local_version = local_version, + remote_version = remote_version, + html_url = json.html_url, + data = asset + } +end \ No newline at end of file diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/brook.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/brook.lua new file mode 100644 index 000000000..8941b663a --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/brook.lua @@ -0,0 +1,134 @@ +module("luci.model.cbi.passwall.api.brook", package.seeall) +local api = require "luci.model.cbi.passwall.api.api" +local fs = api.fs +local sys = api.sys +local util = api.util +local i18n = api.i18n + +local pre_release_url = "https://api.github.com/repos/txthinking/brook/releases?per_page=1" +local release_url = "https://api.github.com/repos/txthinking/brook/releases/latest" +local api_url = release_url +local app_path = api.get_brook_path() or "" + +function check_path() + if app_path == "" then + return { + code = 1, + error = i18n.translatef("You did not fill in the %s path. Please save and apply then update manually.", "Brook") + } + end + return { + code = 0 + } +end + +function to_check(arch) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not arch or arch == "" then arch = api.auto_get_arch() end + + local file_tree, sub_version = api.get_file_info(arch) + + if file_tree == "" then + return { + code = 1, + error = i18n.translate("Can't determine ARCH, or ARCH not supported.") + } + end + + return api.common_to_check(api_url, api.get_brook_version(), "linux_" .. file_tree .. sub_version) +end + +function to_download(url, size) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not url or url == "" then + return {code = 1, error = i18n.translate("Download url is required.")} + end + + sys.call("/bin/rm -f /tmp/brook_download.*") + + local tmp_file = util.trim(util.exec("mktemp -u -t brook_download.XXXXXX")) + + if size then + local kb1 = api.get_free_space("/tmp") + if tonumber(size) > tonumber(kb1) then + return {code = 1, error = i18n.translatef("%s not enough space.", "/tmp")} + end + end + + result = api.exec(api.curl, {api._unpack(api.curl_args), "-o", tmp_file, url}, nil, api.command_timeout) == 0 + + if not result then + api.exec("/bin/rm", {"-f", tmp_file}) + return { + code = 1, + error = i18n.translatef("File download failed or timed out: %s", url) + } + end + + return {code = 0, file = tmp_file} +end + +function to_move(file) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not file or file == "" or not fs.access(file) then + sys.call("/bin/rm -rf /tmp/brook_download.*") + return {code = 1, error = i18n.translate("Client file is required.")} + end + + local new_version = api.get_brook_version(file) + if new_version == "" then + sys.call("/bin/rm -rf /tmp/brook_download.*") + return { + code = 1, + error = i18n.translate("The client file is not suitable for current device.") + } + end + + local flag = sys.call('pgrep -af "passwall/.*brook" >/dev/null') + if flag == 0 then + sys.call("/etc/init.d/passwall stop") + end + + local old_app_size = 0 + if fs.access(app_path) then + old_app_size = api.get_file_space(app_path) + end + local new_app_size = api.get_file_space(file) + local final_dir = api.get_final_dir(app_path) + local final_dir_free_size = api.get_free_space(final_dir) + if final_dir_free_size > 0 then + final_dir_free_size = final_dir_free_size + old_app_size + if new_app_size > final_dir_free_size then + sys.call("/bin/rm -rf /tmp/brook_download.*") + return {code = 1, error = i18n.translatef("%s not enough space.", final_dir)} + end + end + + result = api.exec("/bin/mv", {"-f", file, app_path}, nil, api.command_timeout) == 0 + + sys.call("/bin/rm -rf /tmp/brook_download.*") + if flag == 0 then + sys.call("/etc/init.d/passwall restart >/dev/null 2>&1 &") + end + + if not result or not fs.access(app_path) then + return { + code = 1, + error = i18n.translatef("Can't move new file to path: %s", app_path) + } + end + + return {code = 0} +end diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_hysteria.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_hysteria.lua new file mode 100644 index 000000000..11d9d643c --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_hysteria.lua @@ -0,0 +1,70 @@ +local api = require "luci.model.cbi.passwall.api.api" +local uci = api.uci +local jsonc = api.jsonc + +local var = api.get_args(arg) +local node_id = var["-node"] +if not node_id then + print("-node 不能为空") + return +end +local node = uci:get_all("passwall", node_id) +local local_tcp_redir_port = var["-local_tcp_redir_port"] +local local_udp_redir_port = var["-local_udp_redir_port"] +local local_socks_address = var["-local_socks_address"] or "0.0.0.0" +local local_socks_port = var["-local_socks_port"] +local local_socks_username = var["-local_socks_username"] +local local_socks_password = var["-local_socks_password"] +local local_http_address = var["-local_http_address"] or "0.0.0.0" +local local_http_port = var["-local_http_port"] +local local_http_username = var["-local_http_username"] +local local_http_password = var["-local_http_password"] +local server_host = var["-server_host"] or node.address +local server_port = var["-server_port"] or node.port + +if api.is_ipv6(server_host) then + server_host = api.get_ipv6_full(server_host) +end +local server = server_host .. ":" .. server_port + +local config = { + server = server, + protocol = node.protocol or "udp", + obfs = node.hysteria_obfs, + auth = (node.hysteria_auth_type == "base64") and node.hysteria_auth_password or nil, + auth_str = (node.hysteria_auth_type == "string") and node.hysteria_auth_password or nil, + alpn = node.hysteria_alpn or nil, + server_name = node.tls_serverName, + insecure = (node.tls_allowInsecure == "1") and true or false, + up_mbps = tonumber(node.hysteria_up_mbps) or 10, + down_mbps = tonumber(node.hysteria_down_mbps) or 50, + retry = -1, + retry_interval = 5, + recv_window_conn = (node.hysteria_recv_window_conn) and tonumber(node.hysteria_recv_window_conn) or nil, + recv_window = (node.hysteria_recv_window) and tonumber(node.hysteria_recv_window) or nil, + disable_mtu_discovery = (node.hysteria_disable_mtu_discovery) and true or false, + socks5 = (local_socks_address and local_socks_port) and { + listen = local_socks_address .. ":" .. local_socks_port, + timeout = 300, + disable_udp = false, + user = (local_socks_username and local_socks_password) and local_socks_username, + password = (local_socks_username and local_socks_password) and local_socks_password, + } or nil, + http = (local_http_address and local_http_port) and { + listen = local_http_address .. ":" .. local_http_port, + timeout = 300, + disable_udp = false, + user = (local_http_username and local_http_password) and local_http_username, + password = (local_http_username and local_http_password) and local_http_password, + } or nil, + tproxy_tcp = (local_tcp_redir_port) and { + listen = "0.0.0.0:" .. local_tcp_redir_port, + timeout = 300 + } or nil, + tproxy_udp = (local_udp_redir_port) and { + listen = "0.0.0.0:" .. local_udp_redir_port, + timeout = 60 + } or nil +} + +print(jsonc.stringify(config, 1)) diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_naiveproxy.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_naiveproxy.lua new file mode 100644 index 000000000..054941fc0 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_naiveproxy.lua @@ -0,0 +1,28 @@ +local api = require "luci.model.cbi.passwall.api.api" +local uci = api.uci +local jsonc = api.jsonc + +local var = api.get_args(arg) +local node_id = var["-node"] +if not node_id then + print("-node 不能为空") + return +end +local node = uci:get_all("passwall", node_id) +local run_type = var["-run_type"] +local local_addr = var["-local_addr"] +local local_port = var["-local_port"] +local server_host = var["-server_host"] or node.address +local server_port = var["-server_port"] or node.port + +if api.is_ipv6(server_host) then + server_host = api.get_ipv6_full(server_host) +end +local server = server_host .. ":" .. server_port + +local config = { + listen = run_type .. "://" .. local_addr .. ":" .. local_port, + proxy = node.protocol .. "://" .. node.username .. ":" .. node.password .. "@" .. server +} + +print(jsonc.stringify(config, 1)) diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_shadowsocks.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_shadowsocks.lua new file mode 100644 index 000000000..8e2f179b2 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_shadowsocks.lua @@ -0,0 +1,108 @@ +local api = require "luci.model.cbi.passwall.api.api" +local uci = api.uci +local jsonc = api.jsonc + +local var = api.get_args(arg) +local node_id = var["-node"] +if not node_id then + print("-node 不能为空") + return +end +local node = uci:get_all("passwall", node_id) +local server_host = var["-server_host"] or node.address +local server_port = var["-server_port"] or node.port +local local_addr = var["-local_addr"] +local local_port = var["-local_port"] +local mode = var["-mode"] +local local_socks_address = var["-local_socks_address"] or "0.0.0.0" +local local_socks_port = var["-local_socks_port"] +local local_socks_username = var["-local_socks_username"] +local local_socks_password = var["-local_socks_password"] +local local_http_address = var["-local_http_address"] or "0.0.0.0" +local local_http_port = var["-local_http_port"] +local local_http_username = var["-local_http_username"] +local local_http_password = var["-local_http_password"] +local local_tcp_redir_port = var["-local_tcp_redir_port"] +local local_tcp_redir_address = var["-local_tcp_redir_address"] or "0.0.0.0" +local local_udp_redir_port = var["-local_udp_redir_port"] +local local_udp_redir_address = var["-local_udp_redir_address"] or "0.0.0.0" + +if api.is_ipv6(server_host) then + server_host = api.get_ipv6_only(server_host) +end +local server = server_host + +local config = { + server = server, + server_port = tonumber(server_port), + local_address = local_addr, + local_port = tonumber(local_port), + password = node.password, + method = node.method, + timeout = tonumber(node.timeout), + fast_open = (node.tcp_fast_open and node.tcp_fast_open == "true") and true or false, + reuse_port = true, + tcp_tproxy = var["-tcp_tproxy"] and true or nil +} + +if node.type == "SS" then + if node.plugin and node.plugin ~= "none" then + config.plugin = node.plugin + config.plugin_opts = node.plugin_opts or nil + end + config.mode = mode +elseif node.type == "SSR" then + config.protocol = node.protocol + config.protocol_param = node.protocol_param + config.obfs = node.obfs + config.obfs_param = node.obfs_param +elseif node.type == "SS-Rust" then + config = { + servers = { + { + address = server, + port = tonumber(server_port), + method = node.method, + password = node.password, + timeout = tonumber(node.timeout), + plugin = (node.plugin and node.plugin ~= "none") and node.plugin or nil, + plugin_opts = (node.plugin and node.plugin ~= "none") and node.plugin_opts or nil + } + }, + locals = {}, + fast_open = (node.tcp_fast_open and node.tcp_fast_open == "true") and true or false + } + if local_socks_address and local_socks_port then + table.insert(config.locals, { + local_address = local_socks_address, + local_port = tonumber(local_socks_port), + mode = "tcp_and_udp" + }) + end + if local_http_address and local_http_port then + table.insert(config.locals, { + protocol = "http", + local_address = local_http_address, + local_port = tonumber(local_http_port) + }) + end + if local_tcp_redir_address and local_tcp_redir_port then + table.insert(config.locals, { + protocol = "redir", + mode = "tcp_only", + tcp_redir = var["-tcp_tproxy"] and "tproxy" or nil, + local_address = local_tcp_redir_address, + local_port = tonumber(local_tcp_redir_port) + }) + end + if local_udp_redir_address and local_udp_redir_port then + table.insert(config.locals, { + protocol = "redir", + mode = "udp_only", + local_address = local_udp_redir_address, + local_port = tonumber(local_udp_redir_port) + }) + end +end + +print(jsonc.stringify(config, 1)) diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_trojan.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_trojan.lua new file mode 100644 index 000000000..844f5032b --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_trojan.lua @@ -0,0 +1,86 @@ +local api = require "luci.model.cbi.passwall.api.api" +local uci = api.uci +local json = api.jsonc + +local var = api.get_args(arg) +local node_id = var["-node"] +if not node_id then + print("-node 不能为空") + return +end +local node = uci:get_all("passwall", node_id) +local run_type = var["-run_type"] +local local_addr = var["-local_addr"] +local local_port = var["-local_port"] +local server_host = var["-server_host"] or node.address +local server_port = var["-server_port"] or node.port +local loglevel = var["-loglevel"] or 2 +local cipher = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-SHA:AES256-SHA:DES-CBC3-SHA" +local cipher13 = "TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384" + +if api.is_ipv6(server_host) then + server_host = api.get_ipv6_only(server_host) +end +local server = server_host + +local trojan = { + run_type = run_type, + local_addr = local_addr, + local_port = tonumber(local_port), + remote_addr = server, + remote_port = tonumber(server_port), + password = {node.password}, + log_level = tonumber(loglevel), + ssl = { + verify = (node.tls_allowInsecure ~= "1") and true or false, + verify_hostname = true, + cert = nil, + cipher = cipher, + cipher_tls13 = cipher13, + sni = node.tls_serverName or server, + alpn = {"h2", "http/1.1"}, + reuse_session = true, + session_ticket = (node.tls_sessionTicket and node.tls_sessionTicket == "1") and true or false, + curves = "" + }, + udp_timeout = 60, + tcp = { + use_tproxy = (node.type == "Trojan-Plus" and var["-use_tproxy"]) and true or nil, + no_delay = true, + keep_alive = true, + reuse_port = true, + fast_open = (node.tcp_fast_open == "true") and true or false, + fast_open_qlen = 20 + } +} +if node.type == "Trojan-Go" then + trojan.ssl.cipher = nil + trojan.ssl.cipher_tls13 = nil + trojan.ssl.fingerprint = (node.fingerprint ~= "disable") and node.fingerprint or "" + trojan.ssl.alpn = (node.trojan_transport == 'ws') and {} or {"h2", "http/1.1"} + if node.tls ~= "1" and node.trojan_transport == "original" then trojan.ssl = nil end + trojan.transport_plugin = ((not node.tls or node.tls ~= "1") and node.trojan_transport == "original") and { + enabled = node.plugin_type ~= nil, + type = node.plugin_type or "plaintext", + command = node.plugin_type ~= "plaintext" and node.plugin_cmd or nil, + option = node.plugin_type ~= "plaintext" and node.plugin_option or nil, + arg = node.plugin_type ~= "plaintext" and { node.plugin_arg } or nil, + env = {} + } or nil + trojan.websocket = (node.trojan_transport == 'ws') and { + enabled = true, + path = node.ws_path or "/", + host = node.ws_host or (node.tls_serverName or server) + } or nil + trojan.shadowsocks = (node.ss_aead == "1") and { + enabled = true, + method = node.ss_aead_method or "aes_128_gcm", + password = node.ss_aead_pwd or "" + } or nil + trojan.mux = (node.smux == "1") and { + enabled = true, + concurrency = tonumber(node.mux_concurrency), + idle_timeout = tonumber(node.smux_idle_timeout) + } or nil +end +print(json.stringify(trojan, 1)) diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_v2ray.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_v2ray.lua new file mode 100644 index 000000000..fe1421195 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_v2ray.lua @@ -0,0 +1,709 @@ +module("luci.model.cbi.passwall.api.gen_v2ray", package.seeall) +local api = require "luci.model.cbi.passwall.api.api" + +local var = api.get_args(arg) +local flag = var["-flag"] +local node_id = var["-node"] +local tcp_proxy_way = var["-tcp_proxy_way"] or "redirect" +local tcp_redir_port = var["-tcp_redir_port"] +local udp_redir_port = var["-udp_redir_port"] +local sniffing = var["-sniffing"] +local route_only = var["-route_only"] +local local_socks_address = var["-local_socks_address"] or "0.0.0.0" +local local_socks_port = var["-local_socks_port"] +local local_socks_username = var["-local_socks_username"] +local local_socks_password = var["-local_socks_password"] +local local_http_address = var["-local_http_address"] or "0.0.0.0" +local local_http_port = var["-local_http_port"] +local local_http_username = var["-local_http_username"] +local local_http_password = var["-local_http_password"] +local dns_listen_port = var["-dns_listen_port"] +local dns_server = var["-dns_server"] +local dns_tcp_server = var["-dns_tcp_server"] +local dns_cache = var["-dns_cache"] +local doh_url = var["-doh_url"] +local doh_host = var["-doh_host"] +local dns_client_ip = var["-dns_client_ip"] +local dns_query_strategy = var["-dns_query_strategy"] +local dns_socks_address = var["-dns_socks_address"] +local dns_socks_port = var["-dns_socks_port"] +local dns_fakedns = var["-dns_fakedns"] +local loglevel = var["-loglevel"] or "warning" +local new_port + +local uci = api.uci +local sys = api.sys +local jsonc = api.jsonc +local appname = api.appname +local fs = api.fs +local dns = nil +local fakedns = nil +local inbounds = {} +local outbounds = {} +local routing = nil + +local function get_new_port() + if new_port then + new_port = tonumber(sys.exec(string.format("echo -n $(/usr/share/%s/app.sh get_new_port %s tcp)", appname, new_port + 1))) + else + new_port = tonumber(sys.exec(string.format("echo -n $(/usr/share/%s/app.sh get_new_port auto tcp)", appname))) + end + return new_port +end + +local function get_domain_excluded() + local path = string.format("/usr/share/%s/rules/domains_excluded", appname) + local content = fs.readfile(path) + if not content then return nil end + local hosts = {} + string.gsub(content, '[^' .. "\n" .. ']+', function(w) + local s = w:gsub("^%s*(.-)%s*$", "%1") -- Trim + if s == "" then return end + if s:find("#") and s:find("#") == 1 then return end + if not s:find("#") or s:find("#") ~= 1 then table.insert(hosts, s) end + end) + if #hosts == 0 then hosts = nil end + return hosts +end + +function gen_outbound(node, tag, proxy_table) + local proxy = 0 + local proxy_tag = "nil" + if proxy_table ~= nil and type(proxy_table) == "table" then + proxy = proxy_table.proxy or 0 + proxy_tag = proxy_table.tag or "nil" + end + local result = nil + if node and node ~= "nil" then + local node_id = node[".name"] + if tag == nil then + tag = node_id + end + + if node.type == "V2ray" or node.type == "Xray" then + proxy = 0 + if proxy_tag ~= "nil" then + node.proxySettings = { + tag = proxy_tag, + transportLayer = true + } + end + end + + if node.type ~= "V2ray" and node.type ~= "Xray" then + if node.type == "Socks" then + node.protocol = "socks" + node.transport = "tcp" + else + local relay_port = node.port + new_port = get_new_port() + sys.call(string.format('/usr/share/%s/app.sh run_socks "%s"> /dev/null', + appname, + string.format("flag=%s node=%s bind=%s socks_port=%s config_file=%s relay_port=%s", + new_port, --flag + node_id, --node + "127.0.0.1", --bind + new_port, --socks port + string.format("%s_%s_%s_%s.json", flag, tag, node_id, new_port), --config file + (proxy == 1 and proxy_tag ~= "nil" and relay_port) and tostring(relay_port) or "" --relay port + ) + ) + ) + node = {} + node.protocol = "socks" + node.transport = "tcp" + node.address = "127.0.0.1" + node.port = new_port + end + node.stream_security = "none" + else + if node.tls and node.tls == "1" then + node.stream_security = "tls" + if node.type == "Xray" and node.xtls and node.xtls == "1" then + node.stream_security = "xtls" + end + end + end + + result = { + _flag_tag = node_id, + _flag_proxy = proxy, + _flag_proxy_tag = proxy_tag, + tag = tag, + proxySettings = node.proxySettings or nil, + protocol = node.protocol, + mux = (node.stream_security ~= "xtls") and { + enabled = (node.mux == "1") and true or false, + concurrency = (node.mux_concurrency) and tonumber(node.mux_concurrency) or 8 + } or nil, + -- 底层传输配置 + streamSettings = (node.protocol == "vmess" or node.protocol == "vless" or node.protocol == "socks" or node.protocol == "shadowsocks" or node.protocol == "trojan") and { + network = node.transport, + security = node.stream_security, + xtlsSettings = (node.stream_security == "xtls") and { + serverName = node.tls_serverName, + allowInsecure = (node.tls_allowInsecure == "1") and true or false + } or nil, + tlsSettings = (node.stream_security == "tls") and { + serverName = node.tls_serverName, + allowInsecure = (node.tls_allowInsecure == "1") and true or false, + fingerprint = (node.type == "Xray" and node.fingerprint and node.fingerprint ~= "disable") and node.fingerprint or nil + } or nil, + tcpSettings = (node.transport == "tcp" and node.protocol ~= "socks") and { + header = { + type = node.tcp_guise or "none", + request = (node.tcp_guise == "http") and { + path = node.tcp_guise_http_path or {"/"}, + headers = { + Host = node.tcp_guise_http_host or {} + } + } or nil + } + } or nil, + kcpSettings = (node.transport == "mkcp") and { + mtu = tonumber(node.mkcp_mtu), + tti = tonumber(node.mkcp_tti), + uplinkCapacity = tonumber(node.mkcp_uplinkCapacity), + downlinkCapacity = tonumber(node.mkcp_downlinkCapacity), + congestion = (node.mkcp_congestion == "1") and true or false, + readBufferSize = tonumber(node.mkcp_readBufferSize), + writeBufferSize = tonumber(node.mkcp_writeBufferSize), + seed = (node.mkcp_seed and node.mkcp_seed ~= "") and node.mkcp_seed or nil, + header = {type = node.mkcp_guise} + } or nil, + wsSettings = (node.transport == "ws") and { + path = node.ws_path or "", + headers = (node.ws_host ~= nil) and + {Host = node.ws_host} or nil, + maxEarlyData = tonumber(node.ws_maxEarlyData) or nil + } or nil, + httpSettings = (node.transport == "h2") and { + path = node.h2_path, + host = node.h2_host, + read_idle_timeout = tonumber(node.h2_read_idle_timeout) or nil, + health_check_timeout = tonumber(node.h2_health_check_timeout) or nil + } or nil, + dsSettings = (node.transport == "ds") and + {path = node.ds_path} or nil, + quicSettings = (node.transport == "quic") and { + security = node.quic_security, + key = node.quic_key, + header = {type = node.quic_guise} + } or nil, + grpcSettings = (node.transport == "grpc") and { + serviceName = node.grpc_serviceName, + multiMode = (node.grpc_mode == "multi") and true or nil, + idle_timeout = tonumber(node.grpc_idle_timeout) or nil, + health_check_timeout = tonumber(node.grpc_health_check_timeout) or nil, + permit_without_stream = (node.grpc_permit_without_stream == "1") and true or nil, + initial_windows_size = tonumber(node.grpc_initial_windows_size) or nil + } or nil + } or nil, + settings = { + vnext = (node.protocol == "vmess" or node.protocol == "vless") and { + { + address = node.address, + port = tonumber(node.port), + users = { + { + id = node.uuid, + level = 0, + security = (node.protocol == "vmess") and node.security or nil, + encryption = node.encryption or "none", + flow = node.flow or nil + } + } + } + } or nil, + servers = (node.protocol == "socks" or node.protocol == "http" or node.protocol == "shadowsocks" or node.protocol == "trojan") and { + { + address = node.address, + port = tonumber(node.port), + method = node.method or nil, + flow = node.flow or nil, + ivCheck = (node.protocol == "shadowsocks") and node.iv_check == "1" or nil, + password = node.password or "", + users = (node.username and node.password) and { + { + user = node.username, + pass = node.password + } + } or nil + } + } or nil + } + } + local alpn = {} + if node.alpn and node.alpn ~= "default" then + string.gsub(node.alpn, '[^' .. "," .. ']+', function(w) + table.insert(alpn, w) + end) + end + if alpn and #alpn > 0 then + if result.streamSettings.tlsSettings then + result.streamSettings.tlsSettings.alpn = alpn + end + if result.streamSettings.xtlsSettings then + result.streamSettings.xtlsSettings.alpn = alpn + end + end + end + return result +end + +if node_id then + local node = uci:get_all(appname, node_id) + if local_socks_port then + local inbound = { + listen = local_socks_address, + port = tonumber(local_socks_port), + protocol = "socks", + settings = {auth = "noauth", udp = true}, + sniffing = {enabled = true, destOverride = {"http", "tls"}} + } + if local_socks_username and local_socks_password and local_socks_username ~= "" and local_socks_password ~= "" then + inbound.settings.auth = "password" + inbound.settings.accounts = { + { + user = local_socks_username, + pass = local_socks_password + } + } + end + table.insert(inbounds, inbound) + end + if local_http_port then + local inbound = { + listen = local_http_address, + port = tonumber(local_http_port), + protocol = "http", + settings = {allowTransparent = false} + } + if local_http_username and local_http_password and local_http_username ~= "" and local_http_password ~= "" then + inbound.settings.accounts = { + { + user = local_http_username, + pass = local_http_password + } + } + end + table.insert(inbounds, inbound) + end + + if tcp_redir_port then + table.insert(inbounds, { + port = tonumber(tcp_redir_port), + protocol = "dokodemo-door", + settings = {network = "tcp", followRedirect = true}, + streamSettings = {sockopt = {tproxy = tcp_proxy_way}}, + sniffing = {enabled = sniffing and true or false, destOverride = {"http", "tls", (dns_fakedns) and "fakedns"}, metadataOnly = false, routeOnly = route_only and true or nil, domainsExcluded = (sniffing and not route_only) and get_domain_excluded() or nil} + }) + end + + if udp_redir_port then + table.insert(inbounds, { + port = tonumber(udp_redir_port), + protocol = "dokodemo-door", + settings = {network = "udp", followRedirect = true}, + streamSettings = {sockopt = {tproxy = "tproxy"}}, + sniffing = {enabled = sniffing and true or false, destOverride = {"http", "tls", (dns_fakedns) and "fakedns"}, metadataOnly = false, routeOnly = route_only and true or nil, domainsExcluded = (sniffing and not route_only) and get_domain_excluded() or nil} + }) + end + + local up_trust_doh = uci:get(appname, "@global[0]", "up_trust_doh") + if up_trust_doh then + local t = {} + string.gsub(up_trust_doh, '[^' .. "," .. ']+', function (w) + table.insert(t, w) + end) + if #t > 1 then + local host = sys.exec("echo -n $(echo " .. t[1] .. " | sed 's/https:\\/\\///g' | awk -F ':' '{print $1}' | awk -F '/' '{print $1}')") + dns = { + hosts = { + [host] = t[2] + } + } + end + end + + if node.protocol == "_shunt" then + table.insert(outbounds, { + protocol = "freedom", + tag = "direct", + settings = { + domainStrategy = "UseIPv4" + }, + streamSettings = { + sockopt = { + mark = 255 + } + } + }) + table.insert(outbounds, { + protocol = "blackhole", + tag = "blackhole" + }) + local rules = {} + + local default_node_id = node.default_node or "_direct" + local default_outboundTag + if default_node_id == "_direct" then + default_outboundTag = "direct" + elseif default_node_id == "_blackhole" then + default_outboundTag = "blackhole" + else + local default_node = uci:get_all(appname, default_node_id) + local main_node_id = node.main_node or "nil" + local proxy = 0 + local proxy_tag + if main_node_id ~= "nil" then + local main_node = uci:get_all(appname, main_node_id) + if main_node and api.is_normal_node(main_node) and main_node_id ~= default_node_id then + local main_node_outbound = gen_outbound(main_node, "main") + if main_node_outbound then + table.insert(outbounds, main_node_outbound) + proxy = 1 + proxy_tag = "main" + if default_node.type ~= "V2ray" and default_node.type ~= "Xray" then + proxy_tag = nil + new_port = get_new_port() + table.insert(inbounds, { + tag = "proxy_default", + listen = "127.0.0.1", + port = new_port, + protocol = "dokodemo-door", + settings = {network = "tcp,udp", address = default_node.address, port = tonumber(default_node.port)} + }) + if default_node.tls_serverName == nil then + default_node.tls_serverName = default_node.address + end + default_node.address = "127.0.0.1" + default_node.port = new_port + table.insert(rules, 1, { + type = "field", + inboundTag = {"proxy_default"}, + outboundTag = "main" + }) + end + end + end + end + if default_node and api.is_normal_node(default_node) then + local default_outbound = gen_outbound(default_node, "default", { proxy = proxy, tag = proxy_tag }) + if default_outbound then + table.insert(outbounds, default_outbound) + default_outboundTag = "default" + end + end + end + + uci:foreach(appname, "shunt_rules", function(e) + local name = e[".name"] + if name and e.remarks then + local _node_id = node[name] or "nil" + local proxy_tag = node[name .. "_proxy_tag"] or "nil" + local outboundTag + if _node_id == "_direct" then + outboundTag = "direct" + elseif _node_id == "_blackhole" then + outboundTag = "blackhole" + elseif _node_id == "_default" then + outboundTag = "default" + else + if _node_id ~= "nil" then + local _node = uci:get_all(appname, _node_id) + if _node and api.is_normal_node(_node) then + local new_outbound + for index, value in ipairs(outbounds) do + if value["_flag_tag"] == _node_id and value["_flag_proxy_tag"] == proxy_tag then + new_outbound = api.clone(value) + break + end + end + if new_outbound then + new_outbound["tag"] = name + table.insert(outbounds, new_outbound) + outboundTag = name + else + if _node.type ~= "V2ray" and _node.type ~= "Xray" then + if proxy_tag ~= "nil" then + new_port = get_new_port() + table.insert(inbounds, { + tag = "proxy_" .. name, + listen = "127.0.0.1", + port = new_port, + protocol = "dokodemo-door", + settings = {network = "tcp,udp", address = _node.address, port = tonumber(_node.port)} + }) + if _node.tls_serverName == nil then + _node.tls_serverName = _node.address + end + _node.address = "127.0.0.1" + _node.port = new_port + table.insert(rules, 1, { + type = "field", + inboundTag = {"proxy_" .. name}, + outboundTag = proxy_tag + }) + end + end + local _outbound = gen_outbound(_node, name, { proxy = (proxy_tag ~= "nil") and 1 or 0, tag = (proxy_tag ~= "nil") and proxy_tag or nil }) + if _outbound then + table.insert(outbounds, _outbound) + outboundTag = name + end + end + end + end + end + if outboundTag then + if outboundTag == "default" then + outboundTag = default_outboundTag + end + local protocols = nil + if e["protocol"] and e["protocol"] ~= "" then + protocols = {} + string.gsub(e["protocol"], '[^' .. " " .. ']+', function(w) + table.insert(protocols, w) + end) + end + if e.domain_list then + local _domain = {} + string.gsub(e.domain_list, '[^' .. "\r\n" .. ']+', function(w) + table.insert(_domain, w) + end) + table.insert(rules, { + type = "field", + outboundTag = outboundTag, + domain = _domain, + protocol = protocols + }) + end + if e.ip_list then + local _ip = {} + string.gsub(e.ip_list, '[^' .. "\r\n" .. ']+', function(w) + table.insert(_ip, w) + end) + table.insert(rules, { + type = "field", + outboundTag = outboundTag, + ip = _ip, + protocol = protocols + }) + end + if not e.domain_list and not e.ip_list and protocols then + table.insert(rules, { + type = "field", + outboundTag = outboundTag, + protocol = protocols + }) + end + end + end + end) + + if default_outboundTag then + table.insert(rules, { + type = "field", + outboundTag = default_outboundTag, + network = "tcp,udp" + }) + end + + routing = { + domainStrategy = node.domainStrategy or "AsIs", + domainMatcher = node.domainMatcher or "hybrid", + rules = rules + } + elseif node.protocol == "_balancing" then + if node.balancing_node then + local nodes = node.balancing_node + local length = #nodes + for i = 1, length do + local node = uci:get_all(appname, nodes[i]) + local outbound = gen_outbound(node) + if outbound then table.insert(outbounds, outbound) end + end + routing = { + domainStrategy = node.domainStrategy or "AsIs", + domainMatcher = node.domainMatcher or "hybrid", + balancers = {{tag = "balancer", selector = nodes}}, + rules = { + {type = "field", network = "tcp,udp", balancerTag = "balancer"} + } + } + end + else + local outbound = gen_outbound(node) + if outbound then table.insert(outbounds, outbound) end + routing = { + domainStrategy = "AsIs", + domainMatcher = "hybrid", + rules = {} + } + end +end + +if dns_server or dns_fakedns then + table.insert(outbounds, { + protocol = "dns", + tag = "dns-out" + }) + local rules = {} + + dns = { + tag = "dns-in1", + disableCache = (dns_cache and dns_cache == "0") and true or false, + servers = { + dns_server + }, + clientIp = (dns_client_ip and dns_client_ip ~= "") and dns_client_ip or nil, + queryStrategy = (dns_query_strategy and dns_query_strategy ~= "") and dns_query_strategy or nil + } + if doh_url and doh_host then + dns.hosts = { + [doh_host] = dns_server + } + if not tcp_redir_port and not dns_socks_port then + doh_url = doh_url:gsub("https://", "https+local://") + end + dns.servers = { + doh_url + } + end + + if dns_tcp_server then + if not tcp_redir_port and not dns_socks_port then + dns_tcp_server = dns_tcp_server:gsub("tcp://", "tcp+local://") + end + dns.servers = { + dns_tcp_server + } + end + + if dns_fakedns then + fakedns = {} + fakedns[#fakedns + 1] = { + ipPool = "198.18.0.0/16", + poolSize = 65535 + } + dns_server = "1.1.1.1" + dns.servers = { + "fakedns" + } + end + + if dns_listen_port then + table.insert(inbounds, { + listen = "127.0.0.1", + port = tonumber(dns_listen_port), + protocol = "dokodemo-door", + tag = "dns-in", + settings = { + address = dns_server, + port = 53, + network = "tcp,udp" + } + }) + end + + table.insert(rules, { + type = "field", + inboundTag = { + "dns-in" + }, + outboundTag = "dns-out" + }) + + if dns_socks_address and dns_socks_port then + table.insert(outbounds, 1, { + tag = "out", + protocol = "socks", + streamSettings = { + network = "tcp", + security = "none" + }, + settings = { + servers = { + { + address = dns_socks_address, + port = tonumber(dns_socks_port) + } + } + } + }) + local outboundTag = "out" + table.insert(rules, { + type = "field", + inboundTag = { + "dns-in1" + }, + outboundTag = outboundTag + }) + end + + if node_id and tcp_redir_port and not dns_fakedns then + local outboundTag = node_id + local node = uci:get_all(appname, node_id) + if node.protocol == "_shunt" then + outboundTag = "default" + end + table.insert(rules, { + type = "field", + inboundTag = { + "dns-in1" + }, + outboundTag = outboundTag + }) + end + + if not routing then + routing = { + domainStrategy = "IPOnDemand", + rules = rules + } + else + for index, value in ipairs(rules) do + table.insert(routing.rules, 1, value) + end + end +end + +if inbounds or outbounds then + local config = { + log = { + -- error = string.format("/tmp/etc/%s/%s.log", appname, node[".name"]), + loglevel = loglevel + }, + -- DNS + dns = dns, + fakedns = fakedns, + -- 传入连接 + inbounds = inbounds, + -- 传出连接 + outbounds = outbounds, + -- 路由 + routing = routing, + -- 本地策略 + --[[ + policy = { + levels = { + [0] = { + handshake = 4, + connIdle = 300, + uplinkOnly = 2, + downlinkOnly = 5, + bufferSize = 10240, + statsUserUplink = false, + statsUserDownlink = false + } + }, + system = { + statsInboundUplink = false, + statsInboundDownlink = false + } + } + ]]-- + } + print(jsonc.stringify(config, 1)) +end diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_v2ray_proto.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_v2ray_proto.lua new file mode 100644 index 000000000..54c383f0e --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/gen_v2ray_proto.lua @@ -0,0 +1,111 @@ +local api = require "luci.model.cbi.passwall.api.api" +local jsonc = api.jsonc +local inbounds = {} +local outbounds = {} +local routing = nil + +local var = api.get_args(arg) +local local_socks_address = var["-local_socks_address"] or "0.0.0.0" +local local_socks_port = var["-local_socks_port"] +local local_socks_username = var["-local_socks_username"] +local local_socks_password = var["-local_socks_password"] +local local_http_address = var["-local_http_address"] or "0.0.0.0" +local local_http_port = var["-local_http_port"] +local local_http_username = var["-local_http_username"] +local local_http_password = var["-local_http_password"] +local server_proto = var["-server_proto"] +local server_address = var["-server_address"] +local server_port = var["-server_port"] +local server_username = var["-server_username"] +local server_password = var["-server_password"] + +function gen_outbound(proto, address, port, username, password) + local result = { + protocol = proto, + streamSettings = { + network = "tcp", + security = "none" + }, + settings = { + servers = { + { + address = address, + port = tonumber(port), + users = (username and password) and { + { + user = username, + pass = password + } + } or nil + } + } + } + } + return result +end + +if local_socks_address and local_socks_port then + local inbound = { + listen = local_socks_address, + port = tonumber(local_socks_port), + protocol = "socks", + settings = { + udp = true, + auth = "noauth" + } + } + if local_socks_username and local_socks_password and local_socks_username ~= "" and local_socks_password ~= "" then + inbound.settings.auth = "password" + inbound.settings.accounts = { + { + user = local_socks_username, + pass = local_socks_password + } + } + end + table.insert(inbounds, inbound) +end + +if local_http_address and local_http_port then + local inbound = { + listen = local_http_address, + port = tonumber(local_http_port), + protocol = "http", + settings = { + allowTransparent = false + } + } + if local_http_username and local_http_password and local_http_username ~= "" and local_http_password ~= "" then + inbound.settings.accounts = { + { + user = local_http_username, + pass = local_http_password + } + } + end + table.insert(inbounds, inbound) +end + +if server_proto ~= "nil" and server_address ~= "nil" and server_port ~= "nil" then + local outbound = gen_outbound(server_proto, server_address, server_port, server_username, server_password) + if outbound then table.insert(outbounds, outbound) end +end + +-- 额外传出连接 +table.insert(outbounds, { + protocol = "freedom", tag = "direct", settings = {keep = ""} +}) + +local config = { + log = { + -- error = string.format("/tmp/etc/passwall/%s.log", node[".name"]), + loglevel = "warning" + }, + -- 传入连接 + inbounds = inbounds, + -- 传出连接 + outbounds = outbounds, + -- 路由 + routing = routing +} +print(jsonc.stringify(config, 1)) diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/hysteria.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/hysteria.lua new file mode 100644 index 000000000..2d2e36128 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/hysteria.lua @@ -0,0 +1,134 @@ +module("luci.model.cbi.passwall.api.hysteria", package.seeall) +local api = require "luci.model.cbi.passwall.api.api" +local fs = api.fs +local sys = api.sys +local util = api.util +local i18n = api.i18n + +local pre_release_url = "https://api.github.com/repos/HyNetwork/hysteria/releases?per_page=1" +local release_url = "https://api.github.com/repos/HyNetwork/hysteria/releases/latest" +local api_url = release_url +local app_path = api.get_hysteria_path() or "" + +function check_path() + if app_path == "" then + return { + code = 1, + error = i18n.translatef("You did not fill in the %s path. Please save and apply then update manually.", "hysteria") + } + end + return { + code = 0 + } +end + +function to_check(arch) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not arch or arch == "" then arch = api.auto_get_arch() end + + local file_tree, sub_version = api.get_file_info(arch) + + if file_tree == "" then + return { + code = 1, + error = i18n.translate("Can't determine ARCH, or ARCH not supported.") + } + end + + return api.common_to_check(api_url, api.get_hysteria_version(), "linux%-" .. file_tree .. sub_version) +end + +function to_download(url, size) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not url or url == "" then + return {code = 1, error = i18n.translate("Download url is required.")} + end + + sys.call("/bin/rm -f /tmp/hysteria_download.*") + + local tmp_file = util.trim(util.exec("mktemp -u -t hysteria_download.XXXXXX")) + + if size then + local kb1 = api.get_free_space("/tmp") + if tonumber(size) > tonumber(kb1) then + return {code = 1, error = i18n.translatef("%s not enough space.", "/tmp")} + end + end + + result = api.exec(api.curl, {api._unpack(api.curl_args), "-o", tmp_file, url}, nil, api.command_timeout) == 0 + + if not result then + api.exec("/bin/rm", {"-f", tmp_file}) + return { + code = 1, + error = i18n.translatef("File download failed or timed out: %s", url) + } + end + + return {code = 0, file = tmp_file} +end + +function to_move(file) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not file or file == "" or not fs.access(file) then + sys.call("/bin/rm -rf /tmp/hysteria_download.*") + return {code = 1, error = i18n.translate("Client file is required.")} + end + + local new_version = api.get_hysteria_version(file) + if new_version == "" then + sys.call("/bin/rm -rf /tmp/hysteria_download.*") + return { + code = 1, + error = i18n.translate("The client file is not suitable for current device.") + } + end + + local flag = sys.call('pgrep -af "passwall/.*hysteria" >/dev/null') + if flag == 0 then + sys.call("/etc/init.d/passwall stop") + end + + local old_app_size = 0 + if fs.access(app_path) then + old_app_size = api.get_file_space(app_path) + end + local new_app_size = api.get_file_space(file) + local final_dir = api.get_final_dir(app_path) + local final_dir_free_size = api.get_free_space(final_dir) + if final_dir_free_size > 0 then + final_dir_free_size = final_dir_free_size + old_app_size + if new_app_size > final_dir_free_size then + sys.call("/bin/rm -rf /tmp/hysteria_download.*") + return {code = 1, error = i18n.translatef("%s not enough space.", final_dir)} + end + end + + result = api.exec("/bin/mv", {"-f", file, app_path}, nil, api.command_timeout) == 0 + + sys.call("/bin/rm -rf /tmp/hysteria_download.*") + if flag == 0 then + sys.call("/etc/init.d/passwall restart >/dev/null 2>&1 &") + end + + if not result or not fs.access(app_path) then + return { + code = 1, + error = i18n.translatef("Can't move new file to path: %s", app_path) + } + end + + return {code = 0} +end diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/trojan_go.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/trojan_go.lua new file mode 100644 index 000000000..4f8b48497 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/trojan_go.lua @@ -0,0 +1,183 @@ +module("luci.model.cbi.passwall.api.trojan_go", package.seeall) +local api = require "luci.model.cbi.passwall.api.api" +local fs = api.fs +local sys = api.sys +local util = api.util +local i18n = api.i18n + +local pre_release_url = "https://api.github.com/repos/p4gefau1t/trojan-go/releases?per_page=1" +local release_url = "https://api.github.com/repos/p4gefau1t/trojan-go/releases/latest" +local api_url = release_url +local app_path = api.get_trojan_go_path() or "" + +function check_path() + if app_path == "" then + return { + code = 1, + error = i18n.translatef("You did not fill in the %s path. Please save and apply then update manually.", "Trojan-GO") + } + end + return { + code = 0 + } +end + +function to_check(arch) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not arch or arch == "" then arch = api.auto_get_arch() end + + local file_tree, sub_version = api.get_file_info(arch) + + if file_tree == "" then + return { + code = 1, + error = i18n.translate("Can't determine ARCH, or ARCH not supported.") + } + end + + if file_tree == "mips" then file_tree = "mips%-hardfloat" end + if file_tree == "mipsle" then file_tree = "mipsle%-hardfloat" end + if file_tree == "arm64" then + file_tree = "armv8" + else + if sub_version and sub_version:match("^[5-8]$") then file_tree = file_tree .. "v" .. sub_version end + end + + return api.common_to_check(api_url, api.get_trojan_go_version(), "linux%-" .. file_tree .. "%.zip") +end + +function to_download(url, size) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not url or url == "" then + return {code = 1, error = i18n.translate("Download url is required.")} + end + + sys.call("/bin/rm -f /tmp/trojan-go_download.*") + + local tmp_file = util.trim(util.exec("mktemp -u -t trojan-go_download.XXXXXX")) + + if size then + local kb1 = api.get_free_space("/tmp") + if tonumber(size) > tonumber(kb1) then + return {code = 1, error = i18n.translatef("%s not enough space.", "/tmp")} + end + end + + result = api.exec(api.curl, {api._unpack(api.curl_args), "-o", tmp_file, url}, nil, api.command_timeout) == 0 + + if not result then + api.exec("/bin/rm", {"-f", tmp_file}) + return { + code = 1, + error = i18n.translatef("File download failed or timed out: %s", url) + } + end + + return {code = 0, file = tmp_file} +end + +function to_extract(file, subfix) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not file or file == "" or not fs.access(file) then + return {code = 1, error = i18n.translate("File path required.")} + end + + if sys.exec("echo -n $(opkg list-installed | grep -c unzip)") ~= "1" then + api.exec("/bin/rm", {"-f", file}) + return { + code = 1, + error = i18n.translate("Not installed unzip, Can't unzip!") + } + end + + sys.call("/bin/rm -rf /tmp/trojan-go_extract.*") + + local new_file_size = api.get_file_space(file) + local tmp_free_size = api.get_free_space("/tmp") + if tmp_free_size <= 0 or tmp_free_size <= new_file_size then + return {code = 1, error = i18n.translatef("%s not enough space.", "/tmp")} + end + + local tmp_dir = util.trim(util.exec("mktemp -d -t trojan-go_extract.XXXXXX")) + + local output = {} + api.exec("/usr/bin/unzip", {"-o", file, "-d", tmp_dir}, + function(chunk) output[#output + 1] = chunk end) + + local files = util.split(table.concat(output)) + + api.exec("/bin/rm", {"-f", file}) + + return {code = 0, file = tmp_dir} +end + +function to_move(file) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not file or file == "" then + sys.call("/bin/rm -rf /tmp/trojan-go_extract.*") + return {code = 1, error = i18n.translate("Client file is required.")} + end + + local bin_path = file .. "/trojan-go" + + local new_version = api.get_trojan_go_version(bin_path) + if new_version == "" then + sys.call("/bin/rm -rf /tmp/trojan-go_extract.*") + return { + code = 1, + error = i18n.translate("The client file is not suitable for current device.") + } + end + + local flag = sys.call('pgrep -af "passwall/.*trojan-go" >/dev/null') + if flag == 0 then + sys.call("/etc/init.d/passwall stop") + end + + local old_app_size = 0 + if fs.access(app_path) then + old_app_size = api.get_file_space(app_path) + end + local new_app_size = api.get_file_space(bin_path) + local final_dir = api.get_final_dir(app_path) + local final_dir_free_size = api.get_free_space(final_dir) + if final_dir_free_size > 0 then + final_dir_free_size = final_dir_free_size + old_app_size + if new_app_size > final_dir_free_size then + sys.call("/bin/rm -rf /tmp/trojan-go_extract.*") + return {code = 1, error = i18n.translatef("%s not enough space.", final_dir)} + end + end + + result = api.exec("/bin/mv", { "-f", bin_path, app_path }, nil, api.command_timeout) == 0 + + sys.call("/bin/rm -rf /tmp/trojan-go_extract.*") + if flag == 0 then + sys.call("/etc/init.d/passwall restart >/dev/null 2>&1 &") + end + + if not result or not fs.access(app_path) then + return { + code = 1, + error = i18n.translatef("Can't move new file to path: %s", app_path) + } + end + + return {code = 0} +end diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/v2ray.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/v2ray.lua new file mode 100644 index 000000000..c00bf1461 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/v2ray.lua @@ -0,0 +1,181 @@ +module("luci.model.cbi.passwall.api.v2ray", package.seeall) +local api = require "luci.model.cbi.passwall.api.api" +local fs = api.fs +local sys = api.sys +local util = api.util +local i18n = api.i18n + +local pre_release_url = "https://api.github.com/repos/v2fly/v2ray-core/releases?per_page=1" +local release_url = "https://api.github.com/repos/v2fly/v2ray-core/releases/latest" +local api_url = release_url +local app_path = api.get_v2ray_path() or "" + +function check_path() + if app_path == "" then + return { + code = 1, + error = i18n.translatef("You did not fill in the %s path. Please save and apply then update manually.", "V2ray") + } + end + return { + code = 0 + } +end + +function to_check(arch) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not arch or arch == "" then arch = api.auto_get_arch() end + + local file_tree, sub_version = api.get_file_info(arch) + + if file_tree == "" then + return { + code = 1, + error = i18n.translate("Can't determine ARCH, or ARCH not supported.") + } + end + + if file_tree == "amd64" then file_tree = "64" end + if file_tree == "386" then file_tree = "32" end + if file_tree == "mipsle" then file_tree = "mips32le" end + if file_tree == "mips" then file_tree = "mips32" end + if file_tree == "arm" then file_tree = "arm32" end + + return api.common_to_check(api_url, api.get_v2ray_version(), "linux%-" .. file_tree .. (sub_version ~= "" and ".+" .. sub_version or "")) +end + +function to_download(url, size) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not url or url == "" then + return {code = 1, error = i18n.translate("Download url is required.")} + end + + sys.call("/bin/rm -f /tmp/v2ray_download.*") + + local tmp_file = util.trim(util.exec("mktemp -u -t v2ray_download.XXXXXX")) + + if size then + local kb1 = api.get_free_space("/tmp") + if tonumber(size) > tonumber(kb1) then + return {code = 1, error = i18n.translatef("%s not enough space.", "/tmp")} + end + end + + result = api.exec(api.curl, {api._unpack(api.curl_args), "-o", tmp_file, url}, nil, api.command_timeout) == 0 + + if not result then + api.exec("/bin/rm", {"-f", tmp_file}) + return { + code = 1, + error = i18n.translatef("File download failed or timed out: %s", url) + } + end + + return {code = 0, file = tmp_file} +end + +function to_extract(file, subfix) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not file or file == "" or not fs.access(file) then + return {code = 1, error = i18n.translate("File path required.")} + end + + if sys.exec("echo -n $(opkg list-installed | grep -c unzip)") ~= "1" then + api.exec("/bin/rm", {"-f", file}) + return { + code = 1, + error = i18n.translate("Not installed unzip, Can't unzip!") + } + end + + sys.call("/bin/rm -rf /tmp/v2ray_extract.*") + + local new_file_size = api.get_file_space(file) + local tmp_free_size = api.get_free_space("/tmp") + if tmp_free_size <= 0 or tmp_free_size <= new_file_size then + return {code = 1, error = i18n.translatef("%s not enough space.", "/tmp")} + end + + local tmp_dir = util.trim(util.exec("mktemp -d -t v2ray_extract.XXXXXX")) + + local output = {} + api.exec("/usr/bin/unzip", {"-o", file, "v2ray", "-d", tmp_dir}, + function(chunk) output[#output + 1] = chunk end) + + local files = util.split(table.concat(output)) + + api.exec("/bin/rm", {"-f", file}) + + return {code = 0, file = tmp_dir} +end + +function to_move(file) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not file or file == "" then + sys.call("/bin/rm -rf /tmp/v2ray_extract.*") + return {code = 1, error = i18n.translate("Client file is required.")} + end + + local bin_path = file .. "/v2ray" + + local new_version = api.get_v2ray_version(bin_path) + if new_version == "" then + sys.call("/bin/rm -rf /tmp/v2ray_extract.*") + return { + code = 1, + error = i18n.translate("The client file is not suitable for current device.") + } + end + + local flag = sys.call('pgrep -af "passwall/.*v2ray" >/dev/null') + if flag == 0 then + sys.call("/etc/init.d/passwall stop") + end + + local old_app_size = 0 + if fs.access(app_path) then + old_app_size = api.get_file_space(app_path) + end + local new_app_size = api.get_file_space(bin_path) + local final_dir = api.get_final_dir(app_path) + local final_dir_free_size = api.get_free_space(final_dir) + if final_dir_free_size > 0 then + final_dir_free_size = final_dir_free_size + old_app_size + if new_app_size > final_dir_free_size then + sys.call("/bin/rm -rf /tmp/v2ray_extract.*") + return {code = 1, error = i18n.translatef("%s not enough space.", final_dir)} + end + end + + result = api.exec("/bin/mv", { "-f", bin_path, app_path }, nil, api.command_timeout) == 0 + + sys.call("/bin/rm -rf /tmp/v2ray_extract.*") + if flag == 0 then + sys.call("/etc/init.d/passwall restart >/dev/null 2>&1 &") + end + + if not result or not fs.access(app_path) then + return { + code = 1, + error = i18n.translatef("Can't move new file to path: %s", app_path) + } + end + + return {code = 0} +end diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/api/xray.lua b/luci-app-passwall/luasrc/model/cbi/passwall/api/xray.lua new file mode 100644 index 000000000..d56ab29fc --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/api/xray.lua @@ -0,0 +1,181 @@ +module("luci.model.cbi.passwall.api.xray", package.seeall) +local api = require "luci.model.cbi.passwall.api.api" +local fs = api.fs +local sys = api.sys +local util = api.util +local i18n = api.i18n + +local pre_release_url = "https://api.github.com/repos/XTLS/Xray-core/releases?per_page=1" +local release_url = "https://api.github.com/repos/XTLS/Xray-core/releases/latest" +local api_url = release_url +local app_path = api.get_xray_path() or "" + +function check_path() + if app_path == "" then + return { + code = 1, + error = i18n.translatef("You did not fill in the %s path. Please save and apply then update manually.", "Xray") + } + end + return { + code = 0 + } +end + +function to_check(arch) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not arch or arch == "" then arch = api.auto_get_arch() end + + local file_tree, sub_version = api.get_file_info(arch) + + if file_tree == "" then + return { + code = 1, + error = i18n.translate("Can't determine ARCH, or ARCH not supported.") + } + end + + if file_tree == "amd64" then file_tree = "64" end + if file_tree == "386" then file_tree = "32" end + if file_tree == "mipsle" then file_tree = "mips32le" end + if file_tree == "mips" then file_tree = "mips32" end + if file_tree == "arm" then file_tree = "arm32" end + + return api.common_to_check(api_url, api.get_xray_version(), "linux%-" .. file_tree .. (sub_version ~= "" and ".+" .. sub_version or "")) +end + +function to_download(url, size) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not url or url == "" then + return {code = 1, error = i18n.translate("Download url is required.")} + end + + sys.call("/bin/rm -f /tmp/xray_download.*") + + local tmp_file = util.trim(util.exec("mktemp -u -t xray_download.XXXXXX")) + + if size then + local kb1 = api.get_free_space("/tmp") + if tonumber(size) > tonumber(kb1) then + return {code = 1, error = i18n.translatef("%s not enough space.", "/tmp")} + end + end + + result = api.exec(api.curl, {api._unpack(api.curl_args), "-o", tmp_file, url}, nil, api.command_timeout) == 0 + + if not result then + api.exec("/bin/rm", {"-f", tmp_file}) + return { + code = 1, + error = i18n.translatef("File download failed or timed out: %s", url) + } + end + + return {code = 0, file = tmp_file} +end + +function to_extract(file, subfix) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not file or file == "" or not fs.access(file) then + return {code = 1, error = i18n.translate("File path required.")} + end + + if sys.exec("echo -n $(opkg list-installed | grep -c unzip)") ~= "1" then + api.exec("/bin/rm", {"-f", file}) + return { + code = 1, + error = i18n.translate("Not installed unzip, Can't unzip!") + } + end + + sys.call("/bin/rm -rf /tmp/xray_extract.*") + + local new_file_size = api.get_file_space(file) + local tmp_free_size = api.get_free_space("/tmp") + if tmp_free_size <= 0 or tmp_free_size <= new_file_size then + return {code = 1, error = i18n.translatef("%s not enough space.", "/tmp")} + end + + local tmp_dir = util.trim(util.exec("mktemp -d -t xray_extract.XXXXXX")) + + local output = {} + api.exec("/usr/bin/unzip", {"-o", file, "xray", "-d", tmp_dir}, + function(chunk) output[#output + 1] = chunk end) + + local files = util.split(table.concat(output)) + + api.exec("/bin/rm", {"-f", file}) + + return {code = 0, file = tmp_dir} +end + +function to_move(file) + local result = check_path() + if result.code ~= 0 then + return result + end + + if not file or file == "" then + sys.call("/bin/rm -rf /tmp/xray_extract.*") + return {code = 1, error = i18n.translate("Client file is required.")} + end + + local bin_path = file .. "/xray" + + local new_version = api.get_xray_version(bin_path) + if new_version == "" then + sys.call("/bin/rm -rf /tmp/xray_extract.*") + return { + code = 1, + error = i18n.translate("The client file is not suitable for current device.") + } + end + + local flag = sys.call('pgrep -af "passwall/.*xray" >/dev/null') + if flag == 0 then + sys.call("/etc/init.d/passwall stop") + end + + local old_app_size = 0 + if fs.access(app_path) then + old_app_size = api.get_file_space(app_path) + end + local new_app_size = api.get_file_space(bin_path) + local final_dir = api.get_final_dir(app_path) + local final_dir_free_size = api.get_free_space(final_dir) + if final_dir_free_size > 0 then + final_dir_free_size = final_dir_free_size + old_app_size + if new_app_size > final_dir_free_size then + sys.call("/bin/rm -rf /tmp/xray_extract.*") + return {code = 1, error = i18n.translatef("%s not enough space.", final_dir)} + end + end + + result = api.exec("/bin/mv", { "-f", bin_path, app_path }, nil, api.command_timeout) == 0 + + sys.call("/bin/rm -rf /tmp/xray_extract.*") + if flag == 0 then + sys.call("/etc/init.d/passwall restart >/dev/null 2>&1 &") + end + + if not result or not fs.access(app_path) then + return { + code = 1, + error = i18n.translatef("Can't move new file to path: %s", app_path) + } + end + + return {code = 0} +end diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/acl.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/acl.lua new file mode 100644 index 000000000..661fcbff4 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/acl.lua @@ -0,0 +1,123 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local sys = api.sys +local has_chnlist = api.fs.access("/usr/share/passwall/rules/chnlist") + +m = Map(appname) + +local global_proxy_mode = (m:get("@global[0]", "tcp_proxy_mode") or "") .. (m:get("@global[0]", "udp_proxy_mode") or "") + +-- [[ ACLs Settings ]]-- +s = m:section(TypedSection, "acl_rule", translate("ACLs"), "" .. translate("ACLs is a tools which used to designate specific IP proxy mode.") .. "") +s.template = "cbi/tblsection" +s.sortable = true +s.anonymous = true +s.addremove = true +s.extedit = api.url("acl_config", "%s") +function s.create(e, t) + t = TypedSection.create(e, t) + luci.http.redirect(e.extedit:format(t)) +end +function s.remove(e, t) + sys.call("rm -rf /tmp/etc/passwall_tmp/dns_" .. t .. "*") + TypedSection.remove(e, t) +end + +---- Enable +o = s:option(Flag, "enabled", translate("Enable")) +o.default = 1 +o.rmempty = false + +---- Remarks +o = s:option(Value, "remarks", translate("Remarks")) +o.rmempty = true + +local mac_t = {} +sys.net.mac_hints(function(e, t) + mac_t[e] = { + ip = t, + mac = e + } +end) + +o = s:option(DummyValue, "sources", translate("Source")) +o.rawhtml = true +o.cfgvalue = function(t, n) + local e = '' + local v = Value.cfgvalue(t, n) or '' + string.gsub(v, '[^' .. " " .. ']+', function(w) + local a = w + if mac_t[w] then + a = a .. ' (' .. mac_t[w].ip .. ')' + end + if #e > 0 then + e = e .. "
" + end + e = e .. a + end) + return e +end + +---- TCP Proxy Mode +tcp_proxy_mode = s:option(ListValue, "tcp_proxy_mode", translatef("%s Proxy Mode", "TCP")) +tcp_proxy_mode.default = "default" +tcp_proxy_mode.rmempty = false +tcp_proxy_mode:value("default", translate("Default")) +tcp_proxy_mode:value("disable", translate("No Proxy")) +tcp_proxy_mode:value("global", translate("Global Proxy")) +if has_chnlist and global_proxy_mode:find("returnhome") then + tcp_proxy_mode:value("returnhome", translate("China List")) +else + tcp_proxy_mode:value("gfwlist", translate("GFW List")) + tcp_proxy_mode:value("chnroute", translate("Not China List")) +end +tcp_proxy_mode:value("direct/proxy", translate("Only use direct/proxy list")) + +---- UDP Proxy Mode +udp_proxy_mode = s:option(ListValue, "udp_proxy_mode", translatef("%s Proxy Mode", "UDP")) +udp_proxy_mode.default = "default" +udp_proxy_mode.rmempty = false +udp_proxy_mode:value("default", translate("Default")) +udp_proxy_mode:value("disable", translate("No Proxy")) +udp_proxy_mode:value("global", translate("Global Proxy")) +if has_chnlist and global_proxy_mode:find("returnhome") then + udp_proxy_mode:value("returnhome", translate("China List")) +else + udp_proxy_mode:value("gfwlist", translate("GFW List")) + udp_proxy_mode:value("chnroute", translate("Not China List")) +end +udp_proxy_mode:value("direct/proxy", translate("Only use direct/proxy list")) + +--[[ +---- TCP No Redir Ports +o = s:option(Value, "tcp_no_redir_ports", translate("TCP No Redir Ports")) +o.default = "default" +o:value("disable", translate("No patterns are used")) +o:value("default", translate("Default")) +o:value("1:65535", translate("All")) + +---- UDP No Redir Ports +o = s:option(Value, "udp_no_redir_ports", translate("UDP No Redir Ports")) +o.default = "default" +o:value("disable", translate("No patterns are used")) +o:value("default", translate("Default")) +o:value("1:65535", translate("All")) + +---- TCP Redir Ports +o = s:option(Value, "tcp_redir_ports", translate("TCP Redir Ports")) +o.default = "default" +o:value("default", translate("Default")) +o:value("1:65535", translate("All")) +o:value("80,443", "80,443") +o:value("80:65535", "80 " .. translate("or more")) +o:value("1:443", "443 " .. translate("or less")) + +---- UDP Redir Ports +o = s:option(Value, "udp_redir_ports", translate("UDP Redir Ports")) +o.default = "default" +o:value("default", translate("Default")) +o:value("1:65535", translate("All")) +o:value("53", "53") +]]-- + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/acl_config.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/acl_config.lua new file mode 100644 index 000000000..52a1de489 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/acl_config.lua @@ -0,0 +1,296 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local sys = api.sys +local has_v2ray = api.is_finded("v2ray") +local has_xray = api.is_finded("xray") +local has_chnlist = api.fs.access("/usr/share/passwall/rules/chnlist") + +m = Map(appname) + +local nodes_table = {} +for k, e in ipairs(api.get_valid_nodes()) do + nodes_table[#nodes_table + 1] = e +end + +local global_proxy_mode = (m:get("@global[0]", "tcp_proxy_mode") or "") .. (m:get("@global[0]", "udp_proxy_mode") or "") + +local dynamicList_write = function(self, section, value) + local t = {} + local t2 = {} + if type(value) == "table" then + local x + for _, x in ipairs(value) do + if x and #x > 0 then + if not t2[x] then + t2[x] = x + t[#t+1] = x + end + end + end + else + t = { value } + end + t = table.concat(t, " ") + return DynamicList.write(self, section, t) +end + +-- [[ ACLs Settings ]]-- +s = m:section(NamedSection, arg[1], translate("ACLs"), translate("ACLs")) +s.addremove = false +s.dynamic = false + +---- Enable +o = s:option(Flag, "enabled", translate("Enable")) +o.default = 1 +o.rmempty = false + +---- Remarks +o = s:option(Value, "remarks", translate("Remarks")) +o.default = arg[1] +o.rmempty = true + +local mac_t = {} +sys.net.mac_hints(function(e, t) + mac_t[#mac_t + 1] = { + ip = t, + mac = e + } +end) +table.sort(mac_t, function(a,b) + if #a.ip < #b.ip then + return true + elseif #a.ip == #b.ip then + if a.ip < b.ip then + return true + else + return #a.ip < #b.ip + end + end + return false +end) + +---- Source +sources = s:option(DynamicList, "sources", translate("Source")) +sources.description = "
  • " .. translate("Example:") +.. "
  • " .. translate("MAC") .. ": 00:00:00:FF:FF:FF" +.. "
  • " .. translate("IP") .. ": 192.168.1.100" +.. "
  • " .. translate("IP CIDR") .. ": 192.168.1.0/24" +.. "
  • " .. translate("IP range") .. ": 192.168.1.100-192.168.1.200" +.. "
  • " .. translate("IPSet") .. ": ipset:lanlist" +.. "
" +sources.cast = "string" +for _, key in pairs(mac_t) do + sources:value(key.mac, "%s (%s)" % {key.mac, key.ip}) +end +sources.cfgvalue = function(self, section) + local value + if self.tag_error[section] then + value = self:formvalue(section) + else + value = self.map:get(section, self.option) + if type(value) == "string" then + local value2 = {} + string.gsub(value, '[^' .. " " .. ']+', function(w) table.insert(value2, w) end) + value = value2 + end + end + return value +end +sources.validate = function(self, value, t) + local err = {} + for _, v in ipairs(value) do + local flag = false + if v:find("ipset:") and v:find("ipset:") == 1 then + local ipset = v:gsub("ipset:", "") + if ipset and ipset ~= "" then + flag = true + end + end + + if flag == false and datatypes.macaddr(v) then + flag = true + end + + if flag == false and datatypes.ip4addr(v) then + flag = true + end + + if flag == false and api.iprange(v) then + flag = true + end + + if flag == false then + err[#err + 1] = v + end + end + + if #err > 0 then + self:add_error(t, "invalid", translate("Not true format, please re-enter!")) + for _, v in ipairs(err) do + self:add_error(t, "invalid", v) + end + end + + return value +end +sources.write = dynamicList_write + +---- TCP Proxy Mode +tcp_proxy_mode = s:option(ListValue, "tcp_proxy_mode", translatef("%s Proxy Mode", "TCP")) +tcp_proxy_mode.default = "default" +tcp_proxy_mode.rmempty = false +tcp_proxy_mode:value("default", translate("Default")) +tcp_proxy_mode:value("disable", translate("No Proxy")) +tcp_proxy_mode:value("global", translate("Global Proxy")) +if has_chnlist and global_proxy_mode:find("returnhome") then + tcp_proxy_mode:value("returnhome", translate("China List")) +else + tcp_proxy_mode:value("gfwlist", translate("GFW List")) + tcp_proxy_mode:value("chnroute", translate("Not China List")) +end +tcp_proxy_mode:value("direct/proxy", translate("Only use direct/proxy list")) + +---- UDP Proxy Mode +udp_proxy_mode = s:option(ListValue, "udp_proxy_mode", translatef("%s Proxy Mode", "UDP")) +udp_proxy_mode.default = "default" +udp_proxy_mode.rmempty = false +udp_proxy_mode:value("default", translate("Default")) +udp_proxy_mode:value("disable", translate("No Proxy")) +udp_proxy_mode:value("global", translate("Global Proxy")) +if has_chnlist and global_proxy_mode:find("returnhome") then + udp_proxy_mode:value("returnhome", translate("China List")) +else + udp_proxy_mode:value("gfwlist", translate("GFW List")) + udp_proxy_mode:value("chnroute", translate("Not China List")) +end +udp_proxy_mode:value("direct/proxy", translate("Only use direct/proxy list")) + +---- TCP No Redir Ports +o = s:option(Value, "tcp_no_redir_ports", translate("TCP No Redir Ports")) +o.default = "default" +o:value("disable", translate("No patterns are used")) +o:value("default", translate("Default")) +o:value("1:65535", translate("All")) + +---- UDP No Redir Ports +o = s:option(Value, "udp_no_redir_ports", translate("UDP No Redir Ports")) +o.default = "default" +o:value("disable", translate("No patterns are used")) +o:value("default", translate("Default")) +o:value("1:65535", translate("All")) + +---- TCP Proxy Drop Ports +o = s:option(Value, "tcp_proxy_drop_ports", translate("TCP Proxy Drop Ports")) +o.default = "default" +o:value("disable", translate("No patterns are used")) +o:value("default", translate("Default")) + +---- UDP Proxy Drop Ports +o = s:option(Value, "udp_proxy_drop_ports", translate("UDP Proxy Drop Ports")) +o.default = "default" +o:value("disable", translate("No patterns are used")) +o:value("default", translate("Default")) +o:value("80,443", translate("QUIC")) + +---- TCP Redir Ports +o = s:option(Value, "tcp_redir_ports", translate("TCP Redir Ports")) +o.default = "default" +o:value("default", translate("Default")) +o:value("1:65535", translate("All")) +o:value("80,443", "80,443") +o:value("80:65535", "80 " .. translate("or more")) +o:value("1:443", "443 " .. translate("or less")) + +---- UDP Redir Ports +o = s:option(Value, "udp_redir_ports", translate("UDP Redir Ports")) +o.default = "default" +o:value("default", translate("Default")) +o:value("1:65535", translate("All")) +o:value("53", "53") + +tcp_node = s:option(ListValue, "tcp_node", "" .. translate("TCP Node") .. "") +tcp_node.default = "default" +tcp_node:value("default", translate("Default")) + +udp_node = s:option(ListValue, "udp_node", "" .. translate("UDP Node") .. "") +udp_node.default = "default" +udp_node:value("default", translate("Default")) +udp_node:value("tcp", translate("Same as the tcp node")) + +for k, v in pairs(nodes_table) do + tcp_node:value(v.id, v["remark"]) + udp_node:value(v.id, v["remark"]) +end + +---- DNS Forward Mode +o = s:option(ListValue, "dns_mode", translate("Filter Mode")) +o:depends({ tcp_node = "default", ['!reverse'] = true }) +if api.is_finded("dns2socks") then + o:value("dns2socks", "dns2socks") +end +if has_v2ray then + o:value("v2ray", "V2ray") +end +if has_xray then + o:value("xray", "Xray") +end + +o = s:option(ListValue, "v2ray_dns_mode", " ") +o:value("tcp", "TCP") +o:value("doh", "DoH") +o:depends("dns_mode", "v2ray") +o:depends("dns_mode", "xray") + +---- DNS Forward +o = s:option(Value, "dns_forward", translate("Remote DNS")) +o.default = "1.1.1.1" +o:value("1.1.1.1", "1.1.1.1 (CloudFlare DNS)") +o:value("1.1.1.2", "1.1.1.2 (CloudFlare DNS)") +o:value("8.8.8.8", "8.8.8.8 (Google DNS)") +o:value("8.8.4.4", "8.8.4.4 (Google DNS)") +o:value("208.67.222.222", "208.67.222.222 (Open DNS)") +o:value("208.67.220.220", "208.67.220.220 (Open DNS)") +o:depends("dns_mode", "dns2socks") +o:depends("v2ray_dns_mode", "tcp") + +if has_v2ray or has_xray then +---- DoH +o = s:option(Value, "dns_doh", translate("DoH request address")) +o:value("https://cloudflare-dns.com/dns-query,1.1.1.1", "CloudFlare") +o:value("https://security.cloudflare-dns.com/dns-query,1.1.1.2", "CloudFlare-Security") +o:value("https://doh.opendns.com/dns-query,208.67.222.222", "OpenDNS") +o:value("https://dns.google/dns-query,8.8.8.8", "Google") +o:value("https://doh.libredns.gr/dns-query,116.202.176.26", "LibreDNS") +o:value("https://doh.libredns.gr/ads,116.202.176.26", "LibreDNS (No Ads)") +o:value("https://dns.quad9.net/dns-query,9.9.9.9", "Quad9-Recommended") +o:value("https://dns.adguard.com/dns-query,176.103.130.130", "AdGuard") +o.default = "https://cloudflare-dns.com/dns-query,1.1.1.1" +o.validate = function(self, value, t) + if value ~= "" then + local flag = 0 + local util = require "luci.util" + local val = util.split(value, ",") + local url = val[1] + val[1] = nil + for i = 1, #val do + local v = val[i] + if v then + if not api.datatypes.ipmask4(v) then + flag = 1 + end + end + end + if flag == 0 then + return value + end + end + return nil, translate("DoH request address") .. " " .. translate("Format must be:") .. " URL,IP" +end +o:depends("v2ray_dns_mode", "doh") +end + +o = s:option(Value, "dns_client_ip", translate("EDNS Client Subnet")) +o.datatype = "ipaddr" +o:depends("v2ray_dns_mode", "doh") + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/app_update.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/app_update.lua new file mode 100644 index 000000000..13289a975 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/app_update.lua @@ -0,0 +1,44 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname + +m = Map(appname) + +-- [[ App Settings ]]-- +s = m:section(TypedSection, "global_app", translate("App Update"), + "" .. + translate("Please confirm that your firmware supports FPU.") .. + "") +s.anonymous = true +s:append(Template(appname .. "/app_update/v2ray_version")) +s:append(Template(appname .. "/app_update/xray_version")) +s:append(Template(appname .. "/app_update/trojan_go_version")) +s:append(Template(appname .. "/app_update/brook_version")) +s:append(Template(appname .. "/app_update/hysteria_version")) + +o = s:option(Value, "v2ray_file", translatef("%s App Path", "V2ray")) +o.default = "/usr/bin/v2ray" +o.rmempty = false + +o = s:option(Value, "xray_file", translatef("%s App Path", "Xray")) +o.default = "/usr/bin/xray" +o.rmempty = false + +o = s:option(Value, "trojan_go_file", translatef("%s App Path", "Trojan-Go")) +o.default = "/usr/bin/trojan-go" +o.rmempty = false + +o = s:option(Value, "brook_file", translatef("%s App Path", "Brook")) +o.default = "/usr/bin/brook" +o.rmempty = false + +o = s:option(Value, "hysteria_file", translatef("%s App Path", "Hysteria")) +o.default = "/usr/bin/hysteria" +o.rmempty = false + +o = s:option(DummyValue, "tips", " ") +o.rawhtml = true +o.cfgvalue = function(t, n) + return string.format('%s', translate("if you want to run from memory, change the path, /tmp beginning then save the application and update it manually.")) +end + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/auto_switch.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/auto_switch.lua new file mode 100644 index 000000000..221de2916 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/auto_switch.lua @@ -0,0 +1,66 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname + +local nodes_table = {} +for k, e in ipairs(api.get_valid_nodes()) do + nodes_table[#nodes_table + 1] = e +end + +m = Map(appname) + +-- [[ Auto Switch Settings ]]-- +s = m:section(TypedSection, "auto_switch") +s.anonymous = true + +---- Enable +o = s:option(Flag, "enable", translate("Enable")) +o.default = 0 +o.rmempty = false + +o = s:option(Value, "testing_time", translate("How often to test"), translate("Units:minutes")) +o.datatype = "uinteger" +o.default = 1 + +o = s:option(Value, "connect_timeout", translate("Timeout seconds"), translate("Units:seconds")) +o.datatype = "uinteger" +o.default = 3 + +o = s:option(Value, "retry_num", translate("Timeout retry num")) +o.datatype = "uinteger" +o.default = 3 + +o = s:option(DynamicList, "tcp_node", "TCP " .. translate("List of backup nodes")) +for k, v in pairs(nodes_table) do + if v.node_type == "normal" then + o:value(v.id, v["remark"]) + end +end +function o.write(self, section, value) + local t = {} + local t2 = {} + if type(value) == "table" then + local x + for _, x in ipairs(value) do + if x and #x > 0 then + if not t2[x] then + t2[x] = x + t[#t+1] = x + end + end + end + else + t = { value } + end + return DynamicList.write(self, section, t) +end + +o = s:option(Flag, "restore_switch", "TCP " .. translate("Restore Switch"), translate("When detects main node is available, switch back to the main node.")) + +o = s:option(ListValue, "shunt_logic", "TCP " .. translate("If the main node is V2ray/Xray shunt")) +o:value("0", translate("Switch it")) +o:value("1", translate("Applying to the default node")) +o:value("2", translate("Applying to the default preproxy node")) + +m:append(Template(appname .. "/auto_switch/footer")) + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/global.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/global.lua new file mode 100644 index 000000000..2b6e13eda --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/global.lua @@ -0,0 +1,461 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local uci = api.uci +local datatypes = api.datatypes +local has_v2ray = api.is_finded("v2ray") +local has_xray = api.is_finded("xray") +local has_chnlist = api.fs.access("/usr/share/passwall/rules/chnlist") + +m = Map(appname) + +local nodes_table = {} +for k, e in ipairs(api.get_valid_nodes()) do + nodes_table[#nodes_table + 1] = e +end + +local socks_table = {} +uci:foreach(appname, "socks", function(s) + if s.enabled == "1" and s.node then + local id, remarks + local same, i = s.node:match("^(tcp)") + if same then + remarks = translatef("Same as the tcp node") + else + for k, n in pairs(nodes_table) do + if (s.node == n.id) then + remarks = n["remark"]; break + end + end + end + id = "127.0.0.1" .. ":" .. s.port + socks_table[#socks_table + 1] = { + id = id, + remarks = id .. " - " .. (remarks or translate("Misconfigured")) + } + end +end) + +local doh_validate = function(self, value, t) + if value ~= "" then + local flag = 0 + local util = require "luci.util" + local val = util.split(value, ",") + local url = val[1] + val[1] = nil + for i = 1, #val do + local v = val[i] + if v then + if not datatypes.ipmask4(v) then + flag = 1 + end + end + end + if flag == 0 then + return value + end + end + return nil, translate("DoH request address") .. " " .. translate("Format must be:") .. " URL,IP" +end + +local redir_mode_validate = function(self, value, t) + local tcp_proxy_mode_v = tcp_proxy_mode:formvalue(t) or "" + local udp_proxy_mode_v = udp_proxy_mode:formvalue(t) or "" + local localhost_tcp_proxy_mode_v = localhost_tcp_proxy_mode:formvalue(t) or "" + local localhost_udp_proxy_mode_v = localhost_udp_proxy_mode:formvalue(t) or "" + local s = tcp_proxy_mode_v .. udp_proxy_mode_v .. localhost_tcp_proxy_mode_v .. localhost_udp_proxy_mode_v + if s:find("returnhome") then + if s:find("chnroute") or s:find("gfwlist") then + return nil, translate("China list or gfwlist cannot be used together with outside China list!") + end + end + return value +end + +m:append(Template(appname .. "/global/status")) + +s = m:section(TypedSection, "global") +s.anonymous = true +s.addremove = false + +s:tab("Main", translate("Main")) + +-- [[ Global Settings ]]-- +o = s:taboption("Main", Flag, "enabled", translate("Main switch")) +o.rmempty = false + +---- TCP Node +tcp_node = s:taboption("Main", ListValue, "tcp_node", "" .. translate("TCP Node") .. "") +tcp_node.description = "" +--tcp_node.description = translate("For proxy specific list.") +--tcp_node.description = o.description .. "
" +local current_node = luci.sys.exec(string.format("[ -f '/tmp/etc/%s/id/TCP' ] && echo -n $(cat /tmp/etc/%s/id/TCP)", appname, appname)) +if current_node and current_node ~= "" and current_node ~= "nil" then + local n = uci:get_all(appname, current_node) + if n then + if tonumber(m:get("@auto_switch[0]", "enable") or 0) == 1 then + local remarks = api.get_full_node_remarks(n) + local url = api.url("node_config", current_node) + tcp_node.description = tcp_node.description .. translatef("Current node: %s", string.format('%s', url, remarks)) .. "
" + end + end +end +tcp_node:value("nil", translate("Close")) + +-- 分流 +if (has_v2ray or has_xray) and #nodes_table > 0 then + local normal_list = {} + local shunt_list = {} + for k, v in pairs(nodes_table) do + if v.node_type == "normal" then + normal_list[#normal_list + 1] = v + end + if v.protocol and v.protocol == "_shunt" then + shunt_list[#shunt_list + 1] = v + end + end + for k, v in pairs(shunt_list) do + uci:foreach(appname, "shunt_rules", function(e) + local id = e[".name"] + if id and e.remarks then + o = s:taboption("Main", ListValue, v.id .. "." .. id .. "_node", string.format('* %s', api.url("shunt_rules", id), e.remarks)) + o:depends("tcp_node", v.id) + o:value("nil", translate("Close")) + o:value("_default", translate("Default")) + o:value("_direct", translate("Direct Connection")) + o:value("_blackhole", translate("Blackhole")) + for k1, v1 in pairs(normal_list) do + o:value(v1.id, v1["remark"]) + end + o.cfgvalue = function(self, section) + return m:get(v.id, id) or "nil" + end + o.write = function(self, section, value) + m:set(v.id, id, value) + end + end + end) + + local id = "default_node" + o = s:taboption("Main", ListValue, v.id .. "." .. id, string.format('* %s', translate("Default"))) + o:depends("tcp_node", v.id) + o:value("_direct", translate("Direct Connection")) + o:value("_blackhole", translate("Blackhole")) + for k1, v1 in pairs(normal_list) do + o:value(v1.id, v1["remark"]) + end + o.cfgvalue = function(self, section) + return m:get(v.id, id) or "nil" + end + o.write = function(self, section, value) + m:set(v.id, id, value) + end + + local id = "main_node" + o = s:taboption("Main", ListValue, v.id .. "." .. id, string.format('* %s', translate("Default Preproxy")), translate("When using, localhost will connect this node first and then use this node to connect the default node.")) + o:depends("tcp_node", v.id) + o:value("nil", translate("Close")) + for k1, v1 in pairs(normal_list) do + o:value(v1.id, v1["remark"]) + end + o.cfgvalue = function(self, section) + return m:get(v.id, id) or "nil" + end + o.write = function(self, section, value) + m:set(v.id, id, value) + end + end +end + +udp_node = s:taboption("Main", ListValue, "udp_node", "" .. translate("UDP Node") .. "") +udp_node:value("nil", translate("Close")) +--udp_node.description = translate("For proxy game network.") +udp_node:value("tcp", translate("Same as the tcp node")) + +s:tab("DNS", translate("DNS")) + +if api.is_finded("smartdns") then + dns_shunt = s:taboption("DNS", ListValue, "dns_shunt", translate("DNS Shunt")) + dns_shunt:value("dnsmasq", "Dnsmasq") + dns_shunt:value("smartdns", "SmartDNS") + + group_domestic = s:taboption("DNS", Value, "group_domestic", translate("Domestic group name")) + group_domestic.placeholder = "local" + group_domestic:depends("dns_shunt", "smartdns") + group_domestic.description = translate("You only need to configure domestic DNS packets in SmartDNS and set it redirect or as Dnsmasq upstream, and fill in the domestic DNS group name here.") +end + +o = s:taboption("DNS", Flag, "filter_proxy_ipv6", translate("Filter Proxy Host IPv6"), translate("Experimental feature.")) +o.default = "0" + +---- DNS Forward Mode +dns_mode = s:taboption("DNS", ListValue, "dns_mode", translate("Filter Mode")) +dns_mode.rmempty = false +dns_mode:reset_values() +if api.is_finded("pdnsd") then + dns_mode:value("pdnsd", "pdnsd " .. translatef("Requery DNS By %s", translate("TCP Node"))) +end +if api.is_finded("dns2socks") then + dns_mode:value("dns2socks", "dns2socks") +end +if has_v2ray then + dns_mode:value("v2ray", "V2ray") +end +if has_xray then + dns_mode:value("xray", "Xray") +end +dns_mode:value("udp", translatef("Requery DNS By %s", "UDP")) + +o = s:taboption("DNS", ListValue, "v2ray_dns_mode", " ") +o:value("tcp", "TCP") +o:value("doh", "DoH") +o:value("fakedns", "FakeDNS") +o:depends("dns_mode", "v2ray") +o:depends("dns_mode", "xray") +o.validate = function(self, value, t) + if value == "fakedns" then + local _dns_mode = dns_mode:formvalue(t) + local _tcp_node = tcp_node:formvalue(t) + if m:get(_tcp_node, "type"):lower() ~= _dns_mode then + return nil, translatef("TCP node must be '%s' type to use FakeDNS.", _dns_mode) + end + end + return value +end + +o = s:taboption("DNS", Value, "socks_server", translate("Socks Server"), translate("Make sure socks service is available on this address.")) +for k, v in pairs(socks_table) do o:value(v.id, v.remarks) end +o.validate = function(self, value, t) + if not datatypes.ipaddrport(value) then + return nil, translate("Socks Server") .. " " .. translate("Not valid IP format, please re-enter!") + end + return value +end +o:depends({dns_mode = "dns2socks"}) + +---- DoH +o = s:taboption("DNS", Value, "up_trust_doh", translate("DoH request address")) +o:value("https://cloudflare-dns.com/dns-query,1.1.1.1", "CloudFlare") +o:value("https://security.cloudflare-dns.com/dns-query,1.1.1.2", "CloudFlare-Security") +o:value("https://doh.opendns.com/dns-query,208.67.222.222", "OpenDNS") +o:value("https://dns.google/dns-query,8.8.8.8", "Google") +o:value("https://doh.libredns.gr/dns-query,116.202.176.26", "LibreDNS") +o:value("https://doh.libredns.gr/ads,116.202.176.26", "LibreDNS (No Ads)") +o:value("https://dns.quad9.net/dns-query,9.9.9.9", "Quad9-Recommended") +o:value("https://dns.adguard.com/dns-query,176.103.130.130", "AdGuard") +o.default = "https://cloudflare-dns.com/dns-query,1.1.1.1" +o.validate = doh_validate +o:depends("v2ray_dns_mode", "doh") + +---- DNS Forward +o = s:taboption("DNS", Value, "dns_forward", translate("Remote DNS")) +--o.description = translate("IP:Port mode acceptable, multi value split with english comma.") .. " " .. translate("If you use dns2socks, only the first one is valid.") +o.datatype = "or(ipaddr,ipaddrport)" +o.default = "1.1.1.1" +o:value("1.1.1.1", "1.1.1.1 (CloudFlare DNS)") +o:value("1.1.1.2", "1.1.1.2 (CloudFlare DNS)") +o:value("8.8.8.8", "8.8.8.8 (Google DNS)") +o:value("8.8.4.4", "8.8.4.4 (Google DNS)") +o:value("208.67.222.222", "208.67.222.222 (Open DNS)") +o:value("208.67.220.220", "208.67.220.220 (Open DNS)") +o:depends({dns_mode = "dns2socks"}) +o:depends({dns_mode = "pdnsd"}) +o:depends({dns_mode = "udp"}) +o:depends({v2ray_dns_mode = "tcp"}) + +o = s:taboption("DNS", Value, "dns_client_ip", translate("EDNS Client Subnet")) +o.description = translate("Notify the DNS server when the DNS query is notified, the location of the client (cannot be a private IP address).") .. "
" .. + translate("This feature requires the DNS server to support the Edns Client Subnet (RFC7871).") +o.datatype = "ipaddr" +o:depends("v2ray_dns_mode", "tcp") +o:depends("v2ray_dns_mode", "doh") + +o = s:taboption("DNS", Flag, "dns_cache", translate("Cache Resolved")) +o.default = "1" +o:depends({dns_mode = "dns2socks"}) +o:depends({dns_mode = "pdnsd"}) +o:depends({dns_mode = "v2ray", v2ray_dns_mode = "tcp"}) +o:depends({dns_mode = "v2ray", v2ray_dns_mode = "doh"}) +o:depends({dns_mode = "xray", v2ray_dns_mode = "tcp"}) +o:depends({dns_mode = "xray", v2ray_dns_mode = "doh"}) +o.rmempty = false + +if has_chnlist and api.is_finded("chinadns-ng") then + o = s:taboption("DNS", Flag, "chinadns_ng", translate("ChinaDNS-NG"), translate("The effect is better, but will increase the memory.")) + o.default = "0" + if api.is_finded("smartdns") then + o:depends({dns_shunt = "dnsmasq", dns_mode = "dns2socks"}) + o:depends({dns_shunt = "dnsmasq", dns_mode = "pdnsd"}) + o:depends({dns_shunt = "dnsmasq", dns_mode = "v2ray", v2ray_dns_mode = "tcp"}) + o:depends({dns_shunt = "dnsmasq", dns_mode = "v2ray", v2ray_dns_mode = "doh"}) + o:depends({dns_shunt = "dnsmasq", dns_mode = "xray", v2ray_dns_mode = "tcp"}) + o:depends({dns_shunt = "dnsmasq", dns_mode = "xray", v2ray_dns_mode = "doh"}) + o:depends({dns_shunt = "dnsmasq", dns_mode = "udp"}) + else + o:depends({dns_mode = "dns2socks"}) + o:depends({dns_mode = "pdnsd"}) + o:depends({dns_mode = "v2ray", v2ray_dns_mode = "tcp"}) + o:depends({dns_mode = "v2ray", v2ray_dns_mode = "doh"}) + o:depends({dns_mode = "xray", v2ray_dns_mode = "tcp"}) + o:depends({dns_mode = "xray", v2ray_dns_mode = "doh"}) + o:depends({dns_mode = "udp"}) + end +end + +o = s:taboption("DNS", Button, "clear_ipset", translate("Clear IPSET"), translate("Try this feature if the rule modification does not take effect.")) +o.inputstyle = "remove" +function o.write(e, e) + luci.sys.call("/usr/share/" .. appname .. "/iptables.sh flush_ipset > /dev/null 2>&1 &") + luci.http.redirect(api.url("log")) +end + +s:tab("Proxy", translate("Mode")) + +---- TCP Default Proxy Mode +tcp_proxy_mode = s:taboption("Proxy", ListValue, "tcp_proxy_mode", "TCP " .. translate("Default") .. translate("Proxy Mode")) +-- o.description = translate("If not available, try clearing the cache.") +tcp_proxy_mode:value("disable", translate("No Proxy")) +tcp_proxy_mode:value("global", translate("Global Proxy")) +tcp_proxy_mode:value("gfwlist", translate("GFW List")) +tcp_proxy_mode:value("chnroute", translate("Not China List")) +if has_chnlist then + tcp_proxy_mode:value("returnhome", translate("China List")) +end +tcp_proxy_mode:value("direct/proxy", translate("Only use direct/proxy list")) +tcp_proxy_mode.default = "chnroute" +--tcp_proxy_mode.validate = redir_mode_validate + +---- UDP Default Proxy Mode +udp_proxy_mode = s:taboption("Proxy", ListValue, "udp_proxy_mode", "UDP " .. translate("Default") .. translate("Proxy Mode")) +udp_proxy_mode:value("disable", translate("No Proxy")) +udp_proxy_mode:value("global", translate("Global Proxy")) +udp_proxy_mode:value("gfwlist", translate("GFW List")) +udp_proxy_mode:value("chnroute", translate("Not China List")) +if has_chnlist then + udp_proxy_mode:value("returnhome", translate("China List")) +end +udp_proxy_mode:value("direct/proxy", translate("Only use direct/proxy list")) +udp_proxy_mode.default = "chnroute" +--udp_proxy_mode.validate = redir_mode_validate + +---- Localhost TCP Proxy Mode +localhost_tcp_proxy_mode = s:taboption("Proxy", ListValue, "localhost_tcp_proxy_mode", translate("Router Localhost") .. " TCP " .. translate("Proxy Mode")) +-- o.description = translate("The server client can also use this rule to scientifically surf the Internet.") +localhost_tcp_proxy_mode:value("default", translatef("Same as the %s default proxy mode", "TCP")) +localhost_tcp_proxy_mode:value("global", translate("Global Proxy")) +localhost_tcp_proxy_mode:value("gfwlist", translate("GFW List")) +localhost_tcp_proxy_mode:value("chnroute", translate("Not China List")) +if has_chnlist then + localhost_tcp_proxy_mode:value("returnhome", translate("China List")) +end +localhost_tcp_proxy_mode:value("disable", translate("No Proxy")) +localhost_tcp_proxy_mode:value("direct/proxy", translate("Only use direct/proxy list")) +localhost_tcp_proxy_mode.default = "default" +--localhost_tcp_proxy_mode.validate = redir_mode_validate + +---- Localhost UDP Proxy Mode +localhost_udp_proxy_mode = s:taboption("Proxy", ListValue, "localhost_udp_proxy_mode", translate("Router Localhost") .. " UDP " .. translate("Proxy Mode")) +localhost_udp_proxy_mode:value("default", translatef("Same as the %s default proxy mode", "UDP")) +localhost_udp_proxy_mode:value("global", translate("Global Proxy")) +localhost_udp_proxy_mode:value("gfwlist", translate("GFW List")) +localhost_udp_proxy_mode:value("chnroute", translate("Not China List")) +if has_chnlist then + localhost_udp_proxy_mode:value("returnhome", translate("China List")) +end +localhost_udp_proxy_mode:value("disable", translate("No Proxy")) +localhost_udp_proxy_mode:value("direct/proxy", translate("Only use direct/proxy list")) +localhost_udp_proxy_mode.default = "default" +localhost_udp_proxy_mode.validate = redir_mode_validate + +tips = s:taboption("Proxy", DummyValue, "tips", " ") +tips.rawhtml = true +tips.cfgvalue = function(t, n) + return string.format('%s', api.url("acl"), translate("Want different devices to use different proxy modes/ports/nodes? Please use access control.")) +end + +s:tab("log", translate("Log")) +o = s:taboption("log", Flag, "close_log_tcp", translatef("%s Node Log Close", "TCP")) +o.rmempty = false + +o = s:taboption("log", Flag, "close_log_udp", translatef("%s Node Log Close", "UDP")) +o.rmempty = false + +loglevel = s:taboption("log", ListValue, "loglevel", "V2ray/Xray" .. translate("Log Level")) +loglevel.default = "warning" +loglevel:value("debug") +loglevel:value("info") +loglevel:value("warning") +loglevel:value("error") + +trojan_loglevel = s:taboption("log", ListValue, "trojan_loglevel", "Trojan" .. translate("Log Level")) +trojan_loglevel.default = "2" +trojan_loglevel:value("0", "all") +trojan_loglevel:value("1", "info") +trojan_loglevel:value("2", "warn") +trojan_loglevel:value("3", "error") +trojan_loglevel:value("4", "fatal") + +s:tab("faq", "FAQ") + +o = s:taboption("faq", DummyValue, "") +o.template = appname .. "/global/faq" + +-- [[ Socks Server ]]-- +o = s:taboption("Main", Flag, "socks_enabled", "Socks " .. translate("Main switch")) +o.rmempty = false + +s = m:section(TypedSection, "socks", translate("Socks Config")) +s.anonymous = true +s.addremove = true +s.template = "cbi/tblsection" +function s.create(e, t) + TypedSection.create(e, api.gen_uuid()) +end + +o = s:option(DummyValue, "status", translate("Status")) +o.rawhtml = true +o.cfgvalue = function(t, n) + return string.format('
', n) +end + +---- Enable +o = s:option(Flag, "enabled", translate("Enable")) +o.default = 1 +o.rmempty = false + +socks_node = s:option(ListValue, "node", translate("Socks Node")) +socks_node:value("tcp", translate("Same as the tcp node")) + +local n = 0 +uci:foreach(appname, "socks", function(s) + if s[".name"] == section then + return false + end + n = n + 1 +end) + +o = s:option(Value, "port", "Socks " .. translate("Listen Port")) +o.default = n + 1080 +o.datatype = "port" +o.rmempty = false + +if has_v2ray or has_xray then + o = s:option(Value, "http_port", "HTTP " .. translate("Listen Port") .. " " .. translate("0 is not use")) + o.default = 0 + o.datatype = "port" +end + +for k, v in pairs(nodes_table) do + tcp_node:value(v.id, v["remark"]) + udp_node:value(v.id, v["remark"]) + if v.type == "Socks" then + if has_v2ray or has_xray then + socks_node:value(v.id, v["remark"]) + end + else + socks_node:value(v.id, v["remark"]) + end +end + +m:append(Template(appname .. "/global/footer")) + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/haproxy.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/haproxy.lua new file mode 100644 index 000000000..a1270087a --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/haproxy.lua @@ -0,0 +1,121 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local sys = api.sys +local net = require "luci.model.network".init() +local datatypes = api.datatypes + +local nodes_table = {} +for k, e in ipairs(api.get_valid_nodes()) do + if e.node_type == "normal" then + nodes_table[#nodes_table + 1] = { + id = e[".name"], + obj = e, + remarks = e["remark"] + } + end +end + +m = Map(appname) + +-- [[ Haproxy Settings ]]-- +s = m:section(TypedSection, "global_haproxy") +s.anonymous = true + +s:append(Template(appname .. "/haproxy/status")) + +---- Balancing Enable +o = s:option(Flag, "balancing_enable", translate("Enable Load Balancing")) +o.rmempty = false +o.default = false + +---- Console Username +o = s:option(Value, "console_user", translate("Console Username")) +o.default = "" +o:depends("balancing_enable", true) + +---- Console Password +o = s:option(Value, "console_password", translate("Console Password")) +o.password = true +o.default = "" +o:depends("balancing_enable", true) + +---- Console Port +o = s:option(Value, "console_port", translate("Console Port"), translate( + "In the browser input routing IP plus port access, such as:192.168.1.1:1188")) +o.default = "1188" +o:depends("balancing_enable", true) + +-- [[ Balancing Settings ]]-- +s = m:section(TypedSection, "haproxy_config", "", + "" .. + translate("Add a node, Export Of Multi WAN Only support Multi Wan. Load specific gravity range 1-256. Multiple primary servers can be load balanced, standby will only be enabled when the primary server is offline! Multiple groups can be set, Haproxy port same one for each group.") .. + "\n" .. translate("Note that the node configuration parameters for load balancing must be consistent, otherwise problems can arise!") .. + "") +s.template = "cbi/tblsection" +s.sortable = true +s.anonymous = true +s.addremove = true + +s.create = function(e, t) + TypedSection.create(e, api.gen_uuid()) +end + +s.remove = function(self, section) + for k, v in pairs(self.children) do + v.rmempty = true + v.validate = nil + end + TypedSection.remove(self, section) +end + +---- Enable +o = s:option(Flag, "enabled", translate("Enable")) +o.default = 1 +o.rmempty = false + +---- Node Address +o = s:option(Value, "lbss", translate("Node Address")) +for k, v in pairs(nodes_table) do o:value(v.id, v.remarks) end +o.rmempty = false +o.validate = function(self, value) + if not value then return nil end + local t = m:get(value) or nil + if t and t[".type"] == "nodes" then + return value + end + if datatypes.hostport(value) or datatypes.ip4addrport(value) then + return value + end + if api.is_ipv6addrport(value) then + return value + end + return nil, value +end + +---- Haproxy Port +o = s:option(Value, "haproxy_port", translate("Haproxy Port")) +o.datatype = "port" +o.default = 1181 +o.rmempty = false + +---- Node Weight +o = s:option(Value, "lbweight", translate("Node Weight")) +o.datatype = "uinteger" +o.default = 5 +o.rmempty = false + +---- Export +o = s:option(ListValue, "export", translate("Export Of Multi WAN")) +o:value(0, translate("Auto")) +local wa = require "luci.tools.webadmin" +wa.cbi_add_networks(o) +o.default = 0 +o.rmempty = false + +---- Mode +o = s:option(ListValue, "backup", translate("Mode")) +o:value(0, translate("Primary")) +o:value(1, translate("Standby")) +o.rmempty = false + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/log.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/log.lua new file mode 100644 index 000000000..5580e17aa --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/log.lua @@ -0,0 +1,8 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname + +f = SimpleForm(appname) +f.reset = false +f.submit = false +f:append(Template(appname .. "/log/log")) +return f diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/node_config.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/node_config.lua new file mode 100644 index 000000000..ac68967eb --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/node_config.lua @@ -0,0 +1,863 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local uci = api.uci + +if not arg[1] or not uci:get(appname, arg[1]) then + luci.http.redirect(api.url("node_list")) +end + +local ss_encrypt_method_list = { + "rc4-md5", "aes-128-cfb", "aes-192-cfb", "aes-256-cfb", "aes-128-ctr", + "aes-192-ctr", "aes-256-ctr", "bf-cfb", "salsa20", "chacha20", "chacha20-ietf", + "aes-128-gcm", "aes-192-gcm", "aes-256-gcm", "chacha20-ietf-poly1305", + "xchacha20-ietf-poly1305" +} + +local ss_rust_encrypt_method_list = { + "plain", "none", + "aes-128-gcm", "aes-256-gcm", "chacha20-ietf-poly1305" +} + +local ssr_encrypt_method_list = { + "none", "table", "rc2-cfb", "rc4", "rc4-md5", "rc4-md5-6", "aes-128-cfb", + "aes-192-cfb", "aes-256-cfb", "aes-128-ctr", "aes-192-ctr", "aes-256-ctr", + "bf-cfb", "camellia-128-cfb", "camellia-192-cfb", "camellia-256-cfb", + "cast5-cfb", "des-cfb", "idea-cfb", "seed-cfb", "salsa20", "chacha20", + "chacha20-ietf" +} + +local ssr_protocol_list = { + "origin", "verify_simple", "verify_deflate", "verify_sha1", "auth_simple", + "auth_sha1", "auth_sha1_v2", "auth_sha1_v4", "auth_aes128_md5", + "auth_aes128_sha1", "auth_chain_a", "auth_chain_b", "auth_chain_c", + "auth_chain_d", "auth_chain_e", "auth_chain_f" +} +local ssr_obfs_list = { + "plain", "http_simple", "http_post", "random_head", "tls_simple", + "tls1.0_session_auth", "tls1.2_ticket_auth" +} + +local v_ss_encrypt_method_list = { + "aes-128-gcm", "aes-256-gcm", "chacha20-poly1305" +} + +local x_ss_encrypt_method_list = { + "aes-128-gcm", "aes-256-gcm", "chacha20-poly1305", "xchacha20-poly1305" +} + +local security_list = {"none", "auto", "aes-128-gcm", "chacha20-poly1305", "zero"} + +local header_type_list = { + "none", "srtp", "utp", "wechat-video", "dtls", "wireguard" +} +local encrypt_methods_ss_aead = { + "chacha20-ietf-poly1305", + "aes-128-gcm", + "aes-256-gcm", +} + +m = Map(appname, translate("Node Config")) +m.redirect = api.url() + +s = m:section(NamedSection, arg[1], "nodes", "") +s.addremove = false +s.dynamic = false + +share = s:option(DummyValue, "passwall", " ") +share.rawhtml = true +share.template = "passwall/node_list/link_share_man" +share.value = arg[1] + +remarks = s:option(Value, "remarks", translate("Node Remarks")) +remarks.default = translate("Remarks") +remarks.rmempty = false + +type = s:option(ListValue, "type", translate("Type")) +if api.is_finded("ipt2socks") then + type:value("Socks", translate("Socks")) +end +if api.is_finded("ss-redir") then + type:value("SS", translate("Shadowsocks Libev")) +end +if api.is_finded("sslocal") then + type:value("SS-Rust", translate("Shadowsocks Rust")) +end +if api.is_finded("ssr-redir") then + type:value("SSR", translate("ShadowsocksR Libev")) +end +if api.is_finded("v2ray") then + type:value("V2ray", translate("V2ray")) +end +if api.is_finded("xray") then + type:value("Xray", translate("Xray")) +end +if api.is_finded("brook") then + type:value("Brook", translate("Brook")) +end +--[[ +if api.is_finded("trojan-plus") or api.is_finded("trojan") then + type:value("Trojan", translate("Trojan")) +end +]]-- +if api.is_finded("trojan-plus") then + type:value("Trojan-Plus", translate("Trojan-Plus")) +end +if api.is_finded("trojan-go") then + type:value("Trojan-Go", translate("Trojan-Go")) +end +if api.is_finded("naive") then + type:value("Naiveproxy", translate("NaiveProxy")) +end +if api.is_finded("hysteria") then + type:value("Hysteria", translate("Hysteria")) +end + +protocol = s:option(ListValue, "protocol", translate("Protocol")) +protocol:value("vmess", translate("Vmess")) +protocol:value("vless", translate("VLESS")) +protocol:value("http", translate("HTTP")) +protocol:value("socks", translate("Socks")) +protocol:value("shadowsocks", translate("Shadowsocks")) +protocol:value("trojan", translate("Trojan")) +protocol:value("_balancing", translate("Balancing")) +protocol:value("_shunt", translate("Shunt")) +protocol:depends("type", "V2ray") +protocol:depends("type", "Xray") + +local nodes_table = {} +for k, e in ipairs(api.get_valid_nodes()) do + if e.node_type == "normal" then + nodes_table[#nodes_table + 1] = { + id = e[".name"], + remarks = e["remark"] + } + end +end + +-- 负载均衡列表 +balancing_node = s:option(DynamicList, "balancing_node", translate("Load balancing node list"), translate("Load balancing node list, document")) +for k, v in pairs(nodes_table) do balancing_node:value(v.id, v.remarks) end +balancing_node:depends("protocol", "_balancing") + +-- 分流 +uci:foreach(appname, "shunt_rules", function(e) + if e[".name"] and e.remarks then + o = s:option(ListValue, e[".name"], string.format('* %s', api.url("shunt_rules", e[".name"]), e.remarks)) + o:value("nil", translate("Close")) + o:value("_default", translate("Default")) + o:value("_direct", translate("Direct Connection")) + o:value("_blackhole", translate("Blackhole")) + o:depends("protocol", "_shunt") + + if #nodes_table > 0 then + _proxy_tag = s:option(ListValue, e[".name"] .. "_proxy_tag", string.format('* %s', e.remarks .. " " .. translate("Preproxy"))) + _proxy_tag:value("nil", translate("Close")) + _proxy_tag:value("default", translate("Default")) + _proxy_tag:value("main", translate("Default Preproxy")) + _proxy_tag.default = "nil" + + for k, v in pairs(nodes_table) do + o:value(v.id, v.remarks) + _proxy_tag:depends(e[".name"], v.id) + end + end + end +end) + +shunt_tips = s:option(DummyValue, "shunt_tips", " ") +shunt_tips.rawhtml = true +shunt_tips.cfgvalue = function(t, n) + return string.format('%s', translate("No shunt rules? Click me to go to add.")) +end +shunt_tips:depends("protocol", "_shunt") + +default_node = s:option(ListValue, "default_node", string.format('* %s', translate("Default"))) +default_node:value("_direct", translate("Direct Connection")) +default_node:value("_blackhole", translate("Blackhole")) +for k, v in pairs(nodes_table) do default_node:value(v.id, v.remarks) end +default_node:depends("protocol", "_shunt") + +if #nodes_table > 0 then + o = s:option(ListValue, "main_node", string.format('* %s', translate("Default Preproxy")), translate("When using, localhost will connect this node first and then use this node to connect the default node.")) + o:value("nil", translate("Close")) + for k, v in pairs(nodes_table) do + o:value(v.id, v.remarks) + o:depends("default_node", v.id) + end +end + +domainStrategy = s:option(ListValue, "domainStrategy", translate("Domain Strategy")) +domainStrategy:value("AsIs") +domainStrategy:value("IPIfNonMatch") +domainStrategy:value("IPOnDemand") +domainStrategy.default = "IPOnDemand" +domainStrategy.description = "
  • " .. translate("'AsIs': Only use domain for routing. Default value.") +.. "
  • " .. translate("'IPIfNonMatch': When no rule matches current domain, resolves it into IP addresses (A or AAAA records) and try all rules again.") +.. "
  • " .. translate("'IPOnDemand': As long as there is a IP-based rule, resolves the domain into IP immediately.") +.. "
" +domainStrategy:depends("protocol", "_balancing") +domainStrategy:depends("protocol", "_shunt") + +domainMatcher = s:option(ListValue, "domainMatcher", translate("Domain matcher")) +domainMatcher:value("hybrid") +domainMatcher:value("linear") +domainMatcher:depends("protocol", "_balancing") +domainMatcher:depends("protocol", "_shunt") + + +-- Brook协议 +brook_protocol = s:option(ListValue, "brook_protocol", translate("Protocol")) +brook_protocol:value("client", translate("Brook")) +brook_protocol:value("wsclient", translate("WebSocket")) +brook_protocol:depends("type", "Brook") +function brook_protocol.cfgvalue(self, section) + return m:get(section, "protocol") +end +function brook_protocol.write(self, section, value) + m:set(section, "protocol", value) +end + +brook_tls = s:option(Flag, "brook_tls", translate("Use TLS")) +brook_tls:depends("brook_protocol", "wsclient") + +-- Naiveproxy协议 +naiveproxy_protocol = s:option(ListValue, "naiveproxy_protocol", translate("Protocol")) +naiveproxy_protocol:value("https", translate("HTTPS")) +naiveproxy_protocol:value("quic", translate("QUIC")) +naiveproxy_protocol:depends("type", "Naiveproxy") +function naiveproxy_protocol.cfgvalue(self, section) + return m:get(section, "protocol") +end +function naiveproxy_protocol.write(self, section, value) + m:set(section, "protocol", value) +end + +address = s:option(Value, "address", translate("Address (Support Domain Name)")) +address.rmempty = false +address:depends("type", "Socks") +address:depends("type", "SS") +address:depends("type", "SS-Rust") +address:depends("type", "SSR") +address:depends("type", "Brook") +address:depends("type", "Trojan") +address:depends("type", "Trojan-Plus") +address:depends("type", "Trojan-Go") +address:depends("type", "Naiveproxy") +address:depends("type", "Hysteria") +address:depends({ type = "V2ray", protocol = "vmess" }) +address:depends({ type = "V2ray", protocol = "vless" }) +address:depends({ type = "V2ray", protocol = "http" }) +address:depends({ type = "V2ray", protocol = "socks" }) +address:depends({ type = "V2ray", protocol = "shadowsocks" }) +address:depends({ type = "V2ray", protocol = "trojan" }) +address:depends({ type = "Xray", protocol = "vmess" }) +address:depends({ type = "Xray", protocol = "vless" }) +address:depends({ type = "Xray", protocol = "http" }) +address:depends({ type = "Xray", protocol = "socks" }) +address:depends({ type = "Xray", protocol = "shadowsocks" }) +address:depends({ type = "Xray", protocol = "trojan" }) + +--[[ +use_ipv6 = s:option(Flag, "use_ipv6", translate("Use IPv6")) +use_ipv6.default = 0 +use_ipv6:depends("type", "Socks") +use_ipv6:depends("type", "SS") +use_ipv6:depends("type", "SS-Rust") +use_ipv6:depends("type", "SSR") +use_ipv6:depends("type", "Brook") +use_ipv6:depends("type", "Trojan") +use_ipv6:depends("type", "Trojan-Plus") +use_ipv6:depends("type", "Trojan-Go") +use_ipv6:depends("type", "Hysteria") +use_ipv6:depends({ type = "V2ray", protocol = "vmess" }) +use_ipv6:depends({ type = "V2ray", protocol = "vless" }) +use_ipv6:depends({ type = "V2ray", protocol = "http" }) +use_ipv6:depends({ type = "V2ray", protocol = "socks" }) +use_ipv6:depends({ type = "V2ray", protocol = "shadowsocks" }) +use_ipv6:depends({ type = "V2ray", protocol = "trojan" }) +use_ipv6:depends({ type = "Xray", protocol = "vmess" }) +use_ipv6:depends({ type = "Xray", protocol = "vless" }) +use_ipv6:depends({ type = "Xray", protocol = "http" }) +use_ipv6:depends({ type = "Xray", protocol = "socks" }) +use_ipv6:depends({ type = "Xray", protocol = "shadowsocks" }) +use_ipv6:depends({ type = "Xray", protocol = "trojan" }) +--]] + +port = s:option(Value, "port", translate("Port")) +port.datatype = "port" +port.rmempty = false +port:depends("type", "Socks") +port:depends("type", "SS") +port:depends("type", "SS-Rust") +port:depends("type", "SSR") +port:depends("type", "Brook") +port:depends("type", "Trojan") +port:depends("type", "Trojan-Plus") +port:depends("type", "Trojan-Go") +port:depends("type", "Naiveproxy") +port:depends("type", "Hysteria") +port:depends({ type = "V2ray", protocol = "vmess" }) +port:depends({ type = "V2ray", protocol = "vless" }) +port:depends({ type = "V2ray", protocol = "http" }) +port:depends({ type = "V2ray", protocol = "socks" }) +port:depends({ type = "V2ray", protocol = "shadowsocks" }) +port:depends({ type = "V2ray", protocol = "trojan" }) +port:depends({ type = "Xray", protocol = "vmess" }) +port:depends({ type = "Xray", protocol = "vless" }) +port:depends({ type = "Xray", protocol = "http" }) +port:depends({ type = "Xray", protocol = "socks" }) +port:depends({ type = "Xray", protocol = "shadowsocks" }) +port:depends({ type = "Xray", protocol = "trojan" }) + +username = s:option(Value, "username", translate("Username")) +username:depends("type", "Socks") +username:depends("type", "Naiveproxy") +username:depends({ type = "V2ray", protocol = "http" }) +username:depends({ type = "V2ray", protocol = "socks" }) +username:depends({ type = "Xray", protocol = "http" }) +username:depends({ type = "Xray", protocol = "socks" }) + +password = s:option(Value, "password", translate("Password")) +password.password = true +password:depends("type", "Socks") +password:depends("type", "SS") +password:depends("type", "SS-Rust") +password:depends("type", "SSR") +password:depends("type", "Brook") +password:depends("type", "Trojan") +password:depends("type", "Trojan-Plus") +password:depends("type", "Trojan-Go") +password:depends("type", "Naiveproxy") +password:depends({ type = "V2ray", protocol = "http" }) +password:depends({ type = "V2ray", protocol = "socks" }) +password:depends({ type = "V2ray", protocol = "shadowsocks" }) +password:depends({ type = "V2ray", protocol = "trojan" }) +password:depends({ type = "Xray", protocol = "http" }) +password:depends({ type = "Xray", protocol = "socks" }) +password:depends({ type = "Xray", protocol = "shadowsocks" }) +password:depends({ type = "Xray", protocol = "trojan" }) + +hysteria_protocol = s:option(ListValue, "hysteria_protocol", translate("Protocol")) +hysteria_protocol:value("udp", "UDP") +hysteria_protocol:value("faketcp", "faketcp") +hysteria_protocol:value("wechat-video", "wechat-video") +hysteria_protocol:depends("type", "Hysteria") +function hysteria_protocol.cfgvalue(self, section) + return m:get(section, "protocol") +end +function hysteria_protocol.write(self, section, value) + m:set(section, "protocol", value) +end + +hysteria_obfs = s:option(Value, "hysteria_obfs", translate("Obfs Password")) +hysteria_obfs:depends("type", "Hysteria") + +hysteria_auth_type = s:option(ListValue, "hysteria_auth_type", translate("Auth Type")) +hysteria_auth_type:value("disable", translate("Disable")) +hysteria_auth_type:value("string", translate("STRING")) +hysteria_auth_type:value("base64", translate("BASE64")) +hysteria_auth_type:depends("type", "Hysteria") + +hysteria_auth_password = s:option(Value, "hysteria_auth_password", translate("Auth Password")) +hysteria_auth_password.password = true +hysteria_auth_password:depends("hysteria_auth_type", "string") +hysteria_auth_password:depends("hysteria_auth_type", "base64") + +hysteria_alpn = s:option(Value, "hysteria_alpn", translate("QUIC TLS ALPN")) +hysteria_alpn:depends("type", "Hysteria") + +ss_encrypt_method = s:option(Value, "ss_encrypt_method", translate("Encrypt Method")) +for a, t in ipairs(ss_encrypt_method_list) do ss_encrypt_method:value(t) end +ss_encrypt_method:depends("type", "SS") +function ss_encrypt_method.cfgvalue(self, section) + return m:get(section, "method") +end +function ss_encrypt_method.write(self, section, value) + m:set(section, "method", value) +end + +ss_rust_encrypt_method = s:option(Value, "ss_rust_encrypt_method", translate("Encrypt Method")) +for a, t in ipairs(ss_rust_encrypt_method_list) do ss_rust_encrypt_method:value(t) end +ss_rust_encrypt_method:depends("type", "SS-Rust") +function ss_rust_encrypt_method.cfgvalue(self, section) + return m:get(section, "method") +end +function ss_rust_encrypt_method.write(self, section, value) + m:set(section, "method", value) +end + +ssr_encrypt_method = s:option(Value, "ssr_encrypt_method", translate("Encrypt Method")) +for a, t in ipairs(ssr_encrypt_method_list) do ssr_encrypt_method:value(t) end +ssr_encrypt_method:depends("type", "SSR") +function ssr_encrypt_method.cfgvalue(self, section) + return m:get(section, "method") +end +function ssr_encrypt_method.write(self, section, value) + m:set(section, "method", value) +end + +security = s:option(ListValue, "security", translate("Encrypt Method")) +for a, t in ipairs(security_list) do security:value(t) end +security:depends({ type = "V2ray", protocol = "vmess" }) +security:depends({ type = "Xray", protocol = "vmess" }) + +encryption = s:option(Value, "encryption", translate("Encrypt Method")) +encryption.default = "none" +encryption:value("none") +encryption:depends({ type = "V2ray", protocol = "vless" }) +encryption:depends({ type = "Xray", protocol = "vless" }) + +v_ss_encrypt_method = s:option(ListValue, "v_ss_encrypt_method", translate("Encrypt Method")) +for a, t in ipairs(v_ss_encrypt_method_list) do v_ss_encrypt_method:value(t) end +v_ss_encrypt_method:depends({ type = "V2ray", protocol = "shadowsocks" }) +function v_ss_encrypt_method.cfgvalue(self, section) + return m:get(section, "method") +end +function v_ss_encrypt_method.write(self, section, value) + m:set(section, "method", value) +end + +x_ss_encrypt_method = s:option(ListValue, "x_ss_encrypt_method", translate("Encrypt Method")) +for a, t in ipairs(x_ss_encrypt_method_list) do x_ss_encrypt_method:value(t) end +x_ss_encrypt_method:depends({ type = "Xray", protocol = "shadowsocks" }) +function x_ss_encrypt_method.cfgvalue(self, section) + return m:get(section, "method") +end +function x_ss_encrypt_method.write(self, section, value) + m:set(section, "method", value) +end + +iv_check = s:option(Flag, "iv_check", translate("IV Check")) +iv_check:depends({ type = "V2ray", protocol = "shadowsocks" }) +iv_check:depends({ type = "Xray", protocol = "shadowsocks" }) + +ssr_protocol = s:option(Value, "ssr_protocol", translate("Protocol")) +for a, t in ipairs(ssr_protocol_list) do ssr_protocol:value(t) end +ssr_protocol:depends("type", "SSR") +function ssr_protocol.cfgvalue(self, section) + return m:get(section, "protocol") +end +function ssr_protocol.write(self, section, value) + m:set(section, "protocol", value) +end + +protocol_param = s:option(Value, "protocol_param", translate("Protocol_param")) +protocol_param:depends("type", "SSR") + +obfs = s:option(Value, "obfs", translate("Obfs")) +for a, t in ipairs(ssr_obfs_list) do obfs:value(t) end +obfs:depends("type", "SSR") + +obfs_param = s:option(Value, "obfs_param", translate("Obfs_param")) +obfs_param:depends("type", "SSR") + +timeout = s:option(Value, "timeout", translate("Connection Timeout")) +timeout.datatype = "uinteger" +timeout.default = 300 +timeout:depends("type", "SS") +timeout:depends("type", "SS-Rust") +timeout:depends("type", "SSR") + +tcp_fast_open = s:option(ListValue, "tcp_fast_open", translate("TCP Fast Open"), translate("Need node support required")) +tcp_fast_open:value("false") +tcp_fast_open:value("true") +tcp_fast_open:depends("type", "SS") +tcp_fast_open:depends("type", "SS-Rust") +tcp_fast_open:depends("type", "SSR") +tcp_fast_open:depends("type", "Trojan") +tcp_fast_open:depends("type", "Trojan-Plus") +tcp_fast_open:depends("type", "Trojan-Go") + +ss_plugin = s:option(ListValue, "ss_plugin", translate("plugin")) +ss_plugin:value("none", translate("none")) +if api.is_finded("xray-plugin") then ss_plugin:value("xray-plugin") end +if api.is_finded("v2ray-plugin") then ss_plugin:value("v2ray-plugin") end +if api.is_finded("obfs-local") then ss_plugin:value("obfs-local") end +ss_plugin:depends("type", "SS") +ss_plugin:depends("type", "SS-Rust") +function ss_plugin.cfgvalue(self, section) + return m:get(section, "plugin") +end +function ss_plugin.write(self, section, value) + m:set(section, "plugin", value) +end + +ss_plugin_opts = s:option(Value, "ss_plugin_opts", translate("opts")) +ss_plugin_opts:depends("ss_plugin", "xray-plugin") +ss_plugin_opts:depends("ss_plugin", "v2ray-plugin") +ss_plugin_opts:depends("ss_plugin", "obfs-local") +function ss_plugin_opts.cfgvalue(self, section) + return m:get(section, "plugin_opts") +end +function ss_plugin_opts.write(self, section, value) + m:set(section, "plugin_opts", value) +end + +uuid = s:option(Value, "uuid", translate("ID")) +uuid.password = true +uuid:depends({ type = "V2ray", protocol = "vmess" }) +uuid:depends({ type = "V2ray", protocol = "vless" }) +uuid:depends({ type = "Xray", protocol = "vmess" }) +uuid:depends({ type = "Xray", protocol = "vless" }) + +tls = s:option(Flag, "tls", translate("TLS")) +tls.default = 0 +tls.validate = function(self, value, t) + if value then + local type = type:formvalue(t) or "" + if value == "0" and (type == "Trojan" or type == "Trojan-Plus") then + return nil, translate("Original Trojan only supported 'tls', please choose 'tls'.") + end + return value + end +end +tls:depends({ type = "V2ray", protocol = "vmess" }) +tls:depends({ type = "V2ray", protocol = "vless" }) +tls:depends({ type = "V2ray", protocol = "socks" }) +tls:depends({ type = "V2ray", protocol = "trojan" }) +tls:depends({ type = "V2ray", protocol = "shadowsocks" }) +tls:depends({ type = "Xray", protocol = "vmess" }) +tls:depends({ type = "Xray", protocol = "vless" }) +tls:depends({ type = "Xray", protocol = "socks" }) +tls:depends({ type = "Xray", protocol = "trojan" }) +tls:depends({ type = "Xray", protocol = "shadowsocks" }) +tls:depends("type", "Trojan") +tls:depends("type", "Trojan-Plus") +tls:depends("type", "Trojan-Go") + +xtls = s:option(Flag, "xtls", translate("XTLS")) +xtls.default = 0 +xtls:depends({ type = "Xray", protocol = "vless", tls = true }) +xtls:depends({ type = "Xray", protocol = "trojan", tls = true }) + +flow = s:option(Value, "flow", translate("flow")) +flow.default = "xtls-rprx-direct" +flow:value("xtls-rprx-origin") +flow:value("xtls-rprx-origin-udp443") +flow:value("xtls-rprx-direct") +flow:value("xtls-rprx-direct-udp443") +flow:value("xtls-rprx-splice") +flow:value("xtls-rprx-splice-udp443") +flow:depends("xtls", true) + +alpn = s:option(ListValue, "alpn", translate("alpn")) +alpn.default = "default" +alpn:value("default", translate("Default")) +alpn:value("h2,http/1.1") +alpn:value("h2") +alpn:value("http/1.1") +alpn:depends({ type = "V2ray", tls = true }) +alpn:depends({ type = "Xray", tls = true }) + +-- [[ TLS部分 ]] -- +tls_sessionTicket = s:option(Flag, "tls_sessionTicket", translate("Session Ticket")) +tls_sessionTicket.default = "0" +tls_sessionTicket:depends({ type = "Trojan", tls = true }) +tls_sessionTicket:depends({ type = "Trojan-Plus", tls = true }) +tls_sessionTicket:depends({ type = "Trojan-Go", tls = true }) + +trojan_go_fingerprint = s:option(ListValue, "trojan_go_fingerprint", translate("Finger Print")) +trojan_go_fingerprint:value("disable", translate("Disable")) +trojan_go_fingerprint:value("firefox") +trojan_go_fingerprint:value("chrome") +trojan_go_fingerprint:value("ios") +trojan_go_fingerprint.default = "disable" +trojan_go_fingerprint:depends({ type = "Trojan-Go", tls = true }) +function trojan_go_fingerprint.cfgvalue(self, section) + return m:get(section, "fingerprint") +end +function trojan_go_fingerprint.write(self, section, value) + m:set(section, "fingerprint", value) +end + +tls_serverName = s:option(Value, "tls_serverName", translate("Domain")) +tls_serverName:depends("tls", true) +tls_serverName:depends("type", "Hysteria") + +tls_allowInsecure = s:option(Flag, "tls_allowInsecure", translate("allowInsecure"), translate("Whether unsafe connections are allowed. When checked, Certificate validation will be skipped.")) +tls_allowInsecure.default = "0" +tls_allowInsecure:depends("tls", true) +tls_allowInsecure:depends("type", "Hysteria") + +xray_fingerprint = s:option(ListValue, "xray_fingerprint", translate("Finger Print")) +xray_fingerprint:value("disable", translate("Disable")) +xray_fingerprint:value("chrome") +xray_fingerprint:value("firefox") +xray_fingerprint:value("safari") +xray_fingerprint:value("randomized") +xray_fingerprint.default = "disable" +xray_fingerprint:depends({ type = "Xray", tls = true, xtls = false }) +function xray_fingerprint.cfgvalue(self, section) + return m:get(section, "fingerprint") +end +function xray_fingerprint.write(self, section, value) + m:set(section, "fingerprint", value) +end + +trojan_transport = s:option(ListValue, "trojan_transport", translate("Transport")) +trojan_transport:value("original", translate("Original")) +trojan_transport:value("ws", "WebSocket") +trojan_transport.default = "original" +trojan_transport:depends("type", "Trojan-Go") + +trojan_plugin = s:option(ListValue, "plugin_type", translate("Transport Plugin")) +trojan_plugin:value("plaintext", "Plain Text") +trojan_plugin:value("shadowsocks", "ShadowSocks") +trojan_plugin:value("other", "Other") +trojan_plugin.default = "plaintext" +trojan_plugin:depends({ tls = false, trojan_transport = "original" }) + +trojan_plugin_cmd = s:option(Value, "plugin_cmd", translate("Plugin Binary")) +trojan_plugin_cmd.placeholder = "eg: /usr/bin/v2ray-plugin" +trojan_plugin_cmd:depends({ plugin_type = "shadowsocks" }) +trojan_plugin_cmd:depends({ plugin_type = "other" }) + +trojan_plugin_op = s:option(Value, "plugin_option", translate("Plugin Option")) +trojan_plugin_op.placeholder = "eg: obfs=http;obfs-host=www.baidu.com" +trojan_plugin_op:depends({ plugin_type = "shadowsocks" }) +trojan_plugin_op:depends({ plugin_type = "other" }) + +trojan_plugin_arg = s:option(DynamicList, "plugin_arg", translate("Plugin Option Args")) +trojan_plugin_arg.placeholder = "eg: [\"-config\", \"test.json\"]" +trojan_plugin_arg:depends({ plugin_type = "shadowsocks" }) +trojan_plugin_arg:depends({ plugin_type = "other" }) + +transport = s:option(ListValue, "transport", translate("Transport")) +transport:value("tcp", "TCP") +transport:value("mkcp", "mKCP") +transport:value("ws", "WebSocket") +transport:value("h2", "HTTP/2") +transport:value("ds", "DomainSocket") +transport:value("quic", "QUIC") +transport:value("grpc", "gRPC") +transport:depends({ type = "V2ray", protocol = "vmess" }) +transport:depends({ type = "V2ray", protocol = "vless" }) +transport:depends({ type = "V2ray", protocol = "socks" }) +transport:depends({ type = "V2ray", protocol = "shadowsocks" }) +transport:depends({ type = "V2ray", protocol = "trojan" }) +transport:depends({ type = "Xray", protocol = "vmess" }) +transport:depends({ type = "Xray", protocol = "vless" }) +transport:depends({ type = "Xray", protocol = "socks" }) +transport:depends({ type = "Xray", protocol = "shadowsocks" }) +transport:depends({ type = "Xray", protocol = "trojan" }) + +--[[ +ss_transport = s:option(ListValue, "ss_transport", translate("Transport")) +ss_transport:value("ws", "WebSocket") +ss_transport:value("h2", "HTTP/2") +ss_transport:value("h2+ws", "HTTP/2 & WebSocket") +ss_transport:depends({ type = "V2ray", protocol = "shadowsocks" }) +ss_transport:depends({ type = "Xray", protocol = "shadowsocks" }) +]]-- + +-- [[ TCP部分 ]]-- + +-- TCP伪装 +tcp_guise = s:option(ListValue, "tcp_guise", translate("Camouflage Type")) +tcp_guise:value("none", "none") +tcp_guise:value("http", "http") +tcp_guise:depends("transport", "tcp") + +-- HTTP域名 +tcp_guise_http_host = s:option(DynamicList, "tcp_guise_http_host", translate("HTTP Host")) +tcp_guise_http_host:depends("tcp_guise", "http") + +-- HTTP路径 +tcp_guise_http_path = s:option(DynamicList, "tcp_guise_http_path", translate("HTTP Path")) +tcp_guise_http_path:depends("tcp_guise", "http") + +-- [[ mKCP部分 ]]-- + +mkcp_guise = s:option(ListValue, "mkcp_guise", translate("Camouflage Type"), translate('
none: default, no masquerade, data sent is packets with no characteristics.
srtp: disguised as an SRTP packet, it will be recognized as video call data (such as FaceTime).
utp: packets disguised as uTP will be recognized as bittorrent downloaded data.
wechat-video: packets disguised as WeChat video calls.
dtls: disguised as DTLS 1.2 packet.
wireguard: disguised as a WireGuard packet. (not really WireGuard protocol)')) +for a, t in ipairs(header_type_list) do mkcp_guise:value(t) end +mkcp_guise:depends("transport", "mkcp") + +mkcp_mtu = s:option(Value, "mkcp_mtu", translate("KCP MTU")) +mkcp_mtu.default = "1350" +mkcp_mtu:depends("transport", "mkcp") + +mkcp_tti = s:option(Value, "mkcp_tti", translate("KCP TTI")) +mkcp_tti.default = "20" +mkcp_tti:depends("transport", "mkcp") + +mkcp_uplinkCapacity = s:option(Value, "mkcp_uplinkCapacity", translate("KCP uplinkCapacity")) +mkcp_uplinkCapacity.default = "5" +mkcp_uplinkCapacity:depends("transport", "mkcp") + +mkcp_downlinkCapacity = s:option(Value, "mkcp_downlinkCapacity", translate("KCP downlinkCapacity")) +mkcp_downlinkCapacity.default = "20" +mkcp_downlinkCapacity:depends("transport", "mkcp") + +mkcp_congestion = s:option(Flag, "mkcp_congestion", translate("KCP Congestion")) +mkcp_congestion:depends("transport", "mkcp") + +mkcp_readBufferSize = s:option(Value, "mkcp_readBufferSize", translate("KCP readBufferSize")) +mkcp_readBufferSize.default = "1" +mkcp_readBufferSize:depends("transport", "mkcp") + +mkcp_writeBufferSize = s:option(Value, "mkcp_writeBufferSize", translate("KCP writeBufferSize")) +mkcp_writeBufferSize.default = "1" +mkcp_writeBufferSize:depends("transport", "mkcp") + +mkcp_seed = s:option(Value, "mkcp_seed", translate("KCP Seed")) +mkcp_seed:depends("transport", "mkcp") + +-- [[ WebSocket部分 ]]-- +ws_host = s:option(Value, "ws_host", translate("WebSocket Host")) +ws_host:depends("transport", "ws") +ws_host:depends("ss_transport", "ws") +ws_host:depends("trojan_transport", "ws") + +ws_path = s:option(Value, "ws_path", translate("WebSocket Path")) +ws_path:depends("transport", "ws") +ws_path:depends("ss_transport", "ws") +ws_path:depends("trojan_transport", "ws") +ws_path:depends({ type = "Brook", brook_protocol = "wsclient" }) + +ws_enableEarlyData = s:option(Flag, "ws_enableEarlyData", translate("Enable early data")) +ws_enableEarlyData:depends("transport", "ws") + +ws_maxEarlyData = s:option(Value, "ws_maxEarlyData", translate("Early data length")) +ws_maxEarlyData.default = "1024" +ws_maxEarlyData:depends("ws_enableEarlyData", true) +function ws_maxEarlyData.cfgvalue(self, section) + return m:get(section, "ws_maxEarlyData") +end +function ws_maxEarlyData.write(self, section, value) + m:set(section, "ws_maxEarlyData", value) +end + +-- [[ HTTP/2部分 ]]-- +h2_host = s:option(Value, "h2_host", translate("HTTP/2 Host")) +h2_host:depends("transport", "h2") +h2_host:depends("ss_transport", "h2") + +h2_path = s:option(Value, "h2_path", translate("HTTP/2 Path")) +h2_path:depends("transport", "h2") +h2_path:depends("ss_transport", "h2") + +h2_health_check = s:option(Flag, "h2_health_check", translate("Health check")) +h2_health_check:depends({ type = "Xray", transport = "h2"}) + +h2_read_idle_timeout = s:option(Value, "h2_read_idle_timeout", translate("Idle timeout")) +h2_read_idle_timeout.default = "10" +h2_read_idle_timeout:depends("h2_health_check", true) + +h2_health_check_timeout = s:option(Value, "h2_health_check_timeout", translate("Health check timeout")) +h2_health_check_timeout.default = "15" +h2_health_check_timeout:depends("h2_health_check", true) + +-- [[ DomainSocket部分 ]]-- +ds_path = s:option(Value, "ds_path", "Path", translate("A legal file path. This file must not exist before running.")) +ds_path:depends("transport", "ds") + +-- [[ QUIC部分 ]]-- +quic_security = s:option(ListValue, "quic_security", translate("Encrypt Method")) +quic_security:value("none") +quic_security:value("aes-128-gcm") +quic_security:value("chacha20-poly1305") +quic_security:depends("transport", "quic") + +quic_key = s:option(Value, "quic_key", translate("Encrypt Method") .. translate("Key")) +quic_key:depends("transport", "quic") + +quic_guise = s:option(ListValue, "quic_guise", translate("Camouflage Type")) +for a, t in ipairs(header_type_list) do quic_guise:value(t) end +quic_guise:depends("transport", "quic") + +-- [[ gRPC部分 ]]-- +grpc_serviceName = s:option(Value, "grpc_serviceName", "ServiceName") +grpc_serviceName:depends("transport", "grpc") + +grpc_mode = s:option(ListValue, "grpc_mode", "gRPC " .. translate("Transfer mode")) +grpc_mode:value("gun") +grpc_mode:value("multi") +grpc_mode:depends({ type = "Xray", transport = "grpc"}) + +grpc_health_check = s:option(Flag, "grpc_health_check", translate("Health check")) +grpc_health_check:depends({ type = "Xray", transport = "grpc"}) + +grpc_idle_timeout = s:option(Value, "grpc_idle_timeout", translate("Idle timeout")) +grpc_idle_timeout.default = "10" +grpc_idle_timeout:depends("grpc_health_check", true) + +grpc_health_check_timeout = s:option(Value, "grpc_health_check_timeout", translate("Health check timeout")) +grpc_health_check_timeout.default = "20" +grpc_health_check_timeout:depends("grpc_health_check", true) + +grpc_permit_without_stream = s:option(Flag, "grpc_permit_without_stream", translate("Permit without stream")) +grpc_permit_without_stream.default = "0" +grpc_permit_without_stream:depends("grpc_health_check", true) + +grpc_initial_windows_size = s:option(Value, "grpc_initial_windows_size", translate("Initial Windows Size")) +grpc_initial_windows_size.default = "0" +grpc_initial_windows_size:depends({ type = "Xray", transport = "grpc"}) + +-- [[ Trojan-Go Shadowsocks2 ]] -- +ss_aead = s:option(Flag, "ss_aead", translate("Shadowsocks secondary encryption")) +ss_aead:depends("type", "Trojan-Go") +ss_aead.default = "0" + +ss_aead_method = s:option(ListValue, "ss_aead_method", translate("Encrypt Method")) +for _, v in ipairs(encrypt_methods_ss_aead) do ss_aead_method:value(v, v) end +ss_aead_method.default = "aes-128-gcm" +ss_aead_method:depends("ss_aead", "1") + +ss_aead_pwd = s:option(Value, "ss_aead_pwd", translate("Password")) +ss_aead_pwd.password = true +ss_aead_pwd:depends("ss_aead", "1") + +-- [[ Trojan-Go Mux ]]-- +mux = s:option(Flag, "smux", translate("Smux")) +mux:depends("type", "Trojan-Go") + +-- [[ Mux ]]-- +mux = s:option(Flag, "mux", translate("Mux")) +mux:depends({ type = "V2ray", protocol = "vmess" }) +mux:depends({ type = "V2ray", protocol = "vless", xtls = false }) +mux:depends({ type = "V2ray", protocol = "http" }) +mux:depends({ type = "V2ray", protocol = "socks" }) +mux:depends({ type = "V2ray", protocol = "shadowsocks" }) +mux:depends({ type = "V2ray", protocol = "trojan" }) +mux:depends({ type = "Xray", protocol = "vmess" }) +mux:depends({ type = "Xray", protocol = "vless", xtls = false }) +mux:depends({ type = "Xray", protocol = "http" }) +mux:depends({ type = "Xray", protocol = "socks" }) +mux:depends({ type = "Xray", protocol = "shadowsocks" }) +mux:depends({ type = "Xray", protocol = "trojan" }) + +mux_concurrency = s:option(Value, "mux_concurrency", translate("Mux concurrency")) +mux_concurrency.default = 8 +mux_concurrency:depends("mux", true) +mux_concurrency:depends("smux", true) + +smux_idle_timeout = s:option(Value, "smux_idle_timeout", translate("Mux idle timeout")) +smux_idle_timeout.default = 60 +smux_idle_timeout:depends("smux", true) + +hysteria_up_mbps = s:option(Value, "hysteria_up_mbps", translate("Max upload Mbps")) +hysteria_up_mbps.default = "10" +hysteria_up_mbps:depends("type", "Hysteria") + +hysteria_down_mbps = s:option(Value, "hysteria_down_mbps", translate("Max download Mbps")) +hysteria_down_mbps.default = "50" +hysteria_down_mbps:depends("type", "Hysteria") + +hysteria_recv_window_conn = s:option(Value, "hysteria_recv_window_conn", translate("QUIC stream receive window")) +hysteria_recv_window_conn:depends("type", "Hysteria") + +hysteria_recv_window = s:option(Value, "hysteria_recv_window", translate("QUIC connection receive window")) +hysteria_recv_window:depends("type", "Hysteria") + +hysteria_disable_mtu_discovery = s:option(Flag, "hysteria_disable_mtu_discovery", translate("Disable MTU detection")) +hysteria_disable_mtu_discovery:depends("type", "Hysteria") + +protocol.validate = function(self, value) + if value == "_shunt" or value == "_balancing" then + address.rmempty = true + port.rmempty = true + end + return value +end + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/node_list.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/node_list.lua new file mode 100644 index 000000000..d0f505e4e --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/node_list.lua @@ -0,0 +1,151 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local sys = api.sys +local datatypes = api.datatypes + +m = Map(appname) + +-- [[ Other Settings ]]-- +s = m:section(TypedSection, "global_other") +s.anonymous = true + +o = s:option(MultiValue, "nodes_ping", " ") +o:value("auto_ping", translate("Auto Ping"), translate("This will automatically ping the node for latency")) +o:value("tcping", translate("Tcping"), translate("This will use tcping replace ping detection of node")) +o:value("info", translate("Show server address and port"), translate("Show server address and port")) + +-- [[ Add the node via the link ]]-- +s:append(Template(appname .. "/node_list/link_add_node")) + +local nodes_ping = m:get("@global_other[0]", "nodes_ping") or "" + +-- [[ Node List ]]-- +s = m:section(TypedSection, "nodes") +s.anonymous = true +s.addremove = true +s.template = "cbi/tblsection" +s.extedit = api.url("node_config", "%s") +function s.create(e, t) + local uuid = api.gen_uuid() + t = uuid + TypedSection.create(e, t) + luci.http.redirect(e.extedit:format(t)) +end + +function s.remove(e, t) + m.uci:foreach(appname, "socks", function(s) + if s["node"] == t then + m:del(s[".name"]) + end + end) + m.uci:foreach(appname, "haproxy_config", function(s) + if s["lbss"] and s["lbss"] == t then + m:del(s[".name"]) + end + end) + m.uci:foreach(appname, "acl_rule", function(s) + if s["tcp_node"] and s["tcp_node"] == t then + m:set(s[".name"], "tcp_node", "default") + end + if s["udp_node"] and s["udp_node"] == t then + m:set(s[".name"], "udp_node", "default") + end + end) + for k, v in ipairs(m:get("@auto_switch[0]", "tcp_node") or {}) do + if v and v == t then + sys.call(string.format("uci -q del_list %s.@auto_switch[0].tcp_node='%s'", appname, v)) + end + end + TypedSection.remove(e, t) + local new_node = "nil" + local node0 = m:get("@nodes[0]") or nil + if node0 then + new_node = node0[".name"] + end + if (m:get("@global[0]", "tcp_node") or "nil") == t then + m:set('@global[0]', "tcp_node", new_node) + end + if (m:get("@global[0]", "udp_node") or "nil") == t then + m:set('@global[0]', "udp_node", new_node) + end +end + +s.sortable = true +-- 简洁模式 +o = s:option(DummyValue, "add_from", "") +o.cfgvalue = function(t, n) + local v = Value.cfgvalue(t, n) + if v and v ~= '' then + local group = m:get(n, "group") or "" + if group ~= "" then + v = v .. " " .. group + end + return v + else + return '' + end +end +o = s:option(DummyValue, "remarks", translate("Remarks")) +o.rawhtml = true +o.cfgvalue = function(t, n) + local str = "" + local is_sub = m:get(n, "is_sub") or "" + local group = m:get(n, "group") or "" + local remarks = m:get(n, "remarks") or "" + local type = m:get(n, "type") or "" + str = str .. string.format("", appname, n, type) + if type == "V2ray" or type == "Xray" then + local protocol = m:get(n, "protocol") + if protocol == "_balancing" then + protocol = translate("Balancing") + elseif protocol == "_shunt" then + protocol = translate("Shunt") + elseif protocol == "vmess" then + protocol = "VMess" + elseif protocol == "vless" then + protocol = "VLESS" + else + protocol = protocol:gsub("^%l",string.upper) + end + type = type .. " " .. protocol + end + local address = m:get(n, "address") or "" + local port = m:get(n, "port") or "" + str = str .. translate(type) .. ":" .. remarks + if address ~= "" and port ~= "" then + if nodes_ping:find("info") then + if datatypes.ip6addr(address) then + str = str .. string.format("([%s]:%s)", address, port) + else + str = str .. string.format("(%s:%s)", address, port) + end + end + str = str .. string.format("", appname, n, address) + str = str .. string.format("", appname, n, port) + end + return str +end + +---- Ping +o = s:option(DummyValue, "ping") +o.width = "8%" +o.rawhtml = true +o.cfgvalue = function(t, n) + local result = "---" + if not nodes_ping:find("auto_ping") then + result = string.format('Ping', n) + else + result = string.format('---', n) + end + return result +end + +o = s:option(DummyValue, "_url_test") +o.rawhtml = true +o.cfgvalue = function(t, n) + return string.format(' 0 then + o = s:option(ListValue, "ss_aead_type", translate("SS AEAD Node Use Type")) + for key, value in pairs(ss_aead_type) do + o:value(value, translate(value:gsub("^%l",string.upper))) + end +end + +if #trojan_type > 0 then + o = s:option(ListValue, "trojan_type", translate("Trojan Node Use Type")) + for key, value in pairs(trojan_type) do + o:value(value, translate(value:gsub("^%l",string.upper))) + end +end + +---- Subscribe Delete All +o = s:option(Button, "_stop", translate("Delete All Subscribe Node")) +o.inputstyle = "remove" +function o.write(e, e) + luci.sys.call("lua /usr/share/" .. appname .. "/subscribe.lua truncate > /dev/null 2>&1") +end + +o = s:option(Button, "_update", translate("Manual subscription All")) +o.inputstyle = "apply" +function o.write(t, n) + luci.sys.call("lua /usr/share/" .. appname .. "/subscribe.lua start > /dev/null 2>&1 &") + luci.http.redirect(api.url("log")) +end + +s = m:section(TypedSection, "subscribe_list", "", "" .. translate("Please input the subscription url first, save and submit before manual subscription.") .. "") +s.addremove = true +s.anonymous = true +s.sortable = true +s.template = "cbi/tblsection" +s.extedit = api.url("node_subscribe_config", "%s") +function s.create(e, t) + local id = TypedSection.create(e, t) + luci.http.redirect(e.extedit:format(id)) +end + +o = s:option(Value, "remark", translate("Remarks")) +o.width = "auto" +o.rmempty = false +o.validate = function(self, value, t) + if value then + local count = 0 + m.uci:foreach(appname, "subscribe_list", function(e) + if e[".name"] ~= t and e["remark"] == value then + count = count + 1 + end + end) + if count > 0 then + return nil, translate("This remark already exists, please change a new remark.") + end + return value + end +end + +o = s:option(DummyValue, "_node_count") +o.rawhtml = true +o.cfgvalue = function(t, n) + local remark = m:get(n, "remark") or "" + local num = 0 + m.uci:foreach(appname, "nodes", function(s) + if s["add_from"] ~= "" and s["add_from"] == remark then + num = num + 1 + end + end) + return string.format("%s", remark .. " " .. translate("Node num") .. ": " .. num, num) +end + +o = s:option(Value, "url", translate("Subscribe URL")) +o.width = "auto" +o.rmempty = false + +o = s:option(Button, "_remove", translate("Delete the subscribed node")) +o.inputstyle = "remove" +function o.write(t, n) + local remark = m:get(n, "remark") or "" + luci.sys.call("lua /usr/share/" .. appname .. "/subscribe.lua truncate " .. remark .. " > /dev/null 2>&1") +end + +o = s:option(Button, "_update", translate("Manual subscription")) +o.inputstyle = "apply" +function o.write(t, n) + luci.sys.call("lua /usr/share/" .. appname .. "/subscribe.lua start " .. n .. " > /dev/null 2>&1 &") + luci.http.redirect(api.url("log")) +end + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/node_subscribe_config.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/node_subscribe_config.lua new file mode 100644 index 000000000..402ba48ea --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/node_subscribe_config.lua @@ -0,0 +1,110 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local sys = api.sys +local has_ss = api.is_finded("ss-redir") +local has_ss_rust = api.is_finded("sslocal") +local has_trojan_plus = api.is_finded("trojan-plus") +local has_v2ray = api.is_finded("v2ray") +local has_xray = api.is_finded("xray") +local has_trojan_go = api.is_finded("trojan-go") +local ss_aead_type = {} +local trojan_type = {} +if has_ss then + ss_aead_type[#ss_aead_type + 1] = "shadowsocks-libev" +end +if has_ss_rust then + ss_aead_type[#ss_aead_type + 1] = "shadowsocks-rust" +end +if has_trojan_plus then + trojan_type[#trojan_type + 1] = "trojan-plus" +end +if has_v2ray then + trojan_type[#trojan_type + 1] = "v2ray" + ss_aead_type[#ss_aead_type + 1] = "v2ray" +end +if has_xray then + trojan_type[#trojan_type + 1] = "xray" + ss_aead_type[#ss_aead_type + 1] = "xray" +end +if has_trojan_go then + trojan_type[#trojan_type + 1] = "trojan-go" +end + +m = Map(appname) +m.redirect = api.url("node_subscribe") + +s = m:section(NamedSection, arg[1]) +s.addremove = false +s.dynamic = false + +o = s:option(Value, "remark", translate("Subscribe Remark")) +o.rmempty = false + +o = s:option(TextValue, "url", translate("Subscribe URL")) +o.rows = 5 +o.rmempty = false + +o = s:option(Flag, "allowInsecure", translate("allowInsecure"), translate("Whether unsafe connections are allowed. When checked, Certificate validation will be skipped.")) +o.default = "1" +o.rmempty = false + +o = s:option(ListValue, "filter_keyword_mode", translate("Filter keyword Mode")) +o.default = "5" +o:value("0", translate("Close")) +o:value("1", translate("Discard List")) +o:value("2", translate("Keep List")) +o:value("3", translate("Discard List,But Keep List First")) +o:value("4", translate("Keep List,But Discard List First")) +o:value("5", translate("Use global config")) + +o = s:option(DynamicList, "filter_discard_list", translate("Discard List")) +o:depends("filter_keyword_mode", "1") +o:depends("filter_keyword_mode", "3") +o:depends("filter_keyword_mode", "4") + +o = s:option(DynamicList, "filter_keep_list", translate("Keep List")) +o:depends("filter_keyword_mode", "2") +o:depends("filter_keyword_mode", "3") +o:depends("filter_keyword_mode", "4") + +if #ss_aead_type > 0 then + o = s:option(ListValue, "ss_aead_type", translate("SS AEAD Node Use Type")) + o.default = "global" + o:value("global", translate("Use global config")) + for key, value in pairs(ss_aead_type) do + o:value(value, translate(value:gsub("^%l",string.upper))) + end +end + +if #trojan_type > 0 then + o = s:option(ListValue, "trojan_type", translate("Trojan Node Use Type")) + o.default = "global" + o:value("global", translate("Use global config")) + for key, value in pairs(trojan_type) do + o:value(value, translate(value:gsub("^%l",string.upper))) + end +end + +---- Enable auto update subscribe +o = s:option(Flag, "auto_update", translate("Enable auto update subscribe")) +o.default = 0 +o.rmempty = false + +---- Week update rules +o = s:option(ListValue, "week_update", translate("Week update rules")) +o:value(7, translate("Every day")) +for e = 1, 6 do o:value(e, translate("Week") .. e) end +o:value(0, translate("Week") .. translate("day")) +o.default = 0 +o:depends("auto_update", true) + +---- Day update rules +o = s:option(ListValue, "time_update", translate("Day update rules")) +for e = 0, 23 do o:value(e, e .. translate("oclock")) end +o.default = 0 +o:depends("auto_update", true) + +o = s:option(Value, "user_agent", translate("User-Agent")) +o.default = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36" + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/other.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/other.lua new file mode 100644 index 000000000..1436cbbe2 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/other.lua @@ -0,0 +1,148 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local fs = api.fs + +m = Map(appname) + +-- [[ Delay Settings ]]-- +s = m:section(TypedSection, "global_delay", translate("Delay Settings")) +s.anonymous = true +s.addremove = false + +---- Delay Start +o = s:option(Value, "start_delay", translate("Delay Start"), + translate("Units:seconds")) +o.default = "1" +o.rmempty = true + +---- Open and close Daemon +o = s:option(Flag, "start_daemon", translate("Open and close Daemon")) +o.default = 1 +o.rmempty = false + +--[[ +---- Open and close automatically +o = s:option(Flag, "auto_on", translate("Open and close automatically")) +o.default = 0 +o.rmempty = false + +---- Automatically turn off time +o = s:option(ListValue, "time_off", translate("Automatically turn off time")) +o.default = nil +o:depends("auto_on", true) +o:value(nil, translate("Disable")) +for e = 0, 23 do o:value(e, e .. translate("oclock")) end + +---- Automatically turn on time +o = s:option(ListValue, "time_on", translate("Automatically turn on time")) +o.default = nil +o:depends("auto_on", true) +o:value(nil, translate("Disable")) +for e = 0, 23 do o:value(e, e .. translate("oclock")) end + +---- Automatically restart time +o = s:option(ListValue, "time_restart", translate("Automatically restart time")) +o.default = nil +o:depends("auto_on", true) +o:value(nil, translate("Disable")) +for e = 0, 23 do o:value(e, e .. translate("oclock")) end +--]] + +-- [[ Forwarding Settings ]]-- +s = m:section(TypedSection, "global_forwarding", + translate("Forwarding Settings")) +s.anonymous = true +s.addremove = false + +---- TCP No Redir Ports +o = s:option(Value, "tcp_no_redir_ports", translate("TCP No Redir Ports")) +o.default = "disable" +o:value("disable", translate("No patterns are used")) +o:value("1:65535", translate("All")) + +---- UDP No Redir Ports +o = s:option(Value, "udp_no_redir_ports", translate("UDP No Redir Ports"), + "" .. translate( + "Fill in the ports you don't want to be forwarded by the agent, with the highest priority.") .. + "") +o.default = "disable" +o:value("disable", translate("No patterns are used")) +o:value("1:65535", translate("All")) + +---- TCP Proxy Drop Ports +o = s:option(Value, "tcp_proxy_drop_ports", translate("TCP Proxy Drop Ports")) +o.default = "disable" +o:value("disable", translate("No patterns are used")) + +---- UDP Proxy Drop Ports +o = s:option(Value, "udp_proxy_drop_ports", translate("UDP Proxy Drop Ports")) +o.default = "80,443" +o:value("disable", translate("No patterns are used")) +o:value("80,443", translate("QUIC")) + +---- TCP Redir Ports +o = s:option(Value, "tcp_redir_ports", translate("TCP Redir Ports")) +o.default = "22,25,53,143,465,587,853,993,995,80,443" +o:value("1:65535", translate("All")) +o:value("22,25,53,143,465,587,853,993,995,80,443", translate("Common Use")) +o:value("80,443", translate("Only Web")) +o:value("80:65535", "80 " .. translate("or more")) +o:value("1:443", "443 " .. translate("or less")) + +---- UDP Redir Ports +o = s:option(Value, "udp_redir_ports", translate("UDP Redir Ports")) +o.default = "1:65535" +o:value("1:65535", translate("All")) +o:value("53", "DNS") + +if os.execute("lsmod | grep -i REDIRECT >/dev/null") == 0 and os.execute("lsmod | grep -i TPROXY >/dev/null") == 0 then + o = s:option(ListValue, "tcp_proxy_way", translate("TCP Proxy Way")) + o.default = "redirect" + o:value("redirect", "REDIRECT") + o:value("tproxy", "TPROXY") + o:depends("ipv6_tproxy", false) + + o = s:option(ListValue, "_tcp_proxy_way", translate("TCP Proxy Way")) + o.default = "tproxy" + o:value("tproxy", "TPROXY") + o:depends("ipv6_tproxy", true) + o.write = function(self, section, value) + return self.map:set(section, "tcp_proxy_way", value) + end + + if os.execute("lsmod | grep -i ip6table_mangle >/dev/null") == 0 then + ---- IPv6 TProxy + o = s:option(Flag, "ipv6_tproxy", translate("IPv6 TProxy"), + "" .. translate( + "Experimental feature. Make sure that your node supports IPv6.") .. + "") + o.default = 0 + o.rmempty = false + end +end + +o = s:option(Flag, "accept_icmp", translate("Hijacking ICMP (PING)")) +o.default = 0 + +o = s:option(Flag, "accept_icmpv6", translate("Hijacking ICMPv6 (IPv6 PING)")) +o:depends("ipv6_tproxy", true) +o.default = 0 + +o = s:option(Flag, "sniffing", translate("Sniffing (V2Ray/Xray)"), translate("When using the V2ray/Xray shunt, must be enabled, otherwise the shunt will invalid.")) +o.default = 1 +o.rmempty = false + +o = s:option(Flag, "route_only", translate("Sniffing Route Only (Xray)"), translate("When enabled, the server not will resolve the domain name again.")) +o.default = 0 +o:depends("sniffing", true) + +local domains_excluded = string.format("/usr/share/%s/rules/domains_excluded", appname) +o = s:option(TextValue, "no_sniffing_hosts", translate("No Sniffing Lists"), translate("Hosts added into No Sniffing Lists will not resolve again on server (Xray only).")) +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) return fs.readfile(domains_excluded) or "" end +o.write = function(self, section, value) fs.writefile(domains_excluded, value:gsub("\r\n", "\n")) end +o.remove = function(self, section, value) fs.writefile(domains_excluded, "") end +o:depends({sniffing = true, route_only = false}) + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/rule.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/rule.lua new file mode 100644 index 000000000..1303ce6f2 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/rule.lua @@ -0,0 +1,91 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local has_v2ray = api.is_finded("v2ray") +local has_xray = api.is_finded("xray") + +m = Map(appname) +-- [[ Rule Settings ]]-- +s = m:section(TypedSection, "global_rules", translate("Rule status")) +s.anonymous = true + +--[[ +o = s:option(Flag, "adblock", translate("Enable adblock")) +o.rmempty = false +]]-- + +---- gfwlist URL +o = s:option(DynamicList, "gfwlist_url", translate("GFW domains(gfwlist) Update URL")) +o:value("https://cdn.jsdelivr.net/gh/YW5vbnltb3Vz/domain-list-community@release/gfwlist.txt", translate("v2fly/domain-list-community")) +o:value("https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/gfw.txt", translate("Loyalsoldier/v2ray-rules-dat")) +o:value("https://cdn.jsdelivr.net/gh/Loukky/gfwlist-by-loukky/gfwlist.txt", translate("Loukky/gfwlist-by-loukky")) +o:value("https://cdn.jsdelivr.net/gh/gfwlist/gfwlist/gfwlist.txt", translate("gfwlist/gfwlist")) +o.default = "https://cdn.jsdelivr.net/gh/Loukky/gfwlist-by-loukky/gfwlist.txt" + +----chnroute URL +o = s:option(DynamicList, "chnroute_url", translate("China IPs(chnroute) Update URL")) +o:value("https://ispip.clang.cn/all_cn.txt", translate("Clang.CN")) +o:value("https://ispip.clang.cn/all_cn_cidr.txt", translate("Clang.CN.CIDR")) +o:value("https://cdn.jsdelivr.net/gh/soffchen/GeoIP2-CN@release/CN-ip-cidr.txt", translate("soffchen/GeoIP2-CN")) +o:value("https://cdn.jsdelivr.net/gh/Hackl0us/GeoIP2-CN@release/CN-ip-cidr.txt", translate("Hackl0us/GeoIP2-CN")) +o.default = "https://ispip.clang.cn/all_cn.txt" + +----chnroute6 URL +o = s:option(DynamicList, "chnroute6_url", translate("China IPv6s(chnroute6) Update URL")) +o:value("https://ispip.clang.cn/all_cn_ipv6.txt", translate("Clang.CN.IPv6")) +o.default = "https://ispip.clang.cn/all_cn_ipv6.txt" + +----chnlist URL +o = s:option(DynamicList, "chnlist_url", translate("China List(Chnlist) Update URL")) +o:value("https://cdn.jsdelivr.net/gh/felixonmars/dnsmasq-china-list/accelerated-domains.china.conf", translate("felixonmars/domains.china")) +o:value("https://cdn.jsdelivr.net/gh/felixonmars/dnsmasq-china-list/apple.china.conf", translate("felixonmars/apple.china")) +o:value("https://cdn.jsdelivr.net/gh/felixonmars/dnsmasq-china-list/google.china.conf", translate("felixonmars/google.china")) + +s:append(Template(appname .. "/rule/rule_version")) + +---- Auto Update +o = s:option(Flag, "auto_update", translate("Enable auto update rules")) +o.default = 0 +o.rmempty = false + +---- Week Update +o = s:option(ListValue, "week_update", translate("Week update rules")) +o:value(7, translate("Every day")) +for e = 1, 6 do o:value(e, translate("Week") .. e) end +o:value(0, translate("Week") .. translate("day")) +o.default = 0 +o:depends("auto_update", true) + +---- Time Update +o = s:option(ListValue, "time_update", translate("Day update rules")) +for e = 0, 23 do o:value(e, e .. translate("oclock")) end +o.default = 0 +o:depends("auto_update", true) + +if has_v2ray or has_xray then + o = s:option(Value, "v2ray_location_asset", translate("Location of V2ray/Xray asset"), translate("This variable specifies a directory where geoip.dat and geosite.dat files are.")) + o.default = "/usr/share/v2ray/" + o.rmempty = false + + s = m:section(TypedSection, "shunt_rules", "V2ray/Xray " .. translate("Shunt Rule"), "" .. translate("Please note attention to the priority, the higher the order, the higher the priority.") .. "") + s.template = "cbi/tblsection" + s.anonymous = false + s.addremove = true + s.sortable = true + s.extedit = api.url("shunt_rules", "%s") + function s.create(e, t) + TypedSection.create(e, t) + luci.http.redirect(e.extedit:format(t)) + end + function s.remove(e, t) + m.uci:foreach(appname, "nodes", function(s) + if s["protocol"] and s["protocol"] == "_shunt" then + m:del(s[".name"], t) + end + end) + TypedSection.remove(e, t) + end + + o = s:option(DummyValue, "remarks", translate("Remarks")) +end + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/rule_list.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/rule_list.lua new file mode 100644 index 000000000..60ba9b3ff --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/rule_list.lua @@ -0,0 +1,265 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local fs = api.fs +local sys = api.sys +local datatypes = api.datatypes +local path = string.format("/usr/share/%s/rules/", appname) +local route_hosts_path = "/etc/" + +m = SimpleForm(appname) +m.uci = api.uci + +-- [[ Rule List Settings ]]-- +s = m:section(TypedSection, "global_rules") +s.anonymous = true + +s:tab("direct_list", translate("Direct List")) +s:tab("proxy_list", translate("Proxy List")) +s:tab("block_list", translate("Block List")) +s:tab("lan_ip_list", translate("Lan IP List")) +s:tab("route_hosts", translate("Route Hosts")) + +---- Direct Hosts +local direct_host = path .. "direct_host" +o = s:taboption("direct_list", TextValue, "direct_host", "", "" .. translate("Join the direct hosts list of domain names will not proxy.") .. "") +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) + return fs.readfile(direct_host) or "" +end +o.write = function(self, section, value) + fs.writefile(direct_host, value:gsub("\r\n", "\n")) + sys.call("rm -rf /tmp/etc/passwall_tmp/dns_*") +end +o.remove = function(self, section, value) + fs.writefile(direct_host, "") + sys.call("rm -rf /tmp/etc/passwall_tmp/dns_*") +end +o.validate = function(self, value) + local hosts= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(hosts, w) end) + for index, host in ipairs(hosts) do + if host:find("#") and host:find("#") == 1 then + return value + end + if not datatypes.hostname(host) then + return nil, host .. " " .. translate("Not valid domain name, please re-enter!") + end + end + return value +end + +---- Direct IP +local direct_ip = path .. "direct_ip" +o = s:taboption("direct_list", TextValue, "direct_ip", "", "" .. translate("These had been joined ip addresses will not proxy. Please input the ip address or ip address segment,every line can input only one ip address. For example: 192.168.0.0/24 or 223.5.5.5.") .. "") +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) + return fs.readfile(direct_ip) or "" +end +o.write = function(self, section, value) + fs.writefile(direct_ip, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + fs.writefile(direct_ip, "") +end +o.validate = function(self, value) + local ipmasks= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(ipmasks, w) end) + for index, ipmask in ipairs(ipmasks) do + if ipmask:find("#") and ipmask:find("#") == 1 then + return value + end + if not ( datatypes.ipmask4(ipmask) or datatypes.ipmask6(ipmask) ) then + return nil, ipmask .. " " .. translate("Not valid IP format, please re-enter!") + end + end + return value +end + +---- Proxy Hosts +local proxy_host = path .. "proxy_host" +o = s:taboption("proxy_list", TextValue, "proxy_host", "", "" .. translate("These had been joined websites will use proxy. Please input the domain names of websites, every line can input only one website domain. For example: google.com.") .. "") +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) + return fs.readfile(proxy_host) or "" +end +o.write = function(self, section, value) + fs.writefile(proxy_host, value:gsub("\r\n", "\n")) + sys.call("rm -rf /tmp/etc/passwall_tmp/dns_*") +end +o.remove = function(self, section, value) + fs.writefile(proxy_host, "") + sys.call("rm -rf /tmp/etc/passwall_tmp/dns_*") +end +o.validate = function(self, value) + local hosts= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(hosts, w) end) + for index, host in ipairs(hosts) do + if host:find("#") and host:find("#") == 1 then + return value + end + if not datatypes.hostname(host) then + return nil, host .. " " .. translate("Not valid domain name, please re-enter!") + end + end + return value +end + +---- Proxy IP +local proxy_ip = path .. "proxy_ip" +o = s:taboption("proxy_list", TextValue, "proxy_ip", "", "" .. translate("These had been joined ip addresses will use proxy. Please input the ip address or ip address segment, every line can input only one ip address. For example: 35.24.0.0/24 or 8.8.4.4.") .. "") +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) + return fs.readfile(proxy_ip) or "" +end +o.write = function(self, section, value) + fs.writefile(proxy_ip, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + fs.writefile(proxy_ip, "") +end +o.validate = function(self, value) + local ipmasks= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(ipmasks, w) end) + for index, ipmask in ipairs(ipmasks) do + if ipmask:find("#") and ipmask:find("#") == 1 then + return value + end + if not ( datatypes.ipmask4(ipmask) or datatypes.ipmask6(ipmask) ) then + return nil, ipmask .. " " .. translate("Not valid IP format, please re-enter!") + end + end + return value +end + +---- Block Hosts +local block_host = path .. "block_host" +o = s:taboption("block_list", TextValue, "block_host", "", "" .. translate("These had been joined websites will be block. Please input the domain names of websites, every line can input only one website domain. For example: twitter.com.") .. "") +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) + return fs.readfile(block_host) or "" +end +o.write = function(self, section, value) + fs.writefile(block_host, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + fs.writefile(block_host, "") +end +o.validate = function(self, value) + local hosts= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(hosts, w) end) + for index, host in ipairs(hosts) do + if host:find("#") and host:find("#") == 1 then + return value + end + if not datatypes.hostname(host) then + return nil, host .. " " .. translate("Not valid domain name, please re-enter!") + end + end + return value +end + +---- Block IP +local block_ip = path .. "block_ip" +o = s:taboption("block_list", TextValue, "block_ip", "", "" .. translate("These had been joined ip addresses will be block. Please input the ip address or ip address segment, every line can input only one ip address.") .. "") +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) + return fs.readfile(block_ip) or "" +end +o.write = function(self, section, value) + fs.writefile(block_ip, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + fs.writefile(block_ip, "") +end +o.validate = function(self, value) + local ipmasks= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(ipmasks, w) end) + for index, ipmask in ipairs(ipmasks) do + if ipmask:find("#") and ipmask:find("#") == 1 then + return value + end + if not ( datatypes.ipmask4(ipmask) or datatypes.ipmask6(ipmask) ) then + return nil, ipmask .. " " .. translate("Not valid IP format, please re-enter!") + end + end + return value +end + +---- Lan IPv4 +local lanlist_ipv4 = path .. "lanlist_ipv4" +o = s:taboption("lan_ip_list", TextValue, "lanlist_ipv4", "", "" .. translate("The list is the IPv4 LAN IP list, which represents the direct connection IP of the LAN. If you need the LAN IP in the proxy list, please clear it from the list. Do not modify this list by default.") .. "") +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) + return fs.readfile(lanlist_ipv4) or "" +end +o.write = function(self, section, value) + fs.writefile(lanlist_ipv4, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + fs.writefile(lanlist_ipv4, "") +end +o.validate = function(self, value) + local ipmasks= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(ipmasks, w) end) + for index, ipmask in ipairs(ipmasks) do + if ipmask:find("#") and ipmask:find("#") == 1 then + return value + end + if not datatypes.ipmask4(ipmask) then + return nil, ipmask .. " " .. translate("Not valid IPv4 format, please re-enter!") + end + end + return value +end + +---- Lan IPv6 +local lanlist_ipv6 = path .. "lanlist_ipv6" +o = s:taboption("lan_ip_list", TextValue, "lanlist_ipv6", "", "" .. translate("The list is the IPv6 LAN IP list, which represents the direct connection IP of the LAN. If you need the LAN IP in the proxy list, please clear it from the list. Do not modify this list by default.") .. "") +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) + return fs.readfile(lanlist_ipv6) or "" +end +o.write = function(self, section, value) + fs.writefile(lanlist_ipv6, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + fs.writefile(lanlist_ipv6, "") +end +o.validate = function(self, value) + local ipmasks= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(ipmasks, w) end) + for index, ipmask in ipairs(ipmasks) do + if ipmask:find("#") and ipmask:find("#") == 1 then + return value + end + if not datatypes.ipmask6(ipmask) then + return nil, ipmask .. " " .. translate("Not valid IPv6 format, please re-enter!") + end + end + return value +end + +---- Route Hosts +local hosts = route_hosts_path .. "hosts" +o = s:taboption("route_hosts", TextValue, "hosts", "", "" .. translate("Configure routing etc/hosts file, if you don't know what you are doing, please don't change the content.") .. "") +o.rows = 15 +o.wrap = "off" +o.cfgvalue = function(self, section) + return fs.readfile(hosts) or "" +end +o.write = function(self, section, value) + fs.writefile(hosts, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + fs.writefile(hosts, "") +end + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/client/shunt_rules.lua b/luci-app-passwall/luasrc/model/cbi/passwall/client/shunt_rules.lua new file mode 100644 index 000000000..b2e9a8fad --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/client/shunt_rules.lua @@ -0,0 +1,79 @@ +local api = require "luci.model.cbi.passwall.api.api" +local appname = api.appname +local datatypes = api.datatypes + +m = Map(appname, "V2ray/Xray " .. translate("Shunt Rule")) +m.redirect = api.url() + +s = m:section(NamedSection, arg[1], "shunt_rules", "") +s.addremove = false +s.dynamic = false + +remarks = s:option(Value, "remarks", translate("Remarks")) +remarks.default = arg[1] +remarks.rmempty = false + +protocol = s:option(MultiValue, "protocol", translate("Protocol")) +protocol:value("http") +protocol:value("tls") +protocol:value("bittorrent") + +domain_list = s:option(TextValue, "domain_list", translate("Domain")) +domain_list.rows = 10 +domain_list.wrap = "off" +domain_list.validate = function(self, value) + local hosts= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(hosts, w) end) + for index, host in ipairs(hosts) do + local flag = 1 + local tmp_host = host + if host:find("regexp:") and host:find("regexp:") == 1 then + flag = 0 + elseif host:find("domain:.") and host:find("domain:.") == 1 then + tmp_host = host:gsub("domain:", "") + elseif host:find("full:.") and host:find("full:.") == 1 then + tmp_host = host:gsub("full:", "") + elseif host:find("geosite:") and host:find("geosite:") == 1 then + flag = 0 + elseif host:find("ext:") and host:find("ext:") == 1 then + flag = 0 + end + if flag == 1 then + if not datatypes.hostname(tmp_host) then + return nil, tmp_host .. " " .. translate("Not valid domain name, please re-enter!") + end + end + end + return value +end +domain_list.description = "
  • " .. translate("Plaintext: If this string matches any part of the targeting domain, this rule takes effet. Example: rule 'sina.com' matches targeting domain 'sina.com', 'sina.com.cn' and 'www.sina.com', but not 'sina.cn'.") +.. "
  • " .. translate("Regular expression: Begining with 'regexp:', the rest is a regular expression. When the regexp matches targeting domain, this rule takes effect. Example: rule 'regexp:\\.goo.*\\.com$' matches 'www.google.com' and 'fonts.googleapis.com', but not 'google.com'.") +.. "
  • " .. translate("Subdomain (recommended): Begining with 'domain:' and the rest is a domain. When the targeting domain is exactly the value, or is a subdomain of the value, this rule takes effect. Example: rule 'domain:v2ray.com' matches 'www.v2ray.com', 'v2ray.com', but not 'xv2ray.com'.") +.. "
  • " .. translate("Full domain: Begining with 'full:' and the rest is a domain. When the targeting domain is exactly the value, the rule takes effect. Example: rule 'domain:v2ray.com' matches 'v2ray.com', but not 'www.v2ray.com'.") +.. "
  • " .. translate("Pre-defined domain list: Begining with 'geosite:' and the rest is a name, such as geosite:google or geosite:cn.") +.. "
  • " .. translate("Domains from file: Such as 'ext:file:tag'. The value must begin with ext: (lowercase), and followed by filename and tag. The file is placed in resource directory, and has the same format of geosite.dat. The tag must exist in the file.") +.. "
" +ip_list = s:option(TextValue, "ip_list", "IP") +ip_list.rows = 10 +ip_list.wrap = "off" +ip_list.validate = function(self, value) + local ipmasks= {} + string.gsub(value, '[^' .. "\r\n" .. ']+', function(w) table.insert(ipmasks, w) end) + for index, ipmask in ipairs(ipmasks) do + if ipmask:find("geoip:") and ipmask:find("geoip:") == 1 then + elseif ipmask:find("ext:") and ipmask:find("ext:") == 1 then + else + if not (datatypes.ipmask4(ipmask) or datatypes.ipmask6(ipmask)) then + return nil, ipmask .. " " .. translate("Not valid IP format, please re-enter!") + end + end + end + return value +end +ip_list.description = "
  • " .. translate("IP: such as '127.0.0.1'.") +.. "
  • " .. translate("CIDR: such as '127.0.0.0/8'.") +.. "
  • " .. translate("GeoIP: such as 'geoip:cn'. It begins with geoip: (lower case) and followed by two letter of country code.") +.. "
  • " .. translate("IPs from file: Such as 'ext:file:tag'. The value must begin with ext: (lowercase), and followed by filename and tag. The file is placed in resource directory, and has the same format of geoip.dat. The tag must exist in the file.") +.. "
" + +return m diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/server/api/app.lua b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/app.lua new file mode 100755 index 000000000..f9f034d37 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/app.lua @@ -0,0 +1,197 @@ +#!/usr/bin/lua + +local action = arg[1] +local api = require "luci.model.cbi.passwall.api.api" +local sys = api.sys +local uci = api.uci +local jsonc = api.jsonc + +local CONFIG = "passwall_server" +local CONFIG_PATH = "/tmp/etc/" .. CONFIG +local LOG_APP_FILE = "/tmp/log/" .. CONFIG .. ".log" +local TMP_BIN_PATH = CONFIG_PATH .. "/bin" +local require_dir = "luci.model.cbi.passwall.server.api." + +local ipt_bin = sys.exec("echo -n $(/usr/share/passwall/iptables.sh get_ipt_bin)") +local ip6t_bin = sys.exec("echo -n $(/usr/share/passwall/iptables.sh get_ip6t_bin)") + +local function log(...) + local f, err = io.open(LOG_APP_FILE, "a") + if f and err == nil then + local str = os.date("%Y-%m-%d %H:%M:%S: ") .. table.concat({...}, " ") + f:write(str .. "\n") + f:close() + end +end + +local function cmd(cmd) + sys.call(cmd) +end + +local function ipt(arg) + cmd(ipt_bin .. " -w " .. arg) +end + +local function ip6t(arg) + cmd(ip6t_bin .. " -w " .. arg) +end + +local function ln_run(s, d, command, output) + if not output then + output = "/dev/null" + end + d = TMP_BIN_PATH .. "/" .. d + cmd(string.format('[ ! -f "%s" ] && ln -s %s %s 2>/dev/null', d, s, d)) + return string.format("%s >%s 2>&1 &", d .. " " ..command, output) +end + +local function gen_include() + cmd(string.format("echo '#!/bin/sh' > /tmp/etc/%s.include", CONFIG)) + local function extract_rules(n, a) + local _ipt = ipt_bin + if n == "6" then + _ipt = ip6t_bin + end + local result = "*" .. a + result = result .. "\n" .. sys.exec(_ipt .. '-save -t ' .. a .. ' | grep "PSW-SERVER" | sed -e "s/^-A \\(INPUT\\)/-I \\1 1/"') + result = result .. "COMMIT" + return result + end + local f, err = io.open("/tmp/etc/" .. CONFIG .. ".include", "a") + if f and err == nil then + f:write(ipt_bin .. '-save -c | grep -v "PSW-SERVER" | ' .. ipt_bin .. '-restore -c' .. "\n") + f:write(ipt_bin .. '-restore -n <<-EOT' .. "\n") + f:write(extract_rules("4", "filter") .. "\n") + f:write("EOT" .. "\n") + f:write(ip6t_bin .. '-save -c | grep -v "PSW-SERVER" | ' .. ip6t_bin .. '-restore -c' .. "\n") + f:write(ip6t_bin .. '-restore -n <<-EOT' .. "\n") + f:write(extract_rules("6", "filter") .. "\n") + f:write("EOT" .. "\n") + f:close() + end +end + +local function start() + local enabled = tonumber(uci:get(CONFIG, "@global[0]", "enable") or 0) + if enabled == nil or enabled == 0 then + return + end + cmd(string.format("mkdir -p %s %s", CONFIG_PATH, TMP_BIN_PATH)) + cmd(string.format("touch %s", LOG_APP_FILE)) + ipt("-N PSW-SERVER") + ipt("-I INPUT -j PSW-SERVER") + ip6t("-N PSW-SERVER") + ip6t("-I INPUT -j PSW-SERVER") + uci:foreach(CONFIG, "user", function(user) + local id = user[".name"] + local enable = user.enable + if enable and tonumber(enable) == 1 then + local enable_log = user.log + local log_path = nil + if enable_log and enable_log == "1" then + log_path = CONFIG_PATH .. "/" .. id .. ".log" + else + log_path = nil + end + local remarks = user.remarks + local port = tonumber(user.port) + local bin + local config = {} + local config_file = CONFIG_PATH .. "/" .. id .. ".json" + local udp_forward = 1 + local type = user.type or "" + if type == "Socks" then + local auth = "" + if user.auth and user.auth == "1" then + local username = user.username or "" + local password = user.password or "" + if username ~= "" and password ~= "" then + username = "-u " .. username + password = "-P " .. password + auth = username .. " " .. password + end + end + bin = ln_run("/usr/bin/microsocks", "microsocks_" .. id, string.format("-i :: -p %s %s", port, auth), log_path) + elseif type == "SS" or type == "SSR" then + config = require(require_dir .. "shadowsocks").gen_config(user) + local udp_param = "" + udp_forward = tonumber(user.udp_forward) or 1 + if udp_forward == 1 then + udp_param = "-u" + end + type = type:lower() + bin = ln_run("/usr/bin/" .. type .. "-server", type .. "-server", "-c " .. config_file .. " " .. udp_param, log_path) + elseif type == "V2ray" then + config = require(require_dir .. "v2ray").gen_config(user) + bin = ln_run(api.get_v2ray_path(), "v2ray", "-config=" .. config_file, log_path) + elseif type == "Xray" then + config = require(require_dir .. "v2ray").gen_config(user) + bin = ln_run(api.get_xray_path(), "xray", "-config=" .. config_file, log_path) + elseif type == "Trojan" then + config = require(require_dir .. "trojan").gen_config(user) + bin = ln_run("/usr/sbin/trojan", "trojan", "-c " .. config_file, log_path) + elseif type == "Trojan-Plus" then + config = require(require_dir .. "trojan").gen_config(user) + bin = ln_run("/usr/sbin/trojan-plus", "trojan-plus", "-c " .. config_file, log_path) + elseif type == "Trojan-Go" then + config = require(require_dir .. "trojan").gen_config(user) + bin = ln_run(api.get_trojan_go_path(), "trojan-go", "-config " .. config_file, log_path) + elseif type == "Brook" then + local brook_protocol = user.protocol + local brook_password = user.password + local brook_path = user.ws_path or "/ws" + local brook_path_arg = "" + if brook_protocol == "wsserver" and brook_path then + brook_path_arg = " --path " .. brook_path + end + bin = ln_run(api.get_brook_path(), "brook_" .. id, string.format("--debug %s -l :%s -p %s%s", brook_protocol, port, brook_password, brook_path_arg), log_path) + elseif type == "Hysteria" then + config = require(require_dir .. "hysteria").gen_config(user) + bin = ln_run(api.get_hysteria_path(), "hysteria", "-c " .. config_file .. " server", log_path) + end + + if next(config) then + local f, err = io.open(config_file, "w") + if f and err == nil then + f:write(jsonc.stringify(config, 1)) + f:close() + end + log(string.format("%s %s 生成配置文件并运行 - %s", remarks, port, config_file)) + end + + if bin then + cmd(bin) + end + + local bind_local = user.bind_local or 0 + if bind_local and tonumber(bind_local) ~= 1 then + ipt(string.format('-A PSW-SERVER -p tcp --dport %s -m comment --comment "%s" -j ACCEPT', port, remarks)) + ip6t(string.format('-A PSW-SERVER -p tcp --dport %s -m comment --comment "%s" -j ACCEPT', port, remarks)) + if udp_forward == 1 then + ipt(string.format('-A PSW-SERVER -p udp --dport %s -m comment --comment "%s" -j ACCEPT', port, remarks)) + ip6t(string.format('-A PSW-SERVER -p udp --dport %s -m comment --comment "%s" -j ACCEPT', port, remarks)) + end + end + end + end) + gen_include() +end + +local function stop() + cmd(string.format("/bin/top -bn1 | grep -v 'grep' | grep '%s/' | awk '{print $1}' | xargs kill -9 >/dev/null 2>&1", CONFIG_PATH)) + ipt("-D INPUT -j PSW-SERVER 2>/dev/null") + ipt("-F PSW-SERVER 2>/dev/null") + ipt("-X PSW-SERVER 2>/dev/null") + ip6t("-D INPUT -j PSW-SERVER 2>/dev/null") + ip6t("-F PSW-SERVER 2>/dev/null") + ip6t("-X PSW-SERVER 2>/dev/null") + cmd(string.format("rm -rf %s %s /tmp/etc/%s.include", CONFIG_PATH, LOG_APP_FILE, CONFIG)) +end + +if action then + if action == "start" then + start() + elseif action == "stop" then + stop() + end +end \ No newline at end of file diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/server/api/hysteria.lua b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/hysteria.lua new file mode 100644 index 000000000..0fdf8939b --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/hysteria.lua @@ -0,0 +1,24 @@ +module("luci.model.cbi.passwall.server.api.hysteria", package.seeall) +function gen_config(user) + local config = { + listen = ":" .. user.port, + protocol = user.protocol or "udp", + obfs = user.hysteria_obfs, + cert = user.tls_certificateFile, + key = user.tls_keyFile, + auth = (user.hysteria_auth_type == "string") and { + mode = "password", + config = { + password = user.hysteria_auth_password + } + } or nil, + disable_udp = (user.hysteria_udp == "0") and true or false, + alpn = user.hysteria_alpn or nil, + up_mbps = tonumber(user.hysteria_up_mbps) or 10, + down_mbps = tonumber(user.hysteria_down_mbps) or 50, + recv_window_conn = (user.hysteria_recv_window_conn) and tonumber(user.hysteria_recv_window_conn) or nil, + recv_window = (user.hysteria_recv_window) and tonumber(user.hysteria_recv_window) or nil, + disable_mtu_discovery = (user.hysteria_disable_mtu_discovery) and true or false + } + return config +end diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/server/api/shadowsocks.lua b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/shadowsocks.lua new file mode 100644 index 000000000..fdd18e0e2 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/shadowsocks.lua @@ -0,0 +1,19 @@ +module("luci.model.cbi.passwall.server.api.shadowsocks", package.seeall) +function gen_config(user) + local config = {} + config.server = {"[::0]", "0.0.0.0"} + config.server_port = tonumber(user.port) + config.password = user.password + config.timeout = tonumber(user.timeout) + config.fast_open = (user.tcp_fast_open and user.tcp_fast_open == "1") and true or false + config.method = user.method + + if user.type == "SSR" then + config.protocol = user.protocol + config.protocol_param = user.protocol_param + config.obfs = user.obfs + config.obfs_param = user.obfs_param + end + + return config +end diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/server/api/trojan.lua b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/trojan.lua new file mode 100644 index 000000000..466d12042 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/trojan.lua @@ -0,0 +1,61 @@ +module("luci.model.cbi.passwall.server.api.trojan", package.seeall) +function gen_config(user) + local cipher = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-SHA:AES256-SHA:DES-CBC3-SHA" + local cipher13 = "TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384" + local config = { + run_type = "server", + local_addr = "::", + local_port = tonumber(user.port), + remote_addr = (user.remote_enable == "1" and user.remote_address) and user.remote_address or nil, + remote_port = (user.remote_enable == "1" and user.remote_port) and tonumber(user.remote_port) or nil, + password = user.uuid, + log_level = (user.log and user.log == "1") and tonumber(user.loglevel) or 5, + ssl = { + cert = user.tls_certificateFile, + key = user.tls_keyFile, + key_password = "", + cipher = cipher, + cipher_tls13 = cipher13, + prefer_server_cipher = true, + reuse_session = true, + session_ticket = (user.tls_sessionTicket == "1") and true or false, + session_timeout = 600, + plain_http_response = "", + curves = "", + dhparam = "" + }, + tcp = { + prefer_ipv4 = false, + no_delay = true, + keep_alive = true, + reuse_port = false, + fast_open = (user.tcp_fast_open and user.tcp_fast_open == "1") and true or false, + fast_open_qlen = 20 + } + } + if user.type == "Trojan-Go" then + config.ssl.cipher = nil + config.ssl.cipher_tls13 = nil + config.udp_timeout = 60 + config.disable_http_check = true + config.transport_plugin = ((user.tls == nil or user.tls ~= "1") and user.trojan_transport == "original") and { + enabled = user.plugin_type ~= nil, + type = user.plugin_type or "plaintext", + command = user.plugin_type ~= "plaintext" and user.plugin_cmd or nil, + option = user.plugin_type ~= "plaintext" and user.plugin_option or nil, + arg = user.plugin_type ~= "plaintext" and { user.plugin_arg } or nil, + env = {} + } or nil + config.websocket = (user.trojan_transport == 'ws') and { + enabled = true, + path = user.ws_path or "/", + host = user.ws_host or "" + } or nil + config.shadowsocks = (user.ss_aead == "1") and { + enabled = true, + method = user.ss_aead_method or "aes_128_gcm", + password = user.ss_aead_pwd or "" + } or nil + end + return config +end \ No newline at end of file diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/server/api/v2ray.lua b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/v2ray.lua new file mode 100644 index 000000000..729d9f204 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/server/api/v2ray.lua @@ -0,0 +1,246 @@ +module("luci.model.cbi.passwall.server.api.v2ray", package.seeall) +local uci = require"luci.model.uci".cursor() + +function gen_config(user) + local settings = nil + local routing = nil + local outbounds = { + {protocol = "freedom", tag = "direct"}, {protocol = "blackhole", tag = "blocked"} + } + + if user.protocol == "vmess" or user.protocol == "vless" then + if user.uuid then + local clients = {} + for i = 1, #user.uuid do + clients[i] = { + id = user.uuid[i], + flow = ("1" == user.xtls) and user.flow or nil + } + end + settings = { + clients = clients, + decryption = user.decryption or "none" + } + end + elseif user.protocol == "socks" then + settings = { + udp = ("1" == user.udp_forward) and true or false, + auth = ("1" == user.auth) and "password" or "noauth", + accounts = ("1" == user.auth) and { + { + user = user.username, + pass = user.password + } + } or nil + } + elseif user.protocol == "http" then + settings = { + allowTransparent = false, + accounts = ("1" == user.auth) and { + { + user = user.username, + pass = user.password + } + } or nil + } + user.transport = "tcp" + user.tcp_guise = "none" + elseif user.protocol == "shadowsocks" then + settings = { + method = user.method, + password = user.password, + ivCheck = ("1" == user.iv_check) and true or false, + network = user.ss_network or "TCP,UDP" + } + elseif user.protocol == "trojan" then + if user.uuid then + local clients = {} + for i = 1, #user.uuid do + clients[i] = { + flow = ("1" == user.xtls) and user.flow or nil, + password = user.uuid[i], + } + end + settings = { + clients = clients + } + end + elseif user.protocol == "mtproto" then + settings = { + users = { + { + secret = (user.password == nil) and "" or user.password + } + } + } + elseif user.protocol == "dokodemo-door" then + settings = { + network = user.d_protocol, + address = user.d_address, + port = tonumber(user.d_port) + } + end + + if user.fallback and user.fallback == "1" then + local fallbacks = {} + for i = 1, #user.fallback_list do + local fallbackStr = user.fallback_list[i] + if fallbackStr then + local tmp = {} + string.gsub(fallbackStr, '[^' .. "," .. ']+', function(w) + table.insert(tmp, w) + end) + local dest = tmp[1] or "" + local path = tmp[2] + if dest:find("%.") then + else + dest = tonumber(dest) + end + fallbacks[i] = { + path = path, + dest = dest, + xver = 1 + } + end + end + settings.fallbacks = fallbacks + end + + routing = { + domainStrategy = "IPOnDemand", + rules = { + { + type = "field", + ip = {"10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"}, + outboundTag = (user.accept_lan == nil or user.accept_lan == "0") and "blocked" or "direct" + } + } + } + + if user.transit_node and user.transit_node ~= "nil" then + local transit_node_t = uci:get_all("passwall", user.transit_node) + if user.transit_node == "_socks" or user.transit_node == "_http" then + transit_node_t = { + type = user.type, + protocol = user.transit_node:gsub("_", ""), + transport = "tcp", + address = user.transit_node_address, + port = user.transit_node_port, + username = (user.transit_node_username and user.transit_node_username ~= "") and user.transit_node_username or nil, + password = (user.transit_node_password and user.transit_node_password ~= "") and user.transit_node_password or nil, + } + end + local outbound = require("luci.model.cbi.passwall.api.gen_v2ray").gen_outbound(transit_node_t, "transit") + if outbound then + table.insert(outbounds, 1, outbound) + end + end + + local config = { + log = { + -- error = "/tmp/etc/passwall_server/log/" .. user[".name"] .. ".log", + loglevel = ("1" == user.log) and user.loglevel or "none" + }, + -- 传入连接 + inbounds = { + { + listen = (user.bind_local == "1") and "127.0.0.1" or nil, + port = tonumber(user.port), + protocol = user.protocol, + settings = settings, + streamSettings = { + network = user.transport, + security = "none", + xtlsSettings = ("1" == user.tls and "1" == user.xtls) and { + disableSystemRoot = false, + certificates = { + { + certificateFile = user.tls_certificateFile, + keyFile = user.tls_keyFile + } + } + } or nil, + tlsSettings = ("1" == user.tls) and { + disableSystemRoot = false, + certificates = { + { + certificateFile = user.tls_certificateFile, + keyFile = user.tls_keyFile + } + } + } or nil, + tcpSettings = (user.transport == "tcp") and { + acceptProxyProtocol = (user.acceptProxyProtocol and user.acceptProxyProtocol == "1") and true or false, + header = { + type = user.tcp_guise, + request = (user.tcp_guise == "http") and { + path = user.tcp_guise_http_path or {"/"}, + headers = { + Host = user.tcp_guise_http_host or {} + } + } or nil + } + } or nil, + kcpSettings = (user.transport == "mkcp") and { + mtu = tonumber(user.mkcp_mtu), + tti = tonumber(user.mkcp_tti), + uplinkCapacity = tonumber(user.mkcp_uplinkCapacity), + downlinkCapacity = tonumber(user.mkcp_downlinkCapacity), + congestion = (user.mkcp_congestion == "1") and true or false, + readBufferSize = tonumber(user.mkcp_readBufferSize), + writeBufferSize = tonumber(user.mkcp_writeBufferSize), + seed = (user.mkcp_seed and user.mkcp_seed ~= "") and user.mkcp_seed or nil, + header = {type = user.mkcp_guise} + } or nil, + wsSettings = (user.transport == "ws") and { + acceptProxyProtocol = (user.acceptProxyProtocol and user.acceptProxyProtocol == "1") and true or false, + headers = (user.ws_host) and {Host = user.ws_host} or nil, + path = user.ws_path + } or nil, + httpSettings = (user.transport == "h2") and { + path = user.h2_path, host = user.h2_host + } or nil, + dsSettings = (user.transport == "ds") and { + path = user.ds_path + } or nil, + quicSettings = (user.transport == "quic") and { + security = user.quic_security, + key = user.quic_key, + header = {type = user.quic_guise} + } or nil, + grpcSettings = (user.transport == "grpc") and { + serviceName = user.grpc_serviceName + } or nil + } + } + }, + -- 传出连接 + outbounds = outbounds, + routing = routing + } + + local alpn = {} + if user.alpn then + string.gsub(user.alpn, '[^' .. "," .. ']+', function(w) + table.insert(alpn, w) + end) + end + if alpn and #alpn > 0 then + if config.inbounds[1].streamSettings.tlsSettings then + config.inbounds[1].streamSettings.tlsSettings.alpn = alpn + end + if config.inbounds[1].streamSettings.xtlsSettings then + config.inbounds[1].streamSettings.xtlsSettings.alpn = alpn + end + end + + if "1" == user.tls then + config.inbounds[1].streamSettings.security = "tls" + if user.type == "Xray" and user.xtls and user.xtls == "1" then + config.inbounds[1].streamSettings.security = "xtls" + config.inbounds[1].streamSettings.tlsSettings = nil + end + end + + return config +end diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/server/index.lua b/luci-app-passwall/luasrc/model/cbi/passwall/server/index.lua new file mode 100644 index 000000000..042ff093c --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/server/index.lua @@ -0,0 +1,73 @@ +local api = require "luci.model.cbi.passwall.api.api" + +m = Map("passwall_server", translate("Server-Side")) + +t = m:section(NamedSection, "global", "global") +t.anonymous = true +t.addremove = false + +e = t:option(Flag, "enable", translate("Enable")) +e.rmempty = false + +t = m:section(TypedSection, "user", translate("Users Manager")) +t.anonymous = true +t.addremove = true +t.sortable = true +t.template = "cbi/tblsection" +t.extedit = api.url("server_user", "%s") +function t.create(e, t) + local uuid = api.gen_uuid() + t = uuid + TypedSection.create(e, t) + luci.http.redirect(e.extedit:format(t)) +end +function t.remove(e, t) + e.map.proceed = true + e.map:del(t) + luci.http.redirect(api.url("server")) +end + +e = t:option(Flag, "enable", translate("Enable")) +e.width = "5%" +e.rmempty = false + +e = t:option(DummyValue, "status", translate("Status")) +e.rawhtml = true +e.cfgvalue = function(t, n) + return string.format('%s', translate("Collecting data...")) +end + +e = t:option(DummyValue, "remarks", translate("Remarks")) +e.width = "15%" + +---- Type +e = t:option(DummyValue, "type", translate("Type")) +e.cfgvalue = function(t, n) + local v = Value.cfgvalue(t, n) + if v then + if v == "V2ray" or v == "Xray" then + local protocol = m:get(n, "protocol") + if protocol == "vmess" then + protocol = "VMess" + elseif protocol == "vless" then + protocol = "VLESS" + else + protocol = protocol:gsub("^%l",string.upper) + end + return v .. " -> " .. protocol + end + return v + end +end + +e = t:option(DummyValue, "port", translate("Port")) + +e = t:option(Flag, "log", translate("Log")) +e.default = "1" +e.rmempty = false + +m:append(Template("passwall/server/log")) + +m:append(Template("passwall/server/users_list_status")) +return m + diff --git a/luci-app-passwall/luasrc/model/cbi/passwall/server/user.lua b/luci-app-passwall/luasrc/model/cbi/passwall/server/user.lua new file mode 100644 index 000000000..8b0a5f2b3 --- /dev/null +++ b/luci-app-passwall/luasrc/model/cbi/passwall/server/user.lua @@ -0,0 +1,728 @@ +local api = require "luci.model.cbi.passwall.api.api" + +local ss_encrypt_method_list = { + "rc4-md5", "aes-128-cfb", "aes-192-cfb", "aes-256-cfb", "aes-128-ctr", + "aes-192-ctr", "aes-256-ctr", "bf-cfb", "camellia-128-cfb", + "camellia-192-cfb", "camellia-256-cfb", "salsa20", "chacha20", + "chacha20-ietf", -- aead + "aes-128-gcm", "aes-192-gcm", "aes-256-gcm", "chacha20-ietf-poly1305", + "xchacha20-ietf-poly1305" +} + +local ssr_encrypt_method_list = { + "none", "table", "rc2-cfb", "rc4", "rc4-md5", "rc4-md5-6", "aes-128-cfb", + "aes-192-cfb", "aes-256-cfb", "aes-128-ctr", "aes-192-ctr", "aes-256-ctr", + "bf-cfb", "camellia-128-cfb", "camellia-192-cfb", "camellia-256-cfb", + "cast5-cfb", "des-cfb", "idea-cfb", "seed-cfb", "salsa20", "chacha20", + "chacha20-ietf" +} + +local ssr_protocol_list = { + "origin", "verify_simple", "verify_deflate", "verify_sha1", "auth_simple", + "auth_sha1", "auth_sha1_v2", "auth_sha1_v4", "auth_aes128_md5", + "auth_aes128_sha1", "auth_chain_a", "auth_chain_b", "auth_chain_c", + "auth_chain_d", "auth_chain_e", "auth_chain_f" +} +local ssr_obfs_list = { + "plain", "http_simple", "http_post", "random_head", "tls_simple", + "tls1.0_session_auth", "tls1.2_ticket_auth" +} + +local v_ss_encrypt_method_list = { + "aes-128-gcm", "aes-256-gcm", "chacha20-poly1305" +} + +local x_ss_encrypt_method_list = { + "aes-128-gcm", "aes-256-gcm", "chacha20-poly1305", "xchacha20-poly1305" +} + +local header_type_list = { + "none", "srtp", "utp", "wechat-video", "dtls", "wireguard" +} + +local encrypt_methods_ss_aead = { + "chacha20-ietf-poly1305", + "aes-128-gcm", + "aes-256-gcm", +} + +m = Map("passwall_server", translate("Server Config")) +m.redirect = api.url("server") + +s = m:section(NamedSection, arg[1], "user", "") +s.addremove = false +s.dynamic = false + +enable = s:option(Flag, "enable", translate("Enable")) +enable.default = "1" +enable.rmempty = false + +remarks = s:option(Value, "remarks", translate("Remarks")) +remarks.default = translate("Remarks") +remarks.rmempty = false + +type = s:option(ListValue, "type", translate("Type")) +if api.is_finded("microsocks") then + type:value("Socks", translate("Socks")) +end +if api.is_finded("ss-server") then + type:value("SS", translate("Shadowsocks")) +end +if api.is_finded("ssr-server") then + type:value("SSR", translate("ShadowsocksR")) +end +if api.is_finded("v2ray") then + type:value("V2ray", translate("V2ray")) +end +if api.is_finded("xray") then + type:value("Xray", translate("Xray")) +end +if api.is_finded("brook") then + type:value("Brook", translate("Brook")) +end +--[[ +if api.is_finded("trojan-plus") or api.is_finded("trojan") then + type:value("Trojan", translate("Trojan")) +end +]]-- +if api.is_finded("trojan-plus") then + type:value("Trojan-Plus", translate("Trojan-Plus")) +end +if api.is_finded("trojan-go") then + type:value("Trojan-Go", translate("Trojan-Go")) +end +if api.is_finded("hysteria") then + type:value("Hysteria", translate("Hysteria")) +end + +protocol = s:option(ListValue, "protocol", translate("Protocol")) +protocol:value("vmess", "Vmess") +protocol:value("vless", "VLESS") +protocol:value("http", "HTTP") +protocol:value("socks", "Socks") +protocol:value("shadowsocks", "Shadowsocks") +protocol:value("trojan", "Trojan") +protocol:value("mtproto", "MTProto") +protocol:value("dokodemo-door", "dokodemo-door") +protocol:depends("type", "V2ray") +protocol:depends("type", "Xray") + +-- Brook协议 +brook_protocol = s:option(ListValue, "brook_protocol", translate("Protocol")) +brook_protocol:value("server", "Brook") +brook_protocol:value("wsserver", "WebSocket") +brook_protocol:depends("type", "Brook") +function brook_protocol.cfgvalue(self, section) + return m:get(section, "protocol") +end +function brook_protocol.write(self, section, value) + m:set(section, "protocol", value) +end + +--brook_tls = s:option(Flag, "brook_tls", translate("Use TLS")) +--brook_tls:depends("brook_protocol", "wsserver") + +port = s:option(Value, "port", translate("Listen Port")) +port.datatype = "port" +port.rmempty = false + +auth = s:option(Flag, "auth", translate("Auth")) +auth.validate = function(self, value, t) + if value and value == "1" then + local user_v = username:formvalue(t) or "" + local pass_v = password:formvalue(t) or "" + if user_v == "" or pass_v == "" then + return nil, translate("Username and Password must be used together!") + end + end + return value +end +auth:depends("type", "Socks") +auth:depends({ type = "V2ray", protocol = "socks" }) +auth:depends({ type = "V2ray", protocol = "http" }) +auth:depends({ type = "Xray", protocol = "socks" }) +auth:depends({ type = "Xray", protocol = "http" }) + +username = s:option(Value, "username", translate("Username")) +username:depends("auth", true) + +password = s:option(Value, "password", translate("Password")) +password.password = true +password:depends("auth", true) +password:depends("type", "SS") +password:depends("type", "SSR") +password:depends("type", "Brook") +password:depends({ type = "V2ray", protocol = "shadowsocks" }) +password:depends({ type = "Xray", protocol = "shadowsocks" }) + +mtproto_password = s:option(Value, "mtproto_password", translate("Password"), translate("The MTProto protocol must be 32 characters and can only contain characters from 0 to 9 and a to f.")) +mtproto_password:depends({ type = "V2ray", protocol = "mtproto" }) +mtproto_password:depends({ type = "Xray", protocol = "mtproto" }) +mtproto_password.default = arg[1] +function mtproto_password.cfgvalue(self, section) + return m:get(section, "password") +end +function mtproto_password.write(self, section, value) + m:set(section, "password", value) +end + +d_protocol = s:option(ListValue, "d_protocol", translate("Destination protocol")) +d_protocol:value("tcp", "TCP") +d_protocol:value("udp", "UDP") +d_protocol:value("tcp,udp", "TCP,UDP") +d_protocol:depends({ type = "V2ray", protocol = "dokodemo-door" }) +d_protocol:depends({ type = "Xray", protocol = "dokodemo-door" }) + +d_address = s:option(Value, "d_address", translate("Destination address")) +d_address:depends({ type = "V2ray", protocol = "dokodemo-door" }) +d_address:depends({ type = "Xray", protocol = "dokodemo-door" }) + +d_port = s:option(Value, "d_port", translate("Destination port")) +d_port.datatype = "port" +d_port:depends({ type = "V2ray", protocol = "dokodemo-door" }) +d_port:depends({ type = "Xray", protocol = "dokodemo-door" }) + +decryption = s:option(Value, "decryption", translate("Encrypt Method")) +decryption.default = "none" +decryption:depends({ type = "V2ray", protocol = "vless" }) +decryption:depends({ type = "Xray", protocol = "vless" }) + +hysteria_protocol = s:option(ListValue, "hysteria_protocol", translate("Protocol")) +hysteria_protocol:value("udp", "UDP") +hysteria_protocol:value("faketcp", "faketcp") +hysteria_protocol:value("wechat-video", "wechat-video") +hysteria_protocol:depends("type", "Hysteria") +function hysteria_protocol.cfgvalue(self, section) + return m:get(section, "protocol") +end +function hysteria_protocol.write(self, section, value) + m:set(section, "protocol", value) +end + +hysteria_obfs = s:option(Value, "hysteria_obfs", translate("Obfs Password")) +hysteria_obfs:depends("type", "Hysteria") + +hysteria_auth_type = s:option(ListValue, "hysteria_auth_type", translate("Auth Type")) +hysteria_auth_type:value("disable", translate("Disable")) +hysteria_auth_type:value("string", translate("STRING")) +hysteria_auth_type:depends("type", "Hysteria") + +hysteria_auth_password = s:option(Value, "hysteria_auth_password", translate("Auth Password")) +hysteria_auth_password.password = true +hysteria_auth_password:depends("hysteria_auth_type", "string") + +hysteria_alpn = s:option(Value, "hysteria_alpn", translate("QUIC TLS ALPN")) +hysteria_alpn:depends("type", "Hysteria") + +hysteria_udp = s:option(Flag, "hysteria_udp", translate("UDP")) +hysteria_udp.default = "1" +hysteria_udp:depends("type", "Hysteria") + +hysteria_up_mbps = s:option(Value, "hysteria_up_mbps", translate("Max upload Mbps")) +hysteria_up_mbps.default = "10" +hysteria_up_mbps:depends("type", "Hysteria") + +hysteria_down_mbps = s:option(Value, "hysteria_down_mbps", translate("Max download Mbps")) +hysteria_down_mbps.default = "50" +hysteria_down_mbps:depends("type", "Hysteria") + +hysteria_recv_window_conn = s:option(Value, "hysteria_recv_window_conn", translate("QUIC stream receive window")) +hysteria_recv_window_conn:depends("type", "Hysteria") + +hysteria_recv_window = s:option(Value, "hysteria_recv_window", translate("QUIC connection receive window")) +hysteria_recv_window:depends("type", "Hysteria") + +hysteria_disable_mtu_discovery = s:option(Flag, "hysteria_disable_mtu_discovery", translate("Disable MTU detection")) +hysteria_disable_mtu_discovery:depends("type", "Hysteria") + +ss_encrypt_method = s:option(ListValue, "ss_encrypt_method", translate("Encrypt Method")) +for a, t in ipairs(ss_encrypt_method_list) do ss_encrypt_method:value(t) end +ss_encrypt_method:depends("type", "SS") +function ss_encrypt_method.cfgvalue(self, section) + return m:get(section, "method") +end +function ss_encrypt_method.write(self, section, value) + m:set(section, "method", value) +end + +ssr_encrypt_method = s:option(ListValue, "ssr_encrypt_method", translate("Encrypt Method")) +for a, t in ipairs(ssr_encrypt_method_list) do ssr_encrypt_method:value(t) end +ssr_encrypt_method:depends("type", "SSR") +function ssr_encrypt_method.cfgvalue(self, section) + return m:get(section, "method") +end +function ssr_encrypt_method.write(self, section, value) + m:set(section, "method", value) +end + +v_ss_encrypt_method = s:option(ListValue, "v_ss_encrypt_method", translate("Encrypt Method")) +for a, t in ipairs(v_ss_encrypt_method_list) do v_ss_encrypt_method:value(t) end +v_ss_encrypt_method:depends({ type = "V2ray", protocol = "shadowsocks" }) +function v_ss_encrypt_method.cfgvalue(self, section) + return m:get(section, "method") +end +function v_ss_encrypt_method.write(self, section, value) + m:set(section, "method", value) +end + +x_ss_encrypt_method = s:option(ListValue, "x_ss_encrypt_method", translate("Encrypt Method")) +for a, t in ipairs(x_ss_encrypt_method_list) do x_ss_encrypt_method:value(t) end +x_ss_encrypt_method:depends({ type = "Xray", protocol = "shadowsocks" }) +function x_ss_encrypt_method.cfgvalue(self, section) + return m:get(section, "method") +end +function x_ss_encrypt_method.write(self, section, value) + m:set(section, "method", value) +end + +iv_check = s:option(Flag, "iv_check", translate("IV Check")) +iv_check:depends({ type = "V2ray", protocol = "shadowsocks" }) +iv_check:depends({ type = "Xray", protocol = "shadowsocks" }) + +ss_network = s:option(ListValue, "ss_network", translate("Transport")) +ss_network.default = "tcp,udp" +ss_network:value("tcp", "TCP") +ss_network:value("udp", "UDP") +ss_network:value("tcp,udp", "TCP,UDP") +ss_network:depends({ type = "V2ray", protocol = "shadowsocks" }) +ss_network:depends({ type = "Xray", protocol = "shadowsocks" }) + +ssr_protocol = s:option(ListValue, "ssr_protocol", translate("Protocol")) +for a, t in ipairs(ssr_protocol_list) do ssr_protocol:value(t) end +ssr_protocol:depends("type", "SSR") +function ssr_protocol.cfgvalue(self, section) + return m:get(section, "protocol") +end +function ssr_protocol.write(self, section, value) + m:set(section, "protocol", value) +end + +protocol_param = s:option(Value, "protocol_param", translate("Protocol_param")) +protocol_param:depends("type", "SSR") + +obfs = s:option(ListValue, "obfs", translate("Obfs")) +for a, t in ipairs(ssr_obfs_list) do obfs:value(t) end +obfs:depends("type", "SSR") + +obfs_param = s:option(Value, "obfs_param", translate("Obfs_param")) +obfs_param:depends("type", "SSR") + +timeout = s:option(Value, "timeout", translate("Connection Timeout")) +timeout.datatype = "uinteger" +timeout.default = 300 +timeout:depends("type", "SS") +timeout:depends("type", "SSR") + +udp_forward = s:option(Flag, "udp_forward", translate("UDP Forward")) +udp_forward.default = "1" +udp_forward.rmempty = false +udp_forward:depends("type", "SSR") +udp_forward:depends({ type = "V2ray", protocol = "socks" }) +udp_forward:depends({ type = "Xray", protocol = "socks" }) + +uuid = s:option(DynamicList, "uuid", translate("ID") .. "/" .. translate("Password")) +for i = 1, 3 do + uuid:value(api.gen_uuid(1)) +end +uuid:depends({ type = "V2ray", protocol = "vmess" }) +uuid:depends({ type = "V2ray", protocol = "vless" }) +uuid:depends({ type = "V2ray", protocol = "trojan" }) +uuid:depends({ type = "Xray", protocol = "vmess" }) +uuid:depends({ type = "Xray", protocol = "vless" }) +uuid:depends({ type = "Xray", protocol = "trojan" }) +uuid:depends("type", "Trojan") +uuid:depends("type", "Trojan-Go") +uuid:depends("type", "Trojan-Plus") + +tls = s:option(Flag, "tls", translate("TLS")) +tls.default = 0 +tls.validate = function(self, value, t) + if value then + local type = type:formvalue(t) or "" + if value == "0" and (type == "Trojan" or type == "Trojan-Plus") then + return nil, translate("Original Trojan only supported 'tls', please choose 'tls'.") + end + if value == "1" then + local ca = tls_certificateFile:formvalue(t) or "" + local key = tls_keyFile:formvalue(t) or "" + if ca == "" or key == "" then + return nil, translate("Public key and Private key path can not be empty!") + end + end + return value + end +end +tls:depends({ type = "V2ray", protocol = "vmess" }) +tls:depends({ type = "V2ray", protocol = "vless" }) +tls:depends({ type = "V2ray", protocol = "socks" }) +tls:depends({ type = "V2ray", protocol = "shadowsocks" }) +tls:depends({ type = "V2ray", protocol = "trojan" }) +tls:depends({ type = "Xray", protocol = "vmess" }) +tls:depends({ type = "Xray", protocol = "vless" }) +tls:depends({ type = "Xray", protocol = "socks" }) +tls:depends({ type = "Xray", protocol = "shadowsocks" }) +tls:depends({ type = "Xray", protocol = "trojan" }) +tls:depends("type", "Trojan") +tls:depends("type", "Trojan-Plus") +tls:depends("type", "Trojan-Go") + +xtls = s:option(Flag, "xtls", translate("XTLS")) +xtls.default = 0 +xtls:depends({ type = "Xray", protocol = "vless", tls = true }) +xtls:depends({ type = "Xray", protocol = "trojan", tls = true }) + +flow = s:option(Value, "flow", translate("flow")) +flow.default = "xtls-rprx-direct" +flow:value("xtls-rprx-origin") +flow:value("xtls-rprx-direct") +flow:depends("xtls", true) + +alpn = s:option(ListValue, "alpn", translate("alpn")) +alpn.default = "h2,http/1.1" +alpn:value("h2,http/1.1") +alpn:value("h2") +alpn:value("http/1.1") +alpn:depends({ type = "V2ray", tls = true }) +alpn:depends({ type = "Xray", tls = true }) + +-- [[ TLS部分 ]] -- + +tls_certificateFile = s:option(FileUpload, "tls_certificateFile", translate("Public key absolute path"), translate("as:") .. "/etc/ssl/fullchain.pem") +tls_certificateFile.validate = function(self, value, t) + if value and value ~= "" then + if not nixio.fs.access(value) then + return nil, translate("Can't find this file!") + else + return value + end + end + return nil +end +tls_certificateFile.default = "/etc/config/ssl/" .. arg[1] .. ".pem" +tls_certificateFile:depends("tls", true) +tls_certificateFile:depends("type", "Hysteria") + +tls_keyFile = s:option(FileUpload, "tls_keyFile", translate("Private key absolute path"), translate("as:") .. "/etc/ssl/private.key") +tls_keyFile.validate = function(self, value, t) + if value and value ~= "" then + if not nixio.fs.access(value) then + return nil, translate("Can't find this file!") + else + return value + end + end + return nil +end +tls_keyFile.default = "/etc/config/ssl/" .. arg[1] .. ".key" +tls_keyFile:depends("tls", true) +tls_keyFile:depends("type", "Hysteria") + +tls_sessionTicket = s:option(Flag, "tls_sessionTicket", translate("Session Ticket")) +tls_sessionTicket.default = "0" +tls_sessionTicket:depends({ type = "Trojan", tls = true }) +tls_sessionTicket:depends({ type = "Trojan-Plus", tls = true }) +tls_sessionTicket:depends({ type = "Trojan-Go", tls = true }) + +transport = s:option(ListValue, "transport", translate("Transport")) +transport:value("tcp", "TCP") +transport:value("mkcp", "mKCP") +transport:value("ws", "WebSocket") +transport:value("h2", "HTTP/2") +transport:value("ds", "DomainSocket") +transport:value("quic", "QUIC") +transport:value("grpc", "gRPC") +transport:depends({ type = "V2ray", protocol = "vmess" }) +transport:depends({ type = "V2ray", protocol = "vless" }) +transport:depends({ type = "V2ray", protocol = "socks" }) +transport:depends({ type = "V2ray", protocol = "shadowsocks" }) +transport:depends({ type = "V2ray", protocol = "trojan" }) +transport:depends({ type = "Xray", protocol = "vmess" }) +transport:depends({ type = "Xray", protocol = "vless" }) +transport:depends({ type = "Xray", protocol = "socks" }) +transport:depends({ type = "Xray", protocol = "shadowsocks" }) +transport:depends({ type = "Xray", protocol = "trojan" }) + +trojan_transport = s:option(ListValue, "trojan_transport", translate("Transport")) +trojan_transport:value("original", translate("Original")) +trojan_transport:value("ws", "WebSocket") +trojan_transport.default = "original" +trojan_transport:depends("type", "Trojan-Go") + +trojan_plugin = s:option(ListValue, "plugin_type", translate("Transport Plugin")) +trojan_plugin:value("plaintext", "Plain Text") +trojan_plugin:value("shadowsocks", "ShadowSocks") +trojan_plugin:value("other", "Other") +trojan_plugin.default = "plaintext" +trojan_plugin:depends({ tls = false, trojan_transport = "original" }) + +trojan_plugin_cmd = s:option(Value, "plugin_cmd", translate("Plugin Binary")) +trojan_plugin_cmd.placeholder = "eg: /usr/bin/v2ray-plugin" +trojan_plugin_cmd:depends({ plugin_type = "shadowsocks" }) +trojan_plugin_cmd:depends({ plugin_type = "other" }) + +trojan_plugin_op = s:option(Value, "plugin_option", translate("Plugin Option")) +trojan_plugin_op.placeholder = "eg: obfs=http;obfs-host=www.baidu.com" +trojan_plugin_op:depends({ plugin_type = "shadowsocks" }) +trojan_plugin_op:depends({ plugin_type = "other" }) + +trojan_plugin_arg = s:option(DynamicList, "plugin_arg", translate("Plugin Option Args")) +trojan_plugin_arg.placeholder = "eg: [\"-config\", \"test.json\"]" +trojan_plugin_arg:depends({ plugin_type = "shadowsocks" }) +trojan_plugin_arg:depends({ plugin_type = "other" }) + +-- [[ WebSocket部分 ]]-- + +ws_host = s:option(Value, "ws_host", translate("WebSocket Host")) +ws_host:depends("transport", "ws") +ws_host:depends("ss_transport", "ws") +ws_host:depends("trojan_transport", "ws") + +ws_path = s:option(Value, "ws_path", translate("WebSocket Path")) +ws_path:depends("transport", "ws") +ws_path:depends("ss_transport", "ws") +ws_path:depends("trojan_transport", "ws") +ws_path:depends({ type = "Brook", brook_protocol = "wsserver" }) + +-- [[ HTTP/2部分 ]]-- + +h2_host = s:option(Value, "h2_host", translate("HTTP/2 Host")) +h2_host:depends("transport", "h2") +h2_host:depends("ss_transport", "h2") +h2_host:depends("trojan_transport", "h2") + +h2_path = s:option(Value, "h2_path", translate("HTTP/2 Path")) +h2_path:depends("transport", "h2") +h2_path:depends("ss_transport", "h2") +h2_path:depends("trojan_transport", "h2") + +-- [[ TCP部分 ]]-- + +-- TCP伪装 +tcp_guise = s:option(ListValue, "tcp_guise", translate("Camouflage Type")) +tcp_guise:value("none", "none") +tcp_guise:value("http", "http") +tcp_guise:depends("transport", "tcp") + +-- HTTP域名 +tcp_guise_http_host = s:option(DynamicList, "tcp_guise_http_host", translate("HTTP Host")) +tcp_guise_http_host:depends("tcp_guise", "http") + +-- HTTP路径 +tcp_guise_http_path = s:option(DynamicList, "tcp_guise_http_path", translate("HTTP Path")) +tcp_guise_http_path:depends("tcp_guise", "http") + +-- [[ mKCP部分 ]]-- + +mkcp_guise = s:option(ListValue, "mkcp_guise", translate("Camouflage Type"), translate('
none: default, no masquerade, data sent is packets with no characteristics.
srtp: disguised as an SRTP packet, it will be recognized as video call data (such as FaceTime).
utp: packets disguised as uTP will be recognized as bittorrent downloaded data.
wechat-video: packets disguised as WeChat video calls.
dtls: disguised as DTLS 1.2 packet.
wireguard: disguised as a WireGuard packet. (not really WireGuard protocol)')) +for a, t in ipairs(header_type_list) do mkcp_guise:value(t) end +mkcp_guise:depends("transport", "mkcp") + +mkcp_mtu = s:option(Value, "mkcp_mtu", translate("KCP MTU")) +mkcp_mtu.default = "1350" +mkcp_mtu:depends("transport", "mkcp") + +mkcp_tti = s:option(Value, "mkcp_tti", translate("KCP TTI")) +mkcp_tti.default = "20" +mkcp_tti:depends("transport", "mkcp") + +mkcp_uplinkCapacity = s:option(Value, "mkcp_uplinkCapacity", translate("KCP uplinkCapacity")) +mkcp_uplinkCapacity.default = "5" +mkcp_uplinkCapacity:depends("transport", "mkcp") + +mkcp_downlinkCapacity = s:option(Value, "mkcp_downlinkCapacity", translate("KCP downlinkCapacity")) +mkcp_downlinkCapacity.default = "20" +mkcp_downlinkCapacity:depends("transport", "mkcp") + +mkcp_congestion = s:option(Flag, "mkcp_congestion", translate("KCP Congestion")) +mkcp_congestion:depends("transport", "mkcp") + +mkcp_readBufferSize = s:option(Value, "mkcp_readBufferSize", translate("KCP readBufferSize")) +mkcp_readBufferSize.default = "1" +mkcp_readBufferSize:depends("transport", "mkcp") + +mkcp_writeBufferSize = s:option(Value, "mkcp_writeBufferSize", translate("KCP writeBufferSize")) +mkcp_writeBufferSize.default = "1" +mkcp_writeBufferSize:depends("transport", "mkcp") + +mkcp_seed = s:option(Value, "mkcp_seed", translate("KCP Seed")) +mkcp_seed:depends("transport", "mkcp") + +-- [[ DomainSocket部分 ]]-- + +ds_path = s:option(Value, "ds_path", "Path", translate("A legal file path. This file must not exist before running.")) +ds_path:depends("transport", "ds") + +-- [[ QUIC部分 ]]-- +quic_security = s:option(ListValue, "quic_security", translate("Encrypt Method")) +quic_security:value("none") +quic_security:value("aes-128-gcm") +quic_security:value("chacha20-poly1305") +quic_security:depends("transport", "quic") + +quic_key = s:option(Value, "quic_key", translate("Encrypt Method") .. translate("Key")) +quic_key:depends("transport", "quic") + +quic_guise = s:option(ListValue, "quic_guise", translate("Camouflage Type")) +for a, t in ipairs(header_type_list) do quic_guise:value(t) end +quic_guise:depends("transport", "quic") + +-- [[ gRPC部分 ]]-- +grpc_serviceName = s:option(Value, "grpc_serviceName", "ServiceName") +grpc_serviceName:depends("transport", "grpc") + +acceptProxyProtocol = s:option(Flag, "acceptProxyProtocol", translate("acceptProxyProtocol"), translate("Whether to receive PROXY protocol, when this node want to be fallback or forwarded by proxy, it must be enable, otherwise it cannot be used.")) +acceptProxyProtocol:depends({ type = "V2ray", transport = "tcp" }) +acceptProxyProtocol:depends({ type = "V2ray", transport = "ws" }) +acceptProxyProtocol:depends({ type = "Xray", transport = "tcp" }) +acceptProxyProtocol:depends({ type = "Xray", transport = "ws" }) + +-- [[ Fallback部分 ]]-- +fallback = s:option(Flag, "fallback", translate("Fallback")) +fallback:depends({ type = "V2ray", protocol = "vless", transport = "tcp" }) +fallback:depends({ type = "V2ray", protocol = "trojan", transport = "tcp" }) +fallback:depends({ type = "Xray", protocol = "vless", transport = "tcp" }) +fallback:depends({ type = "Xray", protocol = "trojan", transport = "tcp" }) + +--[[ +fallback_alpn = s:option(Value, "fallback_alpn", "Fallback alpn") +fallback_alpn:depends("fallback", true) + +fallback_path = s:option(Value, "fallback_path", "Fallback path") +fallback_path:depends("fallback", true) + +fallback_dest = s:option(Value, "fallback_dest", "Fallback dest") +fallback_dest:depends("fallback", true) + +fallback_xver = s:option(Value, "fallback_xver", "Fallback xver") +fallback_xver.default = 0 +fallback_xver:depends("fallback", true) +]]-- + +fallback_list = s:option(DynamicList, "fallback_list", "Fallback", translate("dest,path")) +fallback_list:depends("fallback", true) + +ss_aead = s:option(Flag, "ss_aead", translate("Shadowsocks secondary encryption")) +ss_aead:depends("type", "Trojan-Go") +ss_aead.default = "0" + +ss_aead_method = s:option(ListValue, "ss_aead_method", translate("Encrypt Method")) +for _, v in ipairs(encrypt_methods_ss_aead) do ss_aead_method:value(v, v) end +ss_aead_method.default = "aes-128-gcm" +ss_aead_method:depends("ss_aead", true) + +ss_aead_pwd = s:option(Value, "ss_aead_pwd", translate("Password")) +ss_aead_pwd.password = true +ss_aead_pwd:depends("ss_aead", true) + +tcp_fast_open = s:option(Flag, "tcp_fast_open", translate("TCP Fast Open")) +tcp_fast_open.default = "0" +tcp_fast_open:depends("type", "SS") +tcp_fast_open:depends("type", "SSR") +tcp_fast_open:depends("type", "Trojan") +tcp_fast_open:depends("type", "Trojan-Plus") +tcp_fast_open:depends("type", "Trojan-Go") + +remote_enable = s:option(Flag, "remote_enable", translate("Enable Remote"), translate("You can forward to Nginx/Caddy/V2ray/Xray WebSocket and more.")) +remote_enable.default = "1" +remote_enable.rmempty = false +remote_enable:depends("type", "Trojan") +remote_enable:depends("type", "Trojan-Plus") +remote_enable:depends("type", "Trojan-Go") + +remote_address = s:option(Value, "remote_address", translate("Remote Address")) +remote_address.default = "127.0.0.1" +remote_address:depends("remote_enable", 1) + +remote_port = s:option(Value, "remote_port", translate("Remote Port")) +remote_port.datatype = "port" +remote_port.default = "80" +remote_port:depends("remote_enable", 1) + +bind_local = s:option(Flag, "bind_local", translate("Bind Local"), translate("When selected, it can only be accessed locally, It is recommended to turn on when using reverse proxies or be fallback.")) +bind_local.default = "0" +bind_local:depends("type", "V2ray") +bind_local:depends("type", "Xray") + +accept_lan = s:option(Flag, "accept_lan", translate("Accept LAN Access"), translate("When selected, it can accessed lan , this will not be safe!")) +accept_lan.default = "0" +accept_lan:depends({ type = "V2ray", protocol = "vmess" }) +accept_lan:depends({ type = "V2ray", protocol = "vless" }) +accept_lan:depends({ type = "V2ray", protocol = "http" }) +accept_lan:depends({ type = "V2ray", protocol = "socks" }) +accept_lan:depends({ type = "V2ray", protocol = "shadowsocks" }) +accept_lan:depends({ type = "V2ray", protocol = "trojan" }) +accept_lan:depends({ type = "Xray", protocol = "vmess" }) +accept_lan:depends({ type = "Xray", protocol = "vless" }) +accept_lan:depends({ type = "Xray", protocol = "http" }) +accept_lan:depends({ type = "Xray", protocol = "socks" }) +accept_lan:depends({ type = "Xray", protocol = "shadowsocks" }) +accept_lan:depends({ type = "Xray", protocol = "trojan" }) + +local nodes_table = {} +for k, e in ipairs(api.get_valid_nodes()) do + if e.node_type == "normal" and (e.type == "V2ray" or e.type == "Xray") then + nodes_table[#nodes_table + 1] = { + id = e[".name"], + remarks = e["remark"] + } + end +end + +transit_node = s:option(ListValue, "transit_node", translate("transit node")) +transit_node:value("nil", translate("Close")) +transit_node:value("_socks", translate("Custom Socks")) +transit_node:value("_http", translate("Custom HTTP")) +for k, v in pairs(nodes_table) do transit_node:value(v.id, v.remarks) end +transit_node.default = "nil" +transit_node:depends("type", "V2ray") +transit_node:depends("type", "Xray") + +transit_node_address = s:option(Value, "transit_node_address", translate("Address (Support Domain Name)")) +transit_node_address:depends("transit_node", "_socks") +transit_node_address:depends("transit_node", "_http") + +transit_node_port = s:option(Value, "transit_node_port", translate("Port")) +transit_node_port.datatype = "port" +transit_node_port:depends("transit_node", "_socks") +transit_node_port:depends("transit_node", "_http") + +transit_node_username = s:option(Value, "transit_node_username", translate("Username")) +transit_node_username:depends("transit_node", "_socks") +transit_node_username:depends("transit_node", "_http") + +transit_node_password = s:option(Value, "transit_node_password", translate("Password")) +transit_node_password.password = true +transit_node_password:depends("transit_node", "_socks") +transit_node_password:depends("transit_node", "_http") + +log = s:option(Flag, "log", translate("Log")) +log.default = "1" +log.rmempty = false + +loglevel = s:option(ListValue, "loglevel", translate("Log Level")) +loglevel.default = "warning" +loglevel:value("debug") +loglevel:value("info") +loglevel:value("warning") +loglevel:value("error") +loglevel:depends({ type = "V2ray", log = true }) +loglevel:depends({ type = "Xray", log = true }) + +trojan_loglevel = s:option(ListValue, "trojan_loglevel", translate("Log Level")) +trojan_loglevel.default = "2" +trojan_loglevel:value("0", "all") +trojan_loglevel:value("1", "info") +trojan_loglevel:value("2", "warn") +trojan_loglevel:value("3", "error") +trojan_loglevel:value("4", "fatal") +function trojan_loglevel.cfgvalue(self, section) + return m:get(section, "loglevel") +end +function trojan_loglevel.write(self, section, value) + m:set(section, "loglevel", value) +end +trojan_loglevel:depends({ type = "Trojan", log = true }) +trojan_loglevel:depends({ type = "Trojan-Plus", log = true }) +trojan_loglevel:depends({ type = "Trojan-Go", log = true }) + +return m diff --git a/luci-app-passwall/luasrc/view/passwall/app_update/brook_version.htm b/luci-app-passwall/luasrc/view/passwall/app_update/brook_version.htm new file mode 100644 index 000000000..9a7288097 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/app_update/brook_version.htm @@ -0,0 +1,159 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +local brook_version = api.get_brook_version() +-%> + + + +
+ +
+
+ 【 <%=brook_version ~="" and brook_version or translate("Null") %> 】 + + +
+
+
\ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/app_update/hysteria_version.htm b/luci-app-passwall/luasrc/view/passwall/app_update/hysteria_version.htm new file mode 100644 index 000000000..7201994c1 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/app_update/hysteria_version.htm @@ -0,0 +1,159 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +local hysteria_version = api.get_hysteria_version() +-%> + + + +
+ +
+
+ 【 <%=hysteria_version ~="" and hysteria_version or translate("Null") %> 】 + + +
+
+
\ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/app_update/trojan_go_version.htm b/luci-app-passwall/luasrc/view/passwall/app_update/trojan_go_version.htm new file mode 100644 index 000000000..b7b181c34 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/app_update/trojan_go_version.htm @@ -0,0 +1,175 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +local trojan_go_version = api.get_trojan_go_version() +-%> + + + +
+ +
+
+ 【 <%=trojan_go_version ~="" and trojan_go_version or translate("Null") %> 】 + + +
+
+
\ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/app_update/v2ray_version.htm b/luci-app-passwall/luasrc/view/passwall/app_update/v2ray_version.htm new file mode 100644 index 000000000..ef46b9e55 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/app_update/v2ray_version.htm @@ -0,0 +1,175 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +local v2ray_version = api.get_v2ray_version() +-%> + + + +
+ +
+
+ 【 <%=v2ray_version ~="" and v2ray_version or translate("Null") %> 】 + + +
+
+
\ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/app_update/xray_version.htm b/luci-app-passwall/luasrc/view/passwall/app_update/xray_version.htm new file mode 100644 index 000000000..06d706c53 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/app_update/xray_version.htm @@ -0,0 +1,175 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +local xray_version = api.get_xray_version() +-%> + + + +
+ +
+
+ 【 <%=xray_version ~="" and xray_version or translate("Null") %> 】 + + +
+
+
\ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/auto_switch/footer.htm b/luci-app-passwall/luasrc/view/passwall/auto_switch/footer.htm new file mode 100644 index 000000000..cf672e22c --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/auto_switch/footer.htm @@ -0,0 +1,22 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +-%> + + + + \ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/global/faq.htm b/luci-app-passwall/luasrc/view/passwall/global/faq.htm new file mode 100644 index 000000000..14a193399 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/global/faq.htm @@ -0,0 +1,43 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +-%> +
+
+
    <%:About DNS issues:%> +
  • 1. <%:Some browsers may have built-in DNS, be sure to close. Example: Chrome. Settings - Security and Privacy - Security - Use secure DNS disabled.%>
  • +
  • 2. <%:Sometimes after restart, you can not internet, especially the GFW mode. At this time, close all browsers (important), Windows Client, please `ipconfig / flushdns`. Please close the WiFi on the phone, cut the flight mode and then cut back.%>
  • +
  • 3. <%:The client DNS and the default gateway must point to this router.%>
  • +
  • 4. <%:If you have a wrong DNS process, the consequences are at your own risk!%>
  • +
+
+
+
+ + \ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/global/footer.htm b/luci-app-passwall/luasrc/view/passwall/global/footer.htm new file mode 100644 index 000000000..c0f88c203 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/global/footer.htm @@ -0,0 +1,143 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +local auto_switch = api.uci_get_type("auto_switch", "enable", 0) +-%> + \ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/global/status.htm b/luci-app-passwall/luasrc/view/passwall/global/status.htm new file mode 100644 index 000000000..7b9d5212c --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/global/status.htm @@ -0,0 +1,278 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +-%> + + + +
+ + <%:Running Status%> + +
+
+
+
+
+ +
+
+
+

TCP
<%:NOT RUNNING%>

+
+
+
+
+
+
+
+ +
+
+
+

UDP
<%:NOT RUNNING%>

+
+
+
+
+
+
+
+ +
+
+
+

DNS
<%:NOT RUNNING%>

+
+
+
+
+
+
+
+ +
+
+
+

<%:Load Balancing%>
<%:NOT RUNNING%>

+
+
+
+
+
+
+
+ +
+
+
+

<%:Baidu Connection%>
<%:Touch Check%>

+
+
+
+
+
+
+
+ +
+
+
+

<%:Google Connection%>
<%:Touch Check%>

+
+
+
+
+
+
+
+ +
+
+
+

<%:GitHub Connection%>
<%:Touch Check%>

+
+
+
+
+
+
+
+ +
+
+
+

<%:Instagram Connection%>
<%:Touch Check%>

+
+
+
+
+ +
diff --git a/luci-app-passwall/luasrc/view/passwall/haproxy/status.htm b/luci-app-passwall/luasrc/view/passwall/haproxy/status.htm new file mode 100644 index 000000000..91fcf1e24 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/haproxy/status.htm @@ -0,0 +1,26 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +local console_port = api.uci_get_type("global_haproxy", "console_port", "") +-%> +

+ + diff --git a/luci-app-passwall/luasrc/view/passwall/log/log.htm b/luci-app-passwall/luasrc/view/passwall/log/log.htm new file mode 100644 index 000000000..fcf81669e --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/log/log.htm @@ -0,0 +1,30 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +-%> + +
+ + +
diff --git a/luci-app-passwall/luasrc/view/passwall/node_list/link_add_node.htm b/luci-app-passwall/luasrc/view/passwall/node_list/link_add_node.htm new file mode 100644 index 000000000..1d504cd99 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/node_list/link_add_node.htm @@ -0,0 +1,108 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +-%> + + + + + + + +
+ +
+ + + + + + +
+
+
\ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/node_list/link_share_man.htm b/luci-app-passwall/luasrc/view/passwall/node_list/link_share_man.htm new file mode 100644 index 000000000..c1db7a0e1 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/node_list/link_share_man.htm @@ -0,0 +1,960 @@ +<%+cbi/valueheader%> +<% +local api = require "luci.model.cbi.passwall.api.api" +local has_v2ray = api.is_finded("v2ray") +local has_xray = api.is_finded("xray") +-%> + + + + +<%+cbi/valuefooter%> diff --git a/luci-app-passwall/luasrc/view/passwall/node_list/node_list.htm b/luci-app-passwall/luasrc/view/passwall/node_list/node_list.htm new file mode 100644 index 000000000..1f0717233 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/node_list/node_list.htm @@ -0,0 +1,475 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +-%> + + + + + +
+
+
<%:You choose node is:%>
+
+ + + +
+
+
\ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/rule/rule_version.htm b/luci-app-passwall/luasrc/view/passwall/rule/rule_version.htm new file mode 100644 index 000000000..c0256c719 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/rule/rule_version.htm @@ -0,0 +1,76 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" + +local gfwlist_update = api.uci_get_type("global_rules", "gfwlist_update", "1") == "1" and "checked='checked'" or "" +local chnroute_update = api.uci_get_type("global_rules", "chnroute_update", "1") == "1" and "checked='checked'" or "" +local chnroute6_update = api.uci_get_type("global_rules", "chnroute6_update", "1") == "1" and "checked='checked'" or "" +local chnlist_update = api.uci_get_type("global_rules", "chnlist_update", "1") == "1" and "checked='checked'" or "" +local geoip_update = api.uci_get_type("global_rules", "geoip_update", "1") == "1" and "checked='checked'" or "" +local geosite_update = api.uci_get_type("global_rules", "geosite_update", "1") == "1" and "checked='checked'" or "" +-%> + + +
+ +
+
+ + + + + + + +
+
+
diff --git a/luci-app-passwall/luasrc/view/passwall/server/log.htm b/luci-app-passwall/luasrc/view/passwall/server/log.htm new file mode 100644 index 000000000..0164f81de --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/server/log.htm @@ -0,0 +1,34 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +-%> + +
+ + <%:Logs%> + + + +
\ No newline at end of file diff --git a/luci-app-passwall/luasrc/view/passwall/server/users_list_status.htm b/luci-app-passwall/luasrc/view/passwall/server/users_list_status.htm new file mode 100644 index 000000000..d6dbddef6 --- /dev/null +++ b/luci-app-passwall/luasrc/view/passwall/server/users_list_status.htm @@ -0,0 +1,38 @@ +<% +local api = require "luci.model.cbi.passwall.api.api" +-%> + \ No newline at end of file diff --git a/luci-app-passwall/po/zh-cn/passwall.po b/luci-app-passwall/po/zh-cn/passwall.po new file mode 100644 index 000000000..3ee1b0f2b --- /dev/null +++ b/luci-app-passwall/po/zh-cn/passwall.po @@ -0,0 +1,1377 @@ +msgid "Pass Wall" +msgstr "PassWall" + +msgid "Auto" +msgstr "自动" + +msgid "RUNNING" +msgstr "运行中" + +msgid "NOT RUNNING" +msgstr "未运行" + +msgid "Working..." +msgstr "连接正常" + +msgid "Problem detected!" +msgstr "连接失败" + +msgid "Very Fast" +msgstr "非常快" + +msgid "Fast" +msgstr "很快" + + +msgid "Slow" +msgstr "很慢" + +msgid "Very Slow" +msgstr "非常慢" + +msgid "Touch Check" +msgstr "点我检测" + +msgid "Kernel Unsupported" +msgstr "内核不支持" + +msgid "Use IPv6" +msgstr "使用IPv6" + +msgid "Parsing IP" +msgstr "域名解析IP" + +msgid "TCP Server" +msgstr "TCP服务器" + +msgid "UDP Server" +msgstr "UDP服务器" + +msgid "Main Settings" +msgstr "节点选择" + +msgid "Basic Settings" +msgstr "基本设置" + +msgid "Node List" +msgstr "节点列表" + +msgid "Other Settings" +msgstr "高级设置" + +msgid "Load Balancing" +msgstr "负载均衡" + +msgid "Enter interface" +msgstr "进入界面" + +msgid "Rule Manage" +msgstr "规则管理" + +msgid "Rule List" +msgstr "规则列表" + +msgid "Access control" +msgstr "访问控制" + +msgid "Watch Logs" +msgstr "查看日志" + +msgid "Node Config" +msgstr "节点配置" + +msgid "Running Status" +msgstr "运行状态" + +msgid "Baidu Connection" +msgstr "百度连接" + +msgid "Google Connection" +msgstr "谷歌连接" + +msgid "GitHub Connection" +msgstr "GitHub连接" + +msgid "Instagram Connection" +msgstr "Instagram连接" + +msgid "Node Check" +msgstr "节点检测" + +msgid "Check..." +msgstr "检测中..." + +msgid "Clear" +msgstr "清除" + +msgid "Main switch" +msgstr "主开关" + +msgid "TCP Node" +msgstr "TCP节点" + +msgid "UDP Node" +msgstr "UDP节点" + +msgid "Edit Current Node" +msgstr "编辑当前节点" + +msgid "Socks Config" +msgstr "Socks配置" + +msgid "Socks Node" +msgstr "Socks节点" + +msgid "Listen Port" +msgstr "监听端口" + +msgid "0 is not use" +msgstr "0为不使用" + +msgid "Same as the tcp node" +msgstr "与TCP节点相同" + +msgid "Current node: %s" +msgstr "当前节点:%s" + +msgid "For proxy specific list." +msgstr "用于代理特定的列表。" + +msgid "For proxy game network." +msgstr "用于代理游戏等。" + +msgid "DNS Shunt" +msgstr "DNS分流" + +msgid "Domestic group name" +msgstr "国内分组名" + +msgid "You only need to configure domestic DNS packets in SmartDNS and set it redirect or as Dnsmasq upstream, and fill in the domestic DNS group name here." +msgstr "你只需要在SmartDNS配置好国内DNS分组,并设置重定向或作为Dnsmasq上游,此处填入国内DNS分组名。" + +msgid "Filter Mode" +msgstr "过滤模式" + +msgid "TCP node must be '%s' type to use FakeDNS." +msgstr "TCP节点必须是 '%s' 类型才能使用 FakeDNS。" + +msgid "Remote DNS" +msgstr "远程 DNS" + +msgid "IP:Port mode acceptable, multi value split with english comma." +msgstr "接受 IP:Port 形式的输入,多个以英文逗号分隔。" + +msgid "If you use dns2socks, only the first one is valid." +msgstr "如果使用dns2socks,只有第一个生效。" + +msgid "Ali" +msgstr "阿里" + +msgid "Baidu" +msgstr "百度" + +msgid "Resolver For The List Proxied" +msgstr "解析被代理的域名列表" + +msgid "Requery DNS By %s" +msgstr "通过%s请求DNS" + +msgid "Socks Server" +msgstr "Socks服务器" + +msgid "Misconfigured" +msgstr "配置不当" + +msgid "Make sure socks service is available on this address." +msgstr "请确保此Socks服务可用。" + +msgid "Format must be:" +msgstr "格式必须为:" + +msgid "DoH request address" +msgstr "DoH 请求地址" + +msgid "China list or gfwlist cannot be used together with outside China list!" +msgstr "中国列表不能和中国列表外或防火墙表一起使用!" + +msgid "Cache Resolved" +msgstr "缓存解析结果" + +msgid "Notify the DNS server when the DNS query is notified, the location of the client (cannot be a private IP address)." +msgstr "用于 DNS 查询时通知 DNS 服务器,客户端所在的地理位置(不能是私有 IP 地址)。" + +msgid "This feature requires the DNS server to support the Edns Client Subnet (RFC7871)." +msgstr "此功能需要 DNS 服务器支持 EDNS Client Subnet(RFC7871)。" + +msgid "When the accessed domain name does not exist in the rule list, the default DNS used." +msgstr "当访问的域名不存在规则列表中,使用的默认DNS。" + +msgid "The effect is better, but will increase the memory." +msgstr "效果更好,但会增加内存使用。" + +msgid "Filter Proxy Host IPv6" +msgstr "过滤代理域名 IPv6" + +msgid "Experimental feature." +msgstr "实验性功能。" + +msgid "Clear IPSET" +msgstr "清空 IPSET" + +msgid "Try this feature if the rule modification does not take effect." +msgstr "如果修改规则后没有生效,请尝试此功能。" + +msgid "The server client can also use this rule to scientifically surf the Internet." +msgstr "本机服务器的客户端也可以使用这个代理模式上网。" + +msgid "About DNS issues:" +msgstr "关于DNS问题:" + +msgid "Some browsers may have built-in DNS, be sure to close. Example: Chrome. Settings - Security and Privacy - Security - Use secure DNS disabled." +msgstr "部分浏览器可能有内置的DNS,请务必关闭。如:chrome。 设置 - 安全和隐私设置 - 使用安全 DNS 关闭。" + +msgid "Sometimes after restart, you can not internet, especially the GFW mode. At this time, close all browsers (important), Windows Client, please `ipconfig / flushdns`. Please close the WiFi on the phone, cut the flight mode and then cut back." +msgstr "有时候重启后,上不了,尤其是GFW模式。这时请先关闭所有浏览器(重要),Windows客户端请`ipconfig/flushdns`。手机端请关闭WIFI,切一下飞行模式再切回来。" + +msgid "The client DNS and the default gateway must point to this router." +msgstr "客户端DNS和默认网关必须指向本路由器。" + +msgid "If you have a wrong DNS process, the consequences are at your own risk!" +msgstr "如果你自行配置了错误的DNS流程,后果自负!" + +msgid "You can use load balancing for failover." +msgstr "可以使用负载均衡实现故障切换功能。" + +msgid "Restore the default configuration method. Input example in the address bar:" +msgstr "恢复默认配置方法,地址栏输入例:" + +msgid "Hide menu method, input example in the address bar:" +msgstr "隐藏菜单方法,地址栏输入例:" + +msgid "After the hidden to the display, input example in the address bar:" +msgstr "当你隐藏后想再次显示,地址栏输入例:" + +msgid "Are you sure to reset?" +msgstr "你确定要恢复吗?" + +msgid "Are you sure to hide?" +msgstr "你确定要隐藏吗?" + +msgid "DNS Export Of Multi WAN" +msgstr "国内DNS指定解析出口" + +msgid "Node Export Of Multi WAN" +msgstr "节点指定出口" + +msgid "Only support Multi Wan." +msgstr "只有多线接入才有效。" + +msgid "Not Specify" +msgstr "不指定" + +msgid "custom" +msgstr "自定义" + +msgid "Process" +msgstr "进程" + +msgid "1 Process" +msgstr "单进程" + +msgid "Proxy Mode" +msgstr "代理模式" + +msgid "%s Proxy Mode" +msgstr "%s 代理模式" + +msgid "If not available, try clearing the cache." +msgstr "如果无法使用,请尝试清除缓存。" + +msgid "No Proxy" +msgstr "不代理" + +msgid "Global Proxy" +msgstr "全局代理" + +msgid "GFW List" +msgstr "GFW列表" + +msgid "Not China List" +msgstr "中国列表以外" + +msgid "Game Mode" +msgstr "游戏模式" + +msgid "China List" +msgstr "中国列表" + +msgid "Only use direct/proxy list" +msgstr "仅使用直连/代理列表" + +msgid "Localhost" +msgstr "本机" + +msgid "Router Localhost" +msgstr "路由器自身" + +msgid "Danger" +msgstr "危险" + +msgid "Same as the %s default proxy mode" +msgstr "与 %s 默认代理模式相同" + +msgid "Want different devices to use different proxy modes/ports/nodes? Please use access control." +msgstr "希望不同设备使用不同的代理模式/端口/节点?请使用访问控制。" + +msgid "Operation" +msgstr "操作" + +msgid "Add Node" +msgstr "添加节点" + +msgid "Add the node via the link" +msgstr "通过链接添加节点" + +msgid "SS/SSR/Vmess/VLESS/Trojan/Hysteria Link" +msgstr "SS/SSR/Vmess/VLESS/Trojan/Hysteria 链接" + +msgid "Please enter the correct link." +msgstr "请输入正确的链接。" + +msgid "Clear all nodes" +msgstr "清空所有节点" + +msgid "Are you sure to clear all nodes?" +msgstr "你确定要清空所有节点吗?" + +msgid "Error" +msgstr "错误" + +msgid "Delete select nodes" +msgstr "删除选择的节点" + +msgid "To Top" +msgstr "置顶" + +msgid "Select" +msgstr "选择" + +msgid "DeSelect" +msgstr "反选" + +msgid "Select all" +msgstr "全选" + +msgid "DeSelect all" +msgstr "全不选" + +msgid "Are you sure to delete select nodes?" +msgstr "你确定要删除选择的节点吗?" + +msgid "You no select nodes !" +msgstr "你没有选择任何节点!" + +msgid "Are you sure set to" +msgstr "你确定要设为" + +msgid "the server?" +msgstr "服务器吗?" + +msgid "You choose node is:" +msgstr "你选择的节点是:" + +msgid "Timeout" +msgstr "超时" + +msgid "Node Remarks" +msgstr "节点备注" + +msgid "Add Mode" +msgstr "添加方式" + +msgid "Type" +msgstr "类型" + +msgid "Balancing" +msgstr "负载均衡" + +msgid "Xray_balancing" +msgstr "Xray 负载均衡" + +msgid "V2ray_balancing" +msgstr "V2ray 负载均衡" + +msgid "Shunt" +msgstr "分流" + +msgid "Xray_shunt" +msgstr "Xray 分流" + +msgid "V2ray_shunt" +msgstr "V2ray 分流" + +msgid "Preproxy" +msgstr "前置代理" + +msgid "Direct Connection" +msgstr "直连" + +msgid "Blackhole" +msgstr "黑洞" + +msgid "Default Preproxy" +msgstr "默认前置代理" + +msgid "No shunt rules? Click me to go to add." +msgstr "没有分流规则?点我前往去添加。" + +msgid "When using, localhost will connect this node first and then use this node to connect the default node." +msgstr "当使用时,本机将首先连接到此节点,然后再使用此节点连接到默认节点落地。" + +msgid "Domain Strategy" +msgstr "域名解析策略" + +msgid "Domain matcher" +msgstr "域名匹配算法" + +msgid "'AsIs': Only use domain for routing. Default value." +msgstr "AsIs:只使用域名进行路由选择。默认值。" + +msgid "'IPIfNonMatch': When no rule matches current domain, resolves it into IP addresses (A or AAAA records) and try all rules again." +msgstr "IPIfNonMatch:当域名没有匹配任何规则时,将域名解析成 IP(A 记录或 AAAA 记录)再次进行匹配。" + +msgid "'IPOnDemand': As long as there is a IP-based rule, resolves the domain into IP immediately." +msgstr "IPOnDemand:当匹配时碰到任何基于 IP 的规则,将域名立即解析为 IP 进行匹配。" + +msgid "Load balancing node list" +msgstr "负载均衡节点列表" + +msgid "Load balancing node list, document" +msgstr "负载均衡节点列表,文档原理" + +msgid "From Share URL" +msgstr "导入分享URL" + +msgid "Build Share URL" +msgstr "导出分享URL" + +msgid "Import Finished" +msgstr "导入完成:" + +msgid "Not a supported scheme:" +msgstr "不支持这种样式的:" + +msgid "Invalid Share URL Format" +msgstr "无效的分享URL信息" + +msgid "Paste Share URL Here" +msgstr "在此处粘贴分享信息" + +msgid "Share URL to clipboard unable." +msgstr "无法分享URL到剪贴板。" + +msgid "Share URL to clipboard successfully." +msgstr "成功复制分享URL到剪贴板。" + +msgid "Faltal on get option, please help in debug:" +msgstr "代码错误,请协助捉虫:" + +msgid "Faltal on set option, please help in debug:" +msgstr "代码错误,请协助捉虫:" + +msgid "Address" +msgstr "地址" + +msgid "Address (Support Domain Name)" +msgstr "地址(支持域名)" + +msgid "Trojan Verify Cert" +msgstr "验证证书" + +msgid "Trojan Cert Path" +msgstr "证书路径" + +msgid "Finger Print" +msgstr "指纹伪造" + +msgid "Original" +msgstr "原版" + +msgid "Transport Plugin" +msgstr "传输层插件" + +msgid "Shadowsocks secondary encryption" +msgstr "Shadowsocks 二次加密" + +msgid "Obfs Password" +msgstr "混淆密码" + +msgid "Auth Type" +msgstr "认证类型" + +msgid "Auth Password" +msgstr "认证密码" + +msgid "Max upload Mbps" +msgstr "最大上行(Mbps)" + +msgid "Max download Mbps" +msgstr "最大下行(Mbps)" + +msgid "QUIC stream receive window" +msgstr "QUIC 流接收窗口" + +msgid "QUIC connection receive window" +msgstr "QUIC 连接接收窗口" + +msgid "Disable MTU detection" +msgstr "禁用 MTU 检测" + +msgid "Encrypt Method" +msgstr "加密" + +msgid "Latency" +msgstr "延迟" + +msgid "Show Add Mode" +msgstr "显示添加方式" + +msgid "Show Group" +msgstr "显示组" + +msgid "Group" +msgstr "组" + +msgid "Auto Ping" +msgstr "自动Ping" + +msgid "This will automatically ping the node for latency" +msgstr "选中后保存应用后即自动Ping节点" + +msgid "Use TCP Detection delay" +msgstr "使用TCP检测延迟" + +msgid "This will use tcping replace ping detection of node" +msgstr "选中后保存应用后即使用tcping替换ping检测节点" + +msgid "Concise display nodes" +msgstr "简洁显示节点" + +msgid "Show server address and port" +msgstr "显示服务器地址和端口" + +msgid "Availability test" +msgstr "可用性测试" + +msgid "Node num" +msgstr "节点数量" + +msgid "Self add" +msgstr "自添" + +msgid "Apply" +msgstr "应用" + +msgid "Use" +msgstr "使用" + +msgid "Copy" +msgstr "复制" + +msgid "Delay Settings" +msgstr "定时配置" + +msgid "Open and close Daemon" +msgstr "启动守护进程" + +msgid "Delay Start" +msgstr "开机时延时启动" + +msgid "Units:seconds" +msgstr "单位:秒" + +msgid "Units:minutes" +msgstr "单位:分钟" + +msgid "Open and close automatically" +msgstr "定时自动开关" + +msgid "Automatically turn off time" +msgstr "自动关闭时间" + +msgid "Automatically turn on time" +msgstr "自动开启时间" + +msgid "Automatically restart time" +msgstr "自动重启时间" + +msgid "Forwarding Settings" +msgstr "转发配置" + +msgid "TCP No Redir Ports" +msgstr "TCP不转发端口" + +msgid "UDP No Redir Ports" +msgstr "UDP不转发端口" + +msgid "Fill in the ports you don't want to be forwarded by the agent, with the highest priority." +msgstr "填写你不希望被代理转发的端口,优先级最高。" + +msgid "TCP Proxy Drop Ports" +msgstr "TCP转发屏蔽端口" + +msgid "UDP Proxy Drop Ports" +msgstr "UDP转发屏蔽端口" + +msgid "TCP Redir Ports" +msgstr "TCP转发端口" + +msgid "UDP Redir Ports" +msgstr "UDP转发端口" + +msgid "No patterns are used" +msgstr "不使用" + +msgid "All" +msgstr "所有" + +msgid "Common Use" +msgstr "常用的" + +msgid "Only Web" +msgstr "仅网页" + +msgid "or more" +msgstr "及以上" + +msgid "or less" +msgstr "及以下" + +msgid "Default" +msgstr "默认" + +msgid "Close" +msgstr "关闭" + +msgid "Hijacking ICMP (PING)" +msgstr "劫持ICMP (PING)" + +msgid "Hijacking ICMPv6 (IPv6 PING)" +msgstr "劫持ICMPv6 (IPv6 PING)" + +msgid "Sniffing (V2Ray/Xray)" +msgstr "流量嗅探 (V2ray/Xray)" + +msgid "When using the V2ray/Xray shunt, must be enabled, otherwise the shunt will invalid." +msgstr "使用 V2Ray/Xray 分流时,必须启用,否则分流将无效。" + +msgid "Sniffing Route Only (Xray)" +msgstr "流量嗅探只供路由使用 (Xray)" + +msgid "When enabled, the server not will resolve the domain name again." +msgstr "启用后,服务器不会再次解析域名。" + +msgid "TCP Proxy Way" +msgstr "TCP代理方式" + +msgid "Proxy Settings" +msgstr "代理配置" + +msgid "TCP Redir Port" +msgstr "TCP透明代理端口" + +msgid "UDP Redir Port" +msgstr "UDP透明代理端口" + +msgid "Custom Dnsmasq" +msgstr "自定义Dnsmasq设置" + +msgid "Setting a parameter error will cause dnsmasq fail to start." +msgstr "参数设置错误将会导致Dnsmasq无法启动。" + +msgid "Auto Switch" +msgstr "自动切换" + +msgid "When there is no server, an automatic reconnect scheme is used" +msgstr "当没有服务器时,则使用自动重连方案" + +msgid "How often to test" +msgstr "多久检测一次" + +msgid "Timeout seconds" +msgstr "超时秒数" + +msgid "Timeout retry num" +msgstr "超时重试次数" + +msgid "Automatic switching cannot be used when this option is checked" +msgstr "当勾选此选项时,不能使用自动切换" + +msgid "Main node" +msgstr "主节点" + +msgid "List of backup nodes" +msgstr "备用节点的列表" + +msgid "Restore Switch" +msgstr "恢复切换" + +msgid "When detects main node is available, switch back to the main node." +msgstr "当检测到主节点可用时,切换回主节点。" + +msgid "If the main node is V2ray/Xray shunt" +msgstr "如果主节点是V2ray/Xray分流" + +msgid "Switch it" +msgstr "切掉它" + +msgid "Applying to the default node" +msgstr "应用于默认节点" + +msgid "Applying to the default preproxy node" +msgstr "应用于默认前置节点" + +msgid "Add nodes to the standby node list by keywords" +msgstr "通过关键字添加节点到备用节点列表" + +msgid "Delete nodes in the standby node list by keywords" +msgstr "通过关键字删除备用节点列表的节点" + +msgid "Please enter the node keyword, pay attention to distinguish between spaces, uppercase and lowercase." +msgstr "请输入节点关键字,注意区分空格、大写和小写。" + +msgid "Configure this node with 127.0.0.1: this port" +msgstr "使用127.0.0.1和此端口配置节点" + +msgid "Enable Load Balancing" +msgstr "开启负载均衡" + +msgid "Console Username" +msgstr "控制台账号" + +msgid "Console Password" +msgstr "控制台密码" + +msgid "Console Port" +msgstr "控制台端口" + +msgid "In the browser input routing IP plus port access, such as:192.168.1.1:1188" +msgstr "在浏览器输入路由IP加端口访问,如:192.168.1.1:1188" + +msgid "Haproxy Port" +msgstr "负载均衡端口" + +msgid "Add a node, Export Of Multi WAN Only support Multi Wan. Load specific gravity range 1-256. Multiple primary servers can be load balanced, standby will only be enabled when the primary server is offline! Multiple groups can be set, Haproxy port same one for each group." +msgstr "添加节点,指定出口功能是为多WAN用户准备的。负载比重范围1-256。多个主服务器可以负载均衡,备用只有在主服务器离线时才会启用!可以设置多个组,负载均衡端口相同则为一组。" + +msgid "Note that the node configuration parameters for load balancing must be consistent, otherwise problems can arise!" +msgstr "注意,负载均衡的节点配置参数必须一致,否则会出问题!" + +msgid "Node" +msgstr "节点" + +msgid "Node Address" +msgstr "节点地址" + +msgid "Node Port" +msgstr "节点端口" + +msgid "Node Weight" +msgstr "负载比重" + +msgid "Export Of Multi WAN" +msgstr "多WAN指定出口" + +msgid "Main" +msgstr "主要" + +msgid "Mode" +msgstr "模式" + +msgid "Primary" +msgstr "主要" + +msgid "Standby" +msgstr "备用" + +msgid "Manually update" +msgstr "手动更新" + +msgid "Enable custom URL" +msgstr "启用自定义规则地址" + +msgid "GFW domains(gfwlist) Update URL" +msgstr "防火墙域名列表(gfwlist)更新URL" + +msgid "China IPs(chnroute) Update URL" +msgstr "中国IP段(chnroute)更新URL" + +msgid "China IPv6s(chnroute6) Update URL" +msgstr "中国IPv6段(chnroute6)更新URL" + +msgid "China List(Chnlist) Update URL" +msgstr "中国域名列表(Chnlist)更新URL" + +msgid "Rule status" +msgstr "规则版本" + +msgid "Enable auto update rules" +msgstr "开启自动更新规则" + +msgid "Week update rules" +msgstr "更新时间星期" + +msgid "Day update rules" +msgstr "更新时间小时" + +msgid "Every day" +msgstr "每天" + +msgid "day" +msgstr "日" + +msgid "Week" +msgstr "周" + +msgid "oclock" +msgstr "点" + +msgid "Location of V2ray/Xray asset" +msgstr "V2ray/Xray 资源文件目录" + +msgid "This variable specifies a directory where geoip.dat and geosite.dat files are." +msgstr "此变量指定geoip.dat和geosite.dat文件所在的目录。" + +msgid "Shunt Rule" +msgstr "分流规则" + +msgid "Please note attention to the priority, the higher the order, the higher the priority." +msgstr "请注意优先级问题,排序越上面优先级越高。" + +msgid "Update..." +msgstr "更新中" + +msgid "It is the latest version" +msgstr "已是最新版本" + +msgid "Update successful" +msgstr "更新成功" + +msgid "Click to update" +msgstr "点击更新" + +msgid "Updating..." +msgstr "更新中" + +msgid "Unexpected error" +msgstr "意外错误" + +msgid "Updating, are you sure to close?" +msgstr "正在更新,你确认要关闭吗?" + +msgid "Downloading..." +msgstr "下载中" + +msgid "Unpacking..." +msgstr "解压中" + +msgid "Moving..." +msgstr "移动中" + +msgid "App Update" +msgstr "组件更新" + +msgid "Please confirm that your firmware supports FPU." +msgstr "请确认你的固件支持FPU。" + +msgid "if you want to run from memory, change the path, /tmp beginning then save the application and update it manually." +msgstr "如果你希望从内存中运行,请更改路径,/tmp 开头,然后保存应用后,再手动更新。" + +msgid "Make sure there is enough space to install %s" +msgstr "确保有足够的空间安装 %s" + +msgid "App Path" +msgstr "程序路径" + +msgid "%s App Path" +msgstr "%s 程序路径" + +msgid "%s Client App Path" +msgstr "%s 客户端程序路径" + +msgid "Trojan-Go Version API" +msgstr "Trojan-Go 版本 API" + +msgid "alternate API URL for version checking" +msgstr "用于版本检查的 API URL" + +msgid "Node Subscribe" +msgstr "节点订阅" + +msgid "Subscribe Remark" +msgstr "订阅备注(机场)" + +msgid "Subscribe URL" +msgstr "订阅网址" + +msgid "Please input the subscription url first, save and submit before manual subscription." +msgstr "请输入订阅网址保存应用后再手动订阅。" + +msgid "Subscribe via proxy" +msgstr "通过代理订阅" + +msgid "Enable auto update subscribe" +msgstr "开启自动更新订阅" + +msgid "Manual subscription" +msgstr "手动订阅" + +msgid "Delete All Subscribe Node" +msgstr "删除所有订阅节点" + +msgid "Delete the subscribed node" +msgstr "删除已订阅的节点" + +msgid "Manual subscription All" +msgstr "手动订阅全部" + +msgid "This remark already exists, please change a new remark." +msgstr "此备注已存在,请改一个新的备注。" + +msgid "Filter keyword Mode" +msgstr "过滤关键字模式" + +msgid "Discard List" +msgstr "丢弃列表" + +msgid "Keep List" +msgstr "保留列表" + +msgid "Discard List,But Keep List First" +msgstr "丢弃列表,但保留列表优先" + +msgid "Keep List,But Discard List First" +msgstr "保留列表,但丢弃列表优先" + +msgid "Use global config" +msgstr "使用全局配置" + +msgid "User-Agent" +msgstr "用户代理(User-Agent)" + +msgid "Add" +msgstr "添加" + +msgid "ACLs" +msgstr "访问控制" + +msgid "ACLs is a tools which used to designate specific IP proxy mode." +msgstr "访问控制列表是用于指定特殊IP代理模式的工具。" + +msgid "Example:" +msgstr "例:" + +msgid "IP range" +msgstr "IP 范围" + +msgid "Remarks" +msgstr "备注" + +msgid "Direct List" +msgstr "直连列表" + +msgid "Proxy List" +msgstr "代理列表" + +msgid "Block List" +msgstr "屏蔽列表" + +msgid "Lan IP List" +msgstr "局域网IP列表" + +msgid "Route Hosts" +msgstr "路由Hosts文件" + +msgid "Join the direct hosts list of domain names will not proxy." +msgstr "加入的域名不走代理,对所有模式有效。且优先级最高。" + +msgid "These had been joined ip addresses will not proxy. Please input the ip address or ip address segment,every line can input only one ip address. For example: 192.168.0.0/24 or 223.5.5.5." +msgstr "加入的IP段不走代理,对所有模式有效。且优先级最高。可输入IP地址或地址段,如:192.168.0.0/24或223.5.5.5,每个地址段一行。" + +msgid "These had been joined websites will use proxy. Please input the domain names of websites, every line can input only one website domain. For example: google.com." +msgstr "加入的域名将走代理。输入网站域名,如:google.com,每个地址段一行。" + +msgid "These had been joined ip addresses will use proxy. Please input the ip address or ip address segment, every line can input only one ip address. For example: 35.24.0.0/24 or 8.8.4.4." +msgstr "加入的IP段将走代理。可输入IP地址或地址段,如:35.24.0.0/24或8.8.4.4,每个地址段一行。" + +msgid "These had been joined websites will be block. Please input the domain names of websites, every line can input only one website domain. For example: twitter.com." +msgstr "加入的域名将屏蔽。输入网站域名,如:twitter.com,每个地址段一行。" + +msgid "The list is the IPv4 LAN IP list, which represents the direct connection IP of the LAN. If you need the LAN IP in the proxy list, please clear it from the list. Do not modify this list by default." +msgstr "列表中为IPv4的局域网IP列表,代表局域网直连IP。如果需要代理列表中的局域网IP,请将其在该列表中清除,并将其添加到代理列表中。默认情况下不要修改这个列表。" + +msgid "The list is the IPv6 LAN IP list, which represents the direct connection IP of the LAN. If you need the LAN IP in the proxy list, please clear it from the list. Do not modify this list by default." +msgstr "列表中为IPv6的局域网IP列表,代表局域网直连IP。如果需要代理列表中的局域网IP,请将其在该列表中清除,并将其添加到代理列表中。默认情况下不要修改这个列表。" + +msgid "Configure routing etc/hosts file, if you don't know what you are doing, please don't change the content." +msgstr "配置路由etc/hosts文件,如果你不知道自己在做什么,请不要改动内容。" + +msgid "These had been joined ip addresses will be block. Please input the ip address or ip address segment, every line can input only one ip address." +msgstr "加入的IP段将屏蔽。可输入IP地址或地址段,每个地址段一行。" + +msgid "Not valid domain name, please re-enter!" +msgstr "不是有效域名,请重新输入!" + +msgid "Not valid IP format, please re-enter!" +msgstr "不是有效IP格式,请重新输入!" + +msgid "Not valid IPv4 format, please re-enter!" +msgstr "不是有效IPv4格式,请重新输入!" + +msgid "Not valid IPv6 format, please re-enter!" +msgstr "不是有效IPv6格式,请重新输入!" + +msgid "Not true format, please re-enter!" +msgstr "不是正确的格式,请重新输入!" + +msgid "Plaintext: If this string matches any part of the targeting domain, this rule takes effet. Example: rule 'sina.com' matches targeting domain 'sina.com', 'sina.com.cn' and 'www.sina.com', but not 'sina.cn'." +msgstr "纯字符串: 当此字符串匹配目标域名中任意部分,该规则生效。比如'sina.com'可以匹配'sina.com'、'sina.com.cn'和'www.sina.com',但不匹配'sina.cn'。" + +msgid "Regular expression: Begining with 'regexp:', the rest is a regular expression. When the regexp matches targeting domain, this rule takes effect. Example: rule 'regexp:\\.goo.*\\.com$' matches 'www.google.com' and 'fonts.googleapis.com', but not 'google.com'." +msgstr "正则表达式: 由'regexp:'开始,余下部分是一个正则表达式。当此正则表达式匹配目标域名时,该规则生效。例如'regexp:\\.goo.*\\.com$'匹配'www.google.com'、'fonts.googleapis.com',但不匹配'google.com'。" + +msgid "Subdomain (recommended): Begining with 'domain:' and the rest is a domain. When the targeting domain is exactly the value, or is a subdomain of the value, this rule takes effect. Example: rule 'domain:v2ray.com' matches 'www.v2ray.com', 'v2ray.com', but not 'xv2ray.com'." +msgstr "子域名 (推荐): 由'domain:'开始,余下部分是一个域名。当此域名是目标域名或其子域名时,该规则生效。例如'domain:v2ray.com'匹配'www.v2ray.com'、'v2ray.com',但不匹配'xv2ray.com'。" + +msgid "Full domain: Begining with 'full:' and the rest is a domain. When the targeting domain is exactly the value, the rule takes effect. Example: rule 'domain:v2ray.com' matches 'v2ray.com', but not 'www.v2ray.com'." +msgstr "完整匹配: 由'full:'开始,余下部分是一个域名。当此域名完整匹配目标域名时,该规则生效。例如'full:v2ray.com'匹配'v2ray.com'但不匹配'www.v2ray.com'。" + +msgid "Pre-defined domain list: Begining with 'geosite:' and the rest is a name, such as geosite:google or geosite:cn." +msgstr "预定义域名列表:由'geosite:'开头,余下部分是一个名称,如geosite:google或者geosite:cn。" + +msgid "Domains from file: Such as 'ext:file:tag'. The value must begin with ext: (lowercase), and followed by filename and tag. The file is placed in resource directory, and has the same format of geosite.dat. The tag must exist in the file." +msgstr "从文件中加载域名: 形如'ext:file:tag',必须以ext:(小写)开头,后面跟文件名和标签,文件存放在资源目录中,文件格式与geosite.dat相同,标签必须在文件中存在。" + +msgid "IP: such as '127.0.0.1'." +msgstr "IP: 形如'127.0.0.1'。" + +msgid "CIDR: such as '127.0.0.0/8'." +msgstr "CIDR: 形如'10.0.0.0/8'." + +msgid "GeoIP: such as 'geoip:cn'. It begins with geoip: (lower case) and followed by two letter of country code." +msgstr "GeoIP: 形如'geoip:cn',必须以geoip:(小写)开头,后面跟双字符国家代码,支持几乎所有可以上网的国家。" + +msgid "IPs from file: Such as 'ext:file:tag'. The value must begin with ext: (lowercase), and followed by filename and tag. The file is placed in resource directory, and has the same format of geoip.dat. The tag must exist in the file." +msgstr "从文件中加载 IP: 形如'ext:file:tag',必须以ext:(小写)开头,后面跟文件名和标签,文件存放在资源目录中,文件格式与geoip.dat相同标签必须在文件中存在。" + +msgid "Clear logs" +msgstr "清空日志" + +msgid "Need node support required" +msgstr "需要节点支持" + +msgid "Password" +msgstr "密码" + +msgid "IV Check" +msgstr "IV 检查" + +msgid "Connection Timeout" +msgstr "连接超时时间" + +msgid "Local Port" +msgstr "本地端口" + +msgid "TCP Fast Open" +msgstr "TCP快速打开" + +msgid "Need node support required" +msgstr "需要节点支持" + +msgid "plugin" +msgstr "插件" + +msgid "opts" +msgstr "插件选项" + +msgid "Protocol" +msgstr "协议名称" + +msgid "Protocol_param" +msgstr "协议参数" + +msgid "Obfs" +msgstr "混淆" + +msgid "Obfs_param" +msgstr "混淆参数" + +msgid "Plugin Name" +msgstr "插件名称" + +msgid "Plugin Arguments" +msgstr "插件参数" + +msgid "Brook Protocol" +msgstr "Brook协议" + +msgid "Use TLS" +msgstr "使用TLS" + +msgid "Naiveproxy Protocol" +msgstr "Naiveproxy协议" + +msgid "V2ray Protocol" +msgstr "V2ray协议" + +msgid "User Level" +msgstr "用户等级(level)" + +msgid "Transport" +msgstr "传输方式" + +msgid "Camouflage Type" +msgstr "伪装类型" + +msgid "Transport Layer Encryption" +msgstr "传输层加密" + +msgid "Whether or not transport layer encryption is enabled, \"none\" for unencrypted, \"tls\" for using TLS, \"xtls\" for using XTLS." +msgstr "是否启入传输层加密,支持的选项有 \"none\" 表示不加密,\"tls\" 表示使用 TLS,\"xtls\" 表示使用 XTLS。" + +msgid "Original Trojan only supported 'tls', please choose 'tls'." +msgstr "原版Trojan只支持'tls',请选择'tls'。" + +msgid "Transfer mode" +msgstr "传输模式" + +msgid "Domain" +msgstr "域名" + +msgid "allowInsecure" +msgstr "允许不安全连接" + +msgid "Whether unsafe connections are allowed. When checked, Certificate validation will be skipped." +msgstr "是否允许不安全连接。当勾选时,将跳过证书验证。" + +msgid "SS AEAD Node Use Type" +msgstr "SS AEAD节点使用类型" + +msgid "Trojan Node Use Type" +msgstr "Trojan节点使用类型" + +msgid "
none: default, no masquerade, data sent is packets with no characteristics.
srtp: disguised as an SRTP packet, it will be recognized as video call data (such as FaceTime).
utp: packets disguised as uTP will be recognized as bittorrent downloaded data.
wechat-video: packets disguised as WeChat video calls.
dtls: disguised as DTLS 1.2 packet.
wireguard: disguised as a WireGuard packet. (not really WireGuard protocol)" +msgstr "
none:默认值,不进行伪装,发送的数据是没有特征的数据包。
srtp:伪装成 SRTP 数据包,会被识别为视频通话数据(如 FaceTime)。
utp:伪装成 uTP 数据包,会被识别为 BT 下载数据。
wechat-video:伪装成微信视频通话的数据包。
dtls:伪装成 DTLS 1.2 数据包。
wireguard:伪装成 WireGuard 数据包。(并不是真正的 WireGuard 协议)" + +msgid "A legal file path. This file must not exist before running." +msgstr "一个合法的文件路径。在运行之前,这个文件必须不存在。" + +msgid "Auth" +msgstr "身份认证" + +msgid "Socks for authentication" +msgstr "Socks认证方式" + +msgid "Socks protocol authentication, support anonymous and password." +msgstr "Socks 协议的认证方式,支持匿名方式和账号密码方式。" + +msgid "anonymous" +msgstr "匿名" + +msgid "User Password" +msgstr "账号密码" + +msgid "Username and Password must be used together!" +msgstr "账号和密码必须同时使用!" + +msgid "Node Number" +msgstr "节点数量" + +msgid "You can only set up a maximum of %s nodes for the time being, Used for access control." +msgstr "目前最多只能设置%s个节点,用于给访问控制使用。" + +msgid "IPv6 TProxy" +msgstr "IPv6透明代理(TProxy)" + +msgid "Experimental feature. Make sure that your node supports IPv6." +msgstr "实验特性,请确保你的节点支持IPv6" + +msgid "Status info" +msgstr "状态信息" + +msgid "Big icon" +msgstr "大图标" + +msgid "Show node check" +msgstr "显示节点检测" + +msgid "Show Show IP111" +msgstr "显示IP111" + +msgid "The MTProto protocol must be 32 characters and can only contain characters from 0 to 9 and a to f." +msgstr "MTProto 协议必须为 32 个字符,仅可包含 0 到 9 和 a 到 f 之间的字符。" + +msgid "Destination protocol" +msgstr "目标协议" + +msgid "Destination address" +msgstr "目标地址" + +msgid "Destination port" +msgstr "目标端口" + +msgid "Whether to receive PROXY protocol, when this node want to be fallback or forwarded by proxy, it must be enable, otherwise it cannot be used." +msgstr "是否接收 PROXY protocol,当该节点要被回落或被代理转发时,必须启用,否则不能使用。" + +msgid "transit node" +msgstr "中转到此节点" + +msgid "Custom Socks" +msgstr "自定义 Socks" + +msgid "Custom HTTP" +msgstr "自定义 HTTP" + +msgid "Bind Local" +msgstr "本机监听" + +msgid "When selected, it can only be accessed locally, It is recommended to turn on when using reverse proxies or be fallback." +msgstr "当勾选时,只能由本机访问此端口,当想被反向代理或被回落时建议勾选此项。" + +msgid "Accept LAN Access" +msgstr "接受局域网访问" + +msgid "When selected, it can accessed lan , this will not be safe!" +msgstr "当勾选时,可以直接访问局域网,这将不安全!(非特殊情况不建议开启)" + +msgid "Enable Remote" +msgstr "启用转发" + +msgid "You can forward to Nginx/Caddy/V2ray/Xray WebSocket and more." +msgstr "您可以转发到Nginx/Caddy/V2ray/Xray WebSocket等。" + +msgid "Remote Address" +msgstr "远程地址" + +msgid "Remote Port" +msgstr "远程端口" + +msgid "as:" +msgstr "如:" + +msgid "Public key absolute path" +msgstr "公钥文件绝对路径" + +msgid "Private key absolute path" +msgstr "私钥文件绝对路径" + +msgid "Can't find this file!" +msgstr "找不到这个文件!" + +msgid "Public key and Private key path can not be empty!" +msgstr "公钥和私钥文件路径不能为空!" + +msgid "Server-Side" +msgstr "服务器端" + +msgid "Server Config" +msgstr "服务器配置" + +msgid "Users Manager" +msgstr "用户管理" + +msgid "Logs" +msgstr "日志" + +msgid "Log" +msgstr "日志" + +msgid "%s Node Log Close" +msgstr "%s 节点日志关闭" + +msgid "Log Level" +msgstr "日志等级" + +msgid "Not enabled log" +msgstr "未启用日志" + +msgid "UDP Forward" +msgstr "UDP转发" + +msgid "DNS Settings" +msgstr "DNS设置" + +msgid "Null" +msgstr "无" + +msgid "You did not fill in the %s path. Please save and apply then update manually." +msgstr "您没有填写 %s 路径。请保存应用后再手动更新。" + +msgid "Not installed unzip, Can't unzip!" +msgstr "未安装unzip,无法解压。" + +msgid "Can't determine ARCH, or ARCH not supported." +msgstr "无法确认ARCH架构,或是不支持。" + +msgid "Get remote version info failed." +msgstr "获取远程版本信息失败。" + +msgid "New version found, but failed to get new version download url." +msgstr "发现新版本,但未能获得新版本的下载地址。" + +msgid "Download url is required." +msgstr "请指定下载地址。" + +msgid "File download failed or timed out: %s" +msgstr "文件下载失败或超时:%s" + +msgid "File path required." +msgstr "请指定文件路径。" + +msgid "%s not enough space." +msgstr "%s 空间不足。" + +msgid "Can't find client in file: %s" +msgstr "无法在文件中找到客户端:%s" + +msgid "Client file is required." +msgstr "请指定客户端文件。" + +msgid "The client file is not suitable for current device." +msgstr "客户端文件不适合当前设备。" + +msgid "Can't move new file to path: %s" +msgstr "无法移动新文件到:%s" + +msgid "Mux concurrency" +msgstr "最大并发连接数" + +msgid "Mux idle timeout" +msgstr "最大闲置时间" + +msgid "Enable early data" +msgstr "启用前置数据" + +msgid "Early data length" +msgstr "前置数据最大长度" + +msgid "Health check" +msgstr "健康检查" + +msgid "Idle timeout" +msgstr "闲置时间" + +msgid "Health check timeout" +msgstr "检查超时时间" + +msgid "Permit without stream" +msgstr "无子连接时的健康检查" + +msgid "Initial Windows Size" +msgstr "初始窗口大小" + +msgid "No Sniffing Lists" +msgstr "不进行流量嗅探的域名列表" + +msgid "Hosts added into No Sniffing Lists will not resolve again on server (Xray only)." +msgstr "加入的域名不会再次在服务器解析(仅适用于Xray)。" diff --git a/luci-app-passwall/po/zh_Hans b/luci-app-passwall/po/zh_Hans new file mode 120000 index 000000000..41451e4a1 --- /dev/null +++ b/luci-app-passwall/po/zh_Hans @@ -0,0 +1 @@ +zh-cn \ No newline at end of file diff --git a/luci-app-passwall/root/etc/config/passwall_server b/luci-app-passwall/root/etc/config/passwall_server new file mode 100644 index 000000000..c9526cb28 --- /dev/null +++ b/luci-app-passwall/root/etc/config/passwall_server @@ -0,0 +1,4 @@ + +config global 'global' + option enable '0' + diff --git a/luci-app-passwall/root/etc/init.d/passwall b/luci-app-passwall/root/etc/init.d/passwall new file mode 100755 index 000000000..0767a5021 --- /dev/null +++ b/luci-app-passwall/root/etc/init.d/passwall @@ -0,0 +1,80 @@ +#!/bin/sh /etc/rc.common + +START=99 +STOP=15 + +CONFIG=passwall +APP_FILE=/usr/share/${CONFIG}/app.sh +LOCK_FILE_DIR=/var/lock +LOCK_FILE=${LOCK_FILE_DIR}/${CONFIG}.lock + +set_lock() { + [ ! -d "$LOCK_FILE_DIR" ] && mkdir -p $LOCK_FILE_DIR + exec 999>"$LOCK_FILE" + flock -xn 999 +} + +unset_lock() { + flock -u 999 + rm -rf "$LOCK_FILE" +} + +unlock() { + failcount=1 + while [ "$failcount" -le 10 ]; do + if [ -f "$LOCK_FILE" ]; then + let "failcount++" + sleep 1s + [ "$failcount" -ge 10 ] && unset_lock + else + break + fi + done +} + +boot() { + $APP_FILE boot +} + +start() { + set_lock + [ $? == 1 ] && $APP_FILE echolog "脚本已经在运行,不重复运行,退出." && exit 0 + $APP_FILE start + unset_lock +} + +stop() { + unlock + set_lock + [ $? == 1 ] && $APP_FILE echolog "停止脚本等待超时,不重复运行,退出." && exit 0 + $APP_FILE stop + unset_lock +} + +restart() { + set_lock + [ $? == 1 ] && $APP_FILE echolog "脚本已经在运行,不重复运行,退出." && exit 0 + $APP_FILE stop + $APP_FILE start + unset_lock +} + +disable() { + rm -f "$IPKG_INSTROOT"/etc/rc.d/S??zzz_${CONFIG} + rm -f "$IPKG_INSTROOT"/etc/rc.d/K??zzz_${CONFIG} +} + +enable() { + err=1 + [ "$START" ] && \ + ln -sf "../init.d/${CONFIG}" "$IPKG_INSTROOT/etc/rc.d/S${START}zzz_${CONFIG}" && \ + err=0 + [ "$STOP" ] && \ + ln -sf "../init.d/${CONFIG}" "$IPKG_INSTROOT/etc/rc.d/K${STOP}zzz_${CONFIG}" && \ + err=0 + return $err +} + +enabled() { + [ -x "$IPKG_INSTROOT/etc/rc.d/S${START}zzz_${CONFIG}" ] +} diff --git a/luci-app-passwall/root/etc/init.d/passwall_server b/luci-app-passwall/root/etc/init.d/passwall_server new file mode 100755 index 000000000..08bc76467 --- /dev/null +++ b/luci-app-passwall/root/etc/init.d/passwall_server @@ -0,0 +1,16 @@ +#!/bin/sh /etc/rc.common + +START=99 + +start() { + lua /usr/lib/lua/luci/model/cbi/passwall/server/api/app.lua start +} + +stop() { + lua /usr/lib/lua/luci/model/cbi/passwall/server/api/app.lua stop +} + +restart() { + stop + start +} \ No newline at end of file diff --git a/luci-app-passwall/root/etc/uci-defaults/luci-passwall b/luci-app-passwall/root/etc/uci-defaults/luci-passwall new file mode 100755 index 000000000..cc39c00a2 --- /dev/null +++ b/luci-app-passwall/root/etc/uci-defaults/luci-passwall @@ -0,0 +1,35 @@ +#!/bin/sh + +uci -q batch <<-EOF >/dev/null + set dhcp.@dnsmasq[0].localuse=1 + commit dhcp + delete ucitrack.@passwall[-1] + add ucitrack passwall + set ucitrack.@passwall[-1].init=passwall + commit ucitrack + delete firewall.passwall + set firewall.passwall=include + set firewall.passwall.type=script + set firewall.passwall.path=/var/etc/passwall.include + set firewall.passwall.reload=1 + commit firewall + delete ucitrack.@passwall_server[-1] + add ucitrack passwall_server + set ucitrack.@passwall_server[-1].init=passwall_server + commit ucitrack + delete firewall.passwall_server + set firewall.passwall_server=include + set firewall.passwall_server.type=script + set firewall.passwall_server.path=/var/etc/passwall_server.include + set firewall.passwall_server.reload=1 + commit firewall + set uhttpd.main.max_requests=50 + commit uhttpd +EOF + +[ ! -s "/etc/config/passwall" ] && cp -f /usr/share/passwall/0_default_config /etc/config/passwall +touch /etc/config/passwall_show >/dev/null 2>&1 +rm -f /tmp/luci-indexcache +rm -rf /tmp/luci-modulecache/ +killall -HUP rpcd 2>/dev/null +exit 0 diff --git a/luci-app-passwall/root/usr/share/passwall/0_default_config b/luci-app-passwall/root/usr/share/passwall/0_default_config new file mode 100644 index 000000000..5fafa19c5 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/0_default_config @@ -0,0 +1,156 @@ + +config global + option enabled '0' + option socks_enabled '0' + option tcp_node 'nil' + option udp_node 'nil' + option dns_mode 'pdnsd' + option dns_forward '1.1.1.1' + option filter_proxy_ipv6 '0' + option tcp_proxy_mode 'chnroute' + option udp_proxy_mode 'chnroute' + option localhost_tcp_proxy_mode 'default' + option localhost_udp_proxy_mode 'default' + option close_log_tcp '0' + option close_log_udp '0' + option loglevel 'error' + option trojan_loglevel '4' + +config global_haproxy + option balancing_enable '0' + +config global_delay + option auto_on '0' + option start_daemon '1' + option start_delay '1' + +config global_forwarding + option process '0' + option tcp_no_redir_ports 'disable' + option udp_no_redir_ports '53' + option tcp_proxy_drop_ports 'disable' + option udp_proxy_drop_ports '80,443' + option tcp_redir_ports '22,25,53,143,465,587,853,993,995,80,443' + option udp_redir_ports '1:65535' + option accept_icmp '0' + option tcp_proxy_way 'redirect' + option ipv6_tproxy '0' + option sniffing '1' + option route_only '0' + +config global_other + option nodes_ping 'auto_ping tcping' + +config global_rules + option auto_update '0' + option chnlist_update '1' + option chnroute_update '1' + option chnroute6_update '1' + option gfwlist_update '1' + option geosite_update '0' + option geoip_update '0' + list gfwlist_url 'https://raw.cooluc.com/YW5vbnltb3Vz/domain-list-community/release/gfwlist.txt' + list chnroute_url 'https://ispip.clang.cn/all_cn.txt' + list chnroute6_url 'https://ispip.clang.cn/all_cn_ipv6.txt' + list chnlist_url 'https://raw.cooluc.com/felixonmars/dnsmasq-china-list/master/accelerated-domains.china.conf' + list chnlist_url 'https://raw.cooluc.com/felixonmars/dnsmasq-china-list/master/apple.china.conf' + list chnlist_url 'https://raw.cooluc.com/felixonmars/dnsmasq-china-list/master/google.china.conf' + option v2ray_location_asset '/usr/share/v2ray/' + +config global_app + option v2ray_file '/usr/bin/v2ray' + option xray_file '/usr/bin/xray' + option trojan_go_file '/usr/bin/trojan-go' + option brook_file '/usr/bin/brook' + option hysteria_file '/usr/bin/hysteria' + +config global_subscribe + option subscribe_proxy '0' + option filter_keyword_mode '1' + list filter_discard_list '过期时间' + list filter_discard_list '剩余流量' + list filter_discard_list 'QQ群' + list filter_discard_list '官网' + +config auto_switch + option enable '0' + option testing_time '1' + option connect_timeout '3' + option retry_num '3' + option shunt_logic '1' + +config nodes 'myshunt' + option remarks '分流总节点' + option type 'Xray' + option protocol '_shunt' + option AD 'nil' + option BT '_direct' + option Telegram 'nil' + option Netflix 'nil' + option TVB 'nil' + option Cloudflare 'nil' + option Github 'nil' + option Apple 'nil' + option China 'nil' + option default_node 'nil' + option domainStrategy 'IPOnDemand' + +config shunt_rules 'AD' + option remarks 'AD' + option domain_list 'geosite:category-ads-all' + +config shunt_rules 'BT' + option remarks 'BT' + option protocol 'bittorrent' + +config shunt_rules 'Telegram' + option remarks 'Telegram' + option ip_list 'geoip:telegram' + +config shunt_rules 'Netflix' + option remarks 'Netflix' + option domain_list 'fast.com +netflix +netflix.com +netflix.net +nflxso.net +nflxext.com +nflximg.com +nflximg.net +nflxvideo.net +netflixdnstest0.com +netflixdnstest1.com +netflixdnstest2.com +netflixdnstest3.com +netflixdnstest4.com +netflixdnstest5.com +netflixdnstest6.com +netflixdnstest7.com +netflixdnstest8.com +netflixdnstest9.com' + option ip_list 'geoip:netflix' + +config shunt_rules 'TVB' + option remarks 'TVB' + option domain_list 'tvb.com +mytvsuper.com' + +config shunt_rules 'Github' + option remarks 'Github' + option domain_list 'github.com +github.io +githubusercontent.com' + +config shunt_rules 'Cloudflare' + option remarks 'Cloudflare' + option ip_list 'geoip:cloudflare' + +config shunt_rules 'Apple' + option remarks 'Apple' + option domain_list 'geosite:apple-cn' + option ip_list '17.0.0.0/8' + +config shunt_rules 'China' + option remarks 'China' + option domain_list 'geosite:cn' + option ip_list 'geoip:cn' diff --git a/luci-app-passwall/root/usr/share/passwall/app.sh b/luci-app-passwall/root/usr/share/passwall/app.sh new file mode 100755 index 000000000..d2909639f --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/app.sh @@ -0,0 +1,1529 @@ +#!/bin/sh +# Copyright (C) 2018-2020 L-WRT Team +# Copyright (C) 2021-2022 xiaorouji + +. $IPKG_INSTROOT/lib/functions.sh +. $IPKG_INSTROOT/lib/functions/service.sh + +CONFIG=passwall +TMP_PATH=/tmp/etc/$CONFIG +TMP_BIN_PATH=$TMP_PATH/bin +TMP_SCRIPT_FUNC_PATH=$TMP_PATH/script_func +TMP_ID_PATH=$TMP_PATH/id +TMP_PORT_PATH=$TMP_PATH/port +TMP_ROUTE_PATH=$TMP_PATH/route +TMP_ACL_PATH=$TMP_PATH/acl +TMP_PATH2=/tmp/etc/${CONFIG}_tmp +DNSMASQ_PATH=/etc/dnsmasq.d +TMP_DNSMASQ_PATH=/tmp/dnsmasq.d/passwall +LOG_FILE=/tmp/log/$CONFIG.log +APP_PATH=/usr/share/$CONFIG +RULES_PATH=/usr/share/${CONFIG}/rules +DNS_N=dnsmasq +DNS_PORT=7913 +TUN_DNS="127.0.0.1#${DNS_PORT}" +LOCAL_DNS=119.29.29.29 +DEFAULT_DNS= +NO_PROXY=0 +PROXY_IPV6=0 +PROXY_IPV6_UDP=0 +resolve_dns=0 +use_tcp_node_resolve_dns=0 +use_udp_node_resolve_dns=0 +LUA_API_PATH=/usr/lib/lua/luci/model/cbi/$CONFIG/api +API_GEN_SS=$LUA_API_PATH/gen_shadowsocks.lua +API_GEN_V2RAY=$LUA_API_PATH/gen_v2ray.lua +API_GEN_V2RAY_PROTO=$LUA_API_PATH/gen_v2ray_proto.lua +API_GEN_TROJAN=$LUA_API_PATH/gen_trojan.lua +API_GEN_NAIVE=$LUA_API_PATH/gen_naiveproxy.lua +API_GEN_HYSTERIA=$LUA_API_PATH/gen_hysteria.lua + +echolog() { + local d="$(date "+%Y-%m-%d %H:%M:%S")" + echo -e "$d: $*" >>$LOG_FILE +} + +config_get_type() { + local ret=$(uci -q get "${CONFIG}.${1}" 2>/dev/null) + echo "${ret:=$2}" +} + +config_n_get() { + local ret=$(uci -q get "${CONFIG}.${1}.${2}" 2>/dev/null) + echo "${ret:=$3}" +} + +config_t_get() { + local index=${4:-0} + local ret=$(uci -q get "${CONFIG}.@${1}[${index}].${2}" 2>/dev/null) + echo "${ret:=${3}}" +} + +get_enabled_anonymous_secs() { + uci -q show "${CONFIG}" | grep "${1}\[.*\.enabled='1'" | cut -d '.' -sf2 +} + +get_host_ip() { + local host=$2 + local count=$3 + [ -z "$count" ] && count=3 + local isip="" + local ip=$host + if [ "$1" == "ipv6" ]; then + isip=$(echo $host | grep -E "([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4}") + if [ -n "$isip" ]; then + isip=$(echo $host | cut -d '[' -f2 | cut -d ']' -f1) + else + isip=$(echo $host | grep -E "([0-9]{1,3}[\.]){3}[0-9]{1,3}") + fi + else + isip=$(echo $host | grep -E "([0-9]{1,3}[\.]){3}[0-9]{1,3}") + fi + [ -z "$isip" ] && { + local t=4 + [ "$1" == "ipv6" ] && t=6 + local vpsrip=$(resolveip -$t -t $count $host | awk 'NR==1{print}') + ip=$vpsrip + } + echo $ip +} + +get_node_host_ip() { + local ip + local address=$(config_n_get $1 address) + [ -n "$address" ] && { + local use_ipv6=$(config_n_get $1 use_ipv6) + local network_type="ipv4" + [ "$use_ipv6" == "1" ] && network_type="ipv6" + ip=$(get_host_ip $network_type $address) + } + echo $ip +} + +get_ip_port_from() { + local __host=${1}; shift 1 + local __ipv=${1}; shift 1 + local __portv=${1}; shift 1 + local __ucipriority=${1}; shift 1 + + local val1 val2 + if [ -n "${__ucipriority}" ]; then + val2=$(config_n_get ${__host} port $(echo $__host | sed -n 's/^.*[:#]\([0-9]*\)$/\1/p')) + val1=$(config_n_get ${__host} address "${__host%%${val2:+[:#]${val2}*}}") + else + val2=$(echo $__host | sed -n 's/^.*[:#]\([0-9]*\)$/\1/p') + val1="${__host%%${val2:+[:#]${val2}*}}" + fi + eval "${__ipv}=\"$val1\"; ${__portv}=\"$val2\"" +} + +host_from_url(){ + local f=${1} + + ## Remove protocol part of url ## + f="${f##http://}" + f="${f##https://}" + f="${f##ftp://}" + f="${f##sftp://}" + + ## Remove username and/or username:password part of URL ## + f="${f##*:*@}" + f="${f##*@}" + + ## Remove rest of urls ## + f="${f%%/*}" + echo "${f%%:*}" +} + +hosts_foreach() { + local __hosts + eval "__hosts=\$${1}"; shift 1 + local __func=${1}; shift 1 + local __default_port=${1}; shift 1 + local __ret=1 + + [ -z "${__hosts}" ] && return 0 + local __ip __port + for __host in $(echo $__hosts | sed 's/[ ,]/\n/g'); do + get_ip_port_from "$__host" "__ip" "__port" + eval "$__func \"${__host}\" \"\${__ip}\" \"\${__port:-${__default_port}}\" \"$@\"" + __ret=$? + [ ${__ret} -ge ${ERROR_NO_CATCH:-1} ] && return ${__ret} + done +} + +check_host() { + local f=${1} + a=$(echo $f | grep "\/") + [ -n "$a" ] && return 1 + # 判断是否包含汉字~ + local tmp=$(echo -n $f | awk '{print gensub(/[!-~]/,"","g",$0)}') + [ -n "$tmp" ] && return 1 + return 0 +} + +get_first_dns() { + local __hosts_val=${1}; shift 1 + __first() { + [ -z "${2}" ] && return 0 + echo "${2}#${3}" + return 1 + } + eval "hosts_foreach \"${__hosts_val}\" __first \"$@\"" +} + +get_last_dns() { + local __hosts_val=${1}; shift 1 + local __first __last + __every() { + [ -z "${2}" ] && return 0 + __last="${2}#${3}" + __first=${__first:-${__last}} + } + eval "hosts_foreach \"${__hosts_val}\" __every \"$@\"" + [ "${__first}" == "${__last}" ] || echo "${__last}" +} + +check_port_exists() { + port=$1 + protocol=$2 + [ -n "$protocol" ] || protocol="tcp,udp" + result= + if [ "$protocol" = "tcp" ]; then + result=$(netstat -tln | grep -c ":$port ") + elif [ "$protocol" = "udp" ]; then + result=$(netstat -uln | grep -c ":$port ") + elif [ "$protocol" = "tcp,udp" ]; then + result=$(netstat -tuln | grep -c ":$port ") + fi + echo "${result}" +} + +get_new_port() { + port=$1 + [ "$port" == "auto" ] && port=2082 + protocol=$(echo $2 | tr 'A-Z' 'a-z') + result=$(check_port_exists $port $protocol) + if [ "$result" != 0 ]; then + temp= + if [ "$port" -lt 65535 ]; then + temp=$(expr $port + 1) + elif [ "$port" -gt 1 ]; then + temp=$(expr $port - 1) + fi + get_new_port $temp $protocol + else + echo $port + fi +} + +first_type() { + local path_name=${1} + type -t -p "/bin/${path_name}" -p "${TMP_BIN_PATH}/${path_name}" -p "${path_name}" "$@" | head -n1 +} + +eval_set_val() { + for i in $@; do + for j in $i; do + eval $j + done + done +} + +eval_unset_val() { + for i in $@; do + for j in $i; do + eval unset j + done + done +} + +ln_run() { + local file_func=${1} + local ln_name=${2} + local output=${3} + + shift 3; + if [ "${file_func%%/*}" != "${file_func}" ]; then + [ ! -L "${file_func}" ] && { + ln -s "${file_func}" "${TMP_BIN_PATH}/${ln_name}" >/dev/null 2>&1 + file_func="${TMP_BIN_PATH}/${ln_name}" + } + [ -x "${file_func}" ] || echolog " - $(readlink ${file_func}) 没有执行权限,无法启动:${file_func} $*" + fi + #echo "${file_func} $*" >&2 + [ -n "${file_func}" ] || echolog " - 找不到 ${ln_name},无法启动..." + ${file_func:-echolog " - ${ln_name}"} "$@" >${output} 2>&1 & + process_count=$(ls $TMP_SCRIPT_FUNC_PATH | wc -l) + process_count=$((process_count + 1)) + echo "${file_func:-echolog " - ${ln_name}"} $@ >${output}" > $TMP_SCRIPT_FUNC_PATH/$process_count +} + +lua_api() { + local func=${1} + [ -z "${func}" ] && { + echo "nil" + return + } + echo $(lua -e "local api = require 'luci.model.cbi.passwall.api.api' print(api.${func})") +} + +run_ipt2socks() { + local flag proto tcp_tproxy local_port socks_address socks_port socks_username socks_password log_file + local _extra_param="" + eval_set_val $@ + [ -n "$log_file" ] || log_file="/dev/null" + socks_address=$(get_host_ip "ipv4" ${socks_address}) + [ -n "$socks_username" ] && [ -n "$socks_password" ] && _extra_param="${_extra_param} -a $socks_username -k $socks_password" + [ -n "$tcp_tproxy" ] || _extra_param="${_extra_param} -R" + case "$proto" in + UDP) + flag="${flag}_UDP" + _extra_param="${_extra_param} -U" + ;; + TCP) + flag="${flag}_TCP" + _extra_param="${_extra_param} -T" + ;; + esac + _extra_param="${_extra_param} -v" + ln_run "$(first_type ipt2socks)" "ipt2socks_${flag}" $log_file -l $local_port -b 0.0.0.0 -s $socks_address -p $socks_port ${_extra_param} +} + +run_v2ray() { + local flag type node tcp_redir_port udp_redir_port socks_address socks_port socks_username socks_password http_address http_port http_username http_password dns_socks_address dns_socks_port dns_listen_port dns_proto dns_tcp_server doh dns_client_ip dns_query_strategy dns_cache loglevel log_file config_file + local _extra_param="" + eval_set_val $@ + [ -z "$type" ] && { + local type=$(echo $(config_n_get $node type) | tr 'A-Z' 'a-z') + if [ "$type" != "v2ray" ] && [ "$type" != "xray" ]; then + local bin=$(first_type $(config_t_get global_app v2ray_file) v2ray) + if [ -n "$bin" ]; then + type="v2ray" + else + bin=$(first_type $(config_t_get global_app xray_file) xray) + [ -n "$bin" ] && type="xray" + fi + fi + } + [ -z "$type" ] && return 1 + [ -n "$log_file" ] || local log_file="/dev/null" + [ -z "$loglevel" ] && local loglevel=$(config_t_get global loglevel "warning") + [ -n "$flag" ] && _extra_param="${_extra_param} -flag $flag" + [ -n "$node" ] && _extra_param="${_extra_param} -node $node" + [ -n "$tcp_redir_port" ] && _extra_param="${_extra_param} -tcp_redir_port $tcp_redir_port" + [ -n "$udp_redir_port" ] && _extra_param="${_extra_param} -udp_redir_port $udp_redir_port" + [ -n "$socks_address" ] && _extra_param="${_extra_param} -local_socks_address $socks_address" + [ -n "$socks_port" ] && _extra_param="${_extra_param} -local_socks_port $socks_port" + [ -n "$socks_username" ] && [ -n "$socks_password" ] && _extra_param="${_extra_param} -local_socks_username $socks_username -local_socks_password $socks_password" + [ -n "$http_address" ] && _extra_param="${_extra_param} -local_http_address $http_address" + [ -n "$http_port" ] && _extra_param="${_extra_param} -local_http_port $http_port" + [ -n "$http_username" ] && [ -n "$http_password" ] && _extra_param="${_extra_param} -local_http_username $http_username -local_http_password $http_password" + [ -n "$dns_socks_address" ] && [ -n "$dns_socks_port" ] && _extra_param="${_extra_param} -dns_socks_address ${dns_socks_address} -dns_socks_port ${dns_socks_port}" + [ -n "$dns_listen_port" ] && _extra_param="${_extra_param} -dns_listen_port ${dns_listen_port}" + [ -n "$dns_query_strategy" ] && _extra_param="${_extra_param} -dns_query_strategy ${dns_query_strategy}" + [ -n "$dns_client_ip" ] && _extra_param="${_extra_param} -dns_client_ip ${dns_client_ip}" + [ -n "$dns_cache" ] && _extra_param="${_extra_param} -dns_cache ${dns_cache}" + local sniffing=$(config_t_get global_forwarding sniffing 1) + [ "${sniffing}" = "1" ] && { + _extra_param="${_extra_param} -sniffing 1" + local route_only=$(config_t_get global_forwarding route_only 0) + [ "${route_only}" = "1" ] && _extra_param="${_extra_param} -route_only 1" + } + case "$dns_proto" in + tcp) + local _dns_forward=$(get_first_dns dns_tcp_server 53 | sed 's/#/:/g') + local _dns_address=$(echo ${_dns_forward} | awk -F ':' '{print $1}') + _extra_param="${_extra_param} -dns_server ${_dns_address} -dns_tcp_server tcp://${_dns_forward}" + ;; + doh) + local _doh_url=$(echo $doh | awk -F ',' '{print $1}') + local _doh_host_port=$(echo $_doh_url | sed "s/https:\/\///g" | awk -F '/' '{print $1}') + local _doh_host=$(echo $_doh_host_port | awk -F ':' '{print $1}') + local _doh_port=$(echo $_doh_host_port | awk -F ':' '{print $2}') + local _doh_bootstrap=$(echo $doh | cut -d ',' -sf 2-) + _extra_param="${_extra_param} -dns_server ${_doh_bootstrap} -doh_url ${_doh_url} -doh_host ${_doh_host}" + ;; + fakedns) + _extra_param="${_extra_param} -dns_fakedns 1" + ;; + esac + _extra_param="${_extra_param} -tcp_proxy_way $tcp_proxy_way" + _extra_param="${_extra_param} -loglevel $loglevel" + lua $API_GEN_V2RAY ${_extra_param} > $config_file + ln_run "$(first_type $(config_t_get global_app ${type}_file) ${type})" ${type} $log_file -config="$config_file" +} + +run_dns2socks() { + local flag socks socks_address socks_port socks_username socks_password listen_address listen_port dns cache log_file + local _extra_param="" + eval_set_val $@ + [ -n "$flag" ] && flag="_${flag}" + [ -n "$log_file" ] || log_file="/dev/null" + dns=$(get_first_dns dns 53 | sed 's/#/:/g') + [ -n "$socks" ] && { + socks=$(echo $socks | sed "s/#/:/g") + socks_address=$(echo $socks | awk -F ':' '{print $1}') + socks_port=$(echo $socks | awk -F ':' '{print $2}') + } + [ -n "$socks_username" ] && [ -n "$socks_password" ] && _extra_param="${_extra_param} /u $socks_username /p $socks_password" + [ -z "$cache" ] && cache=1 + [ "$cache" = "0" ] && _extra_param="${_extra_param} /d" + ln_run "$(first_type dns2socks)" "dns2socks${flag}" $log_file ${_extra_param} "${socks_address}:${socks_port}" "${dns}" "${listen_address}:${listen_port}" +} + +run_socks() { + local flag node bind socks_port config_file http_port http_config_file relay_port log_file + eval_set_val $@ + [ -n "$config_file" ] && [ -z "$(echo ${config_file} | grep $TMP_PATH)" ] && config_file=$TMP_PATH/$config_file + [ -n "$http_port" ] || http_port=0 + [ -n "$http_config_file" ] && [ -z "$(echo ${http_config_file} | grep $TMP_PATH)" ] && http_config_file=$TMP_PATH/$http_config_file + if [ -n "$log_file" ] && [ -z "$(echo ${log_file} | grep $TMP_PATH)" ]; then + log_file=$TMP_PATH/$log_file + else + log_file="/dev/null" + fi + local type=$(echo $(config_n_get $node type) | tr 'A-Z' 'a-z') + local remarks=$(config_n_get $node remarks) + local server_host=$(config_n_get $node address) + local port=$(config_n_get $node port) + [ -n "$relay_port" ] && { + server_host="127.0.0.1" + port=$relay_port + } + local error_msg tmp + + if [ -n "$server_host" ] && [ -n "$port" ]; then + check_host $server_host + [ $? != 0 ] && { + echolog " - Socks节点:[$remarks]${server_host} 是非法的服务器地址,无法启动!" + return 1 + } + tmp="${server_host}:${port}" + else + error_msg="某种原因,此 Socks 服务的相关配置已失联,启动中止!" + fi + + if ([ "$type" == "v2ray" ] || [ "$type" == "xray" ]) && ([ -n "$(config_n_get $node balancing_node)" ] || [ "$(config_n_get $node default_node)" != "_direct" -a "$(config_n_get $node default_node)" != "_blackhole" ]); then + unset error_msg + fi + + [ -n "${error_msg}" ] && { + [ "$bind" != "127.0.0.1" ] && echolog " - Socks节点:[$remarks]${tmp},启动中止 ${bind}:${socks_port} ${error_msg}" + return 1 + } + [ "$bind" != "127.0.0.1" ] && echolog " - Socks节点:[$remarks]${tmp},启动 ${bind}:${socks_port}" + + case "$type" in + socks) + local bin=$(first_type $(config_t_get global_app v2ray_file) v2ray) + if [ -n "$bin" ]; then + type="v2ray" + else + bin=$(first_type $(config_t_get global_app xray_file) xray) + [ -n "$bin" ] && type="xray" + fi + [ -z "$type" ] && return 1 + local _socks_address=$(config_n_get $node address) + local _socks_port=$(config_n_get $node port) + local _socks_username=$(config_n_get $node username) + local _socks_password=$(config_n_get $node password) + [ "$http_port" != "0" ] && { + http_flag=1 + config_file=$(echo $config_file | sed "s/SOCKS/HTTP_SOCKS/g") + local _extra_param="-local_http_port $http_port" + } + lua $API_GEN_V2RAY_PROTO -local_socks_port $socks_port ${_extra_param} -server_proto socks -server_address ${_socks_address} -server_port ${_socks_port} -server_username ${_socks_username} -server_password ${_socks_password} > $config_file + ln_run "$bin" $type $log_file -config="$config_file" + ;; + v2ray|\ + xray) + [ "$http_port" != "0" ] && { + http_flag=1 + config_file=$(echo $config_file | sed "s/SOCKS/HTTP_SOCKS/g") + local _v2ray_args="http_port=$http_port" + } + run_v2ray flag=$flag node=$node socks_port=$socks_port config_file=$config_file log_file=$log_file ${_v2ray_args} + ;; + trojan-go) + lua $API_GEN_TROJAN -node $node -run_type client -local_addr $bind -local_port $socks_port -server_host $server_host -server_port $port > $config_file + ln_run "$(first_type $(config_t_get global_app trojan_go_file) trojan-go)" trojan-go $log_file -config "$config_file" + ;; + trojan*) + lua $API_GEN_TROJAN -node $node -run_type client -local_addr $bind -local_port $socks_port -server_host $server_host -server_port $port > $config_file + ln_run "$(first_type ${type})" "${type}" $log_file -c "$config_file" + ;; + naiveproxy) + lua $API_GEN_NAIVE -node $node -run_type socks -local_addr $bind -local_port $socks_port -server_host $server_host -server_port $port > $config_file + ln_run "$(first_type naive)" naive $log_file "$config_file" + ;; + brook) + local protocol=$(config_n_get $node protocol client) + local prefix="" + [ "$protocol" == "wsclient" ] && { + prefix="ws://" + local brook_tls=$(config_n_get $node brook_tls 0) + [ "$brook_tls" == "1" ] && { + prefix="wss://" + protocol="wssclient" + } + local ws_path=$(config_n_get $node ws_path "/ws") + } + server_host=${prefix}${server_host} + ln_run "$(first_type $(config_t_get global_app brook_file) brook)" "brook_SOCKS_${flag}" $log_file "$protocol" --socks5 "$bind:$socks_port" -s "${server_host}:${port}${ws_path}" -p "$(config_n_get $node password)" + ;; + ssr) + lua $API_GEN_SS -node $node -local_addr "0.0.0.0" -local_port $socks_port -server_host $server_host -server_port $port > $config_file + ln_run "$(first_type ssr-local)" "ssr-local" $log_file -c "$config_file" -v -u + ;; + ss) + lua $API_GEN_SS -node $node -local_addr "0.0.0.0" -local_port $socks_port -server_host $server_host -server_port $port -mode tcp_and_udp > $config_file + ln_run "$(first_type ss-local)" "ss-local" $log_file -c "$config_file" -v + ;; + ss-rust) + [ "$http_port" != "0" ] && { + http_flag=1 + config_file=$(echo $config_file | sed "s/SOCKS/HTTP_SOCKS/g") + local _extra_param="-local_http_port $http_port" + } + lua $API_GEN_SS -node $node -local_socks_port $socks_port -server_host $server_host -server_port $port ${_extra_param} > $config_file + ln_run "$(first_type sslocal)" "sslocal" $log_file -c "$config_file" -v + ;; + hysteria) + [ "$http_port" != "0" ] && { + http_flag=1 + config_file=$(echo $config_file | sed "s/SOCKS/HTTP_SOCKS/g") + local _extra_param="-local_http_port $http_port" + } + lua $API_GEN_HYSTERIA -node $node -local_socks_port $socks_port -server_host $server_host -server_port $port ${_extra_param} > $config_file + ln_run "$(first_type $(config_t_get global_app hysteria_file))" "hysteria" $log_file -c "$config_file" client + ;; + esac + + # http to socks + [ -z "$http_flag" ] && [ "$http_port" != "0" ] && [ -n "$http_config_file" ] && [ "$type" != "v2ray" ] && [ "$type" != "xray" ] && [ "$type" != "socks" ] && { + local bin=$(first_type $(config_t_get global_app v2ray_file) v2ray) + if [ -n "$bin" ]; then + type="v2ray" + else + bin=$(first_type $(config_t_get global_app xray_file) xray) + [ -n "$bin" ] && type="xray" + fi + [ -z "$type" ] && return 1 + lua $API_GEN_V2RAY_PROTO -local_http_port $http_port -server_proto socks -server_address "127.0.0.1" -server_port $socks_port -server_username $_username -server_password $_password > $http_config_file + ln_run "$bin" ${type} /dev/null -config="$http_config_file" + } +} + +run_redir() { + local node proto bind local_port config_file log_file + eval_set_val $@ + local tcp_node_socks_flag tcp_node_http_flag + [ -n "$config_file" ] && [ -z "$(echo ${config_file} | grep $TMP_PATH)" ] && config_file=$TMP_PATH/$config_file + if [ -n "$log_file" ] && [ -z "$(echo ${log_file} | grep $TMP_PATH)" ]; then + log_file=$TMP_PATH/$log_file + else + log_file="/dev/null" + fi + local proto=$(echo $proto | tr 'A-Z' 'a-z') + local PROTO=$(echo $proto | tr 'a-z' 'A-Z') + local type=$(echo $(config_n_get $node type) | tr 'A-Z' 'a-z') + local close_log=$(config_t_get global close_log_${proto} 1) + [ "$close_log" = "1" ] && log_file="/dev/null" + local remarks=$(config_n_get $node remarks) + local server_host=$(config_n_get $node address) + local port=$(config_n_get $node port) + [ -n "$server_host" ] && [ -n "$port" ] && { + check_host $server_host + [ $? != 0 ] && { + echolog "${PROTO}节点:[$remarks]${server_host} 是非法的服务器地址,无法启动!" + return 1 + } + [ "$bind" != "127.0.0.1" ] && echolog "${PROTO}节点:[$remarks]${server_host}:${port},监听端口:$local_port" + } + eval ${PROTO}_NODE_PORT=$port + + case "$PROTO" in + UDP) + case "$type" in + socks) + local _socks_address=$(config_n_get $node address) + _socks_address=$(get_host_ip "ipv4" ${_socks_address}) + local _socks_port=$(config_n_get $node port) + local _socks_username=$(config_n_get $node username) + local _socks_password=$(config_n_get $node password) + [ -n "${_socks_username}" ] && [ -n "${_socks_password}" ] && local _extra_param="-a ${_socks_username} -k ${_socks_password}" + ln_run "$(first_type ipt2socks)" "ipt2socks_UDP" $log_file -l $local_port -b 0.0.0.0 -s ${_socks_address} -p ${_socks_port} ${_extra_param} -U -v + ;; + v2ray|\ + xray) + run_v2ray flag=UDP node=$node udp_redir_port=$local_port config_file=$config_file log_file=$log_file + ;; + trojan-go) + local loglevel=$(config_t_get global trojan_loglevel "2") + lua $API_GEN_TROJAN -node $node -run_type nat -local_addr "0.0.0.0" -local_port $local_port -loglevel $loglevel > $config_file + ln_run "$(first_type $(config_t_get global_app trojan_go_file) trojan-go)" trojan-go $log_file -config "$config_file" + ;; + trojan*) + local loglevel=$(config_t_get global trojan_loglevel "2") + lua $API_GEN_TROJAN -node $node -run_type nat -local_addr "0.0.0.0" -local_port $local_port -loglevel $loglevel > $config_file + ln_run "$(first_type ${type})" "${type}" $log_file -c "$config_file" + ;; + naiveproxy) + echolog "Naiveproxy不支持UDP转发!" + ;; + brook) + local protocol=$(config_n_get $node protocol client) + if [ "$protocol" == "wsclient" ]; then + echolog "Brook的WebSocket不支持UDP转发!" + else + ln_run "$(first_type $(config_t_get global_app brook_file) brook)" "brook_UDP" $log_file tproxy -l ":$local_port" -s "$server_host:$port" -p "$(config_n_get $node password)" --doNotRunScripts + fi + ;; + ssr) + lua $API_GEN_SS -node $node -local_addr "0.0.0.0" -local_port $local_port > $config_file + ln_run "$(first_type ssr-redir)" "ssr-redir" $log_file -c "$config_file" -v -U + ;; + ss) + lua $API_GEN_SS -node $node -local_addr "0.0.0.0" -local_port $local_port -mode udp_only > $config_file + ln_run "$(first_type ss-redir)" "ss-redir" $log_file -c "$config_file" -v + ;; + ss-rust) + lua $API_GEN_SS -node $node -local_udp_redir_port $local_port > $config_file + ln_run "$(first_type sslocal)" "sslocal" $log_file -c "$config_file" -v + ;; + hysteria) + lua $API_GEN_HYSTERIA -node $node -local_udp_redir_port $local_port > $config_file + ln_run "$(first_type $(config_t_get global_app hysteria_file))" "hysteria" $log_file -c "$config_file" client + ;; + esac + ;; + TCP) + if [ $PROXY_IPV6 == "1" ]; then + echolog "开启实验性IPv6透明代理(TProxy),请确认您的节点及类型支持IPv6!" + if [ $type != "v2ray" ]; then + PROXY_IPV6_UDP=1 + else + echolog "节点类型:$type暂未支持IPv6 UDP代理!" + fi + fi + + if [ "$tcp_proxy_way" = "redirect" ]; then + can_ipt=$(echo "$REDIRECT_LIST" | grep "$type") + elif [ "$tcp_proxy_way" = "tproxy" ]; then + can_ipt=$(echo "$TPROXY_LIST" | grep "$type") + fi + [ -z "$can_ipt" ] && type="socks" + + case "$type" in + socks) + _socks_flag=1 + _socks_address=$(config_n_get $node address) + _socks_address=$(get_host_ip "ipv4" ${_socks_address}) + _socks_port=$(config_n_get $node port) + _socks_username=$(config_n_get $node username) + _socks_password=$(config_n_get $node password) + [ -z "$can_ipt" ] && { + local _config_file=$config_file + _config_file="TCP_SOCKS_${node}.json" + local _port=$(get_new_port 2080) + run_socks flag="TCP" node=$node bind=127.0.0.1 socks_port=${_port} config_file=${_config_file} + _socks_address=127.0.0.1 + _socks_port=${_port} + unset _socks_username + unset _socks_password + } + ;; + v2ray|\ + xray) + local _flag="TCP" + local _v2ray_args="" + [ "$tcp_node_socks" = "1" ] && { + tcp_node_socks_flag=1 + _v2ray_args="${_v2ray_args} socks_port=${tcp_node_socks_port}" + config_file=$(echo $config_file | sed "s/TCP/TCP_SOCKS_$tcp_node_socks_id/g") + } + [ "$tcp_node_http" = "1" ] && { + tcp_node_http_flag=1 + _v2ray_args="${_v2ray_args} http_port=${tcp_node_http_port}" + config_file=$(echo $config_file | sed "s/TCP/TCP_HTTP_$tcp_node_http_id/g") + } + [ "$TCP_UDP" = "1" ] && { + UDP_REDIR_PORT=$local_port + UDP_NODE="nil" + _flag="TCP_UDP" + _v2ray_args="${_v2ray_args} udp_redir_port=${UDP_REDIR_PORT}" + config_file=$(echo $config_file | sed "s/TCP/TCP_UDP/g") + } + [ "${DNS_MODE}" = "v2ray" -o "${DNS_MODE}" = "xray" ] && { + resolve_dns=1 + config_file=$(echo $config_file | sed "s/.json/_DNS.json/g") + _v2ray_args="${_v2ray_args} dns_query_strategy=${DNS_QUERY_STRATEGY}" + local _dns_client_ip=$(config_t_get global dns_client_ip) + [ -n "${_dns_client_ip}" ] && _v2ray_args="${_v2ray_args} dns_client_ip=${_dns_client_ip}" + [ "${DNS_CACHE}" == "0" ] && _v2ray_args="${_v2ray_args} dns_cache=0" + local v2ray_dns_mode=$(config_t_get global v2ray_dns_mode tcp) + _v2ray_args="${_v2ray_args} dns_proto=${v2ray_dns_mode}" + _v2ray_args="${_v2ray_args} dns_listen_port=${dns_listen_port}" + case "$v2ray_dns_mode" in + tcp) + _v2ray_args="${_v2ray_args} dns_tcp_server=${DNS_FORWARD}" + echolog " - 域名解析 DNS Over TCP..." + ;; + doh) + up_trust_doh=$(config_t_get global up_trust_doh "https://cloudflare-dns.com/dns-query,1.1.1.1") + _v2ray_args="${_v2ray_args} doh=${up_trust_doh}" + echolog " - 域名解析 DNS Over HTTPS..." + ;; + fakedns) + fakedns=1 + CHINADNS_NG=0 + _v2ray_args="${_v2ray_args} dns_fakedns=1" + echolog " - 域名解析 Fake DNS..." + ;; + esac + } + run_v2ray flag=$_flag node=$node tcp_redir_port=$local_port config_file=$config_file log_file=$log_file ${_v2ray_args} + ;; + trojan-go) + [ "$TCP_UDP" = "1" ] && { + config_file=$(echo $config_file | sed "s/TCP/TCP_UDP/g") + UDP_REDIR_PORT=$TCP_REDIR_PORT + UDP_NODE="nil" + } + local loglevel=$(config_t_get global trojan_loglevel "2") + lua $API_GEN_TROJAN -node $node -run_type nat -local_addr "0.0.0.0" -local_port $local_port -loglevel $loglevel > $config_file + ln_run "$(first_type $(config_t_get global_app trojan_go_file) trojan-go)" trojan-go $log_file -config "$config_file" + ;; + trojan*) + [ "$tcp_proxy_way" = "tproxy" ] && lua_tproxy_arg="-use_tproxy true" + [ "$TCP_UDP" = "1" ] && { + config_file=$(echo $config_file | sed "s/TCP/TCP_UDP/g") + UDP_REDIR_PORT=$TCP_REDIR_PORT + UDP_NODE="nil" + } + local loglevel=$(config_t_get global trojan_loglevel "2") + lua $API_GEN_TROJAN -node $node -run_type nat -local_addr "0.0.0.0" -local_port $local_port -loglevel $loglevel $lua_tproxy_arg > $config_file + ln_run "$(first_type ${type})" "${type}" $log_file -c "$config_file" + ;; + naiveproxy) + lua $API_GEN_NAIVE -node $node -run_type redir -local_addr "0.0.0.0" -local_port $local_port > $config_file + ln_run "$(first_type naive)" naive $log_file "$config_file" + ;; + brook) + local server_ip=$server_host + local protocol=$(config_n_get $node protocol client) + local prefix="" + [ "$protocol" == "wsclient" ] && { + prefix="ws://" + local brook_tls=$(config_n_get $node brook_tls 0) + [ "$brook_tls" == "1" ] && prefix="wss://" + local ws_path=$(config_n_get $node ws_path "/ws") + } + server_ip=${prefix}${server_ip} + ln_run "$(first_type $(config_t_get global_app brook_file) brook)" "brook_TCP" $log_file tproxy -l ":$local_port" -s "${server_ip}:${port}${ws_path}" -p "$(config_n_get $node password)" --doNotRunScripts + ;; + ssr) + [ "$tcp_proxy_way" = "tproxy" ] && lua_tproxy_arg="-tcp_tproxy true" + [ "$TCP_UDP" = "1" ] && { + config_file=$(echo $config_file | sed "s/TCP/TCP_UDP/g") + UDP_REDIR_PORT=$TCP_REDIR_PORT + UDP_NODE="nil" + _extra_param="-u" + } + lua $API_GEN_SS -node $node -local_addr "0.0.0.0" -local_port $local_port $lua_tproxy_arg > $config_file + ln_run "$(first_type ssr-redir)" "ssr-redir" $log_file -c "$config_file" -v ${_extra_param} + ;; + ss) + [ "$tcp_proxy_way" = "tproxy" ] && lua_tproxy_arg="-tcp_tproxy true" + lua_mode_arg="-mode tcp_only" + [ "$TCP_UDP" = "1" ] && { + config_file=$(echo $config_file | sed "s/TCP/TCP_UDP/g") + UDP_REDIR_PORT=$TCP_REDIR_PORT + UDP_NODE="nil" + lua_mode_arg="-mode tcp_and_udp" + } + lua $API_GEN_SS -node $node -local_addr "0.0.0.0" -local_port $local_port $lua_mode_arg $lua_tproxy_arg > $config_file + ln_run "$(first_type ss-redir)" "ss-redir" $log_file -c "$config_file" -v + ;; + ss-rust) + local _extra_param="-local_tcp_redir_port $local_port" + [ "$tcp_proxy_way" = "tproxy" ] && _extra_param="${_extra_param} -tcp_tproxy true" + [ "$tcp_node_socks" = "1" ] && { + tcp_node_socks_flag=1 + config_file=$(echo $config_file | sed "s/TCP/TCP_SOCKS_$tcp_node_socks_id/g") + _extra_param="${_extra_param} -local_socks_port ${tcp_node_socks_port}" + } + [ "$tcp_node_http" = "1" ] && { + tcp_node_http_flag=1 + config_file=$(echo $config_file | sed "s/TCP/TCP_HTTP_$tcp_node_http_id/g") + _extra_param="${_extra_param} -local_http_port ${tcp_node_http_port}" + } + [ "$TCP_UDP" = "1" ] && { + config_file=$(echo $config_file | sed "s/TCP/TCP_UDP/g") + UDP_REDIR_PORT=$TCP_REDIR_PORT + UDP_NODE="nil" + _extra_param="${_extra_param} -local_udp_redir_port $local_port" + } + lua $API_GEN_SS -node $node ${_extra_param} > $config_file + ln_run "$(first_type sslocal)" "sslocal" $log_file -c "$config_file" -v + ;; + hysteria) + local _extra_param="-local_tcp_redir_port $local_port" + [ "$tcp_node_socks" = "1" ] && { + tcp_node_socks_flag=1 + config_file=$(echo $config_file | sed "s/TCP/TCP_SOCKS_$tcp_node_socks_id/g") + _extra_param="${_extra_param} -local_socks_port ${tcp_node_socks_port}" + } + [ "$tcp_node_http" = "1" ] && { + tcp_node_http_flag=1 + config_file=$(echo $config_file | sed "s/TCP/TCP_HTTP_$tcp_node_http_id/g") + _extra_param="${_extra_param} -local_http_port ${tcp_node_http_port}" + } + [ "$TCP_UDP" = "1" ] && { + config_file=$(echo $config_file | sed "s/TCP/TCP_UDP/g") + UDP_REDIR_PORT=$TCP_REDIR_PORT + UDP_NODE="nil" + _extra_param="${_extra_param} -local_udp_redir_port $local_port" + } + lua $API_GEN_HYSTERIA -node $node ${_extra_param} > $config_file + ln_run "$(first_type $(config_t_get global_app hysteria_file))" "hysteria" $log_file -c "$config_file" client + ;; + esac + if [ -n "${_socks_flag}" ]; then + local _flag="TCP" + local _extra_param="-T" + [ "$TCP_UDP" = "1" ] && { + _flag="TCP_UDP" + _extra_param="" + UDP_REDIR_PORT=$TCP_REDIR_PORT + UDP_NODE="nil" + } + local _socks_tproxy="-R" + [ "$tcp_proxy_way" = "tproxy" ] && _socks_tproxy="" + _extra_param="${_extra_param} ${_socks_tproxy}" + [ -n "${_socks_username}" ] && [ -n "${_socks_password}" ] && _extra_param="-a ${_socks_username} -k ${_socks_password} ${_extra_param}" + ln_run "$(first_type ipt2socks)" "ipt2socks_${_flag}" $log_file -l $local_port -b 0.0.0.0 -s ${_socks_address} -p ${_socks_port} ${_extra_param} -v + fi + + [ -z "$tcp_node_socks_flag" ] && { + [ "$tcp_node_socks" = "1" ] && { + local port=$tcp_node_socks_port + local config_file="SOCKS_$tcp_node_socks_id.json" + local log_file="SOCKS_$tcp_node_socks_id.log" + local http_port=0 + local http_config_file="HTTP2SOCKS_$tcp_node_http_id.json" + [ "$tcp_node_http" = "1" ] && [ -z "$tcp_node_http_flag" ] && { + http_port=$tcp_node_http_port + } + run_socks flag=$tcp_node_socks_id node=$node bind=0.0.0.0 socks_port=$port config_file=$config_file http_port=$http_port http_config_file=$http_config_file + } + } + ;; + esac + unset tcp_node_socks_flag tcp_node_http_flag + return 0 +} + +node_switch() { + local flag new_node shunt_logic log_output + eval_set_val $@ + [ -n "$flag" ] && [ -n "$new_node" ] && { + flag=$(echo $flag | tr 'A-Z' 'a-z') + FLAG=$(echo $flag | tr 'a-z' 'A-Z') + [ -n "$log_output" ] || LOG_FILE="/dev/null" + local node=$2 + pgrep -af "${TMP_PATH}" | awk -v P1="${FLAG}" 'BEGIN{IGNORECASE=1}$0~P1 && !/acl\/|acl_/{print $1}' | xargs kill -9 >/dev/null 2>&1 + rm -rf $TMP_PATH/${FLAG}* + local config_file="${FLAG}.json" + local log_file="${FLAG}.log" + local port=$(cat $TMP_PORT_PATH/${FLAG}) + + [ "$SOCKS_ENABLED" = "1" ] && { + local ids=$(uci show $CONFIG | grep "=socks" | awk -F '.' '{print $2}' | awk -F '=' '{print $1}') + for id in $ids; do + [ "$(config_n_get $id enabled 0)" = "0" ] && continue + [ "$(config_n_get $id node nil)" != "tcp" ] && continue + local socks_port=$(config_n_get $id port) + local http_port=$(config_n_get $id http_port 0) + pgrep -af "${TMP_PATH}.*${id}" | awk 'BEGIN{IGNORECASE=1}/SOCKS/{print $1}' | xargs kill -9 >/dev/null 2>&1 + tcp_node_socks=1 + tcp_node_socks_port=$socks_port + tcp_node_socks_id=$id + [ "$http_port" != "0" ] && { + tcp_node_http=1 + tcp_node_http_port=$http_port + tcp_node_http_id=$id + } + break + done + } + + [ "$shunt_logic" != "0" ] && { + local node=$(config_t_get global ${flag}_node nil) + [ "$(config_n_get $node protocol nil)" = "_shunt" ] && { + if [ "$shunt_logic" = "1" ]; then + uci set $CONFIG.$node.default_node="$new_node" + elif [ "$shunt_logic" = "2" ]; then + uci set $CONFIG.$node.main_node="$new_node" + fi + uci commit $CONFIG + } + new_node=$node + } + + run_redir node=$new_node proto=$FLAG bind=0.0.0.0 local_port=$port config_file=$config_file log_file=$log_file + echo $new_node > $TMP_ID_PATH/${FLAG} + + [ "$shunt_logic" != "0" ] && [ "$(config_n_get $new_node protocol nil)" = "_shunt" ] && { + echo $(config_n_get $new_node default_node nil) > $TMP_ID_PATH/${1}_default + echo $(config_n_get $new_node main_node nil) > $TMP_ID_PATH/${1}_main + uci commit $CONFIG + } + + [ "$flag" = "tcp" ] && { + [ "$(config_t_get global udp_node nil)" = "tcp" ] && [ "$UDP_REDIR_PORT" != "$TCP_REDIR_PORT" ] && { + pgrep -af "$TMP_PATH" | awk 'BEGIN{IGNORECASE=1}/UDP/ && !/acl\/|acl_/{print $1}' | xargs kill -9 >/dev/null 2>&1 + UDP_NODE=$new_node + start_redir UDP + } + } + + #uci set $CONFIG.@global[0].${flag}_node=$new_node + #uci commit $CONFIG + source $APP_PATH/helper_${DNS_N}.sh logic_restart no_log=1 + } +} + +start_redir() { + local proto=${1} + eval node=\$${proto}_NODE + if [ "$node" != "nil" ]; then + TYPE=$(echo $(config_n_get $node type) | tr 'A-Z' 'a-z') + local config_file="${proto}.json" + local log_file="${proto}.log" + eval current_port=\$${proto}_REDIR_PORT + local port=$(echo $(get_new_port $current_port $proto)) + eval ${proto}_REDIR=$port + run_redir node=$node proto=${proto} bind=0.0.0.0 local_port=$port config_file=$config_file log_file=$log_file + #eval ip=\$${proto}_NODE_IP + echo $port > $TMP_PORT_PATH/${proto} + echo $node > $TMP_ID_PATH/${proto} + [ "$(config_n_get $node protocol nil)" = "_shunt" ] && { + local default_node=$(config_n_get $node default_node nil) + local main_node=$(config_n_get $node main_node nil) + echo $default_node > $TMP_ID_PATH/${proto}_default + echo $main_node > $TMP_ID_PATH/${proto}_main + } + else + [ "${proto}" = "UDP" ] && [ "$TCP_UDP" = "1" ] && return + echolog "${proto}节点没有选择或为空,不代理${proto}。" + fi +} + +start_socks() { + [ "$SOCKS_ENABLED" = "1" ] && { + local ids=$(uci show $CONFIG | grep "=socks" | awk -F '.' '{print $2}' | awk -F '=' '{print $1}') + [ -n "$ids" ] && { + echolog "分析 Socks 服务的节点配置..." + for id in $ids; do + local enabled=$(config_n_get $id enabled 0) + [ "$enabled" == "0" ] && continue + local node=$(config_n_get $id node nil) + [ "$node" == "nil" ] && continue + local port=$(config_n_get $id port) + local config_file="SOCKS_${id}.json" + local log_file="SOCKS_${id}.log" + local http_port=$(config_n_get $id http_port 0) + local http_config_file="HTTP2SOCKS_${id}.json" + [ "$node" == "tcp" ] && { + tcp_node_socks=1 + tcp_node_socks_port=$port + tcp_node_socks_id=$id + [ "$http_port" != "0" ] && { + tcp_node_http=1 + tcp_node_http_port=$http_port + tcp_node_http_id=$id + } + continue + } + run_socks flag=$id node=$node bind=0.0.0.0 socks_port=$port config_file=$config_file http_port=$http_port http_config_file=$http_config_file + echo $node > $TMP_ID_PATH/SOCKS_${id} + done + } + } +} + +clean_log() { + logsnum=$(cat $LOG_FILE 2>/dev/null | wc -l) + [ "$logsnum" -gt 1000 ] && { + echo "" > $LOG_FILE + echolog "日志文件过长,清空处理!" + } +} + +clean_crontab() { + touch /etc/crontabs/root + #sed -i "/${CONFIG}/d" /etc/crontabs/root >/dev/null 2>&1 + sed -i "/$(echo "/etc/init.d/${CONFIG}" | sed 's#\/#\\\/#g')/d" /etc/crontabs/root >/dev/null 2>&1 + sed -i "/$(echo "lua ${APP_PATH}/rule_update.lua log" | sed 's#\/#\\\/#g')/d" /etc/crontabs/root >/dev/null 2>&1 + sed -i "/$(echo "lua ${APP_PATH}/subscribe.lua start" | sed 's#\/#\\\/#g')/d" /etc/crontabs/root >/dev/null 2>&1 +} + +start_crontab() { + clean_crontab + [ "$ENABLED" != 1 ] && { + /etc/init.d/cron restart + return + } + auto_on=$(config_t_get global_delay auto_on 0) + if [ "$auto_on" = "1" ]; then + time_off=$(config_t_get global_delay time_off) + time_on=$(config_t_get global_delay time_on) + time_restart=$(config_t_get global_delay time_restart) + [ -z "$time_off" -o "$time_off" != "nil" ] && { + echo "0 $time_off * * * /etc/init.d/$CONFIG stop" >>/etc/crontabs/root + echolog "配置定时任务:每天 $time_off 点关闭服务。" + } + [ -z "$time_on" -o "$time_on" != "nil" ] && { + echo "0 $time_on * * * /etc/init.d/$CONFIG start" >>/etc/crontabs/root + echolog "配置定时任务:每天 $time_on 点开启服务。" + } + [ -z "$time_restart" -o "$time_restart" != "nil" ] && { + echo "0 $time_restart * * * /etc/init.d/$CONFIG restart" >>/etc/crontabs/root + echolog "配置定时任务:每天 $time_restart 点重启服务。" + } + fi + + autoupdate=$(config_t_get global_rules auto_update) + weekupdate=$(config_t_get global_rules week_update) + dayupdate=$(config_t_get global_rules time_update) + if [ "$autoupdate" = "1" ]; then + local t="0 $dayupdate * * $weekupdate" + [ "$weekupdate" = "7" ] && t="0 $dayupdate * * *" + echo "$t lua $APP_PATH/rule_update.lua log > /dev/null 2>&1 &" >>/etc/crontabs/root + echolog "配置定时任务:自动更新规则。" + fi + + TMP_SUB_PATH=$TMP_PATH/sub_crontabs + mkdir -p $TMP_SUB_PATH + for item in $(uci show ${CONFIG} | grep "=subscribe_list" | cut -d '.' -sf 2 | cut -d '=' -sf 1); do + if [ "$(config_n_get $item auto_update 0)" = "1" ]; then + cfgid=$(uci show ${CONFIG}.$item | head -n 1 | cut -d '.' -sf 2 | cut -d '=' -sf 1) + remark=$(config_n_get $item remark) + week_update=$(config_n_get $item week_update) + time_update=$(config_n_get $item time_update) + echo "$cfgid" >> $TMP_SUB_PATH/${week_update}_${time_update} + echolog "配置定时任务:自动更新【$remark】订阅。" + fi + done + + [ -d "${TMP_SUB_PATH}" ] && { + for name in $(ls ${TMP_SUB_PATH}); do + week_update=$(echo $name | awk -F '_' '{print $1}') + time_update=$(echo $name | awk -F '_' '{print $2}') + local t="0 $time_update * * $week_update" + [ "$week_update" = "7" ] && t="0 $time_update * * *" + cfgids=$(echo -n $(cat ${TMP_SUB_PATH}/${name}) | sed 's# #,#g') + echo "$t lua $APP_PATH/subscribe.lua start $cfgids > /dev/null 2>&1 &" >>/etc/crontabs/root + done + rm -rf $TMP_SUB_PATH + } + + if [ "$NO_PROXY" == 0 ]; then + start_daemon=$(config_t_get global_delay start_daemon 0) + [ "$start_daemon" = "1" ] && $APP_PATH/monitor.sh > /dev/null 2>&1 & + + AUTO_SWITCH_ENABLE=$(config_t_get auto_switch enable 0) + [ "$AUTO_SWITCH_ENABLE" = "1" ] && $APP_PATH/test.sh > /dev/null 2>&1 & + else + echolog "运行于非代理模式,仅允许服务启停的定时任务。" + fi + + /etc/init.d/cron restart +} + +stop_crontab() { + clean_crontab + /etc/init.d/cron restart + #echolog "清除定时执行命令。" +} + +start_dns() { + TUN_DNS="127.0.0.1#${dns_listen_port}" + + echolog "过滤服务配置:准备接管域名解析..." + local items=$(uci show ${CONFIG} | grep "=acl_rule" | cut -d '.' -sf 2 | cut -d '=' -sf 1) + [ -n "$items" ] && { + for item in $items; do + [ "$(config_n_get $item enabled)" = "1" ] || continue + [ "$(config_n_get $item tcp_node)" = "default" -o "$(config_n_get $item udp_node)" = "default" ] && { + local item_tcp_proxy_mode=$(config_n_get $item tcp_proxy_mode default) + local item_udp_proxy_mode=$(config_n_get $item udp_proxy_mode default) + [ "$item_tcp_proxy_mode" = "default" ] && item_tcp_proxy_mode=$TCP_PROXY_MODE + [ "$item_udp_proxy_mode" = "default" ] && item_udp_proxy_mode=$UDP_PROXY_MODE + global=$(echo "${global}${item_tcp_proxy_mode}${item_udp_proxy_mode}" | grep "global") + returnhome=$(echo "${returnhome}${item_tcp_proxy_mode}${item_udp_proxy_mode}" | grep "returnhome") + chnlist=$(echo "${chnlist}${item_tcp_proxy_mode}${item_udp_proxy_mode}" | grep "chnroute") + gfwlist=$(echo "${gfwlist}${item_tcp_proxy_mode}${item_udp_proxy_mode}" | grep "gfwlist") + ACL_TCP_PROXY_MODE=${ACL_TCP_PROXY_MODE}${item_tcp_proxy_mode} + ACL_UDP_PROXY_MODE=${ACL_UDP_PROXY_MODE}${item_udp_proxy_mode} + } + done + } + + case "$DNS_MODE" in + dns2socks) + local dns2socks_socks_server=$(echo $(config_t_get global socks_server 127.0.0.1:1080) | sed "s/#/:/g") + local dns2socks_forward=$(get_first_dns DNS_FORWARD 53 | sed 's/#/:/g') + run_dns2socks socks=$dns2socks_socks_server listen_address=127.0.0.1 listen_port=${dns_listen_port} dns=$dns2socks_forward cache=$DNS_CACHE + echolog " - 域名解析:dns2socks(127.0.0.1:${dns_listen_port}),${dns2socks_socks_server} -> ${dns2socks_forward}" + ;; + v2ray|\ + xray) + [ "${resolve_dns}" == "0" ] && { + local config_file=$TMP_PATH/DNS.json + local log_file=$TMP_PATH/DNS.log + local log_file=/dev/null + local _v2ray_args="config_file=$config_file log_file=$log_file" + [ "${DNS_CACHE}" == "0" ] && _v2ray_args="${_v2ray_args} dns_cache=0" + _v2ray_args="${_v2ray_args} dns_query_strategy=${DNS_QUERY_STRATEGY}" + local _dns_client_ip=$(config_t_get global dns_client_ip) + [ -n "${_dns_client_ip}" ] && _v2ray_args="${_v2ray_args} dns_client_ip=${_dns_client_ip}" + use_tcp_node_resolve_dns=1 + local v2ray_dns_mode=$(config_t_get global v2ray_dns_mode tcp) + _v2ray_args="${_v2ray_args} dns_listen_port=${dns_listen_port}" + _v2ray_args="${_v2ray_args} dns_proto=${v2ray_dns_mode}" + case "$v2ray_dns_mode" in + tcp) + _v2ray_args="${_v2ray_args} dns_tcp_server=${DNS_FORWARD}" + echolog " - 域名解析 DNS Over TCP..." + ;; + doh) + up_trust_doh=$(config_t_get global up_trust_doh "https://cloudflare-dns.com/dns-query,1.1.1.1") + _v2ray_args="${_v2ray_args} doh=${up_trust_doh}" + + _doh_url=$(echo $up_trust_doh | awk -F ',' '{print $1}') + _doh_host_port=$(echo $_doh_url | sed "s/https:\/\///g" | awk -F '/' '{print $1}') + _doh_host=$(echo $_doh_host_port | awk -F ':' '{print $1}') + _doh_port=$(echo $_doh_host_port | awk -F ':' '{print $2}') + _doh_bootstrap=$(echo $up_trust_doh | cut -d ',' -sf 2-) + + DNS_FORWARD="" + _doh_bootstrap_dns=$(echo $_doh_bootstrap | sed "s/,/ /g") + for _dns in $_doh_bootstrap_dns; do + _dns=$(echo $_dns | awk -F ':' '{print $1}'):${_doh_port:-443} + [ -n "$DNS_FORWARD" ] && DNS_FORWARD=${DNS_FORWARD},${_dns} || DNS_FORWARD=${_dns} + done + unset _dns _doh_bootstrap_dns + unset _doh_url _doh_port _doh_bootstrap + echolog " - 域名解析 DNS Over HTTPS..." + ;; + esac + run_v2ray ${_v2ray_args} + } + ;; + pdnsd) + use_tcp_node_resolve_dns=1 + gen_pdnsd_config "${dns_listen_port}" "${DNS_FORWARD}" "${DNS_CACHE}" + ln_run "$(first_type pdnsd)" pdnsd "/dev/null" --daemon -c "${TMP_PATH}/pdnsd/pdnsd.conf" -d + echolog " - 域名解析:pdnsd + 使用(TCP节点)解析域名..." + ;; + udp) + use_udp_node_resolve_dns=1 + TUN_DNS="$(echo ${DNS_FORWARD} | sed 's/#/:/g' | sed -E 's/\:([^:]+)$/#\1/g')" + echolog " - 域名解析:使用UDP协议请求DNS($TUN_DNS)..." + ;; + esac + + [ "${use_tcp_node_resolve_dns}" = "1" ] && echolog " * 请确认上游 DNS 支持 TCP 查询,如非直连地址,确保 TCP 代理打开,并且已经正确转发!" + [ "${use_udp_node_resolve_dns}" = "1" ] && echolog " * 要求代理 DNS 请求,如上游 DNS 非直连地址,确保 UDP 代理打开,并且已经正确转发!" + + case "$DNS_SHUNT" in + smartdns) + local group_domestic=$(config_t_get global group_domestic) + CHINADNS_NG=0 + source $APP_PATH/helper_smartdns.sh add FLAG="default" DNS_MODE=$DNS_MODE SMARTDNS_CONF=/tmp/etc/smartdns/$CONFIG.conf REMOTE_FAKEDNS=$fakedns DEFAULT_DNS=$DEFAULT_DNS LOCAL_GROUP=$group_domestic TUN_DNS=$TUN_DNS TCP_NODE=$TCP_NODE PROXY_MODE=${TCP_PROXY_MODE}${LOCALHOST_TCP_PROXY_MODE}${ACL_TCP_PROXY_MODE} NO_PROXY_IPV6=${filter_proxy_ipv6} + source $APP_PATH/helper_smartdns.sh restart + echolog " - 域名解析:使用SmartDNS,请确保配置正常。" + ;; + esac + + [ -n "$chnlist" ] && [ "$CHINADNS_NG" = "1" ] && [ -n "$(first_type chinadns-ng)" ] && [ -s "${RULES_PATH}/chnlist" ] && { + china_ng_listen_port=$(expr $dns_listen_port + 1) + china_ng_listen="127.0.0.1#${china_ng_listen_port}" + china_ng_chn=$(echo -n $(echo "${LOCAL_DNS}" | sed "s/,/\n/g" | head -n2) | tr " " ",") + china_ng_gfw="${TUN_DNS}" + echolog " | - (chinadns-ng) 最高支持4级域名过滤..." + + local gfwlist_param="${TMP_PATH}/chinadns_gfwlist" + [ -s "${RULES_PATH}/gfwlist" ] && cp -a "${RULES_PATH}/gfwlist" "${gfwlist_param}" + local chnlist_param="${TMP_PATH}/chinadns_chnlist" + [ -s "${RULES_PATH}/chnlist" ] && cp -a "${RULES_PATH}/chnlist" "${chnlist_param}" + + [ -s "${RULES_PATH}/proxy_host" ] && { + cat "${RULES_PATH}/proxy_host" | tr -s '\n' | grep -v "^#" | sort -u >> "${gfwlist_param}" + echolog " | - [$?](chinadns-ng) 代理域名表合并到防火墙域名表" + } + [ -s "${RULES_PATH}/direct_host" ] && { + cat "${RULES_PATH}/direct_host" | tr -s '\n' | grep -v "^#" | sort -u >> "${chnlist_param}" + echolog " | - [$?](chinadns-ng) 域名白名单合并到中国域名表" + } + chnlist_param=${chnlist_param:+-m "${chnlist_param}" -M} + local log_path="${TMP_PATH}/chinadns-ng.log" + log_path="/dev/null" + ln_run "$(first_type chinadns-ng)" chinadns-ng "$log_path" -v -b 0.0.0.0 -l "${china_ng_listen_port}" ${china_ng_chn:+-c "${china_ng_chn}"} ${chnlist_param} ${china_ng_gfw:+-t "${china_ng_gfw}"} ${gfwlist_param:+-g "${gfwlist_param}"} -f + echolog " + 过滤服务:ChinaDNS-NG(:${china_ng_listen_port}):国内DNS:${china_ng_chn},可信DNS:${china_ng_gfw}" + } + + [ "$DNS_SHUNT" = "dnsmasq" ] && { + source $APP_PATH/helper_dnsmasq.sh stretch + source $APP_PATH/helper_dnsmasq.sh add FLAG="default" DNS_MODE=$DNS_MODE TMP_DNSMASQ_PATH=$TMP_DNSMASQ_PATH DNSMASQ_CONF_FILE=/tmp/dnsmasq.d/dnsmasq-passwall.conf REMOTE_FAKEDNS=$fakedns DEFAULT_DNS=$DEFAULT_DNS LOCAL_DNS=$LOCAL_DNS TUN_DNS=$TUN_DNS CHINADNS_DNS=$china_ng_listen TCP_NODE=$TCP_NODE PROXY_MODE=${TCP_PROXY_MODE}${LOCALHOST_TCP_PROXY_MODE}${ACL_TCP_PROXY_MODE} NO_PROXY_IPV6=${filter_proxy_ipv6} + } +} + +gen_pdnsd_config() { + local listen_port=${1} + local up_dns=${2} + local cache=${3} + local pdnsd_dir=${TMP_PATH}/pdnsd + local perm_cache=2048 + local _cache="on" + local query_method="tcp_only" + local reject_ipv6_dns= + [ "${cache}" = "0" ] && _cache="off" && perm_cache=0 + + mkdir -p "${pdnsd_dir}" + touch "${pdnsd_dir}/pdnsd.cache" + chown -R root.nogroup "${pdnsd_dir}" + if [ $PROXY_IPV6 == "0" ]; then + reject_ipv6_dns=$(cat <<- 'EOF' + + reject = ::/0; + reject_policy = negate; + EOF + ) + fi + cat > "${pdnsd_dir}/pdnsd.conf" <<-EOF + global { + perm_cache = $perm_cache; + cache_dir = "$pdnsd_dir"; + run_as = "root"; + server_ip = 127.0.0.1; + server_port = ${listen_port}; + status_ctl = on; + query_method = ${query_method}; + min_ttl = 1h; + max_ttl = 1w; + timeout = 10; + par_queries = 2; + neg_domain_pol = off; + udpbufsize = 1024; + proc_limit = 2; + procq_limit = 8; + } + + EOF + echolog " + [$?]Pdnsd (127.0.0.1:${listen_port})..." + + append_pdnsd_updns() { + [ -z "${2}" ] && echolog " | - 略过错误 : ${1}" && return 0 + cat >> $pdnsd_dir/pdnsd.conf <<-EOF + server { + label = "node-${2}_${3}"; + ip = ${2}; + edns_query = on; + port = ${3}; + timeout = 4; + interval = 10m; + uptest = none; + purge_cache = off; + proxy_only = on; + caching = $_cache;${reject_ipv6_dns} + } + EOF + echolog " | - [$?]上游DNS:${2}:${3}" + } + hosts_foreach up_dns append_pdnsd_updns 53 +} + +add_ip2route() { + local ip=$(get_host_ip "ipv4" $1) + [ -z "$ip" ] && { + echolog " - 无法解析[${1}],路由表添加失败!" + return 1 + } + local remarks="${1}" + [ "$remarks" != "$ip" ] && remarks="${1}(${ip})" + + . /lib/functions/network.sh + local gateway device + network_get_gateway gateway "$2" + network_get_device device "$2" + [ -z "${device}" ] && device="$2" + + if [ -n "${gateway}" ]; then + route add -host ${ip} gw ${gateway} dev ${device} >/dev/null 2>&1 + echo "$ip" >> $TMP_ROUTE_PATH/${device} + echolog " - [${remarks}]添加到接口[${device}]路由表成功!" + else + echolog " - [${remarks}]添加到接口[${device}]路由表失功!原因是找不到[${device}]网关。" + fi +} + +delete_ip2route() { + [ -d "${TMP_ROUTE_PATH}" ] && { + for interface in $(ls ${TMP_ROUTE_PATH}); do + for ip in $(cat ${TMP_ROUTE_PATH}/${interface}); do + route del -host ${ip} dev ${interface} >/dev/null 2>&1 + done + done + } +} + +start_haproxy() { + local haproxy_path haproxy_file item items lport sort_items + + [ "$(config_t_get global_haproxy balancing_enable 0)" != "1" ] && return + echolog "HAPROXY 负载均衡..." + + haproxy_path=${TMP_PATH}/haproxy + mkdir -p "${haproxy_path}" + haproxy_file=${haproxy_path}/config.cfg + cat <<-EOF > "${haproxy_file}" + global + log 127.0.0.1 local2 + chroot ${haproxy_path} + maxconn 60000 + stats socket ${haproxy_path}/haproxy.sock + daemon + + defaults + mode tcp + log global + option tcplog + option dontlognull + option http-server-close + #option forwardfor except 127.0.0.0/8 + option redispatch + retries 2 + timeout http-request 10s + timeout queue 1m + timeout connect 10s + timeout client 1m + timeout server 1m + timeout http-keep-alive 10s + timeout check 10s + maxconn 3000 + + EOF + + items=$(uci show ${CONFIG} | grep "=haproxy_config" | cut -d '.' -sf 2 | cut -d '=' -sf 1) + for item in $items; do + lport=$(config_n_get ${item} haproxy_port 0) + [ "${lport}" = "0" ] && echolog " - 丢弃1个明显无效的节点" && continue + sort_items="${sort_items}${IFS}${lport} ${item}" + done + + items=$(echo "${sort_items}" | sort -n | cut -d ' ' -sf 2) + + unset lport + local haproxy_port lbss lbweight export backup remark + local msg bip bport hasvalid bbackup failcount interface + for item in ${items}; do + unset haproxy_port bbackup + + eval $(uci -q show "${CONFIG}.${item}" | cut -d '.' -sf 3-) + [ "$enabled" = "1" ] || continue + get_ip_port_from "$lbss" bip bport 1 + + [ -z "$haproxy_port" ] || [ -z "$bip" ] && echolog " - 丢弃1个明显无效的节点" && continue + [ "$backup" = "1" ] && bbackup="backup" + remark=$(echo $bip | sed "s/\[//g" | sed "s/\]//g") + + [ "$lport" = "${haproxy_port}" ] || { + hasvalid="1" + lport=${haproxy_port} + echolog " + 入口 0.0.0.0:${lport}..." + cat <<-EOF >> "${haproxy_file}" + listen $lport + mode tcp + bind 0.0.0.0:$lport + EOF + } + + cat <<-EOF >> "${haproxy_file}" + server $remark:$bport $bip:$bport weight $lbweight check inter 1500 rise 1 fall 3 $bbackup + EOF + + if [ "$export" != "0" ]; then + add_ip2route ${bip} ${export} > /dev/null 2>&1 & + fi + + haproxy_items="${haproxy_items}${IFS}${bip}:${bport}" + echolog " | - 出口节点:${bip}:${bport},权重:${lbweight}" + done + + # 控制台配置 + local console_port=$(config_t_get global_haproxy console_port) + local console_user=$(config_t_get global_haproxy console_user) + local console_password=$(config_t_get global_haproxy console_password) + local auth="" + [ -n "$console_user" ] && [ -n "$console_password" ] && auth="stats auth $console_user:$console_password" + cat <<-EOF >> "${haproxy_file}" + + listen console + bind 0.0.0.0:$console_port + mode http + stats refresh 30s + stats uri / + stats admin if TRUE + $auth + EOF + + [ "${hasvalid}" != "1" ] && echolog " - 没有发现任何有效节点信息,不启动。" && return 0 + ln_run "$(first_type haproxy)" haproxy "/dev/null" -f "${haproxy_file}" + echolog " * 控制台端口:${console_port}/,${auth:-公开}" +} + +kill_all() { + kill -9 $(pidof "$@") >/dev/null 2>&1 +} + +boot() { + [ "$ENABLED" == 1 ] && { + local delay=$(config_t_get global_delay start_delay 1) + if [ "$delay" -gt 0 ]; then + echolog "执行启动延时 $delay 秒后再启动!" + sleep $delay && start >/dev/null 2>&1 & + else + start + fi + } + return 0 +} + +start() { + ulimit -n 65535 + start_haproxy + start_socks + + [ "$NO_PROXY" == 1 ] || { + if [ -z "$(command -v iptables-legacy || command -v iptables)" ] || [ -z "$(command -v ipset)" ]; then + echolog "系统未安装iptables或ipset,无法透明代理!" + else + start_redir TCP + start_redir UDP + start_dns + source $APP_PATH/iptables.sh start + source $APP_PATH/helper_${DNS_N}.sh logic_restart + fi + } + start_crontab + echolog "运行完成!\n" +} + +stop() { + clean_log + source $APP_PATH/iptables.sh stop + delete_ip2route + kill_all v2ray-plugin obfs-local + pgrep -f "sleep.*(6s|9s|58s)" | xargs kill -9 >/dev/null 2>&1 + pgrep -af "${CONFIG}/" | awk '! /app\.sh|subscribe\.lua|rule_update\.lua/{print $1}' | xargs kill -9 >/dev/null 2>&1 + unset V2RAY_LOCATION_ASSET + unset XRAY_LOCATION_ASSET + stop_crontab + source $APP_PATH/helper_smartdns.sh del + source $APP_PATH/helper_dnsmasq.sh del + source $APP_PATH/helper_dnsmasq.sh restart no_log=1 + rm -rf ${TMP_PATH} + rm -rf /tmp/lock/${CONFIG}_script.lock + echolog "清空并关闭相关程序和缓存完成。" + /etc/init.d/sysctl restart + exit 0 +} + +ENABLED=$(config_t_get global enabled 0) +SOCKS_ENABLED=$(config_t_get global socks_enabled 0) +TCP_REDIR_PORT=1041 +TCP_NODE=$(config_t_get global tcp_node nil) +UDP_REDIR_PORT=1051 +UDP_NODE=$(config_t_get global udp_node nil) +TCP_UDP=0 +[ "$UDP_NODE" == "tcp" ] && { + UDP_NODE=$TCP_NODE + TCP_UDP=1 +} +[ "$ENABLED" != 1 ] && NO_PROXY=1 +[ "$TCP_NODE" == "nil" -a "$UDP_NODE" == "nil" ] && NO_PROXY=1 +[ "$(config_get_type $TCP_NODE nil)" == "nil" -a "$(config_get_type $UDP_NODE nil)" == "nil" ] && NO_PROXY=1 +tcp_proxy_way=$(config_t_get global_forwarding tcp_proxy_way redirect) +REDIRECT_LIST="socks ss ss-rust ssr v2ray xray trojan-plus trojan-go naiveproxy" +TPROXY_LIST="socks ss ss-rust ssr v2ray xray trojan-plus brook trojan-go hysteria" +RESOLVFILE=/tmp/resolv.conf.d/resolv.conf.auto +[ -f "${RESOLVFILE}" ] && [ -s "${RESOLVFILE}" ] || RESOLVFILE=/tmp/resolv.conf.auto +TCP_REDIR_PORTS=$(config_t_get global_forwarding tcp_redir_ports '80,443') +UDP_REDIR_PORTS=$(config_t_get global_forwarding udp_redir_ports '1:65535') +TCP_NO_REDIR_PORTS=$(config_t_get global_forwarding tcp_no_redir_ports 'disable') +UDP_NO_REDIR_PORTS=$(config_t_get global_forwarding udp_no_redir_ports 'disable') +TCP_PROXY_DROP_PORTS=$(config_t_get global_forwarding tcp_proxy_drop_ports 'disable') +UDP_PROXY_DROP_PORTS=$(config_t_get global_forwarding udp_proxy_drop_ports '80,443') +TCP_PROXY_MODE=$(config_t_get global tcp_proxy_mode chnroute) +UDP_PROXY_MODE=$(config_t_get global udp_proxy_mode chnroute) +LOCALHOST_TCP_PROXY_MODE=$(config_t_get global localhost_tcp_proxy_mode default) +LOCALHOST_UDP_PROXY_MODE=$(config_t_get global localhost_udp_proxy_mode default) +[ "$LOCALHOST_TCP_PROXY_MODE" == "default" ] && LOCALHOST_TCP_PROXY_MODE=$TCP_PROXY_MODE +[ "$LOCALHOST_UDP_PROXY_MODE" == "default" ] && LOCALHOST_UDP_PROXY_MODE=$UDP_PROXY_MODE +global=$(echo "${TCP_PROXY_MODE}${LOCALHOST_TCP_PROXY_MODE}${UDP_PROXY_MODE}${LOCALHOST_UDP_PROXY_MODE}" | grep "global") +returnhome=$(echo "${TCP_PROXY_MODE}${LOCALHOST_TCP_PROXY_MODE}${UDP_PROXY_MODE}${LOCALHOST_UDP_PROXY_MODE}" | grep "returnhome") +chnlist=$(echo "${TCP_PROXY_MODE}${LOCALHOST_TCP_PROXY_MODE}${UDP_PROXY_MODE}${LOCALHOST_UDP_PROXY_MODE}" | grep "chnroute") +gfwlist=$(echo "${TCP_PROXY_MODE}${LOCALHOST_TCP_PROXY_MODE}${UDP_PROXY_MODE}${LOCALHOST_UDP_PROXY_MODE}" | grep "gfwlist") +DNS_SHUNT=$(config_t_get global dns_shunt dnsmasq) +[ -z "$(first_type $DNS_SHUNT)" ] && DNS_SHUNT="dnsmasq" +DNS_MODE=$(config_t_get global dns_mode pdnsd) +DNS_FORWARD=$(config_t_get global dns_forward 1.1.1.1:53 | sed 's/#/:/g' | sed -E 's/\:([^:]+)$/#\1/g') +DNS_CACHE=$(config_t_get global dns_cache 0) +CHINADNS_NG=$(config_t_get global chinadns_ng 0) +filter_proxy_ipv6=$(config_t_get global filter_proxy_ipv6 0) +dns_listen_port=${DNS_PORT} + +DEFAULT_DNS=$(uci show dhcp | grep "@dnsmasq" | grep "\.server=" | awk -F '=' '{print $2}' | sed "s/'//g" | tr ' ' '\n' | grep -v "\/" | head -2 | sed ':label;N;s/\n/,/;b label') +[ -z "${DEFAULT_DNS}" ] && DEFAULT_DNS=$(echo -n $(sed -n 's/^nameserver[ \t]*\([^ ]*\)$/\1/p' "${RESOLVFILE}" | grep -v -E "0.0.0.0|127.0.0.1|::" | head -2) | tr ' ' ',') +LOCAL_DNS="${DEFAULT_DNS:-119.29.29.29}" + +PROXY_IPV6=$(config_t_get global_forwarding ipv6_tproxy 0) +DNS_QUERY_STRATEGY="UseIPv4" +[ "$PROXY_IPV6" = "1" ] && DNS_QUERY_STRATEGY="UseIP" + +export V2RAY_LOCATION_ASSET=$(config_t_get global_rules v2ray_location_asset "/usr/share/v2ray/") +export XRAY_LOCATION_ASSET=$V2RAY_LOCATION_ASSET +mkdir -p /tmp/etc $TMP_PATH $TMP_BIN_PATH $TMP_SCRIPT_FUNC_PATH $TMP_ID_PATH $TMP_PORT_PATH $TMP_ROUTE_PATH $TMP_ACL_PATH $TMP_PATH2 + +arg1=$1 +shift +case $arg1 in +get_new_port) + get_new_port $@ + ;; +run_socks) + run_socks $@ + ;; +run_redir) + run_redir $@ + ;; +node_switch) + node_switch $@ + ;; +echolog) + echolog $@ + ;; +stop) + stop + ;; +start) + start + ;; +boot) + boot + ;; +esac diff --git a/luci-app-passwall/root/usr/share/passwall/helper_dnsmasq.sh b/luci-app-passwall/root/usr/share/passwall/helper_dnsmasq.sh new file mode 100755 index 000000000..cd35dd960 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/helper_dnsmasq.sh @@ -0,0 +1,98 @@ +#!/bin/sh + +stretch() { + #zhenduiluanshezhiDNSderen + local dnsmasq_server=$(uci -q get dhcp.@dnsmasq[0].server) + local dnsmasq_noresolv=$(uci -q get dhcp.@dnsmasq[0].noresolv) + local _flag + for server in $dnsmasq_server; do + [ -z "$(echo $server | grep '\/')" ] && _flag=1 + done + [ -z "$_flag" ] && [ "$dnsmasq_noresolv" = "1" ] && { + uci -q delete dhcp.@dnsmasq[0].noresolv + uci -q set dhcp.@dnsmasq[0].resolvfile="$RESOLVFILE" + uci commit dhcp + } +} + +backup_servers() { + DNSMASQ_DNS=$(uci show dhcp | grep "@dnsmasq" | grep ".server=" | awk -F '=' '{print $2}' | sed "s/'//g" | tr ' ' ',') + if [ -n "${DNSMASQ_DNS}" ]; then + uci -q set $CONFIG.@global[0].dnsmasq_servers="${DNSMASQ_DNS}" + uci commit $CONFIG + fi +} + +restore_servers() { + OLD_SERVER=$(uci -q get $CONFIG.@global[0].dnsmasq_servers | tr "," " ") + for server in $OLD_SERVER; do + uci -q del_list dhcp.@dnsmasq[0].server=$server + uci -q add_list dhcp.@dnsmasq[0].server=$server + done + uci commit dhcp + uci -q delete $CONFIG.@global[0].dnsmasq_servers + uci commit $CONFIG +} + +logic_restart() { + local no_log + eval_set_val $@ + _LOG_FILE=$LOG_FILE + [ -n "$no_log" ] && LOG_FILE="/dev/null" + if [ -f "$TMP_PATH/default_DNS" ]; then + backup_servers + #sed -i "/list server/d" /etc/config/dhcp >/dev/null 2>&1 + for server in $(uci -q get dhcp.@dnsmasq[0].server); do + [ -n "$(echo $server | grep '\/')" ] || uci -q del_list dhcp.@dnsmasq[0].server="$server" + done + /etc/init.d/dnsmasq restart >/dev/null 2>&1 & + restore_servers + else + /etc/init.d/dnsmasq restart >/dev/null 2>&1 & + fi + echolog "重启 dnsmasq 服务" + LOG_FILE=${_LOG_FILE} +} + +restart() { + local no_log + eval_set_val $@ + _LOG_FILE=$LOG_FILE + [ -n "$no_log" ] && LOG_FILE="/dev/null" + /etc/init.d/dnsmasq restart >/dev/null 2>&1 & + echolog "重启 dnsmasq 服务" + LOG_FILE=${_LOG_FILE} +} + +add() { + local FLAG TMP_DNSMASQ_PATH DNSMASQ_CONF_FILE DEFAULT_DNS LOCAL_DNS TUN_DNS REMOTE_FAKEDNS CHINADNS_DNS TCP_NODE PROXY_MODE NO_PROXY_IPV6 NO_LOGIC_LOG + eval_set_val $@ + lua $APP_PATH/helper_dnsmasq_add.lua -FLAG $FLAG -TMP_DNSMASQ_PATH $TMP_DNSMASQ_PATH -DNSMASQ_CONF_FILE $DNSMASQ_CONF_FILE -DEFAULT_DNS $DEFAULT_DNS -LOCAL_DNS $LOCAL_DNS -TUN_DNS $TUN_DNS -REMOTE_FAKEDNS ${REMOTE_FAKEDNS:-0} -CHINADNS_DNS ${CHINADNS_DNS:-0} -TCP_NODE $TCP_NODE -PROXY_MODE $PROXY_MODE -NO_PROXY_IPV6 ${NO_PROXY_IPV6:-0} -NO_LOGIC_LOG ${NO_LOGIC_LOG:-0} +} + +del() { + rm -rf /tmp/dnsmasq.d/dnsmasq-$CONFIG.conf + rm -rf $DNSMASQ_PATH/dnsmasq-$CONFIG.conf + rm -rf $TMP_DNSMASQ_PATH +} + +arg1=$1 +shift +case $arg1 in +stretch) + stretch $@ + ;; +add) + add $@ + ;; +del) + del $@ + ;; +restart) + restart $@ + ;; +logic_restart) + logic_restart $@ + ;; +*) ;; +esac diff --git a/luci-app-passwall/root/usr/share/passwall/helper_dnsmasq_add.lua b/luci-app-passwall/root/usr/share/passwall/helper_dnsmasq_add.lua new file mode 100644 index 000000000..f37e61cbb --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/helper_dnsmasq_add.lua @@ -0,0 +1,430 @@ +local api = require "luci.model.cbi.passwall.api.api" + +local var = api.get_args(arg) +local FLAG = var["-FLAG"] +local TMP_DNSMASQ_PATH = var["-TMP_DNSMASQ_PATH"] +local DNSMASQ_CONF_FILE = var["-DNSMASQ_CONF_FILE"] +local DEFAULT_DNS = var["-DEFAULT_DNS"] +local LOCAL_DNS = var["-LOCAL_DNS"] +local TUN_DNS = var["-TUN_DNS"] +local REMOTE_FAKEDNS = var["-REMOTE_FAKEDNS"] +local CHINADNS_DNS = var["-CHINADNS_DNS"] +local TCP_NODE = var["-TCP_NODE"] +local PROXY_MODE = var["-PROXY_MODE"] +local NO_PROXY_IPV6 = var["-NO_PROXY_IPV6"] +local NO_LOGIC_LOG = var["-NO_LOGIC_LOG"] +local LOG_FILE = "/tmp/log/passwall.log" +local CACHE_PATH = "/tmp/etc/passwall_tmp" +local CACHE_FLAG = "dns_" .. FLAG +local CACHE_DNS_PATH = CACHE_PATH .. "/" .. CACHE_FLAG +local CACHE_MD5_FILE = CACHE_DNS_PATH .. ".md5" + +local uci = api.uci +local sys = api.sys +local jsonc = api.jsonc +local appname = api.appname +local fs = api.fs +local datatypes = api.datatypes + +local list1 = {} +local excluded_domain = {} +local excluded_domain_str = "!" + +local function log(...) + if NO_LOGIC_LOG == "1" then + return + end + local f, err = io.open(LOG_FILE, "a") + if f and err == nil then + local str = os.date("%Y-%m-%d %H:%M:%S: ") .. table.concat({...}, " ") + f:write(str .. "\n") + f:close() + end +end + +--从url获取域名 +local function get_domain_from_url(url) + if url then + if datatypes.hostname(url) then + return url + end + local domain = url:match("//([^/]+)") + if domain then + return domain + end + end + return "" +end + +local function check_dns(domain, dns) + if domain == "" or domain:find("#") then + return false + end + if not dns then + return + end + for k,v in ipairs(list1[domain].dns) do + if dns == v then + return true + end + end + return false +end + +local function check_ipset(domain, ipset) + if domain == "" or domain:find("#") then + return false + end + if not ipset then + return + end + for k,v in ipairs(list1[domain].ipsets) do + if ipset == v then + return true + end + end + return false +end + +local function set_domain_address(domain, address) + if domain == "" or domain:find("#") then + return + end + if not list1[domain] then + list1[domain] = { + dns = {}, + ipsets = {} + } + end + if not list1[domain].address then + list1[domain].address = address + end +end + +local function set_domain_dns(domain, dns) + if domain == "" or domain:find("#") then + return + end + if not dns then + return + end + if not list1[domain] then + list1[domain] = { + dns = {}, + ipsets = {} + } + end + for line in string.gmatch(dns, '[^' .. "," .. ']+') do + if not check_dns(domain, line) then + table.insert(list1[domain].dns, line) + end + end +end + +local function set_domain_ipset(domain, ipset) + if domain == "" or domain:find("#") then + return + end + if not ipset then + return + end + if not list1[domain] then + list1[domain] = { + dns = {}, + ipsets = {} + } + end + for line in string.gmatch(ipset, '[^' .. "," .. ']+') do + if not check_ipset(domain, line) then + table.insert(list1[domain].ipsets, line) + end + end +end + +local function add_excluded_domain(domain) + if domain == "" or domain:find("#") then + return + end + table.insert(excluded_domain, domain) + excluded_domain_str = excluded_domain_str .. "|" .. domain +end + +local function check_excluded_domain(domain) + if domain == "" or domain:find("#") then + return false + end + for k,v in ipairs(excluded_domain) do + if domain:find(v) then + return true + end + end + return false +end + +local dnsmasq_default_dns + +local cache_md5 = "" +local str = TMP_DNSMASQ_PATH .. DNSMASQ_CONF_FILE .. DEFAULT_DNS .. LOCAL_DNS .. TUN_DNS .. REMOTE_FAKEDNS .. CHINADNS_DNS .. PROXY_MODE .. NO_PROXY_IPV6 +local md5 = luci.sys.exec("echo -n $(echo '" .. str .. "' | md5sum | awk '{print $1}')") +if fs.access(CACHE_MD5_FILE) then + for line in io.lines(CACHE_MD5_FILE) do + cache_md5 = line + end +end + +if cache_md5 ~= md5 then + sys.call("rm -rf " .. CACHE_PATH .. "/" .. CACHE_FLAG .. "*") +end + +local global = PROXY_MODE:find("global") +local returnhome = PROXY_MODE:find("returnhome") +local chnlist = PROXY_MODE:find("chnroute") +local gfwlist = PROXY_MODE:find("gfwlist") +local only_global + +if CHINADNS_DNS ~= "0" then + dnsmasq_default_dns = CHINADNS_DNS +end +if global and (not returnhome and not chnlist and not gfwlist) then + dnsmasq_default_dns = TUN_DNS + only_global = 1 +end + +if not fs.access(CACHE_DNS_PATH) then + fs.mkdir("/tmp/dnsmasq.d") + fs.mkdir(CACHE_DNS_PATH) + + --屏蔽列表 + for line in io.lines("/usr/share/passwall/rules/block_host") do + if line ~= "" and not line:find("#") then + set_domain_address(line, "0.0.0.0") + end + end + + --始终用国内DNS解析节点域名 + uci:foreach(appname, "nodes", function(t) + local address = t.address + if datatypes.hostname(address) then + set_domain_dns(address, LOCAL_DNS) + set_domain_ipset(address, "vpsiplist,vpsiplist6") + end + end) + log(string.format(" - 节点列表中的域名(vpsiplist):%s", LOCAL_DNS or "默认")) + + --始终用国内DNS解析直连(白名单)列表 + for line in io.lines("/usr/share/passwall/rules/direct_host") do + if line ~= "" and not line:find("#") then + add_excluded_domain(line) + set_domain_dns(line, LOCAL_DNS) + set_domain_ipset(line, "whitelist,whitelist6") + end + end + log(string.format(" - 域名白名单(whitelist):%s", LOCAL_DNS or "默认")) + + local fwd_dns = LOCAL_DNS + local ipset_flag = "whitelist,whitelist6" + local no_ipv6 + if uci:get(appname, "@global_subscribe[0]", "subscribe_proxy") or "0" == "1" then + fwd_dns = TUN_DNS + ipset_flag = "blacklist,blacklist6" + if NO_PROXY_IPV6 == "1" then + ipset_flag = "blacklist" + no_ipv6 = true + end + if not only_global then + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + end + end + uci:foreach(appname, "subscribe_list", function(t) + local domain = get_domain_from_url(t.url) + if domain then + if no_ipv6 then + set_domain_address(domain, "::") + end + set_domain_dns(domain, fwd_dns) + set_domain_ipset(domain, ipset_flag) + end + end) + log(string.format(" - 节点订阅域名(blacklist):%s", fwd_dns or "默认")) + + --始终使用远程DNS解析代理(黑名单)列表 + for line in io.lines("/usr/share/passwall/rules/proxy_host") do + if line ~= "" and not line:find("#") then + add_excluded_domain(line) + local ipset_flag = "blacklist,blacklist6" + if NO_PROXY_IPV6 == "1" then + set_domain_address(line, "::") + ipset_flag = "blacklist" + end + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + set_domain_dns(line, TUN_DNS) + set_domain_ipset(line, ipset_flag) + end + end + log(string.format(" - 代理域名表(blacklist):%s", TUN_DNS or "默认")) + + --分流规则 + if uci:get(appname, TCP_NODE, "protocol") == "_shunt" then + local t = uci:get_all(appname, TCP_NODE) + local default_node_id = t["default_node"] or "_direct" + uci:foreach(appname, "shunt_rules", function(s) + local _node_id = t[s[".name"]] or "nil" + if _node_id ~= "nil" and _node_id ~= "_blackhole" then + if _node_id == "_default" then + _node_id = default_node_id + end + + fwd_dns = nil + ipset_flag = nil + no_ipv6 = nil + + if _node_id == "_direct" then + fwd_dns = LOCAL_DNS + ipset_flag = "whitelist,whitelist6" + else + fwd_dns = TUN_DNS + ipset_flag = "shuntlist,shuntlist6" + if NO_PROXY_IPV6 == "1" then + ipset_flag = "shuntlist" + no_ipv6 = true + end + if not only_global then + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + end + end + + local domain_list = s.domain_list or "" + for line in string.gmatch(domain_list, "[^\r\n]+") do + if line ~= "" and not line:find("#") and not line:find("regexp:") and not line:find("geosite:") and not line:find("ext:") then + if line:find("domain:") or line:find("full:") then + line = string.match(line, ":([^:]+)$") + end + add_excluded_domain(line) + + if no_ipv6 then + set_domain_address(line, "::") + end + set_domain_dns(line, fwd_dns) + set_domain_ipset(line, ipset_flag) + end + end + if _node_id ~= "_direct" then + log(string.format(" - V2ray/Xray分流规则(%s):%s", s.remarks, fwd_dns or "默认")) + end + end + end) + end + + --如果没有使用回国模式 + if not returnhome then + if fs.access("/usr/share/passwall/rules/gfwlist") then + local gfwlist_str = sys.exec('cat /usr/share/passwall/rules/gfwlist | grep -v -E "^#" | grep -v -E "' .. excluded_domain_str .. '"') + for line in string.gmatch(gfwlist_str, "[^\r\n]+") do + if line ~= "" then + local ipset_flag = "gfwlist,gfwlist6" + if NO_PROXY_IPV6 == "1" then + ipset_flag = "gfwlist" + set_domain_address(line, "::") + end + if not only_global then + fwd_dns = TUN_DNS + if CHINADNS_DNS ~= "0" then + fwd_dns = nil + end + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + set_domain_dns(line, fwd_dns) + set_domain_ipset(line, ipset_flag) + end + end + end + log(string.format(" - 防火墙域名表(gfwlist):%s", fwd_dns or "默认")) + end + + if CHINADNS_DNS ~= "0" then + if fs.access("/usr/share/passwall/rules/chnlist") then + fwd_dns = nil + local chnlist_str = sys.exec('cat /usr/share/passwall/rules/chnlist | grep -v -E "^#" | grep -v -E "' .. excluded_domain_str .. '"') + for line in string.gmatch(chnlist_str, "[^\r\n]+") do + if line ~= "" then + set_domain_dns(line, fwd_dns) + set_domain_ipset(line, "chnroute,chnroute6") + end + end + end + log(string.format(" - 中国域名表(chnroute):%s", fwd_dns or "默认")) + end + else + if fs.access("/usr/share/passwall/rules/chnlist") then + local chnlist_str = sys.exec('cat /usr/share/passwall/rules/chnlist | grep -v -E "^#" | grep -v -E "' .. excluded_domain_str .. '"') + for line in string.gmatch(chnlist_str, "[^\r\n]+") do + if line ~= "" then + local ipset_flag = "chnroute,chnroute6" + if NO_PROXY_IPV6 == "1" then + ipset_flag = "chnroute" + set_domain_address(line, "::") + end + if not only_global then + set_domain_dns(line, TUN_DNS) + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + set_domain_ipset(line, ipset_flag) + end + end + end + log(string.format(" - 中国域名表(chnroute):%s", TUN_DNS or "默认")) + end + end + + local address_out = io.open(CACHE_DNS_PATH .. "/000-address.conf", "a") + local server_out = io.open(CACHE_DNS_PATH .. "/001-server.conf", "a") + local ipset_out = io.open(CACHE_DNS_PATH .. "/ipset.conf", "a") + for key, value in pairs(list1) do + if value.address and #value.address > 0 then + address_out:write(string.format("address=/.%s/%s\n", key, value.address)) + end + if value.dns and #value.dns > 0 then + for i, dns in ipairs(value.dns) do + server_out:write(string.format("server=/.%s/%s\n", key, dns)) + end + end + if value.ipsets and #value.ipsets > 0 then + local ipsets_str = "" + for i, ipset in ipairs(value.ipsets) do + ipsets_str = ipsets_str .. ipset .. "," + end + ipsets_str = ipsets_str:sub(1, #ipsets_str - 1) + ipset_out:write(string.format("ipset=/.%s/%s\n", key, ipsets_str)) + end + end + address_out:close() + server_out:close() + ipset_out:close() + + local f_out = io.open(CACHE_MD5_FILE, "a") + f_out:write(md5) + f_out:close() +end +fs.symlink(CACHE_DNS_PATH, TMP_DNSMASQ_PATH) +local conf_out = io.open(DNSMASQ_CONF_FILE, "a") +conf_out:write(string.format("conf-dir=%s\n", TMP_DNSMASQ_PATH)) +if dnsmasq_default_dns then + local f_out = io.open("/tmp/etc/passwall/default_DNS", "a") + f_out:write(DEFAULT_DNS) + f_out:close() + conf_out:write(string.format("server=%s\n", dnsmasq_default_dns)) + conf_out:write("all-servers\n") + conf_out:write("no-poll\n") + conf_out:write("no-resolv\n") + log(string.format(" - 以上所列以外及默认:%s", dnsmasq_default_dns)) +end +conf_out:close() +log(" - PassWall必须依赖于Dnsmasq,如果你自行配置了错误的DNS流程,将会导致域名(直连/代理域名)分流失效!!!") diff --git a/luci-app-passwall/root/usr/share/passwall/helper_smartdns.sh b/luci-app-passwall/root/usr/share/passwall/helper_smartdns.sh new file mode 100755 index 000000000..b63f53beb --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/helper_smartdns.sh @@ -0,0 +1,39 @@ +#!/bin/sh + +restart() { + local no_log + eval_set_val $@ + _LOG_FILE=$LOG_FILE + [ -n "$no_log" ] && LOG_FILE="/dev/null" + rm -rf /tmp/smartdns.cache + /etc/init.d/smartdns reload >/dev/null 2>&1 & + LOG_FILE=${_LOG_FILE} +} + +add() { + local FLAG SMARTDNS_CONF LOCAL_GROUP REMOTE_GROUP REMOTE_FAKEDNS TUN_DNS TCP_NODE PROXY_MODE NO_PROXY_IPV6 NO_LOGIC_LOG + eval_set_val $@ + lua $APP_PATH/helper_smartdns_add.lua -FLAG $FLAG -SMARTDNS_CONF $SMARTDNS_CONF -LOCAL_GROUP ${LOCAL_GROUP:-nil} -REMOTE_GROUP ${REMOTE_GROUP:-nil} -REMOTE_FAKEDNS ${REMOTE_FAKEDNS:-0} -TUN_DNS $TUN_DNS -TCP_NODE $TCP_NODE -PROXY_MODE $PROXY_MODE -NO_PROXY_IPV6 ${NO_PROXY_IPV6:-0} -NO_LOGIC_LOG ${NO_LOGIC_LOG:-0} +} + +del() { + rm -rf /tmp/etc/smartdns/passwall.conf + sed -i "/passwall/d" /etc/smartdns/custom.conf >/dev/null 2>&1 + rm -rf /tmp/smartdns.cache + /etc/init.d/smartdns reload >/dev/null 2>&1 & +} + +arg1=$1 +shift +case $arg1 in +add) + add $@ + ;; +del) + del $@ + ;; +restart) + restart $@ + ;; +*) ;; +esac diff --git a/luci-app-passwall/root/usr/share/passwall/helper_smartdns_add.lua b/luci-app-passwall/root/usr/share/passwall/helper_smartdns_add.lua new file mode 100644 index 000000000..35d860f40 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/helper_smartdns_add.lua @@ -0,0 +1,394 @@ +local api = require "luci.model.cbi.passwall.api.api" + +local var = api.get_args(arg) +local FLAG = var["-FLAG"] +local SMARTDNS_CONF = var["-SMARTDNS_CONF"] +local LOCAL_GROUP = var["-LOCAL_GROUP"] +local REMOTE_GROUP = var["-REMOTE_GROUP"] +local REMOTE_FAKEDNS = var["-REMOTE_FAKEDNS"] +local TUN_DNS = var["-TUN_DNS"] +local TCP_NODE = var["-TCP_NODE"] +local PROXY_MODE = var["-PROXY_MODE"] +local NO_PROXY_IPV6 = var["-NO_PROXY_IPV6"] +local NO_LOGIC_LOG = var["-NO_LOGIC_LOG"] +local LOG_FILE = "/tmp/log/passwall.log" +local CACHE_PATH = "/tmp/etc/passwall_tmp" +local CACHE_FLAG = "dns_" .. FLAG +local CACHE_DNS_FILE = CACHE_PATH .. "/" .. CACHE_FLAG .. ".conf" +local CACHE_MD5_FILE = CACHE_PATH .. "/" .. CACHE_FLAG .. ".md5" +local SMARTDNS_PATH = "/tmp/etc/smartdns" + +local uci = api.uci +local sys = api.sys +local jsonc = api.jsonc +local appname = api.appname +local fs = api.fs +local datatypes = api.datatypes + +local list1 = {} +local excluded_domain = {} +local excluded_domain_str = "!" + +local function log(...) + if NO_LOGIC_LOG == "1" then + return + end + local f, err = io.open(LOG_FILE, "a") + if f and err == nil then + local str = os.date("%Y-%m-%d %H:%M:%S: ") .. table.concat({...}, " ") + f:write(str .. "\n") + f:close() + end +end + +--从url获取域名 +local function get_domain_from_url(url) + if url then + if datatypes.hostname(url) then + return url + end + local domain = url:match("//([^/]+)") + if domain then + return domain + end + end + return "" +end + +local function check_ipset(domain, ipset) + if domain == "" or domain:find("#") then + return false + end + if not ipset then + return + end + for k,v in ipairs(list1[domain].ipsets) do + if ipset == v then + return true + end + end + return false +end + +local function set_domain_address(domain, address) + if domain == "" or domain:find("#") then + return + end + if not list1[domain] then + list1[domain] = { + ipsets = {} + } + end + if not list1[domain].address then + list1[domain].address = address + end +end + +local function set_domain_group(domain, group) + if domain == "" or domain:find("#") then + return + end + if not group then + return + end + if not list1[domain] then + list1[domain] = { + ipsets = {} + } + end + if not list1[domain].group then + list1[domain].group = group + if group == REMOTE_GROUP then + list1[domain].speed_check_mode = "none" + end + end +end + +local function set_domain_ipset(domain, ipset) + if domain == "" or domain:find("#") then + return + end + if not ipset then + return + end + if not list1[domain] then + list1[domain] = { + ipsets = {} + } + end + for line in string.gmatch(ipset, '[^' .. "," .. ']+') do + if not check_ipset(domain, line) then + table.insert(list1[domain].ipsets, line) + end + end +end + +local function add_excluded_domain(domain) + if domain == "" or domain:find("#") then + return + end + table.insert(excluded_domain, domain) + excluded_domain_str = excluded_domain_str .. "|" .. domain +end + +local function check_excluded_domain(domain) + if domain == "" or domain:find("#") then + return false + end + for k,v in ipairs(excluded_domain) do + if domain:find(v) then + return true + end + end + return false +end + +local cache_md5 = "" +local str = SMARTDNS_CONF .. LOCAL_GROUP .. REMOTE_GROUP .. REMOTE_FAKEDNS .. TUN_DNS .. PROXY_MODE .. NO_PROXY_IPV6 +local md5 = luci.sys.exec("echo -n $(echo '" .. str .. "' | md5sum | awk '{print $1}')") +if fs.access(CACHE_MD5_FILE) then + for line in io.lines(CACHE_MD5_FILE) do + cache_md5 = line + end +end + +if cache_md5 ~= md5 then + sys.call("rm -rf " .. CACHE_PATH .. "/" .. CACHE_FLAG .. "*") +end + +local global = PROXY_MODE:find("global") +local returnhome = PROXY_MODE:find("returnhome") +local chnlist = PROXY_MODE:find("chnroute") +local gfwlist = PROXY_MODE:find("gfwlist") + +if not REMOTE_GROUP or REMOTE_GROUP == "nil" then + REMOTE_GROUP = "passwall_proxy" + if TUN_DNS then + TUN_DNS = TUN_DNS:gsub("#", ":") + end + sys.call('sed -i "/passwall/d" /etc/smartdns/custom.conf >/dev/null 2>&1') +end + +if not fs.access(CACHE_DNS_FILE) then + sys.call(string.format('echo "server %s -group %s -exclude-default-group" >> %s', TUN_DNS, REMOTE_GROUP, CACHE_DNS_FILE)) + --屏蔽列表 + for line in io.lines("/usr/share/passwall/rules/block_host") do + if line ~= "" and not line:find("#") then + set_domain_address(line, "-") + end + end + + --始终用国内DNS解析节点域名 + uci:foreach(appname, "nodes", function(t) + local address = t.address + if datatypes.hostname(address) then + set_domain_group(address, LOCAL_GROUP) + set_domain_ipset(address, "#4:vpsiplist,#6:vpsiplist6") + end + end) + log(string.format(" - 节点列表中的域名(vpsiplist)使用分组:%s", LOCAL_GROUP or "默认")) + + --始终用国内DNS解析直连(白名单)列表 + for line in io.lines("/usr/share/passwall/rules/direct_host") do + if line ~= "" and not line:find("#") then + add_excluded_domain(line) + set_domain_group(line, LOCAL_GROUP) + set_domain_ipset(line, "#4:whitelist,#6:whitelist6") + end + end + log(string.format(" - 域名白名单(whitelist)使用分组:%s", LOCAL_GROUP or "默认")) + + local fwd_group = LOCAL_GROUP + local ipset_flag = "#4:whitelist,#6:whitelist6" + local no_ipv6 + if uci:get(appname, "@global_subscribe[0]", "subscribe_proxy") or "0" == "1" then + fwd_group = REMOTE_GROUP + ipset_flag = "#4:blacklist,#6:blacklist6" + if NO_PROXY_IPV6 == "1" then + ipset_flag = "#4:blacklist" + no_ipv6 = true + end + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + end + uci:foreach(appname, "subscribe_list", function(t) + local domain = get_domain_from_url(t.url) + if domain then + if no_ipv6 then + set_domain_address(domain, "#6") + end + set_domain_group(domain, fwd_group) + set_domain_ipset(domain, ipset_flag) + end + end) + log(string.format(" - 节点订阅域名(blacklist)使用分组:%s", fwd_group or "默认")) + + --始终使用远程DNS解析代理(黑名单)列表 + for line in io.lines("/usr/share/passwall/rules/proxy_host") do + if line ~= "" and not line:find("#") then + add_excluded_domain(line) + local ipset_flag = "#4:blacklist,#6:blacklist6" + if NO_PROXY_IPV6 == "1" then + set_domain_address(line, "#6") + ipset_flag = "#4:blacklist" + end + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + set_domain_group(line, REMOTE_GROUP) + set_domain_ipset(line, ipset_flag) + end + end + log(string.format(" - 代理域名表(blacklist)使用分组:%s", REMOTE_GROUP or "默认")) + + --分流规则 + if uci:get(appname, TCP_NODE, "protocol") == "_shunt" then + local t = uci:get_all(appname, TCP_NODE) + local default_node_id = t["default_node"] or "_direct" + uci:foreach(appname, "shunt_rules", function(s) + local _node_id = t[s[".name"]] or "nil" + if _node_id ~= "nil" and _node_id ~= "_blackhole" then + if _node_id == "_default" then + _node_id = default_node_id + end + + fwd_group = nil + ipset_flag = nil + no_ipv6 = nil + + if _node_id == "_direct" then + fwd_group = LOCAL_GROUP + ipset_flag = "#4:whitelist,#6:whitelist6" + else + fwd_group = REMOTE_GROUP + ipset_flag = "#4:shuntlist,#6:shuntlist6" + if NO_PROXY_IPV6 == "1" then + ipset_flag = "shuntlist" + no_ipv6 = true + end + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + end + + local domain_list = s.domain_list or "" + for line in string.gmatch(domain_list, "[^\r\n]+") do + if line ~= "" and not line:find("#") and not line:find("regexp:") and not line:find("geosite:") and not line:find("ext:") then + if line:find("domain:") or line:find("full:") then + line = string.match(line, ":([^:]+)$") + end + add_excluded_domain(line) + + if no_ipv6 then + set_domain_address(line, "#6") + end + set_domain_group(line, fwd_group) + set_domain_ipset(line, ipset_flag) + end + end + if _node_id ~= "_direct" then + log(string.format(" - V2ray/Xray分流规则(%s)使用分组:%s", s.remarks, fwd_group or "默认")) + end + end + end) + end + + --如果没有使用回国模式 + if not returnhome then + if fs.access("/usr/share/passwall/rules/gfwlist") then + local gfwlist_str = sys.exec('cat /usr/share/passwall/rules/gfwlist | grep -v -E "^#" | grep -v -E "' .. excluded_domain_str .. '"') + for line in string.gmatch(gfwlist_str, "[^\r\n]+") do + if line ~= "" then + local ipset_flag = "#4:gfwlist,#6:gfwlist6" + if NO_PROXY_IPV6 == "1" then + ipset_flag = "#4:gfwlist" + set_domain_address(line, "#6") + end + fwd_group = REMOTE_GROUP + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + set_domain_group(line, fwd_group) + set_domain_ipset(line, ipset_flag) + end + end + log(string.format(" - 防火墙域名表(gfwlist)使用分组:%s", fwd_group or "默认")) + end + + if fs.access("/usr/share/passwall/rules/chnlist") and chnlist then + local chnlist_str = sys.exec('cat /usr/share/passwall/rules/chnlist | grep -v -E "^#" | grep -v -E "' .. excluded_domain_str .. '"') + for line in string.gmatch(chnlist_str, "[^\r\n]+") do + if line ~= "" then + set_domain_group(line, LOCAL_GROUP) + set_domain_ipset(line, "#4:chnroute,#6:chnroute6") + end + end + end + log(string.format(" - 中国域名表(chnroute)使用分组:%s", LOCAL_GROUP or "默认")) + else + if fs.access("/usr/share/passwall/rules/chnlist") then + local chnlist_str = sys.exec('cat /usr/share/passwall/rules/chnlist | grep -v -E "^#" | grep -v -E "' .. excluded_domain_str .. '"') + for line in string.gmatch(chnlist_str, "[^\r\n]+") do + if line ~= "" then + local ipset_flag = "#4:chnroute,#6:chnroute6" + if NO_PROXY_IPV6 == "1" then + ipset_flag = "#4:chnroute" + set_domain_address(line, "#6") + end + set_domain_group(line, REMOTE_GROUP) + if REMOTE_FAKEDNS == "1" then + ipset_flag = nil + end + set_domain_ipset(line, ipset_flag) + end + end + log(string.format(" - 中国域名表(chnroute)使用分组:%s", REMOTE_GROUP or "默认")) + end + end + + local f_out = io.open(CACHE_DNS_FILE, "a") + for key, value in pairs(list1) do + local group_str = "" + local ipset_str = "" + local speed_check_mode_str = "" + local address_str = "" + if value.group and #value.group > 0 then + group_str = group_str .. value.group + end + if group_str ~= "" then + group_str = " -n " .. group_str + end + if value.ipsets and #value.ipsets > 0 then + for i, ipset in ipairs(value.ipsets) do + ipset_str = ipset_str .. ipset .. "," + end + ipset_str = ipset_str:sub(1, #ipset_str - 1) + end + if ipset_str ~= "" then + ipset_str = " -p " .. ipset_str + end + if value.address and #value.address > 0 then + address_str = address_str .. value.address + end + if address_str ~= "" then + address_str = " -a " .. address_str + end + if value.speed_check_mode and #value.speed_check_mode > 0 then + speed_check_mode_str = value.speed_check_mode + end + if speed_check_mode_str ~= "" then + speed_check_mode_str = " -c " .. speed_check_mode_str + end + local str = string.format("domain-rules /%s/ %s%s%s%s\n", key, group_str, ipset_str, address_str, speed_check_mode_str) + f_out:write(str) + end + f_out:close() + + f_out = io.open(CACHE_MD5_FILE, "a") + f_out:write(md5) + f_out:close() +end +fs.symlink(CACHE_DNS_FILE, SMARTDNS_CONF) +sys.call(string.format('echo "conf-file %s" >> /etc/smartdns/custom.conf', SMARTDNS_CONF)) +log(" - 请让SmartDNS作为Dnsmasq的上游或重定向!") diff --git a/luci-app-passwall/root/usr/share/passwall/iptables.sh b/luci-app-passwall/root/usr/share/passwall/iptables.sh new file mode 100755 index 000000000..cd5fcc636 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/iptables.sh @@ -0,0 +1,1321 @@ +#!/bin/sh + +DIR="$(cd "$(dirname "$0")" && pwd)" +MY_PATH=$DIR/iptables.sh +IPSET_LANIPLIST="laniplist" +IPSET_VPSIPLIST="vpsiplist" +IPSET_SHUNTLIST="shuntlist" +IPSET_GFW="gfwlist" +IPSET_CHN="chnroute" +IPSET_BLACKLIST="blacklist" +IPSET_WHITELIST="whitelist" +IPSET_BLOCKLIST="blocklist" + +IPSET_LANIPLIST6="laniplist6" +IPSET_VPSIPLIST6="vpsiplist6" +IPSET_SHUNTLIST6="shuntlist6" +IPSET_GFW6="gfwlist6" +IPSET_CHN6="chnroute6" +IPSET_BLACKLIST6="blacklist6" +IPSET_WHITELIST6="whitelist6" +IPSET_BLOCKLIST6="blocklist6" + +FORCE_INDEX=2 + +. /lib/functions/network.sh + +ipt=$(command -v iptables-legacy || command -v iptables) +ip6t=$(command -v ip6tables-legacy || command -v ip6tables) + +ipt_n="$ipt -t nat -w" +ipt_m="$ipt -t mangle -w" +ip6t_n="$ip6t -t nat -w" +ip6t_m="$ip6t -t mangle -w" +[ -z "$ip6t" -o -z "$(lsmod | grep 'ip6table_nat')" ] && ip6t_n="eval #$ip6t_n" +[ -z "$ip6t" -o -z "$(lsmod | grep 'ip6table_mangle')" ] && ip6t_m="eval #$ip6t_m" +FWI=$(uci -q get firewall.passwall.path 2>/dev/null) +FAKE_IP="198.18.0.0/16" + +factor() { + if [ -z "$1" ] || [ -z "$2" ]; then + echo "" + elif [ "$1" == "1:65535" ]; then + echo "" + else + echo "$2 $1" + fi +} + +dst() { + echo "-m set $2 --match-set $1 dst" +} + +comment() { + local name=$(echo $1 | sed 's/ /_/g') + echo "-m comment --comment '$name'" +} + +destroy_ipset() { + for i in "$@"; do + ipset -q -F $i + ipset -q -X $i + done +} + +insert_rule_before() { + [ $# -ge 3 ] || { + return 1 + } + local ipt_tmp="${1}"; shift + local chain="${1}"; shift + local keyword="${1}"; shift + local rule="${1}"; shift + local _index=$($ipt_tmp -n -L $chain --line-numbers 2>/dev/null | grep "$keyword" | head -n 1 | awk '{print $1}') + $ipt_tmp -I $chain $_index $rule +} + +insert_rule_after() { + [ $# -ge 3 ] || { + return 1 + } + local ipt_tmp="${1}"; shift + local chain="${1}"; shift + local keyword="${1}"; shift + local rule="${1}"; shift + local _index=$($ipt_tmp -n -L $chain --line-numbers 2>/dev/null | grep "$keyword" | awk 'END {print}' | awk '{print $1}') + _index=${_index:-0} + _index=$((_index + 1)) + $ipt_tmp -I $chain $_index $rule +} + +RULE_LAST_INDEX() { + [ $# -ge 3 ] || { + echolog "索引列举方式不正确(iptables),终止执行!" + return 1 + } + local ipt_tmp="${1}"; shift + local chain="${1}"; shift + local list="${1}"; shift + local default="${1:-0}"; shift + local _index=$($ipt_tmp -n -L $chain --line-numbers 2>/dev/null | grep "$list" | head -n 1 | awk '{print $1}') + echo "${_index:-${default}}" +} + +REDIRECT() { + local s="-j REDIRECT" + [ -n "$1" ] && { + local s="$s --to-ports $1" + [ "$2" == "TPROXY" ] && s="-j TPROXY --tproxy-mark 0x1/0x1 --on-port $1" + [ "$2" == "MARK" ] && s="-j MARK --set-mark $1" + } + echo $s +} + +get_ipset_ipt() { + case "$1" in + gfwlist) + echo "$(dst $IPSET_GFW)" + ;; + chnroute) + echo "$(dst $IPSET_CHN !)" + ;; + returnhome) + echo "$(dst $IPSET_CHN)" + ;; + esac +} + +get_redirect_ipt() { + case "$1" in + disable) + echo "-j RETURN" + ;; + global) + echo "$(REDIRECT $2 $3)" + ;; + gfwlist) + echo "$(dst $IPSET_GFW) $(REDIRECT $2 $3)" + ;; + chnroute) + echo "$(dst $IPSET_CHN !) $(REDIRECT $2 $3)" + ;; + returnhome) + echo "$(dst $IPSET_CHN) $(REDIRECT $2 $3)" + ;; + direct/proxy) + echo "-j RETURN" + ;; + esac +} + +get_redirect_ip6t() { + case "$1" in + disable) + echo "-j RETURN" + ;; + global) + echo "$(REDIRECT $2 $3)" + ;; + gfwlist) + echo "$(dst $IPSET_GFW6) $(REDIRECT $2 $3)" + ;; + chnroute) + echo "$(dst $IPSET_CHN6 !) $(REDIRECT $2 $3)" + ;; + returnhome) + echo "$(dst $IPSET_CHN6) $(REDIRECT $2 $3)" + ;; + direct/proxy) + echo "-j RETURN" + ;; + esac +} + +get_action_chain_name() { + case "$1" in + disable) + echo "不代理" + ;; + global) + echo "全局代理" + ;; + gfwlist) + echo "防火墙列表" + ;; + chnroute) + echo "中国列表以外" + ;; + returnhome) + echo "中国列表" + ;; + direct/proxy) + echo "仅使用直连/代理列表" + ;; + esac +} + +gen_laniplist() { + cat $RULES_PATH/lanlist_ipv4 | tr -s '\n' | grep -v "^#" +} + +gen_laniplist_6() { + cat $RULES_PATH/lanlist_ipv6 | tr -s '\n' | grep -v "^#" +} + +get_wan_ip() { + local NET_IF + local NET_ADDR + + network_flush_cache + network_find_wan NET_IF + network_get_ipaddr NET_ADDR "${NET_IF}" + + echo $NET_ADDR +} + +get_wan6_ip() { + local NET_IF + local NET_ADDR + + network_flush_cache + network_find_wan6 NET_IF + network_get_ipaddr6 NET_ADDR "${NET_IF}" + + echo $NET_ADDR +} + +load_acl() { + local items=$(uci show ${CONFIG} | grep "=acl_rule" | cut -d '.' -sf 2 | cut -d '=' -sf 1) + [ -n "$items" ] && { + local item + local socks_port redir_port dns_port dnsmasq_port + local ipt_tmp msg msg2 + socks_port=11100 + redir_port=11200 + dns_port=11300 + dnsmasq_port=11400 + echolog "访问控制:" + for item in $items; do + local enabled sid remarks sources tcp_proxy_mode udp_proxy_mode tcp_no_redir_ports udp_no_redir_ports tcp_proxy_drop_ports udp_proxy_drop_ports tcp_redir_ports udp_redir_ports tcp_node udp_node dns_mode dns_forward v2ray_dns_mode dns_doh dns_client_ip + local _ip _mac _iprange _ipset _ip_or_mac rule_list tcp_port udp_port tcp_node_remark udp_node_remark config_file _extra_param + sid=$(uci -q show "${CONFIG}.${item}" | grep "=acl_rule" | awk -F '=' '{print $1}' | awk -F '.' '{print $2}') + eval $(uci -q show "${CONFIG}.${item}" | cut -d'.' -sf 3-) + [ "$enabled" = "1" ] || continue + + [ -z "${sources}" ] && continue + for s in $sources; do + is_iprange=$(lua_api "iprange(\"${s}\")") + if [ "${is_iprange}" = "true" ]; then + rule_list="${rule_list}\niprange:${s}" + elif [ -n "$(echo ${s} | grep '^ipset:')" ]; then + rule_list="${rule_list}\nipset:${s}" + else + _ip_or_mac=$(lua_api "ip_or_mac(\"${s}\")") + if [ "${_ip_or_mac}" = "ip" ]; then + rule_list="${rule_list}\nip:${s}" + elif [ "${_ip_or_mac}" = "mac" ]; then + rule_list="${rule_list}\nmac:${s}" + fi + fi + done + [ -z "${rule_list}" ] && continue + + tcp_proxy_mode=${tcp_proxy_mode:-default} + udp_proxy_mode=${udp_proxy_mode:-default} + tcp_no_redir_ports=${tcp_no_redir_ports:-default} + udp_no_redir_ports=${udp_no_redir_ports:-default} + tcp_proxy_drop_ports=${tcp_proxy_drop_ports:-default} + udp_proxy_drop_ports=${udp_proxy_drop_ports:-default} + tcp_redir_ports=${tcp_redir_ports:-default} + udp_redir_ports=${udp_redir_ports:-default} + tcp_node=${tcp_node:-default} + udp_node=${udp_node:-default} + dns_mode=${dns_mode:-dns2socks} + dns_forward=${dns_forward:-1.1.1.1} + [ "$dns_mode" = "v2ray" -o "$dns_mode" = "xray" ] && { + [ "$v2ray_dns_mode" = "doh" ] && dns_forward=${dns_doh:-https://cloudflare-dns.com/dns-query,1.1.1.1} + } + [ "$tcp_proxy_mode" = "default" ] && tcp_proxy_mode=$TCP_PROXY_MODE + [ "$udp_proxy_mode" = "default" ] && udp_proxy_mode=$UDP_PROXY_MODE + [ "$tcp_no_redir_ports" = "default" ] && tcp_no_redir_ports=$TCP_NO_REDIR_PORTS + [ "$udp_no_redir_ports" = "default" ] && udp_no_redir_ports=$UDP_NO_REDIR_PORTS + [ "$tcp_proxy_drop_ports" = "default" ] && tcp_proxy_drop_ports=$TCP_PROXY_DROP_PORTS + [ "$udp_proxy_drop_ports" = "default" ] && udp_proxy_drop_ports=$UDP_PROXY_DROP_PORTS + [ "$tcp_redir_ports" = "default" ] && tcp_redir_ports=$TCP_REDIR_PORTS + [ "$udp_redir_ports" = "default" ] && udp_redir_ports=$UDP_REDIR_PORTS + [ "$tcp_node" != "nil" ] && { + if [ "$tcp_node" = "default" ]; then + tcp_node=$TCP_NODE + tcp_port=$TCP_REDIR_PORT + else + [ "$(config_get_type $tcp_node nil)" = "nodes" ] && { + run_dns() { + local _dns_port + [ -n $1 ] && _dns_port=$1 + [ -z ${_dns_port} ] && { + dns_port=$(get_new_port $(expr $dns_port + 1)) + _dns_port=$dns_port + if [ "$dns_mode" = "dns2socks" ]; then + run_dns2socks flag=acl_${sid} socks_address=127.0.0.1 socks_port=$socks_port listen_address=0.0.0.0 listen_port=${_dns_port} dns=$dns_forward cache=1 + elif [ "$dns_mode" = "v2ray" -o "$dns_mode" = "xray" ]; then + config_file=$TMP_ACL_PATH/${tcp_node}_SOCKS_${socks_port}_DNS.json + run_v2ray flag=acl_${sid} type=$dns_mode dns_socks_address=127.0.0.1 dns_socks_port=$socks_port dns_listen_port=${_dns_port} dns_proto=${v2ray_dns_mode} dns_tcp_server=${dns_forward} doh="${dns_forward}" dns_client_ip=${dns_client_ip} dns_query_strategy=${DNS_QUERY_STRATEGY} config_file=$config_file + fi + eval node_${tcp_node}_$(echo -n "${dns_forward}" | md5sum | cut -d " " -f1)=${_dns_port} + } + + dnsmasq_port=$(get_new_port $(expr $dnsmasq_port + 1)) + redirect_dns_port=$dnsmasq_port + mkdir -p $TMP_ACL_PATH/$sid + echo "port=${dnsmasq_port}" >> $TMP_ACL_PATH/$sid/dnsmasq.conf + echo "conf-dir=${TMP_ACL_PATH}/${sid}/dnsmasq.d" >> $TMP_ACL_PATH/$sid/dnsmasq.conf + d_server=127.0.0.1 + [ "$tcp_proxy_mode" = "global" ] && d_server=${d_server}#${_dns_port} + echo "server=${d_server}" >> $TMP_ACL_PATH/$sid/dnsmasq.conf + source $APP_PATH/helper_${DNS_N}.sh add FLAG=${sid} DNS_MODE=$dns_mode TMP_DNSMASQ_PATH=$TMP_ACL_PATH/$sid/dnsmasq.d DNSMASQ_CONF_FILE=/dev/null LOCAL_DNS=$LOCAL_DNS TUN_DNS=127.0.0.1#${_dns_port} TCP_NODE=$tcp_node PROXY_MODE=${tcp_proxy_mode} NO_LOGIC_LOG=1 NO_PROXY_IPV6=${filter_proxy_ipv6} + ln_run "$(first_type dnsmasq)" "dnsmasq_${sid}" "/dev/null" -C $TMP_ACL_PATH/$sid/dnsmasq.conf -x $TMP_ACL_PATH/$sid/dnsmasq.pid + eval node_${tcp_node}_$(echo -n "${tcp_proxy_mode}${dns_forward}" | md5sum | cut -d " " -f1)=${dnsmasq_port} + } + if [ "$tcp_node" = "$TCP_NODE" ]; then + tcp_port=$TCP_REDIR_PORT + else + _redir_port=$(eval echo \${node_${tcp_node}_redir_port}) + _socks_port=$(eval echo \${node_${tcp_node}_socks_port}) + if [ -n "${_socks_port}" ] && [ -n "${_redir_port}" ]; then + socks_port=${_socks_port} + tcp_port=${_redir_port} + _dnsmasq_port=$(eval echo \${node_${tcp_node}_$(echo -n "${tcp_proxy_mode}${dns_forward}" | md5sum | cut -d " " -f1)}) + if [ -z "${_dnsmasq_port}" ]; then + _dns_port=$(eval echo \${node_${tcp_node}_$(echo -n "${dns_forward}" | md5sum | cut -d " " -f1)}) + run_dns ${_dns_port} + else + redirect_dns_port=${_dnsmasq_port} + fi + else + socks_port=$(get_new_port $(expr $socks_port + 1)) + eval node_${tcp_node}_socks_port=$socks_port + redir_port=$(get_new_port $(expr $redir_port + 1)) + eval node_${tcp_node}_redir_port=$redir_port + tcp_port=$redir_port + config_file="acl/${tcp_node}_SOCKS_${socks_port}.json" + + local type=$(echo $(config_n_get $tcp_node type) | tr 'A-Z' 'a-z') + if [ -n "${type}" ] && ([ "${type}" = "v2ray" ] || [ "${type}" = "xray" ]); then + config_file=$(echo $config_file | sed "s/SOCKS/TCP_UDP_SOCKS/g") + _extra_param="socks_address=127.0.0.1 socks_port=$socks_port" + if [ "$dns_mode" = "v2ray" -o "$dns_mode" = "xray" ]; then + config_file=$(echo $config_file | sed "s/SOCKS_${socks_port}/DNS/g") + dns_port=$(get_new_port $(expr $dns_port + 1)) + _dns_port=$dns_port + _extra_param="dns_listen_port=${_dns_port} dns_proto=${v2ray_dns_mode} dns_tcp_server=${dns_forward} doh=${dns_forward} dns_client_ip=${dns_client_ip} dns_query_strategy=${DNS_QUERY_STRATEGY}" + fi + config_file="$TMP_PATH/$config_file" + run_v2ray flag=$tcp_node node=$tcp_node tcp_redir_port=$redir_port ${_extra_param} config_file=$config_file + else + run_socks flag=$tcp_node node=$tcp_node bind=127.0.0.1 socks_port=$socks_port config_file=$config_file + local log_file=$TMP_ACL_PATH/ipt2socks_${tcp_node}_${redir_port}.log + log_file="/dev/null" + run_ipt2socks flag=acl_${tcp_node} tcp_tproxy=${is_tproxy} local_port=$redir_port socks_address=127.0.0.1 socks_port=$socks_port log_file=$log_file + fi + run_dns ${_dns_port} + fi + filter_node $tcp_node TCP > /dev/null 2>&1 & + filter_node $tcp_node UDP > /dev/null 2>&1 & + fi + } + fi + tcp_node_remark=$(config_n_get $tcp_node remarks) + } + [ "$udp_node" != "nil" ] && { + [ "$udp_node" = "tcp" ] && udp_node=$tcp_node + if [ "$udp_node" = "default" ]; then + udp_node=$UDP_NODE + [ "$TCP_UDP" = "1" ] && [ "$udp_node" = "nil" ] && udp_node=$TCP_NODE + udp_port=$UDP_REDIR_PORT + else + [ "$(config_get_type $udp_node nil)" = "nodes" ] && { + if [ "$udp_node" = "$UDP_NODE" ]; then + udp_port=$UDP_REDIR_PORT + else + _redir_port=$(eval echo \${node_${udp_node}_redir_port}) + _socks_port=$(eval echo \${node_${udp_node}_socks_port}) + if [ -n "${_socks_port}" ] && [ -n "${_redir_port}" ]; then + socks_port=${_socks_port} + udp_port=${_redir_port} + else + socks_port=$(get_new_port $(expr $socks_port + 1)) + eval node_${udp_node}_socks_port=$socks_port + redir_port=$(get_new_port $(expr $redir_port + 1)) + eval node_${udp_node}_redir_port=$redir_port + udp_port=$redir_port + config_file="acl/${udp_node}_SOCKS_${socks_port}.json" + + local type=$(echo $(config_n_get $udp_node type) | tr 'A-Z' 'a-z') + if [ -n "${type}" ] && ([ "${type}" = "v2ray" ] || [ "${type}" = "xray" ]); then + config_file=$(echo $config_file | sed "s/SOCKS/TCP_UDP_SOCKS/g") + config_file="$TMP_PATH/$config_file" + run_v2ray flag=$udp_node node=$udp_node udp_redir_port=$redir_port config_file=$config_file + else + run_socks flag=$udp_node node=$udp_node bind=127.0.0.1 socks_port=$socks_port config_file=$config_file + local log_file=$TMP_ACL_PATH/ipt2socks_${udp_node}_${redir_port}.log + log_file="/dev/null" + run_ipt2socks flag=acl_${udp_node} local_port=$redir_port socks_address=127.0.0.1 socks_port=$socks_port log_file=$log_file + fi + fi + filter_node $udp_node TCP > /dev/null 2>&1 & + filter_node $udp_node UDP > /dev/null 2>&1 & + fi + } + fi + udp_node_remark=$(config_n_get $udp_node remarks) + udp_flag=1 + } + + for i in $(echo -e ${rule_list}); do + if [ -n "$(echo ${i} | grep '^iprange:')" ]; then + _iprange=$(echo ${i} | sed 's#iprange:##g') + _ipt_source=$(factor ${_iprange} "-m iprange --src-range") + msg="备注【$remarks】,IP range【${_iprange}】," + elif [ -n "$(echo ${i} | grep '^ipset:')" ]; then + _ipset=$(echo ${i} | sed 's#ipset:##g') + _ipt_source="-m set --match-set ${_ipset} src" + msg="备注【$remarks】,IPset【${_ipset}】," + elif [ -n "$(echo ${i} | grep '^ip:')" ]; then + _ip=$(echo ${i} | sed 's#ip:##g') + _ipt_source=$(factor ${_ip} "-s") + msg="备注【$remarks】,IP【${_ip}】," + elif [ -n "$(echo ${i} | grep '^mac:')" ]; then + _mac=$(echo ${i} | sed 's#mac:##g') + _ipt_source=$(factor ${_mac} "-m mac --mac-source") + msg="备注【$remarks】,MAC【${_mac}】," + else + continue + fi + + ipt_tmp=$ipt_n + [ -n "${is_tproxy}" ] && ipt_tmp=$ipt_m + + [ -n "$tcp_port" ] && { + if [ "$tcp_proxy_mode" != "disable" ]; then + [ -n "$redirect_dns_port" ] && $ipt_n -A PSW_REDIRECT $(comment "$remarks") -p udp ${_ipt_source} --dport 53 -j REDIRECT --to-ports $redirect_dns_port + msg2="${msg}使用TCP节点[$tcp_node_remark] [$(get_action_chain_name $tcp_proxy_mode)]" + if [ -n "${is_tproxy}" ]; then + msg2="${msg2}(TPROXY:${tcp_port})代理" + ipt_tmp=$ipt_m + else + msg2="${msg2}(REDIRECT:${tcp_port})代理" + fi + + [ "$tcp_no_redir_ports" != "disable" ] && { + $ipt_tmp -A PSW $(comment "$remarks") ${_ipt_source} -p tcp -m multiport --dport $tcp_no_redir_ports -j RETURN + $ip6t_m -A PSW $(comment "$remarks") ${_ipt_source} -p tcp -m multiport --dport $tcp_no_redir_ports -j RETURN 2>/dev/null + msg2="${msg2}[$?]除${tcp_no_redir_ports}外的" + } + msg2="${msg2}所有端口" + + [ "$tcp_proxy_drop_ports" != "disable" ] && { + $ipt_m -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_proxy_drop_ports "-m multiport --dport") -d $FAKE_IP -j DROP + $ipt_m -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_proxy_drop_ports "-m multiport --dport") $(dst $IPSET_SHUNTLIST) -j DROP + $ipt_m -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_proxy_drop_ports "-m multiport --dport") $(dst $IPSET_BLACKLIST) -j DROP + [ "$tcp_proxy_mode" != "direct/proxy" ] && $ipt_m -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_proxy_drop_ports "-m multiport --dport") $(get_ipset_ipt $tcp_proxy_mode) -j DROP + msg2="${msg2}[$?],屏蔽代理TCP 端口:${tcp_proxy_drop_ports}" + } + + $ipt_tmp -A PSW $(comment "$remarks") -p tcp ${_ipt_source} -d $FAKE_IP $(REDIRECT $tcp_port $is_tproxy) + $ipt_tmp -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_redir_ports "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $tcp_port $is_tproxy) + $ipt_tmp -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_redir_ports "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $tcp_port $is_tproxy) + $ipt_tmp -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_redir_ports "-m multiport --dport") $(get_redirect_ipt $tcp_proxy_mode $tcp_port $is_tproxy) + + [ "$accept_icmp" = "1" ] && { + $ipt_n -A PSW $(comment "$remarks") -p icmp ${_ipt_source} -d $FAKE_IP $(REDIRECT) + $ipt_n -A PSW $(comment "$remarks") -p icmp ${_ipt_source} $(dst $IPSET_SHUNTLIST) $(REDIRECT) + $ipt_n -A PSW $(comment "$remarks") -p icmp ${_ipt_source} $(dst $IPSET_BLACKLIST) $(REDIRECT) + $ipt_n -A PSW $(comment "$remarks") -p icmp ${_ipt_source} $(get_redirect_ipt $tcp_proxy_mode) + } + + if [ "$PROXY_IPV6" == "1" ]; then + $ip6t_m -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_redir_ports "-m multiport --dport") $(dst $IPSET_SHUNTLIST6) $(REDIRECT $tcp_port TPROXY) 2>/dev/null + $ip6t_m -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_redir_ports "-m multiport --dport") $(dst $IPSET_BLACKLIST6) $(REDIRECT $tcp_port TPROXY) 2>/dev/null + $ip6t_m -A PSW $(comment "$remarks") -p tcp ${_ipt_source} $(factor $tcp_redir_ports "-m multiport --dport") $(get_redirect_ip6t $tcp_proxy_mode $tcp_port TPROXY) 2>/dev/null + [ "$accept_icmpv6" = "1" ] && { + $ip6t_n -A PSW $(comment "$remarks") -p ipv6-icmp ${_ipt_source} $(dst $IPSET_SHUNTLIST6) $(REDIRECT) 2>/dev/null + $ip6t_n -A PSW $(comment "$remarks") -p ipv6-icmp ${_ipt_source} $(dst $IPSET_BLACKLIST6) $(REDIRECT) 2>/dev/null + $ip6t_n -A PSW $(comment "$remarks") -p ipv6-icmp ${_ipt_source} $(get_redirect_ip6t $tcp_proxy_mode) 2>/dev/null + } + fi + else + msg2="${msg}不代理TCP" + fi + echolog " - ${msg2}" + } + + $ipt_tmp -A PSW $(comment "$remarks") ${_ipt_source} -p tcp -j RETURN + $ip6t_m -A PSW $(comment "$remarks") ${_ipt_source} -p tcp -j RETURN 2>/dev/null + + [ "$udp_proxy_drop_ports" != "disable" ] && { + $ipt_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_proxy_drop_ports "-m multiport --dport") -d $FAKE_IP -j DROP + $ipt_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_proxy_drop_ports "-m multiport --dport") $(dst $IPSET_SHUNTLIST) -j DROP + $ipt_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_proxy_drop_ports "-m multiport --dport") $(dst $IPSET_BLACKLIST) -j DROP + [ "$udp_proxy_mode" != "direct/proxy" ] && $ipt_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_proxy_drop_ports "-m multiport --dport") $(get_ipset_ipt $udp_proxy_mode) -j DROP + msg2="${msg2}[$?],屏蔽代理UDP 端口:${udp_proxy_drop_ports}" + } + + [ -n "$udp_port" ] && { + if [ "$udp_proxy_mode" != "disable" ]; then + msg2="${msg}使用UDP节点[$udp_node_remark] [$(get_action_chain_name $udp_proxy_mode)]" + msg2="${msg2}(TPROXY:${udp_port})代理" + [ "$udp_no_redir_ports" != "disable" ] && { + $ipt_m -A PSW $(comment "$remarks") ${_ipt_source} -p udp -m multiport --dport $udp_no_redir_ports -j RETURN + $ip6t_m -A PSW $(comment "$remarks") ${_ipt_source} -p udp -m multiport --dport $udp_no_redir_ports -j RETURN 2>/dev/null + msg2="${msg2}[$?]除${udp_no_redir_ports}外的" + } + msg2="${msg2}所有端口" + + $ipt_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} -d $FAKE_IP $(REDIRECT $udp_port TPROXY) + $ipt_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_redir_ports "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $udp_port TPROXY) + $ipt_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_redir_ports "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $udp_port TPROXY) + $ipt_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_redir_ports "-m multiport --dport") $(get_redirect_ipt $udp_proxy_mode $udp_port TPROXY) + + if [ "$PROXY_IPV6_UDP" == "1" ]; then + $ip6t_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_redir_ports "-m multiport --dport") $(dst $IPSET_SHUNTLIST6) $(REDIRECT $udp_port TPROXY) 2>/dev/null + $ip6t_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_redir_ports "-m multiport --dport") $(dst $IPSET_BLACKLIST6) $(REDIRECT $udp_port TPROXY) 2>/dev/null + $ip6t_m -A PSW $(comment "$remarks") -p udp ${_ipt_source} $(factor $udp_redir_ports "-m multiport --dport") $(get_redirect_ip6t $udp_proxy_mode $udp_port TPROXY) 2>/dev/null + fi + else + msg2="${msg}不代理UDP" + fi + echolog " - ${msg2}" + } + $ipt_m -A PSW $(comment "$remarks") ${_ipt_source} -p udp -j RETURN + $ip6t_m -A PSW $(comment "$remarks") ${_ipt_source} -p udp -j RETURN 2>/dev/null + done + unset enabled sid remarks sources tcp_proxy_mode udp_proxy_mode tcp_no_redir_ports udp_no_redir_ports tcp_proxy_drop_ports udp_proxy_drop_ports tcp_redir_ports udp_redir_ports tcp_node udp_node dns_mode dns_forward v2ray_dns_mode dns_doh dns_client_ip + unset _ip _mac _iprange _ipset _ip_or_mac rule_list tcp_port udp_port tcp_node_remark udp_node_remark config_file _extra_param + unset ipt_tmp msg msg2 + unset redirect_dns_port + done + unset socks_port redir_port dns_port dnsmasq_port + unset ipt_tmp msg msg2 + } + + # 加载TCP默认代理模式 + [ "$TCP_PROXY_DROP_PORTS" != "disable" ] && { + $ipt_m -A PSW $(comment "默认") -p tcp $(factor $TCP_PROXY_DROP_PORTS "-m multiport --dport") -d $FAKE_IP -j DROP + $ipt_m -A PSW $(comment "默认") -p tcp $(factor $TCP_PROXY_DROP_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) -j DROP + $ipt_m -A PSW $(comment "默认") -p tcp $(factor $TCP_PROXY_DROP_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) -j DROP + [ "$TCP_PROXY_MODE" != "direct/proxy" ] && $ipt_m -A PSW $(comment "默认") -p tcp $(factor $TCP_PROXY_DROP_PORTS "-m multiport --dport") $(get_ipset_ipt $TCP_PROXY_MODE) -j DROP + } + local ipt_tmp=$ipt_n + if [ "$TCP_PROXY_MODE" != "disable" ]; then + [ "$TCP_NO_REDIR_PORTS" != "disable" ] && { + [ -n "${is_tproxy}" ] && ipt_tmp=$ipt_m + $ipt_tmp -A PSW $(comment "默认") -p tcp -m multiport --dport $TCP_NO_REDIR_PORTS -j RETURN + $ip6t_m -A PSW $(comment "默认") -p tcp -m multiport --dport $TCP_NO_REDIR_PORTS -j RETURN + } + + ipt_tmp=$ipt_n + [ "$TCP_NODE" != "nil" ] && { + msg="TCP默认代理:使用TCP节点[$(config_n_get $TCP_NODE remarks)] [$(get_action_chain_name $TCP_PROXY_MODE)]" + if [ -n "${is_tproxy}" ]; then + ipt_tmp=$ipt_m + msg="${msg}(TPROXY:${TCP_REDIR_PORT})代理" + else + msg="${msg}(REDIRECT:${TCP_REDIR_PORT})代理" + fi + + [ "$TCP_NO_REDIR_PORTS" != "disable" ] && msg="${msg}除${TCP_NO_REDIR_PORTS}外的" + msg="${msg}所有端口" + + $ipt_tmp -A PSW $(comment "默认") -p tcp -d $FAKE_IP $(REDIRECT $TCP_REDIR_PORT $is_tproxy) + $ipt_tmp -A PSW $(comment "默认") -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $TCP_REDIR_PORT $is_tproxy) + $ipt_tmp -A PSW $(comment "默认") -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $TCP_REDIR_PORT $is_tproxy) + $ipt_tmp -A PSW $(comment "默认") -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ipt $TCP_PROXY_MODE $TCP_REDIR_PORT $is_tproxy) + + [ "$accept_icmp" = "1" ] && { + $ipt_n -A PSW $(comment "默认") -p icmp -d $FAKE_IP $(REDIRECT) + $ipt_n -A PSW $(comment "默认") -p icmp $(dst $IPSET_SHUNTLIST) $(REDIRECT) + $ipt_n -A PSW $(comment "默认") -p icmp $(dst $IPSET_BLACKLIST) $(REDIRECT) + $ipt_n -A PSW $(comment "默认") -p icmp $(get_redirect_ipt $TCP_PROXY_MODE) + } + + if [ "$PROXY_IPV6" == "1" ]; then + $ip6t_m -A PSW $(comment "默认") -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST6) $(REDIRECT $TCP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "默认") -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST6) $(REDIRECT $TCP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "默认") -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ip6t $TCP_PROXY_MODE $TCP_REDIR_PORT TPROXY) + [ "$accept_icmpv6" = "1" ] && { + $ip6t_n -A PSW $(comment "默认") -p ipv6-icmp $(dst $IPSET_SHUNTLIST6) $(REDIRECT) + $ip6t_n -A PSW $(comment "默认") -p ipv6-icmp $(dst $IPSET_BLACKLIST6) $(REDIRECT) + $ip6t_n -A PSW $(comment "默认") -p ipv6-icmp $(get_redirect_ip6t $TCP_PROXY_MODE) + } + fi + + echolog "${msg}" + } + fi + $ipt_n -A PSW $(comment "默认") -p tcp -j RETURN + $ipt_m -A PSW $(comment "默认") -p tcp -j RETURN + $ip6t_m -A PSW $(comment "默认") -p tcp -j RETURN + + # 加载UDP默认代理模式 + [ "$UDP_PROXY_DROP_PORTS" != "disable" ] && { + $ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_PROXY_DROP_PORTS "-m multiport --dport") -d $FAKE_IP -j DROP + $ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_PROXY_DROP_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) -j DROP + $ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_PROXY_DROP_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) -j DROP + [ "$UDP_PROXY_MODE" != "direct/proxy" ] && $ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_PROXY_DROP_PORTS "-m multiport --dport") $(get_ipset_ipt $UDP_PROXY_MODE) -j DROP + } + if [ "$UDP_PROXY_MODE" != "disable" ]; then + [ "$UDP_NO_REDIR_PORTS" != "disable" ] && { + $ipt_m -A PSW $(comment "默认") -p udp -m multiport --dport $UDP_NO_REDIR_PORTS -j RETURN + $ip6t_m -A PSW $(comment "默认") -p udp -m multiport --dport $UDP_NO_REDIR_PORTS -j RETURN + } + + [ "$UDP_NODE" != "nil" -o "$TCP_UDP" = "1" ] && { + [ "$TCP_UDP" = "1" ] && [ "$UDP_NODE" = "nil" ] && UDP_NODE=$TCP_NODE + msg="UDP默认代理:使用UDP节点[$(config_n_get $UDP_NODE remarks)] [$(get_action_chain_name $UDP_PROXY_MODE)](TPROXY:${UDP_REDIR_PORT})代理" + + [ "$UDP_NO_REDIR_PORTS" != "disable" ] && msg="${msg}除${UDP_NO_REDIR_PORTS}外的" + msg="${msg}所有端口" + + $ipt_m -A PSW $(comment "默认") -p udp -d $FAKE_IP $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ipt $UDP_PROXY_MODE $UDP_REDIR_PORT TPROXY) + + if [ "$PROXY_IPV6_UDP" == "1" ]; then + $ip6t_m -A PSW $(comment "默认") -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST6) $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "默认") -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST6) $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "默认") -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ip6t $UDP_PROXY_MODE $UDP_REDIR_PORT TPROXY) + fi + + echolog "${msg}" + udp_flag=1 + } + fi + $ipt_m -A PSW $(comment "默认") -p udp -j RETURN + $ip6t_m -A PSW $(comment "默认") -p udp -j RETURN +} + +filter_haproxy() { + for item in ${haproxy_items}; do + local ip=$(get_host_ip ipv4 $(echo $item | awk -F ":" '{print $1}') 1) + ipset -q add $IPSET_VPSIPLIST $ip + done + echolog "加入负载均衡的节点到ipset[$IPSET_VPSIPLIST]直连完成" +} + +filter_vpsip() { + uci show $CONFIG | grep ".address=" | cut -d "'" -f 2 | grep -E "([0-9]{1,3}[\.]){3}[0-9]{1,3}" | sed -e "/^$/d" | sed -e "s/^/add $IPSET_VPSIPLIST &/g" | awk '{print $0} END{print "COMMIT"}' | ipset -! -R + uci show $CONFIG | grep ".address=" | cut -d "'" -f 2 | grep -E "([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4}" | sed -e "/^$/d" | sed -e "s/^/add $IPSET_VPSIPLIST6 &/g" | awk '{print $0} END{print "COMMIT"}' | ipset -! -R + echolog "加入所有节点到ipset[$IPSET_VPSIPLIST]直连完成" +} + +filter_node() { + local proxy_node=${1} + local stream=$(echo ${2} | tr 'A-Z' 'a-z') + local proxy_port=${3} + + filter_rules() { + local node=${1} + local stream=${2} + local _proxy=${3} + local _port=${4} + local _is_tproxy ipt_tmp msg msg2 + + if [ -n "$node" ] && [ "$node" != "nil" ]; then + local type=$(echo $(config_n_get $node type) | tr 'A-Z' 'a-z') + local address=$(config_n_get $node address) + local port=$(config_n_get $node port) + ipt_tmp=$ipt_n + _is_tproxy=${is_tproxy} + [ "$stream" == "udp" ] && _is_tproxy="TPROXY" + if [ -n "${_is_tproxy}" ]; then + ipt_tmp=$ipt_m + msg="TPROXY" + else + msg="REDIRECT" + fi + else + echolog " - 节点配置不正常,略过" + return 0 + fi + + local ADD_INDEX=$FORCE_INDEX + for _ipt in 4 6; do + [ "$_ipt" == "4" ] && _ipt=$ipt_tmp + [ "$_ipt" == "6" ] && _ipt=$ip6t_m + $_ipt -n -L PSW_OUTPUT | grep -q "${address}:${port}" + if [ $? -ne 0 ]; then + unset dst_rule + local dst_rule=$(REDIRECT 1 MARK) + msg2="按规则路由(${msg})" + [ "$_ipt" == "$ipt_m" -o "$_ipt" == "$ip6t_m" ] || { + dst_rule=$(REDIRECT $_port) + msg2="套娃使用(${msg}:${port} -> ${_port})" + } + [ -n "$_proxy" ] && [ "$_proxy" == "1" ] && [ -n "$_port" ] || { + ADD_INDEX=$(RULE_LAST_INDEX "$_ipt" PSW_OUT_PUT "$IPSET_VPSIPLIST" $FORCE_INDEX) + dst_rule=" -j RETURN" + msg2="直连代理" + } + $_ipt -I PSW_OUTPUT $ADD_INDEX $(comment "${address}:${port}") -p $stream -d $address --dport $port $dst_rule 2>/dev/null + else + msg2="已配置过的节点," + fi + done + msg="[$?]$(echo ${2} | tr 'a-z' 'A-Z')${msg2}使用链${ADD_INDEX},节点(${type}):${address}:${port}" + #echolog " - ${msg}" + } + + local proxy_protocol=$(config_n_get $proxy_node protocol) + local proxy_type=$(echo $(config_n_get $proxy_node type nil) | tr 'A-Z' 'a-z') + [ "$proxy_type" == "nil" ] && echolog " - 节点配置不正常,略过!:${proxy_node}" && return 0 + if [ "$proxy_protocol" == "_balancing" ]; then + #echolog " - 多节点负载均衡(${proxy_type})..." + proxy_node=$(config_n_get $proxy_node balancing_node) + for _node in $proxy_node; do + filter_rules "$_node" "$stream" + done + elif [ "$proxy_protocol" == "_shunt" ]; then + #echolog " - 按请求目的地址分流(${proxy_type})..." + local default_node=$(config_n_get $proxy_node default_node _direct) + local main_node=$(config_n_get $proxy_node main_node nil) + if [ "$main_node" != "nil" ]; then + filter_rules $main_node $stream + else + if [ "$default_node" != "_direct" ] && [ "$default_node" != "_blackhole" ]; then + filter_rules $default_node $stream + fi + fi +:</dev/null | grep -E -o "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" | sort -u | grep -v 0.0.0.0 | grep -v 127.0.0.1) + [ -n "$ISP_DNS" ] && { + #echolog "处理 ISP DNS 例外..." + for ispip in $ISP_DNS; do + ipset -! add $IPSET_WHITELIST $ispip >/dev/null 2>&1 & + #echolog " - 追加到白名单:${ispip}" + done + } + + local ISP_DNS6=$(cat $RESOLVFILE 2>/dev/null | grep -E "([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4}" | awk -F % '{print $1}' | awk -F " " '{print $2}'| sort -u | grep -v -Fx ::1 | grep -v -Fx ::) + [ -n "$ISP_DNS" ] && { + #echolog "处理 ISP IPv6 DNS 例外..." + for ispip6 in $ISP_DNS; do + ipset -! add $IPSET_WHITELIST6 $ispip6 >/dev/null 2>&1 & + #echolog " - 追加到白名单:${ispip6}" + done + } + + # 过滤所有节点IP + filter_vpsip > /dev/null 2>&1 & + filter_haproxy > /dev/null 2>&1 & + + accept_icmp=$(config_t_get global_forwarding accept_icmp 0) + accept_icmpv6=$(config_t_get global_forwarding accept_icmpv6 0) + + local tcp_proxy_way=$(config_t_get global_forwarding tcp_proxy_way redirect) + if [ "$tcp_proxy_way" = "redirect" ]; then + unset is_tproxy + elif [ "$tcp_proxy_way" = "tproxy" ]; then + is_tproxy="TPROXY" + fi + + $ipt_n -N PSW + $ipt_n -A PSW $(dst $IPSET_LANIPLIST) -j RETURN + $ipt_n -A PSW $(dst $IPSET_VPSIPLIST) -j RETURN + $ipt_n -A PSW $(dst $IPSET_WHITELIST) -j RETURN + $ipt_n -A PSW -m mark --mark 0xff -j RETURN + + WAN_IP=$(get_wan_ip) + [ ! -z "${WAN_IP}" ] && $ipt_n -A PSW $(comment "WAN_IP_RETURN") -d "${WAN_IP}" -j RETURN + + [ "$accept_icmp" = "1" ] && insert_rule_after "$ipt_n" "PREROUTING" "prerouting_rule" "-p icmp -j PSW" + [ -z "${is_tproxy}" ] && insert_rule_after "$ipt_n" "PREROUTING" "prerouting_rule" "-p tcp -j PSW" + + $ipt_n -N PSW_OUTPUT + $ipt_n -A PSW_OUTPUT $(dst $IPSET_LANIPLIST) -j RETURN + $ipt_n -A PSW_OUTPUT $(dst $IPSET_VPSIPLIST) -j RETURN + $ipt_n -A PSW_OUTPUT $(dst $IPSET_WHITELIST) -j RETURN + $ipt_n -A PSW_OUTPUT -m mark --mark 0xff -j RETURN + + $ipt_n -N PSW_REDIRECT + $ipt_n -I PREROUTING 1 -j PSW_REDIRECT + + $ipt_m -N PSW_DIVERT + $ipt_m -A PSW_DIVERT -j MARK --set-mark 1 + $ipt_m -A PSW_DIVERT -j ACCEPT + + $ipt_m -N PSW + $ipt_m -A PSW $(dst $IPSET_LANIPLIST) -j RETURN + $ipt_m -A PSW $(dst $IPSET_VPSIPLIST) -j RETURN + $ipt_m -A PSW $(dst $IPSET_WHITELIST) -j RETURN + $ipt_m -A PSW -m mark --mark 0xff -j RETURN + $ipt_m -A PSW $(dst $IPSET_BLOCKLIST) -j DROP + + [ ! -z "${WAN_IP}" ] && $ipt_m -A PSW $(comment "WAN_IP_RETURN") -d "${WAN_IP}" -j RETURN + unset WAN_IP + + insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW" + insert_rule_before "$ipt_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT" + + $ipt_m -N PSW_OUTPUT + $ipt_m -A PSW_OUTPUT $(dst $IPSET_LANIPLIST) -j RETURN + $ipt_m -A PSW_OUTPUT $(dst $IPSET_VPSIPLIST) -j RETURN + $ipt_m -A PSW_OUTPUT $(dst $IPSET_WHITELIST) -j RETURN + $ipt_m -A PSW_OUTPUT -m mark --mark 0xff -j RETURN + $ipt_m -A PSW_OUTPUT $(dst $IPSET_BLOCKLIST) -j DROP + $ipt_m -A OUTPUT -j PSW_OUTPUT + + ip rule add fwmark 1 lookup 100 + ip route add local 0.0.0.0/0 dev lo table 100 + + [ "$accept_icmpv6" = "1" ] && { + $ip6t_n -N PSW + $ip6t_n -A PSW $(dst $IPSET_LANIPLIST6) -j RETURN + $ip6t_n -A PSW $(dst $IPSET_VPSIPLIST6) -j RETURN + $ip6t_n -A PSW $(dst $IPSET_WHITELIST6) -j RETURN + $ip6t_n -A PSW -m mark --mark 0xff -j RETURN + $ip6t_n -A PREROUTING -p ipv6-icmp -j PSW + + $ip6t_n -N PSW_OUTPUT + $ip6t_n -A PSW_OUTPUT $(dst $IPSET_LANIPLIST6) -j RETURN + $ip6t_n -A PSW_OUTPUT $(dst $IPSET_VPSIPLIST6) -j RETURN + $ip6t_n -A PSW_OUTPUT $(dst $IPSET_WHITELIST6) -j RETURN + $ip6t_n -A PSW_OUTPUT -m mark --mark 0xff -j RETURN + } + + $ip6t_m -N PSW_DIVERT + $ip6t_m -A PSW_DIVERT -j MARK --set-mark 1 + $ip6t_m -A PSW_DIVERT -j ACCEPT + + $ip6t_m -N PSW + $ip6t_m -A PSW $(dst $IPSET_LANIPLIST6) -j RETURN + $ip6t_m -A PSW $(dst $IPSET_VPSIPLIST6) -j RETURN + $ip6t_m -A PSW $(dst $IPSET_WHITELIST6) -j RETURN + $ip6t_m -A PSW -m mark --mark 0xff -j RETURN + $ip6t_m -A PSW $(dst $IPSET_BLOCKLIST6) -j DROP + + WAN6_IP=$(get_wan6_ip) + [ ! -z "${WAN6_IP}" ] && $ip6t_m -A PSW $(comment "WAN6_IP_RETURN") -d ${WAN6_IP} -j RETURN + unset WAN6_IP + + insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW" + insert_rule_before "$ip6t_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT" + + $ip6t_m -N PSW_OUTPUT + $ip6t_m -A PSW_OUTPUT $(dst $IPSET_LANIPLIST6) -j RETURN + $ip6t_m -A PSW_OUTPUT $(dst $IPSET_VPSIPLIST6) -j RETURN + $ip6t_m -A PSW_OUTPUT $(dst $IPSET_WHITELIST6) -j RETURN + $ip6t_m -A PSW_OUTPUT -m mark --mark 0xff -j RETURN + $ip6t_m -A PSW_OUTPUT $(dst $IPSET_BLOCKLIST6) -j DROP + $ip6t_m -A OUTPUT -j PSW_OUTPUT + + ip -6 rule add fwmark 1 table 100 + ip -6 route add local ::/0 dev lo table 100 + + # 加载路由器自身代理 TCP + if [ "$TCP_NODE" != "nil" ]; then + local ipt_tmp=$ipt_n + local blist_r=$(REDIRECT $TCP_REDIR_PORT) + local p_r=$(get_redirect_ipt $LOCALHOST_TCP_PROXY_MODE $TCP_REDIR_PORT) + echolog "加载路由器自身 TCP 代理..." + + if [ -n "${is_tproxy}" ]; then + echolog " - 启用 TPROXY 模式" + ipt_tmp=$ipt_m + blist_r=$(REDIRECT 1 MARK) + p_r=$(get_redirect_ipt $LOCALHOST_TCP_PROXY_MODE 1 MARK) + else + $ipt_n -A OUTPUT -p tcp -j PSW_OUTPUT + fi + + [ "$accept_icmp" = "1" ] && { + $ipt_n -A OUTPUT -p icmp -j PSW_OUTPUT + $ipt_n -A PSW_OUTPUT -p icmp -d $FAKE_IP $(REDIRECT) + $ipt_n -A PSW_OUTPUT -p icmp $(dst $IPSET_SHUNTLIST) $(REDIRECT) + $ipt_n -A PSW_OUTPUT -p icmp $(dst $IPSET_BLACKLIST) $(REDIRECT) + $ipt_n -A PSW_OUTPUT -p icmp $(get_redirect_ipt $TCP_PROXY_MODE ) + } + + [ "$accept_icmpv6" = "1" ] && { + $ip6t_n -A OUTPUT -p ipv6-icmp -j PSW_OUTPUT + $ip6t_n -A PSW_OUTPUT -p ipv6-icmp $(dst $IPSET_SHUNTLIST6) $(REDIRECT) + $ip6t_n -A PSW_OUTPUT -p ipv6-icmp $(dst $IPSET_BLACKLIST6) $(REDIRECT) + $ip6t_n -A PSW_OUTPUT -p ipv6-icmp $(get_redirect_ip6t $TCP_PROXY_MODE) + } + + _proxy_tcp_access() { + [ -n "${2}" ] || return 0 + ipset -q test $IPSET_LANIPLIST ${2} + [ $? -eq 0 ] && { + echolog " - 上游 DNS 服务器 ${2} 已在直接访问的列表中,不强制向 TCP 代理转发对该服务器 TCP/${3} 端口的访问" + return 0 + } + if [ -n "${is_tproxy}" ]; then + $ipt_m -I PSW_OUTPUT -p tcp -d ${2} --dport ${3} $(REDIRECT 1 MARK) + $ipt_m -I PSW $(comment "本机") -p tcp -i lo -d ${2} --dport ${3} $(REDIRECT $TCP_REDIR_PORT TPROXY) + else + $ipt_n -I PSW_OUTPUT -p tcp -d ${2} --dport ${3} $(REDIRECT $TCP_REDIR_PORT) + fi + echolog " - [$?]将上游 DNS 服务器 ${2}:${3} 加入到路由器自身代理的 TCP 转发链" + } + + [ "$use_tcp_node_resolve_dns" == 1 ] && hosts_foreach DNS_FORWARD _proxy_tcp_access 53 + [ "$TCP_NO_REDIR_PORTS" != "disable" ] && { + $ipt_tmp -A PSW_OUTPUT -p tcp -m multiport --dport $TCP_NO_REDIR_PORTS -j RETURN + $ipt_tmp -A PSW_OUTPUT -p tcp -m multiport --sport $TCP_NO_REDIR_PORTS -j RETURN + $ip6t_m -A PSW_OUTPUT -p tcp -m multiport --dport $TCP_NO_REDIR_PORTS -j RETURN + $ip6t_m -A PSW_OUTPUT -p tcp -m multiport --sport $TCP_NO_REDIR_PORTS -j RETURN + echolog " - [$?]不代理TCP 端口:$TCP_NO_REDIR_PORTS" + } + [ "$TCP_PROXY_DROP_PORTS" != "disable" ] && { + $ipt_m -A PSW_OUTPUT -p tcp $(factor $TCP_PROXY_DROP_PORTS "-m multiport --dport") -d $FAKE_IP -j DROP + $ipt_m -A PSW_OUTPUT -p tcp $(factor $TCP_PROXY_DROP_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) -j DROP + $ipt_m -A PSW_OUTPUT -p tcp $(factor $TCP_PROXY_DROP_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) -j DROP + [ "$LOCALHOST_TCP_PROXY_MODE" != "direct/proxy" ] && $ipt_m -A PSW_OUTPUT -p tcp $(factor $TCP_PROXY_DROP_PORTS "-m multiport --dport") $(get_ipset_ipt $LOCALHOST_TCP_PROXY_MODE) -j DROP + echolog " - [$?],屏蔽代理TCP 端口:$TCP_PROXY_DROP_PORTS" + } + + $ipt_tmp -A PSW_OUTPUT -p tcp -d $FAKE_IP $blist_r + $ipt_tmp -A PSW_OUTPUT -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $blist_r + $ipt_tmp -A PSW_OUTPUT -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $blist_r + $ipt_tmp -A PSW_OUTPUT -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $p_r + + if [ -n "${is_tproxy}" ]; then + $ipt_m -A PSW $(comment "本机") -p tcp -i lo -d $FAKE_IP $(REDIRECT $TCP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "本机") -p tcp -i lo $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $TCP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "本机") -p tcp -i lo $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $TCP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "本机") -p tcp -i lo $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ipt $LOCALHOST_TCP_PROXY_MODE $TCP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "本机") -p tcp -i lo -j RETURN + fi + + if [ "$PROXY_IPV6" == "1" ]; then + $ip6t_m -A PSW_OUTPUT -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST6) $(REDIRECT 1 MARK) + $ip6t_m -A PSW_OUTPUT -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST6) $(REDIRECT 1 MARK) + $ip6t_m -A PSW_OUTPUT -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ip6t $LOCALHOST_TCP_PROXY_MODE 1 MARK) + + $ip6t_m -A PSW $(comment "本机") -p tcp -i lo $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST6) $(REDIRECT $TCP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "本机") -p tcp -i lo $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST6) $(REDIRECT $TCP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "本机") -p tcp -i lo $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ip6t $LOCALHOST_TCP_PROXY_MODE $TCP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "本机") -p tcp -i lo -j RETURN + fi + fi + + # 过滤Socks节点 + [ "$SOCKS_ENABLED" = "1" ] && { + local ids=$(uci show $CONFIG | grep "=socks" | awk -F '.' '{print $2}' | awk -F '=' '{print $1}') + #echolog "分析 Socks 服务所使用节点..." + local id enabled node port msg num + for id in $ids; do + enabled=$(config_n_get $id enabled 0) + [ "$enabled" == "1" ] || continue + node=$(config_n_get $id node nil) + port=$(config_n_get $id port 0) + msg="Socks 服务 [:${port}]" + if [ "$node" == "nil" ] || [ "$port" == "0" ]; then + msg="${msg} 未配置完全,略过" + elif [ "$(echo $node | grep ^tcp)" ]; then + #eval "node=\${TCP_NODE}" + #msg="${msg} 使用与 TCP 代理自动切换${num} 相同的节点,延后处理" + continue + else + filter_node $node TCP > /dev/null 2>&1 & + filter_node $node UDP > /dev/null 2>&1 & + fi + #echolog " - ${msg}" + done + } + + # 处理轮换节点的分流或套娃 + local node port stream switch + for stream in TCP UDP; do + eval "node=\${${stream}_NODE}" + eval "port=\${${stream}_REDIR_PORT}" + #echolog "分析 $stream 代理自动切换..." + [ "$node" == "tcp" ] && [ "$stream" == "UDP" ] && { + eval "node=\${TCP_NODE}" + eval "port=\${TCP_REDIR_PORT}" + } + if [ "$node" != "nil" ]; then + filter_node $node $stream $port > /dev/null 2>&1 & + fi + done + + # 加载路由器自身代理 UDP + [ "$UDP_PROXY_DROP_PORTS" != "disable" ] && { + $ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_PROXY_DROP_PORTS "-m multiport --dport") -d $FAKE_IP -j DROP + $ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_PROXY_DROP_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) -j DROP + $ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_PROXY_DROP_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) -j DROP + [ "$LOCALHOST_UDP_PROXY_MODE" != "direct/proxy" ] && $ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_PROXY_DROP_PORTS "-m multiport --dport") $(get_ipset_ipt $LOCALHOST_UDP_PROXY_MODE) -j DROP + echolog " - [$?],屏蔽代理UDP 端口:$UDP_PROXY_DROP_PORTS" + } + if [ "$UDP_NODE" != "nil" -o "$TCP_UDP" = "1" ]; then + echolog "加载路由器自身 UDP 代理..." + _proxy_udp_access() { + [ -n "${2}" ] || return 0 + ipset -q test $IPSET_LANIPLIST ${2} + [ $? == 0 ] && { + echolog " - 上游 DNS 服务器 ${2} 已在直接访问的列表中,不强制向 UDP 代理转发对该服务器 UDP/${3} 端口的访问" + return 0 + } + $ipt_m -I PSW_OUTPUT -p udp -d ${2} --dport ${3} $(REDIRECT 1 MARK) + $ipt_m -I PSW $(comment "本机") -p udp -i lo -d ${2} --dport ${3} $(REDIRECT $UDP_REDIR_PORT TPROXY) + echolog " - [$?]将上游 DNS 服务器 ${2}:${3} 加入到路由器自身代理的 UDP 转发链" + } + [ "$use_udp_node_resolve_dns" == 1 ] && hosts_foreach DNS_FORWARD _proxy_udp_access 53 + [ "$UDP_NO_REDIR_PORTS" != "disable" ] && { + $ipt_m -A PSW_OUTPUT -p udp -m multiport --dport $UDP_NO_REDIR_PORTS -j RETURN + $ipt_m -A PSW_OUTPUT -p udp -m multiport --sport $UDP_NO_REDIR_PORTS -j RETURN + $ip6t_m -A PSW_OUTPUT -p udp -m multiport --dport $UDP_NO_REDIR_PORTS -j RETURN + $ip6t_m -A PSW_OUTPUT -p udp -m multiport --sport $UDP_NO_REDIR_PORTS -j RETURN + echolog " - [$?]不代理 UDP 端口:$UDP_NO_REDIR_PORTS" + } + + $ipt_m -A PSW_OUTPUT -p udp -d $FAKE_IP $(REDIRECT 1 MARK) + $ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT 1 MARK) + $ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT 1 MARK) + $ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ipt $LOCALHOST_UDP_PROXY_MODE 1 MARK) + + $ipt_m -A PSW $(comment "本机") -p udp -i lo -d $FAKE_IP $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "本机") -p udp -i lo $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "本机") -p udp -i lo $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "本机") -p udp -i lo $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ipt $LOCALHOST_UDP_PROXY_MODE $UDP_REDIR_PORT TPROXY) + $ipt_m -A PSW $(comment "本机") -p udp -i lo -j RETURN + + if [ "$PROXY_IPV6_UDP" == "1" ]; then + $ip6t_m -A PSW_OUTPUT -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST6) $(REDIRECT 1 MARK) + $ip6t_m -A PSW_OUTPUT -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST6) $(REDIRECT 1 MARK) + $ip6t_m -A PSW_OUTPUT -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ip6t $LOCALHOST_UDP_PROXY_MODE 1 MARK) + + $ip6t_m -A PSW $(comment "本机") -p udp -i lo $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST6) $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "本机") -p udp -i lo $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST6) $(REDIRECT $UDP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "本机") -p udp -i lo $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ip6t $LOCALHOST_UDP_PROXY_MODE $UDP_REDIR_PORT TPROXY) + $ip6t_m -A PSW $(comment "本机") -p udp -i lo -j RETURN + fi + fi + + # 加载ACLS + load_acl + + # dns_hijack "force" + + [ -n "${is_tproxy}" -o -n "${udp_flag}" ] && { + sysctl -w net.bridge.bridge-nf-call-iptables=0 2>/dev/null + [ "$PROXY_IPV6" == "1" ] && sysctl -w net.bridge.bridge-nf-call-ip6tables=0 2>/dev/null + } + echolog "防火墙规则加载完成!" +} + +del_firewall_rule() { + for ipt in "$ipt_n" "$ipt_m" "$ip6t_n" "$ip6t_m"; do + for chain in "PREROUTING" "OUTPUT"; do + for i in $(seq 1 $($ipt -nL $chain | grep -c PSW)); do + local index=$($ipt --line-number -nL $chain | grep PSW | head -1 | awk '{print $1}') + $ipt -D $chain $index 2>/dev/null + done + done + for chain in "PSW" "PSW_OUTPUT" "PSW_DIVERT" "PSW_REDIRECT"; do + $ipt -F $chain 2>/dev/null + $ipt -X $chain 2>/dev/null + done + done + + ip rule del fwmark 1 lookup 100 2>/dev/null + ip route del local 0.0.0.0/0 dev lo table 100 2>/dev/null + + ip -6 rule del fwmark 1 table 100 2>/dev/null + ip -6 route del local ::/0 dev lo table 100 2>/dev/null + + destroy_ipset $IPSET_LANIPLIST + destroy_ipset $IPSET_VPSIPLIST + #destroy_ipset $IPSET_SHUNTLIST + #destroy_ipset $IPSET_GFW + #destroy_ipset $IPSET_CHN + #destroy_ipset $IPSET_BLACKLIST + destroy_ipset $IPSET_BLOCKLIST + destroy_ipset $IPSET_WHITELIST + + destroy_ipset $IPSET_LANIPLIST6 + destroy_ipset $IPSET_VPSIPLIST6 + #destroy_ipset $IPSET_SHUNTLIST6 + #destroy_ipset $IPSET_GFW6 + #destroy_ipset $IPSET_CHN6 + #destroy_ipset $IPSET_BLACKLIST6 + destroy_ipset $IPSET_BLOCKLIST6 + destroy_ipset $IPSET_WHITELIST6 + + echolog "删除相关防火墙规则完成。" +} + +flush_ipset() { + del_firewall_rule + destroy_ipset $IPSET_VPSIPLIST $IPSET_SHUNTLIST $IPSET_GFW $IPSET_CHN $IPSET_BLACKLIST $IPSET_BLOCKLIST $IPSET_WHITELIST $IPSET_LANIPLIST + destroy_ipset $IPSET_VPSIPLIST6 $IPSET_SHUNTLIST6 $IPSET_GFW6 $IPSET_CHN6 $IPSET_BLACKLIST6 $IPSET_BLOCKLIST6 $IPSET_WHITELIST6 $IPSET_LANIPLIST6 + rm -rf /tmp/etc/passwall_tmp/smartdns* + rm -rf /tmp/etc/passwall_tmp/dnsmasq* + /etc/init.d/passwall reload +} + +flush_include() { + echo '#!/bin/sh' >$FWI +} + +gen_include() { + flush_include + extract_rules() { + local _ipt="${ipt}" + [ "$1" == "6" ] && _ipt="${ip6t}" + [ -z "${_ipt}" ] && return + + echo "*$2" + ${_ipt}-save -t $2 | grep "PSW" | grep -v "\-j PSW$" | grep -v "socket \-j PSW_DIVERT$" | sed -e "s/^-A \(OUTPUT\|PREROUTING\)/-I \1 1/" + echo 'COMMIT' + } + local __ipt="" + [ -n "${ipt}" ] && { + __ipt=$(cat <<- EOF + $ipt-save -c | grep -v "PSW" | $ipt-restore -c + $ipt-restore -n <<-EOT + $(extract_rules 4 nat) + $(extract_rules 4 mangle) + EOT + + [ "$accept_icmp" = "1" ] && \$(${MY_PATH} insert_rule_after "$ipt_n" "PREROUTING" "prerouting_rule" "-p icmp -j PSW") + [ -z "${is_tproxy}" ] && \$(${MY_PATH} insert_rule_after "$ipt_n" "PREROUTING" "prerouting_rule" "-p tcp -j PSW") + + \$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW") + \$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT") + + WAN_IP=\$(${MY_PATH} get_wan_ip) + + PR_INDEX=\$(${MY_PATH} RULE_LAST_INDEX "$ipt_n" PSW WAN_IP_RETURN -1) + if [ \$PR_INDEX -ge 0 ]; then + [ ! -z "\${WAN_IP}" ] && $ipt_n -R PSW \$PR_INDEX $(comment "WAN_IP_RETURN") -d "\${WAN_IP}" -j RETURN + fi + + PR_INDEX=\$(${MY_PATH} RULE_LAST_INDEX "$ipt_m" PSW WAN_IP_RETURN -1) + if [ \$PR_INDEX -ge 0 ]; then + [ ! -z "\${WAN_IP}" ] && $ipt_m -R PSW \$PR_INDEX $(comment "WAN_IP_RETURN") -d "\${WAN_IP}" -j RETURN + fi + EOF + ) + } + local __ip6t="" + [ -n "${ip6t}" ] && { + __ip6t=$(cat <<- EOF + $ip6t-save -c | grep -v "PSW" | $ip6t-restore -c + $ip6t-restore -n <<-EOT + $(extract_rules 6 nat) + $(extract_rules 6 mangle) + EOT + + [ "$accept_icmpv6" = "1" ] && $ip6t_n -A PREROUTING -p ipv6-icmp -j PSW + + \$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW") + \$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT") + + PR_INDEX=\$(${MY_PATH} RULE_LAST_INDEX "$ip6t_m" PSW WAN6_IP_RETURN -1) + if [ \$PR_INDEX -ge 0 ]; then + WAN6_IP=\$(${MY_PATH} get_wan6_ip) + [ ! -z "\${WAN6_IP}" ] && $ip6t_m -R PSW \$PR_INDEX $(comment "WAN6_IP_RETURN") -d "\${WAN6_IP}" -j RETURN + fi + EOF + ) + } + cat <<-EOF >> $FWI + ${__ipt} + + ${__ip6t} + EOF + return 0 +} + +get_ipt_bin() { + echo $ipt +} + +get_ip6t_bin() { + echo $ip6t +} + +start() { + add_firewall_rule + gen_include +} + +stop() { + del_firewall_rule + flush_include +} + +arg1=$1 +shift +case $arg1 in +RULE_LAST_INDEX) + RULE_LAST_INDEX "$@" + ;; +insert_rule_before) + insert_rule_before "$@" + ;; +insert_rule_after) + insert_rule_after "$@" + ;; +flush_ipset) + flush_ipset + ;; +get_ipt_bin) + get_ipt_bin + ;; +get_ip6t_bin) + get_ip6t_bin + ;; +get_wan_ip) + get_wan_ip + ;; +get_wan6_ip) + get_wan6_ip + ;; +stop) + stop + ;; +start) + start + ;; +*) ;; +esac diff --git a/luci-app-passwall/root/usr/share/passwall/monitor.sh b/luci-app-passwall/root/usr/share/passwall/monitor.sh new file mode 100755 index 000000000..7d693bcd8 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/monitor.sh @@ -0,0 +1,48 @@ +#!/bin/sh + +CONFIG=passwall +TMP_PATH=/tmp/etc/$CONFIG +TMP_BIN_PATH=$TMP_PATH/bin +TMP_SCRIPT_FUNC_PATH=$TMP_PATH/script_func +TMP_ID_PATH=$TMP_PATH/id +LOCK_FILE_DIR=/tmp/lock +LOCK_FILE=${LOCK_FILE_DIR}/${CONFIG}_script.lock + +config_n_get() { + local ret=$(uci -q get $CONFIG.$1.$2 2>/dev/null) + echo ${ret:=$3} +} + +config_t_get() { + local index=0 + [ -n "$4" ] && index=$4 + local ret=$(uci -q get $CONFIG.@$1[$index].$2 2>/dev/null) + echo ${ret:=$3} +} + +ENABLED=$(config_t_get global enabled 0) +[ "$ENABLED" != 1 ] && return 1 +ENABLED=$(config_t_get global_delay start_daemon 0) +[ "$ENABLED" != 1 ] && return 1 +sleep 58s +while [ "$ENABLED" -eq 1 ]; do + [ -f "$LOCK_FILE" ] && { + sleep 6s + continue + } + touch $LOCK_FILE + + for filename in $(ls ${TMP_SCRIPT_FUNC_PATH}); do + cmd=$(cat ${TMP_SCRIPT_FUNC_PATH}/${filename}) + cmd_check=$(echo $cmd | awk -F '>' '{print $1}') + [ -n "$(echo $cmd_check | grep "dns2socks")" ] && cmd_check=$(echo $cmd_check | sed "s#:# #g") + icount=$(pgrep -f "$(echo $cmd_check)" | wc -l) + if [ $icount = 0 ]; then + #echo "${cmd} 进程挂掉,重启" >> /tmp/log/passwall.log + eval $(echo "nohup ${cmd} 2>&1 &") >/dev/null 2>&1 & + fi + done + + rm -f $LOCK_FILE + sleep 58s +done diff --git a/luci-app-passwall/root/usr/share/passwall/rule_update.lua b/luci-app-passwall/root/usr/share/passwall/rule_update.lua new file mode 100755 index 000000000..40ee66608 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rule_update.lua @@ -0,0 +1,401 @@ +#!/usr/bin/lua + +require 'nixio' +require 'luci.sys' +local luci = luci +local ucic = luci.model.uci.cursor() +local jsonc = require "luci.jsonc" +local name = 'passwall' +local api = require ("luci.model.cbi." .. name .. ".api.api") +local arg1 = arg[1] + +local rule_path = "/usr/share/" .. name .. "/rules" +local reboot = 0 +local gfwlist_update = 0 +local chnroute_update = 0 +local chnroute6_update = 0 +local chnlist_update = 0 +local geoip_update = 0 +local geosite_update = 0 + +-- match comments/title/whitelist/ip address/excluded_domain +local comment_pattern = "^[!\\[@]+" +local ip_pattern = "^%d+%.%d+%.%d+%.%d+" +local ip4_ipset_pattern = "^%d+%.%d+%.%d+%.%d+[%/][%d]+$" +local ip6_ipset_pattern = ":-[%x]+%:+[%x]-[%/][%d]+$" +local domain_pattern = "([%w%-%_]+%.[%w%.%-%_]+)[%/%*]*" +local excluded_domain = {"apple.com","sina.cn","sina.com.cn","baidu.com","byr.cn","jlike.com","weibo.com","zhongsou.com","youdao.com","sogou.com","so.com","soso.com","aliyun.com","taobao.com","jd.com","qq.com","bing.com"} + +local gfwlist_url = ucic:get(name, "@global_rules[0]", "gfwlist_url") or {"https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/gfw.txt"} +local chnroute_url = ucic:get(name, "@global_rules[0]", "chnroute_url") or {"https://ispip.clang.cn/all_cn.txt"} +local chnroute6_url = ucic:get(name, "@global_rules[0]", "chnroute6_url") or {"https://ispip.clang.cn/all_cn_ipv6.txt"} +local chnlist_url = ucic:get(name, "@global_rules[0]", "chnlist_url") or {"https://cdn.jsdelivr.net/gh/felixonmars/dnsmasq-china-list/accelerated-domains.china.conf","https://cdn.jsdelivr.net/gh/felixonmars/dnsmasq-china-list/apple.china.conf","https://cdn.jsdelivr.net/gh/felixonmars/dnsmasq-china-list/google.china.conf"} +local geoip_api = "https://api.github.com/repos/Loyalsoldier/v2ray-rules-dat/releases/latest" +local geosite_api = "https://api.github.com/repos/Loyalsoldier/v2ray-rules-dat/releases/latest" +local v2ray_asset_location = ucic:get_first(name, 'global_rules', "v2ray_location_asset", "/usr/share/v2ray/") + +local log = function(...) + if arg1 then + local result = os.date("%Y-%m-%d %H:%M:%S: ") .. table.concat({...}, " ") + if arg1 == "log" then + local f, err = io.open("/tmp/log/passwall.log", "a") + if f and err == nil then + f:write(result .. "\n") + f:close() + end + elseif arg1 == "print" then + print(result) + end + end +end + +-- trim +local function trim(text) + if not text or text == "" then return "" end + return (string.gsub(text, "^%s*(.-)%s*$", "%1")) +end + +-- curl +local function curl(url, file) + local cmd = "curl -skL -w %{http_code} --retry 3 --connect-timeout 3 '" .. url .. "'" + if file then + cmd = cmd .. " -o " .. file + end + local stdout = luci.sys.exec(cmd) + + if file then + return tonumber(trim(stdout)) + else + return trim(stdout) + end +end + +--check excluded domain +local function check_excluded_domain(value) + for k,v in ipairs(excluded_domain) do + if value:find(v) then + return true + end + end +end + +local function line_count(file_path) + local num = 0 + for _ in io.lines(file_path) do + num = num + 1 + end + return num; +end + +--fetch rule +local function fetch_rule(rule_name,rule_type,url,exclude_domain) + local sret = 200 + local sret_tmp = 0 + local domains = {} + local file_tmp = "/tmp/" ..rule_name.. "_tmp" + local download_file_tmp = "/tmp/" ..rule_name.. "_dl" + local unsort_file_tmp = "/tmp/" ..rule_name.. "_unsort" + + log(rule_name.. " 开始更新...") + for k,v in ipairs(url) do + sret_tmp = curl(v, download_file_tmp..k) + if sret_tmp == 200 then + if rule_name == "gfwlist" then + local domains = {} + local gfwlist = io.open(download_file_tmp..k, "r") + local decode = api.base64Decode(gfwlist:read("*all")) + gfwlist:close() + + gfwlist = io.open(download_file_tmp..k, "w") + gfwlist:write(decode) + gfwlist:close() + end + + if rule_type == "domain" and exclude_domain == true then + for line in io.lines(download_file_tmp..k) do + if not (string.find(line, comment_pattern) or string.find(line, ip_pattern) or check_excluded_domain(line)) then + local start, finish, match = string.find(line, domain_pattern) + if (start) then + domains[match] = true + end + end + end + + elseif rule_type == "domain" then + for line in io.lines(download_file_tmp..k) do + if not (string.find(line, comment_pattern) or string.find(line, ip_pattern)) then + local start, finish, match = string.find(line, domain_pattern) + if (start) then + domains[match] = true + end + end + end + + elseif rule_type == "ip4" then + local out = io.open(unsort_file_tmp, "a") + for line in io.lines(download_file_tmp..k) do + local start, finish, match = string.find(line, ip4_ipset_pattern) + if (start) then + out:write(string.format("%s\n", line)) + end + end + out:close() + + elseif rule_type == "ip6" then + local out = io.open(unsort_file_tmp, "a") + for line in io.lines(download_file_tmp..k) do + local start, finish, match = string.find(line, ip6_ipset_pattern) + if (start) then + out:write(string.format("%s\n", line)) + end + end + out:close() + + end + os.remove(download_file_tmp..k) + else + sret = 0 + log(rule_name.. " 第" ..k.. "条规则:" ..v.. "下载失败!") + end + end + + if sret == 200 then + if rule_type == "domain" then + local out = io.open(unsort_file_tmp, "w") + for k,v in pairs(domains) do + out:write(string.format("%s\n", k)) + end + out:close() + end + luci.sys.call("cat " ..unsort_file_tmp.. " | sort -u > "..file_tmp) + os.remove(unsort_file_tmp) + end + + if sret == 200 then + local old_md5 = luci.sys.exec("echo -n $(md5sum " .. rule_path .. "/" ..rule_name.. " | awk '{print $1}')") + local new_md5 = luci.sys.exec("echo -n $([ -f '" ..file_tmp.. "' ] && md5sum " ..file_tmp.." | awk '{print $1}')") + if old_md5 ~= new_md5 then + local count = line_count(file_tmp) + luci.sys.exec("mv -f "..file_tmp .. " " ..rule_path .. "/" ..rule_name) + reboot = 1 + log(rule_name.. " 更新成功,总规则数 " ..count.. " 条。") + else + log(rule_name.. " 版本一致,无需更新。") + end + else + log(rule_name.. " 文件下载失败!") + end + os.remove(file_tmp) + return 0 +end + +local function fetch_gfwlist() + fetch_rule("gfwlist","domain",gfwlist_url,true) +end + +local function fetch_chnroute() + fetch_rule("chnroute","ip4",chnroute_url,false) +end + +local function fetch_chnroute6() + fetch_rule("chnroute6","ip6",chnroute6_url,false) +end + +local function fetch_chnlist() + fetch_rule("chnlist","domain",chnlist_url,false) +end + +--获取geoip +local function fetch_geoip() + --请求geoip + xpcall(function() + local json_str = curl(geoip_api) + local json = jsonc.parse(json_str) + if json.tag_name and json.assets then + for _, v in ipairs(json.assets) do + if v.name and v.name == "geoip.dat.sha256sum" then + local sret = curl(v.browser_download_url, "/tmp/geoip.dat.sha256sum") + if sret == 200 then + local f = io.open("/tmp/geoip.dat.sha256sum", "r") + local content = f:read() + f:close() + f = io.open("/tmp/geoip.dat.sha256sum", "w") + f:write(content:gsub("geoip.dat", "/tmp/geoip.dat"), "") + f:close() + + if nixio.fs.access(v2ray_asset_location .. "geoip.dat") then + luci.sys.call(string.format("cp -f %s %s", v2ray_asset_location .. "geoip.dat", "/tmp/geoip.dat")) + if luci.sys.call('sha256sum -c /tmp/geoip.dat.sha256sum > /dev/null 2>&1') == 0 then + log("geoip 版本一致,无需更新。") + return 1 + end + end + for _2, v2 in ipairs(json.assets) do + if v2.name and v2.name == "geoip.dat" then + sret = curl(v2.browser_download_url, "/tmp/geoip.dat") + if luci.sys.call('sha256sum -c /tmp/geoip.dat.sha256sum > /dev/null 2>&1') == 0 then + luci.sys.call(string.format("mkdir -p %s && cp -f %s %s", v2ray_asset_location, "/tmp/geoip.dat", v2ray_asset_location .. "geoip.dat")) + reboot = 1 + log("geoip 更新成功。") + return 1 + else + log("geoip 更新失败,请稍后再试。") + end + break + end + end + end + break + end + end + end + end, + function(e) + end) + + return 0 +end + +--获取geosite +local function fetch_geosite() + --请求geosite + xpcall(function() + local json_str = curl(geosite_api) + local json = jsonc.parse(json_str) + if json.tag_name and json.assets then + for _, v in ipairs(json.assets) do + if v.name and v.name == "geosite.dat.sha256sum" then + local sret = curl(v.browser_download_url, "/tmp/geosite.dat.sha256sum") + if sret == 200 then + local f = io.open("/tmp/geosite.dat.sha256sum", "r") + local content = f:read() + f:close() + f = io.open("/tmp/geosite.dat.sha256sum", "w") + f:write(content:gsub("geosite.dat", "/tmp/geosite.dat"), "") + f:close() + + if nixio.fs.access(v2ray_asset_location .. "geosite.dat") then + luci.sys.call(string.format("cp -f %s %s", v2ray_asset_location .. "geosite.dat", "/tmp/geosite.dat")) + if luci.sys.call('sha256sum -c /tmp/geosite.dat.sha256sum > /dev/null 2>&1') == 0 then + log("geosite 版本一致,无需更新。") + return 1 + end + end + for _2, v2 in ipairs(json.assets) do + if v2.name and v2.name == "geosite.dat" then + sret = curl(v2.browser_download_url, "/tmp/geosite.dat") + if luci.sys.call('sha256sum -c /tmp/geosite.dat.sha256sum > /dev/null 2>&1') == 0 then + luci.sys.call(string.format("mkdir -p %s && cp -f %s %s", v2ray_asset_location, "/tmp/geosite.dat", v2ray_asset_location .. "geosite.dat")) + reboot = 1 + log("geosite 更新成功。") + return 1 + else + log("geosite 更新失败,请稍后再试。") + end + break + end + end + end + break + end + end + end + end, + function(e) + end) + + return 0 +end + +if arg[2] then + if arg[2]:find("gfwlist") then + gfwlist_update = 1 + end + if arg[2]:find("chnroute") then + chnroute_update = 1 + end + if arg[2]:find("chnroute6") then + chnroute6_update = 1 + end + if arg[2]:find("chnlist") then + chnlist_update = 1 + end + if arg[2]:find("geoip") then + geoip_update = 1 + end + if arg[2]:find("geosite") then + geosite_update = 1 + end +else + gfwlist_update = ucic:get_first(name, 'global_rules', "gfwlist_update", 1) + chnroute_update = ucic:get_first(name, 'global_rules', "chnroute_update", 1) + chnroute6_update = ucic:get_first(name, 'global_rules', "chnroute6_update", 1) + chnlist_update = ucic:get_first(name, 'global_rules', "chnlist_update", 1) + geoip_update = ucic:get_first(name, 'global_rules', "geoip_update", 1) + geosite_update = ucic:get_first(name, 'global_rules', "geosite_update", 1) +end +if gfwlist_update == 0 and chnroute_update == 0 and chnroute6_update == 0 and chnlist_update == 0 and geoip_update == 0 and geosite_update == 0 then + os.exit(0) +end + +log("开始更新规则...") +if tonumber(gfwlist_update) == 1 then + xpcall(fetch_gfwlist,function(e) + log(e) + log(debug.traceback()) + log('更新gfwlist发生错误...') + end) +end + +if tonumber(chnroute_update) == 1 then + xpcall(fetch_chnroute,function(e) + log(e) + log(debug.traceback()) + log('更新chnroute发生错误...') + end) +end + +if tonumber(chnroute6_update) == 1 then + xpcall(fetch_chnroute6,function(e) + log(e) + log(debug.traceback()) + log('更新chnroute6发生错误...') + end) +end + +if tonumber(chnlist_update) == 1 then + xpcall(fetch_chnlist,function(e) + log(e) + log(debug.traceback()) + log('更新chnlist发生错误...') + end) +end + +if tonumber(geoip_update) == 1 then + log("geoip 开始更新...") + local status = fetch_geoip() + os.remove("/tmp/geoip.dat") + os.remove("/tmp/geoip.dat.sha256sum") +end + +if tonumber(geosite_update) == 1 then + log("geosite 开始更新...") + local status = fetch_geosite() + os.remove("/tmp/geosite.dat") + os.remove("/tmp/geosite.dat.sha256sum") +end + +ucic:set(name, ucic:get_first(name, 'global_rules'), "gfwlist_update", gfwlist_update) +ucic:set(name, ucic:get_first(name, 'global_rules'), "chnroute_update", chnroute_update) +ucic:set(name, ucic:get_first(name, 'global_rules'), "chnroute6_update", chnroute6_update) +ucic:set(name, ucic:get_first(name, 'global_rules'), "chnlist_update", chnlist_update) +ucic:set(name, ucic:get_first(name, 'global_rules'), "geoip_update", geoip_update) +ucic:set(name, ucic:get_first(name, 'global_rules'), "geosite_update", geosite_update) +ucic:save(name) +luci.sys.call("uci commit " .. name) + +if reboot == 1 then + log("重启服务,应用新的规则。") + luci.sys.call("/usr/share/" .. name .. "/iptables.sh flush_ipset > /dev/null 2>&1 &") +end +log("规则更新完毕...") diff --git a/luci-app-passwall/root/usr/share/passwall/rules/block_host b/luci-app-passwall/root/usr/share/passwall/rules/block_host new file mode 100644 index 000000000..e69de29bb diff --git a/luci-app-passwall/root/usr/share/passwall/rules/block_ip b/luci-app-passwall/root/usr/share/passwall/rules/block_ip new file mode 100644 index 000000000..e69de29bb diff --git a/luci-app-passwall/root/usr/share/passwall/rules/chnlist b/luci-app-passwall/root/usr/share/passwall/rules/chnlist new file mode 100644 index 000000000..d4587eb02 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/chnlist @@ -0,0 +1,67226 @@ +0-100.com +0-6.com +00.net +000.link +00000.host +00042.com +00058.com +0006266.com +0007.net +000714.xyz +000dn.com +000e.com +000wx.com +001.com +001133.app +0012482.com +001cndc.com +001daima.com +001en.com +001jm.com +001job.com +001kd.com +001pp.com +001tech.com +001town.com +00290777.com +002lzj.com +0033.com +0037wan.com +00394.net +003store.com +004218.com +004678.com +00544.com +0056.cc +0061.com.au +00615.net +00791.com +007hd.com +007manhua.com +007qu.com +007shoes.com +007swz.com +007yx.com +008008008.cc +008008789.com +00817.com +0082tv.com +0082tv.net +008321.com +00852wm.com +00853.la +0086crane.com +0086l.com +0086org.com +0088-0880.com +0088dns.com +008gj.com +009.com +0098118.com +00991901.com +0099524.com +009y.com +00bx.com +00cdn.com +00cdn.xyz +00cf.com +00cha.com +00cha.net +00ic.com +00it.net +00ksw.net +00lewen.com +00red.com +00tera.com +00txt.com +00wv.com +01-123.com +01-cf.com +010123456.com +010155.net +0101shop.com +01095113.com +010bianhu.com +010bjzs.com +010byyy.com +010cns.com +010dsmzyy.com +010hetongls.com +010jianzhan.com +010lf.com +0110m.com +0119.com +0123401234.com +0123456789.biz +0123456789.com +0135135.com +01368.com +01368u.com +0138.com +014.cc +014999k.com +016272.com +016sf.com +01bz.wang +01caijing.com +01faxing.com +01happy.com +01home.com +01hour.com +01hr.com +01hrheibei.com +01isp.com +01isp.net +01jzw.com +01ke.com +01ki.com +01p.com +01retail.com +01rv.com +01tao.com +01teacher.com +01tingshu.com +01ue.com +01w.com +01water.com +01wb.com +01yo.com +01yun.com +01zhuanche.com +020.com +020.net +0208.com +020banjia.net +020job.com +020ym.com +020zp.net +021-atp.com +021-cz.com +021-tp.com +021-zszx.com +021.com +021.net +0214.com +0214vip.com +02156506666.net +02163.com +021bolang.com +021clean.com +021dianyuan.com +021dzjx.com +021east.com +021fx.com +021gjhb.com +021hly.org +021ja.com +021jingwei.com +021jingwu.com +021js.com +021lawfirm.com +021networks.com +021phone.com +021ren.com +021senxi.com +021sports.com +021tk.com +021yongzhuo.com +021zu.com +022003.com +0221155.com +0222z6.com +022china.com +022ee.com +022meishu.com +022s.com +022shui.com +022sunny.com +022v.com +023086.com +02345678.com +023buy.com +023che.com +023cq.cc +023dir.com +023dns.com +023gayss.com +023gaywz.com +023gmdk.com +023lvyou.com +023sm.com +023up.com +023wg.com +023yts.com +023zp.com +0243811.com +0243855.com +0245.cc +0245.org +024888.net +02489.com +024bj.com +024bxkj.com +024eps.com +024feida.com +024frde.com +024fuchan.com +024fuwu.com +024fzy.com +024grc.com +024heyi.com +024hh.com +024hp.com +024hpg.com +024huada.com +024zihai.com +024zol.com +024zxw.com +02516.com +025ct.com +025ebaidu.com +025kaiyi.com +025nj.com +025sc.com +025xl.com +025zp.com +026idc.com +0270.cc +02712122.com +02727.com +02766667777.com +027accp.com +027aige.com +027art.com +027cgb.com +027chuxun.com +027cloud.com +027down.com +027eat.com +027fcyy.com +027hcss.com +027hhl.com +027hpedu.com +027hpit.com +027htxt.com +027hxj.com +027hxzy.com +027hy.com +027idc.com +027jsxh.com +027jz.cc +027one.com +027qyy.com +027tianle.com +027tianlong.com +027tytpf.com +027wcbyy.com +027xf.com +027yunwei.com +027yx.com +027zhan.com +027zpw.com +0283home.com +028brother.com +028hema.com +028hr.org +028ip.com +028kuaidai.com +028office.com +028pxw.com +029558.com +029900.com +029jiuda.com +029judao.com +029k.com +029lintong.com +029rencai.com +029shw.com +029weichen.com +029wsw.com +029yjy.com +029yljj.com +029yuezi.com +029zp.com +02edu.com +02kdid.com +02lu.com +02o.pw +02shu.cc +02shu.com +02wan.com +02wq.com +030303.com +030mall.com +0310cn.com +0310it.com +0311wifi.com +0314.online +0316.cc +031v.com +0328.com +033033.com +0335e.com +0335wl.com +03412.com +03414.com +034666.com +0349.info +035110000.com +0351data.com +0351fdc.com +0352fang.com +0352g.com +0355fk.com +0356f.com +0357hz.com +0368.com +036yx.com +0371wang.com +037201.com +037398.com +0375art.com +0376news.com +0377cw.com +0378zz.com +0379home.com +0379pfw.com +03964.com +03dq.com +03k.org +03nq.com +0411.com +041188888.com +0411e.com +0411hd.com +041234b.com +0417gou.com +0421wcbzk.com +0427.com +0430.com +0431cn.com +0437.com +044045.com +04486.com +0452e.com +0453.com +0455zd.com +0460.com +0470a.com +0470fcw.com +0471fcw.com +0472.com +0479xx.com +05087.com +051058.com +0510syedu.com +0511w.com +0512118114.com +0512fangchan.com +0512pearl.com +0512s.com +0512xiangcheng.com +0512zp.com +0513.net +0513.org +0513011.com +0513syedu.com +0513zs.com +0514.com +0514rj.com +051591.com +0515auto.com +0515syedu.com +0515yc.tv +0516k.com +0517.net +0517999.com +0517cw.com +0517w.com +0519114.net +051jk.com +05236.com +0523tx.net +0523zp.com +0523zz.com +05273.com +0527zz.com +052yx.com +0531.com +053135.com +0531jb.com +0531soso.com +0531welt.com +0531wt.com +0532.com +0533.com +0535-0411.com +0536qz.com +0537yz.com +0539fc.com +053c.com +054057.com +0543hr.com +0546dsw.com +0546fdc.com +0550.com +055110.com +055178.com +0551fangchan.com +0551hfhybdf.com +0551wl.com +0552jie.com +05532.com +0553fang.com +0553zsw.com +0554news.com +0554zp.com +0555dsw.com +0555fc.com +0558.la +0558zp.com +0559fc.com +0561house.com +0563job.com +0566cn.net +0566fc.com +0566job.com +057.com +0570fc.com +0570zs.com +057191.com +0571dns.com +0571ok.com +0573fang.com +0573ren.com +0574bbs.com +0574nbjg.com +05752008.com +0575bbs.com +0575dsw.com +0575life.com +0575xf.com +0576dsw.com +0577-it.com +0577cnw.com +0577home.net +0577hr.com +0577job.com +0577qiche.com +0578rencai.com +0578zhaopin.com +0579com.com +0579fw.com +058lm.com +0591job.com +05927.com +0592dsw.com +0592jj.com +0592xl.com +05935.com +0593666.com +0594.com +0595job.com +0595rc.com +0596fc.com +0597kk.com +0597ok.com +0597seo.com +0597zp.com +0598777.com +0598job.com +0598rc.com +0599yx.com +05bk.com +05bq.com +05cg.com +05eg.com +05info.com +05vm.com +05wan.com +062616.com +063108.com +0632idc.com +0634.com +06362.com +065201.com +0660hf.com +0663.net +0663job.com +0668.com +068632.com +06abc.com +06climate.com +06dns.com +06game.com +06jm.com +06peng.com +07.la +0701news.com +0704tv.com +07073.com +07073h5.com +07073sy.com +07073vr.com +0712fang.com +0712zpw.com +071333.com +0713fang.com +0714news.com +0715fc.com +0715rc.com +0715zp.com +0716fw.com +0716mr.com +07177.com +0717ad.com +0718.cc +071811.cc +0719house.com +0722fc.com +0722zs.com +0724c.com +0728f.com +0730188.com +0730news.com +073122.com +0731a.com +0731cfw.com +0731fdc.com +0731i.com +0731jiaju.com +0731job.com +0731pgy.com +0731rj.com +0731tg.com +0731wan.com +0731zcgs.com +0733news.com +0734zpw.com +0735.com +07358.com +0735jz.com +0735zx.com +0735zz.com +0736fdc.com +0736zz.com +0737rencai.com +0738.cc +0738rc.com +0738www.com +0739tt.com +073img.com +07430743.com +0744tv.com +0745tuan.com +0746news.com +0750rc.com +075238.com +0752qc.com +0755400.com +075577777.com +0755888.com +0755bdqn.com +0755caibao.com +0755car.com +0755haoyu.com +0755hz.com +0755pr.com +0755rc.com +0755si.com +0755ws.com +0755zb.com +0756hhr.com +0756home.com +0756idc.com +0756seo.com +0756tong.com +0757fc.com +0757p.com +0757rc.com +0758net.com +0759job.com +0759k.com +0759yc.com +0760.com +0760bw.com +0760rc.com +076299.com +0762uu.com +0763f.com +0763home.com +0763zuche.com +076650.com +0768.gd +0769che.com +0769net.com +0769sun.com +0769sx.com +0769yp.com +0771.tel +0771bc.com +0771rc.com +0772fang.com +0772job.com +0775fcw.com +0775jzw.com +07890.com +0791look.com +0791quanquan.com +0792jj.net +0792u.com +079768.com +0797rs.com +079y.com +07cn.com +07ren.com +07swz.com +07yue.com +0813fs.com +08172.hk +0817tv.com +0817xm.com +0818tuan.com +0826j.com +082808.com +0832h.com +0832mh.com +083332.com +0835.com +0835meiya.com +0838.com +0838che.com +085.com +0852diaoyu.com +0852job.com +0853rc.com +0854job.com +0855job.com +0856job.com +0857job.com +0859job.com +086580.com +086jx.com +086kd.com +086mai.com +0871gc.com +0890.com +08946.com +0898.net +089858.com +0898888.com +0898cc.com +0898cfw.com +0898hq.com +0898mmf.com +0898xbfc.com +089u.com +08an.com +08c6.com +08cms.com +08g.cc +08ky.com +08px.com +090expo.com +0912app.com +0914cn.com +0915home.com +091601.com +0916auto.com +0916jzw.com +0917.com +0917e.com +0919123.com +093.com +093.tv +0937js.com +0938net.com +093nd9.com +09418.com +09451.com +094j35.com +095196555.com +0951job.com +09635.com +0967ll.com +09685.com +096hg.com +0991dj.com +0991net.com +0992.cc +09ge.com +09rw.com +09shijue.com +0a.fit +0bug.org +0car0.com +0ctrl.com +0d.work +0daily.com +0dayhack.net +0dayku.com +0dj.net +0duxs.com +0easy.com +0fenbei.com +0fw.net +0g1s.com +0gouche.com +0ju.cc +0kee.com +0rg.pw +0rl.cc +0s8s.com +0sm.com +0x0.biz +0x0.ooo +0x100.club +0x3.me +0x5.me +0x6.me +0x7.me +0x9.me +0xaa55.com +0xff000000.com +0xffffff.org +0xsky.com +0xue.com +0y856.com +1-111-1.com +1-123.com +1-b.tc +1-cs.net +1-du.net +1-yuan.net +1.cc +1.cm +100-tong.com +100.com +100.me +1000.com +10000.com +10000.sh +10000idc.net +10000ja.net +10000job.com +10000link.com +10000shequ.com +10000tc.com +10000yao.com +10001wan.com +1000360.com +10006.info +1000ci.net +1000eb.net +1000fr.net +1000fun.com +1000phone.com +1000phone.net +1000plan.org +1000thinktank.com +1000tm.net +1000tuan.com +1000uc.com +1000xuexi.com +1000zhu.com +10010.com +10010400.net +10010hb.net +10010js.com +10010ll.com +10010nm.com +10010vip.cloud +1001g.com +1001hw.com +1001p.com +100580.com +100669.com +1008011.com +1008120.com +10086.win +1008610086.com +10086web.com +100allin.com +100alpha.com +100ask.net +100ask.org +100audio.com +100ayrc.com +100bt.com +100chou.com +100chui.com +100cjc.com +100credit.com +100cup.com +100data.com +100du.com +100e.com +100ehui.com +100eshu.com +100exam.com +100fang.com +100font.com +100ftv.com +100hdy.com +100how.com +100ip.net +100jiapu.com +100ksw.com +100legend.com +100loujia.com +100lw.com +100market.net +100md.com +100mian.com +100msh.net +100niangudu.com +100njz.com +100nkrc.com +100nong.com +100pd.cc +100pd.com +100ppi.com +100rjrc.com +100run.com +100shop.com +100skin.com +100stone.com +100sucai.com +100szy.com +100t.com +100tal.com +100tmt.com +100toutiao.com +100try.com +100txt.com +100txy.com +100ulife.com +100wa.com +100web.store +100weidu.com +100wen.cc +100wen.com +100wsanguo.com +100x100w.com +100xfrc.com +100xhs.com +100xiao.com +100xin.com +100xuexi.com +100ye.net +100yigui.com +100yingcai.com +100yiyao.com +100yue.com +100zhuang.com +100zp.com +101.com +10100000.com +10101111.com +10101111cdn.com +101055.com +1010jiajiao.com +1010jz.com +1010pic.com +1010school.com +1010sh.com +101505.com +10155.com +1015600.com +10185.com +101hr.com +101jiajiao.com +101jm.net +101weiqi.com +1020m.com +1024.com +1024.ink +1024g.com +1024ie.com +1024nic.com +1024sj.com +1024sou.com +1024ss.com +1024tools.com +10260.com +102cw.com +102no.com +102pay.com +103153.com +1032.com +10333.com +1035.mobi +1040jy.com +10419.net +105a.com +105mr.com +105zx.com +106.com +10639888.com +1065m.com +106666.cc +1066888.com +106903.com +1073.com +107788.com +1078899.com +107room.com +1080prmvb.com +108101.xyz +108105.xyz +108198.com +10852.com +10852a.com +10865.com +108cun.com +108pk.com +108qi.com +108shu.com +108sq.com +108tian.com +109.com +10909.com +1090ys.com +109863.com +109876543210.com +10bests.com +10besty.com +10danteng.com +10fang.com +10gt.com +10hghg.com +10huan.com +10idc.com +10isp.com +10min.club +10moons.com +10pinping.com +10pkpk.com +10qianwan.com +10s1.com +10sea.com +10soo.com +10tiao.com +10uv.net +10vps.com +10yan.com +10yougame.com +10zk.com +110.com +11000011.com +1109.com +110hack.com +110tm.com +110zhibo.com +1111.buzz +1111.com +111111111.com +11111s.info +111155268.com +1111biao.com +1113.cc +11160066.com +111com.net +111g.com +111tt.icu +111yao.com +112112.com +1122.com +11222.com +1122dh.com +1124.cc +1128.org +112812.com +1128job.com +112seo.com +112wan.com +1131.cc +11315.com +1133.cc +113989.com +113dh.com +113ya.com +114-91.com +114.114.114.114 +1140086.com +11467.com +114best.com +114cb.com +114cbd.com +114chn.com +114desk.com +114dev.com +114dg.com +114dhc.com +114dns.com +114dns.net +114god.com +114hrb.com +114huoche.com +114hzw.com +114ic.com +114ic.net +114jc.com +114jcw.com +114jia.net +114la.com +114mall.com +114menhu.com +114mo.com +114my.net +114oc.com +114park.com +114photo.com +114piaowu.com +114pinpai.com +114px.com +114qy.com +114s.com +114sf.com +114shouji.com +114study.com +114work.com +114yygh.com +114zhibo.com +114zpw.com +114zw.la +114zw.org +115.com +11544.com +1155.com +1155871.com +1156dns.com +115800.com +1158pk.com +115cdn.net +115img.com +115jk.com +115z.com +1163.com +1166.com +11665.com +11684.com +116cd.com +116kj.com +116yx.com +11773.com +117play.com +118114.net +1188.com +1189.tv +118cy.com +118jm.com +118pan.com +118qikan.com +118study.com +118wa.com +119.cc +119120.org +119958.com +119hn.com +119tx.com +119you.com +11chuangye.com +11dns.com +11dream.net +11fldxn.com +11flow.com +11g.com +11gai.com +11h5.com +11job.com +11k.cc +11kf.net +11lx.com +11pdf.com +11player.com +11qp94.com +11space.com +11sun.com +11wyx.com +11xotn7p.com +11ziyun.com +120-job.com +120.net +12011.org +120185.com +120444.com +120ask.com +120askimages.com +120bjgcyy.org +120btc.com +120dxb.com +120fd.com +120gz.com +120hpyy.com +120kaoshi.com +120kid.com +120kq.com +120top.com +120x.net +121121.net +12114job.com +12114rc.com +1212.com +12120.net +1213.me +121314.com +121ask.com +121down.com +121mai0098.com +121mu.com +121xia.com +12225.com +12226.com +12227.com +122park.com +123-789.com +123-biyezheng.org +123.cc +123.com +12306.com +12306bypass.com +12308.com +123123.net +12317.com +12317wan.com +1231818.com +12333.com +12333ask.com +12333si.com +1234.cx +1234001.com +123456.la +123456789.tv +123456img.com +12345good.com +12345good.net +12345szzx.com +12348.net +12349.net +1234biao.com +1234i.com +1234n.com +1234wu.com +1234wu.net +1234ye.com +1234yes.com +12354.com +12355.net +1236.com +12365auto.com +12366.com +12366.net +12366ca.com +12366cn.com +12366ns.com +123ad.com +123admin.com +123aoe.com +123baofeng.com +123bo.com +123buyu.com +123buyu.net +123cha.com +123du.cc +123ems.com +123fc.com +123haitao.com +123hala.com +123hao.com +123hdp.com +123huodong.com +123lihun.com +123meiyan.com +123menpiao.com +123nice.net +123novel.com +123qibu.com +123qy.com +123slg.com +123ths.com +123u.com +123wangsu.com +123webgame.com +123xun.com +123xyq.com +125.la +12530.com +12540.org +12580.com +12580.net +12580.tv +12580emall.com +12580jnh.com +12580study.com +125a.net +125edu.com +125job.com +125mx.com +125p.com +125uu.com +125visa.com +125y.com +126.am +126.com +126.fm +126.la +126.net +126blog.com +126doc.com +126g.com +126qiye.com +126ts.com +126x.com +126z.net +126ziyuan.com +127.net +1278721.com +12799.com +127tv.com +127xx.com +128456.com +1288.tv +128ic.com +128qd.com +128uu.com +12988.net +129w.com +12edu.com +12gang.com +12h5.com +12jn.com +12ky.com +12pk.com +12sporting.com +12tiku.com +12tv.net +12yao.com +12ym.com +12ystar.com +13.gs +130158.com +131.com +13112.com +1314520sz.com +131458.com +1314mylove.com +1314study.com +1314wallet.com +1314zf.com +1317w.com +131cc.com +1322.com +1325.com +132lawyer.com +1332vp.com +13377608388.com +133998.com +133china.com +13400.com +13482896776.com +135-139.com +135019.com +135031.com +1351.com +135309.com +135650.com +1356789.com +1356net.com +135958.com +135995.com +135bianjiqi.com +135box.com +135editor.com +135edu.com +135fa.com +135plat.com +135top.com +135yuedu.com +136.com +1360.com +136136.com +13636.com +136fc.com +136hr.com +13707.net +13720.com +1374.com +1377.com +137home.com +13800.net +138gzs.com +138top.com +138txt.com +138vps.com +139.com +139000.com +139018.com +1391.com +13910.com +139130.com +139135.com +1392189.com +13937180868.com +13973.com +139cai.com +139cm.com +139down.com +139life.com +139shop.com +139site.com +139talk.com +139w.com +139wanke.com +139y.com +139zhuti.com +13cg.com +13cr.com +13ejob.com +13fuwu.com +13gm.com +13hangpifa.com +13mobi.com +13ww.net +13xiaoshuoa.com +13yx.com +140414.com +140ed8.com +1415926.com +1415926.mobi +1415926pi.com +14294.com +14498.com +144n.com +1451cn.com +14583.com +147xiaoshuo.com +147xs.com +147xs.org +147xz.com +148-law.com +14866.com +1488.com +148com.com +148la.com +14hj.com +14xd.com +150072.com +150075.com +1502828.com +150cn.com +151.hk +15111223344.com +15153.com +15166.com +151733.com +1518.com +151rs.com +151top.com +151web.com +15211223344.com +152500.com +15311223344.com +153g.net +1545ts.com +155.com +155175.com +155idc.com +15666.com +156zy.com +157120.com +15803.com +1586f.com +1588.tv +15880.com +158c.com +158jixie.com +159.com +15cdn.com +15daili.com +15gg.com +15gift.com +15hr.com +15in.com +15lu.com +15ms.com +15pb.cc +15shu.net +15solo.com +15str.com +15tianqi.com +15w.com +15wz.com +15xdd.com +15yan.com +15yc.com +15yl.com +160.com +160.me +160edu.net +160yx.com +161580.com +1616.net +16163.com +1616dh.com +1616n.com +1618.com +161gg.com +162.com +1626.com +163.cm +163.com +163.fm +163.gg +163.lu +163.net +1633.com +1633d.com +163663.com +163686.com +1637.com +163cdn.com +163cp.com +163cs.com +163data.net +163fen.com +163jiasu.com +163k.cc +163k.com +163lady.com +163ns.com +163pinglun.com +163py.com +163ren.com +163wh.com +163yu.com +163yun.com +164580.com +16466.com +165123.com +16587.com +16595.com +166.com +166.net +166161.com +1666.com +1668.net +1669la.com +166cai.com +166ks.net +166sh.com +166xs.cc +166zw.com +16768.com +16789.net +16816.com +16838.com +1684.cc +1684sm.com +1688.com +16885.com +16886000.com +16888.com +1688988.com +1688cdn.com +1688eric.com +1688la.com +1688na.com +1688s.com +1688yinhua.com +1688zhuce.com +16899168.com +168cb.com +168chaogu.com +168dc.com +168dns.com +168f.info +168hs.com +168job.com +168kk.com +168kn.com +168lyq.com +168moliao.com +168pd.com +168rcw.com +168tcw.com +168tea.com +168tex.com +168tochina.com +168w.cc +168yyzj.com +168zcw.com +169.com +169163.com +169369.com +1696.com +16999.com +169gold.net +169it.com +169kang.com +169t.com +16boke.com +16fan.com +16game.net +16hyt.com +16ker.com +16kxsw.com +16lao.com +16lo.com +16manhua.com +16p.com +16pic.com +16rd.com +16sucai.com +16tree.com +16tz.com +16wl.cc +16xcw.com +16xx8.com +16xz.com +17.com +170.com +17025.org +170hi.com +170mv.com +170tao.com +17167.com +1716dy.com +17173.com +17173cdn.com +17173ie.com +17173v.com +17173yx.com +1717518.com +1717kf.com +1717pk.com +1717zy.com +1718001.com +1718china.com +1718world.com +171tax.com +171win.net +171zz.com +17207.com +172222.com +17284.net +172tt.com +173.com +1732.com +1732.net +17348.com +17350.com +17351.com +17369.com +173daxue.com +173eg.com +173fc.com +173funny.com +173iot.com +173kan.com +173kw.com +173on.com +173sy.com +173um.com +173uu.com +173zy.com +17446.com +17558.net +17566.com +1758.com +175club.com +175game.com +175ha.com +175kh.com +175pt.com +175pt.net +175wan.com +175wx.com +17611.com +176616.com +17666.mobi +17673.com +1768.com +176878.com +176quan.com +1773.com +1778.com +177817.com +178-go.com +178.com +178198.com +178448.com +178517.com +1787.ink +178800.cc +17888.com +178bird.com +178bit.com +178du.com +178hui.com +178linux.com +178online.com +178pt.com +178rw.com +179.com +179179.com +17937.net +1794game.com +17986.net +17989.com +17admob.com +17ai.me +17avr.com +17b.net +17bang.ren +17bdc.com +17bianji.com +17byh.com +17cai.com +17caifu.com +17ce.com +17chacn.com +17chuang.cc +17coding.info +17cx.com +17daili.com +17dao.com +17dap.com +17dawan.com +17dm.com +17doubao.com +17dp.com +17emarketing.com +17fanwen.com +17fee.com +17fengguo.com +17fengyou.com +17fifa.com +17firefox.com +17font.com +17forex.com +17g.com +17game.com +17gaoda.com +17getfun.com +17gwx.com +17haibao.com +17heli.com +17house.com +17hpl.com +17huang.com +17itou.com +17ivr.com +17jita.com +17k.com +17kf.cc +17kgk.com +17kgl.com +17kjs.com +17koko.com +17kouyu.com +17kshu.net +17kuxun.com +17kxgame.com +17kxs8.com +17lewan.net +17liuxue.com +17ll.com +17luyouqi.com +17m3.com +17maimaimai.com +17meiwen.com +17mf.com +17miyou.com +17mqw.com +17mr.org +17ms.com +17neo.com +17oh.com +17ok.com +17oko.com +17palyba.com +17pr.com +17python.com +17qcc.com +17qread.com +17rd.com +17rd.net +17read.com +17sct.com +17shouhui.com +17sucai.com +17syi.com +17sysj.com +17tanwan.com +17taotaoa.com +17taotaob.com +17taotaoba.com +17taotaoc.com +17tcw.com +17tigan.com +17track.net +17tui.cc +17tx.com +17u.com +17u.net +17u1u.com +17u7.com +17ugo.com +17uhui.com +17uhui.net +17ukulele.com +17uoo.com +17usoft.com +17usoft.net +17uxi.com +17v5.com +17vsell.com +17wan7.com +17wanba.com +17wanxiao.com +17wclass.com +17weike.com +17weixing.com +17wendao.com +17win.com +17ww.cc +17xie.com +17xlm.com +17xsj.com +17xueba.com +17xxl.com +17ya.com +17yaoqu.com +17yc.com +17ym.org +17you.com +17yucai.com +17yund.com +17yy.com +17yyba.com +17zhaogong.com +17zhidao.com +17zhiliao.com +17zhuangxiu.com +17ziti.com +17zixue.com +17zub.com +17zuoye.com +17zuoye.net +17zwd.com +18.cm +180102.com +180268900.com +18095.com +180qt.com +181230.com +18183.com +181839.com +1818hm.com +181ps.com +181ue.com +182208.com +183me.com +183post.com +183read.com +18488.com +185185.com +186078.com +1866.tv +18665348887.com +186688.com +187801.com +188.com +188158.com +1884933.com +18856.com +188628.com +1888.com.mo +188app.xyz +188bifen.com +188cf.net +188diaoche.com +188doc.com +188hi.com +188lanxi.com +188mb.com +188naicha.com +188soft.com +188wan.com +188yd.com +1892139.com +1895m.com +189cha.com +189cube.com +189ebuy.com +189jxt.com +189key.com +189qas.com +189read.com +189read.net +189sec.com +189smarthome.com +189store.com +189works.com +189yo.com +189young.com +18caijing.com +18chonglou.com +18cp.vip +18dao.com +18dao.org +18daxue.com +18dx.com +18guanjia.com +18kf.net +18ladys.com +18link.com +18lipin.com +18o8.com +18ph.com +18qiang.com +18shuwu.com +18shuwu.net +18touch.com +18vps.com +18wk.com +18xs.org +18yangzhi.com +18yl.com +18zg.com +18zhuanqian.com +18zw.com +1903it.com +1905.com +1905kk.com +190757.com +191.com +19196.com +1919game.net +192ly.com +1931.com +1937cn.com +193839.com +193sa.com +1947.cc +1949idc.com +195155.com +195855.com +19687.com +197946.com +197c.com +198254.com +19831110.com +198358.com +198424.com +198503.xyz +198526.com +198526.net +1985cd.com +1985t.com +1987.name +1988.tv +19888.tv +1988wp.com +1988zp.com +198game.com +198game.net +198w.net +199508.com +1997sty.com +1998mall.com +1999019.com +1999dns.com +1999year.com +199it.com +199u2.com +199yt.com +199zw.com +19kan.com +19lou.com +19lou.tw +19mi.net +19ued.com +19where.com +19xsf.com +19yxw.com +19zhan.com +1an.com +1ang.com +1aq.com +1b23.com +1biaozhun.com +1biqu.com +1bus.net +1cae.com +1caifu.com +1caitong.com +1checker.com +1cloudsp.com +1cnmedia.com +1cno.com +1d1d100.com +1d9z.com +1dao99.com +1dfa.com +1diaocha.com +1diary.me +1domedia.com +1drj.com +1drv.ws +1dufish.com +1dume.com +1dusou.com +1dutm.com +1f11.com +1fenda.com +1foo.com +1fqw.com +1g1g.com +1g31.com +1gbru.com +1gesem.com +1ggame.com +1gjh.com +1haigtm.com +1hangye.com +1hcang.com +1hhd.com +1hkt.com +1hshop.com +1huamu.com +1i580.com +1iptv.com +1j1x.net +1jduan.com +1jiaa.com +1jiajie.com +1jian.fun +1juzi.com +1k2k.com +1ka123.com +1kapp.com +1ke.net +1kejian.com +1kg.org +1kj.com +1kj.tv +1kkk.com +1kmxc.com +1ksz.com +1kuang.com +1kx.me +1kxun.com +1ky.biz +1lan.tv +1lewen.com +1look.tv +1lou.com +1lzs.com +1m.net +1m3d.com +1m85.com +1mall.com +1mao.cc +1mayi.com +1meiyiliao.com +1mfg.com +1miba.com +1mifudao.com +1mingpian.com +1mishu.com +1mit.com +1mm8.com +1mod.org +1more.com +1mpi.com +1mtime.com +1mushroom.com +1mxian.com +1n11.com +1nami.com +1news.cc +1nongjing.com +1nsou.com +1nyz.com +1o26.com +1p1g.com +1peixun.com +1pm2.com +1ppt.com +1q2q.com +1qa.link +1qfa.com +1qianbao.com +1qwe3r.com +1qyl.com +1r1g.com +1rtb.com +1safety.cc +1sapp.com +1shang.com +1shangbiao.com +1sheng.com +1shoucang.com +1sj.tv +1sohu.com +1stacks.net +1stchip.com +1stjc.com +1t1t.com +1tai.com +1tdw.com +1techan.com +1textile.com +1thx.com +1tieba.com +1ting.com +1tjob.com +1tong.com +1tu-design.com +1tu.com +1tu1.com +1uke.com +1uuc.com +1v1offcn.com +1vp.me +1wandian.com +1wang.com +1wii.com +1x3x.com +1xiezuo.com +1xz.com +1y.com +1y0g.com +1y2y.com +1yabc.com +1yaoda.com +1yb.co +1yd.me +1yee.com +1ykh.com +1yltao.com +1yun.cc +1yyg.com +1zhangdan.com +1zhao.org +1zhe.com +1zhengji.com +1ziyou.com +1zjob.com +1zr.com +1zu.com +1zw.com +2-01-5830-0005.cdx.cedexis.net +2-class.com +2-mm.net +2.gy +20.com +200.net +2000200.com +2000888.com +2000dns.com +2000new.com +2000y.net +2002000.xyz +200218.com +2003dns.com +20063365.com +2006q.com +2008php.com +2008red.com +2009.name +200call.com +200wan.com +200y.com +201061.com +201201.com +20130123.com +2013xp.com +2014.mobi +2014w7.com +201551.com +2016ruanwen.com +2016win10.com +20174555.com +20176699.com +2017taoke.com +2018jsybh.com +2018zjjly.com +2019cdac.com +2019zjj.com +2020071703.com +202030.com +2020zjj.com +2021.com +2029.cc +202m.com +202wan.com +2048sj.com +204u.com +205.com +206dy.com +2080ly.com +2088062.com +2088063.com +208xs.com +2095114.com +20biquge.com +20ju.com +20qu.com +20xs.cc +20xue.com +20z.com +21-mars.com +21-rent.com +21-sun.com +2100xs.com +210166.com +210997.com +210z.com +2115.com +211600.com +211ic.com +211lx.com +211zph.com +212300.com +2125.com +21263.net +2128.net +2133.com +21373.com +2144.com +2144gy.com +214yx.com +21511fff.com +2155.com +217.net +217play.com +217wo.com +218257.com +218318.com +218573.com +218574.com +218953.com +218996.com +2197079.com +21bcr.com +21bowu.com +21cake.com +21cbr.com +21ccnn.com +21cd.com +21ce.cc +21cn.com +21cn.net +21cnev.com +21cnimg.com +21cnjy.com +21cnjy.net +21cnlunwen.com +21cos.com +21cp.cc +21cp.com +21ctest.com +21dagong.com +21datasheet.com +21dianyuan.com +21edu8.com +21ejob.com +21eline.com +21epub.com +21fid.com +21food.com +21hh.com +21hubei.com +21hubei.net +21hulian.com +21ic.com +21icsearch.com +21ido.com +21jingji.com +21jrr.com +21js.com +21kan.com +21ks.net +21kunpeng.com +21ld.com +21maoyi.com +21mcu.com +21mingshi.com +21mmo.com +21momo.com +21na.com +21nowart.com +21ou.com +21our.com +21qa.net +21qphr.com +21rcw.com +21rv.com +21shhr.com +21shipin.com +21shte.net +21smov.com +21so.com +21softs.com +21spv.com +21sq.org +21tb.com +21tea.com +21tjsports.com +21tx.com +21tyn.com +21uv.com +21vbluecloud.com +21viacloud.com +21vianet.com +21voa.com +21wecan.com +21wenju.com +21wmd.com +21ww.cc +21xc.com +21xianhua.com +21xl.info +21xuema.com +21yod.com +21yq.com +21ytv.com +21yunwei.com +21zbs.com +21zixun.com +21znw.com +22-dns.com +22.com +221234.xyz +2213.com +221316.com +221400job.com +22145.com +2217.com +221700.com +222.com +222255268.com +222bz.com +222i.net +223.com +223.so +22332008.com +2239.com +224.com +22442400.com +2247.com +224700.com +224922.com +225721.com +2258.com +22588888.com +2265.com +226500.com +226531.com +226y.com +2280.com +2281wa.ren +2288.org +2295.com +2298.com +22baobei.com +22dm.com +22doc.com +22edu.com +22evil.com +22ff.com +22hd.com +22hyk.com +22ja.com +22k9.com +22lianmeng.com +22lrc.com +22m6.com +22mt.in +22n.com +22net.com +22plc.com +22shop.com +22tianbo.com +22vd.com +22zryx.com +22zw.com +22zy.net +2300sjz.com +230596.com +230book.com +230tm.com +231122.com +231327.com +2323u.com +2323wan.com +232485.com +232929.com +233.com +233000.com +2333u.com +23356.com +233863.com +2339.com +233d.net +233i.me +233lyly.com +233o.net +233py.com +233wo.com +233ww.net +233xiao.com +233xyx.com +234.com +2344.com +2345.cc +2345.com +2345.gd +2345.net +23456v.com +2345a.com +2345ac.com +2345cdn.net +2345daohang.com +2345download.com +2345ff.com +2345licai.com +2345mbrowser.com +2345soso.com +234du.com +234f.com +2356.com +236400.com +236501.xyz +2366.com +2366app.com +23673.com +236z.com +237y.com +238.com +2380.in +239900.com +23bei.com +23book.com +23class.com +23code.com +23cpc.com +23do.com +23du.com +23ee.net +23hh.net +23job.net +23kmm.com +23ks.com +23lvxing.com +23qb.com +23qb.net +23sk.com +23txt.com +23us.cc +23us.la +23us.so +23us.tv +23us23us.com +23wow.com +23wx.cc +23wx.io +23wx.la +23wxw.com +23xs.cc +23xs.tv +23xsba.cc +23xsw.cc +23yy.com +240yx.com +243ty.com +244101.cc +246546.com +2478.com +248.com +2481e.com +248xyx.com +249m.com +24haowan.com +24hmb.com +24hxf.net +24jz.com +24k99.com +24ker.com +24kplus.com +24kwx.com +24maker.com +24money.com +24om.com +24pay.net +24timemap.com +24u7tos.com +2500.tv +25000li.com +2500city.com +2500fang.com +2500sz.com +250sy.cc +251633.com +2529.com +2529212.com +253.com +253952.com +253u.com +2541.com +254game.com +255616.com +2556r.com +25591.com +2566u8.com +256app.com +256game.com +25752.com +258.com +258288.com +25838yn.com +25847.com +25863.com +2588.tv +25892.com +258ch.com +258fuwu.com +258jituan.com +258sd.com +25992.com +259go.com +25az.com +25dx.com +25game.com +25ku.com +25mao.com +25nc.com +25pp.com +25pyg.com +25un.com +25vi.com +25wy.com +25xm.com +25xt.com +25yi.com +25yz.com +26-degree.com +260.net +263.com +263.net +263em.com +263fc.com +263idc.com +263idc.net +263vps.com +263xmail.com +263y.com +263ytx.com +263zw.com +264006.com +265.com +2656000.com +26595.com +265g.com +265o.com +265ps.com +265tv.com +266.la +266555c.com +266wan.com +2678.com +267gg.com +268275.com +268363.com +268593.com +2686.com +268612.com +268616.com +2688.com +268888.net +268v.com +269.net +26923.com +26abc.com +26ef.com +26host.com +26joy.com +26ksw.com +26lady.com +26tc.com +26wp.com +26youxi.com +26yx.com +270top.com +27270.com +2727u.com +273u.com +275.com +275st.com +277sy.com +279.com +2799web.com +279wo.com +27aichi.com +27dt.com +27dy.com +27dyy.com +27k.cc +27l.com +27lmfq.com +27lvpai.com +27tj.com +27ws.com +27yx.com +28.com +2800.so +280xs.com +281010.com +28123.com +2827.com +28493.com +285868.com +2858999.com +285u.com +288288dy.com +288966.com +288idc.com +289.com +2898.com +28beiduo.com +28hotel.com +28ka.com +28kai.cc +28khy.com +28rv.com +28sn.com +28tui.com +28weixinqun.com +28y.com +28y3.com +28yj.com +2918.com +29293.com +2929gou.com +293.net +29365.bet +2952.cc +29592.net +29663.com +296u.com +29797.com +298.name +2980.com +2981.com +298app1.com +2990.com +299906.com +29dnue.com +29gl.com +29xf.com +29yx.com +2abc8.com +2av7.com +2baxb.me +2bkw.com +2broear.com +2btu.com +2caipiao.com +2ccc.com +2chcn.com +2cloo.com +2cname.com +2cor9.com +2cp.com +2cq.com +2cto.com +2cycd.com +2cyxw.com +2cyzx.com +2d3d5d.net +2dan.cc +2danji.com +2df.me +2dfire.com +2dfire.info +2di.cc +2dianying.net +2du.net +2dyou.com +2f.com +2fc5.com +2fz1.com +2geh.com +2gei.com +2gxw.com +2hanju.com +2hanjutv.com +2haohr.com +2heng.xin +2hua.com +2i0vw.com +2ibook.com +2ic.cc +2ita.com +2j88.com +2jianli.com +2k2k.com +2kandy.com +2ktq.com +2ktvb.com +2kxs.org +2kz.net +2lian.com +2liang.net +2lieqi.com +2loveyou.com +2m2j.com +2ma2.com +2mdn.net +2mjob.com +2mould.com +2or3m.com +2p.com +2pcdn.com +2pmob.com +2q10.com +2q1q.com +2qbb.com +2r3r.com +2rich.net +2shihui.net +2shoujie.com +2shu8.cc +2sitebbs.com +2smtc.com +2sx.net +2tianxin.com +2tx.com +2uxs.com +2v8d.com +2vc00.com +2w.cm +2weima.com +2xiazai.com +2y9y.com +2yuanma.com +2yuanyy.com +2yun.com +2yup.com +2zfzly.com +2zhk.com +2zimu.com +2zzzzzz.com +30.com +30.net +3000.com +300011facai.xyz +300033.info +3000api.com +3000idc.com +3000soft.net +3000test.com +3000xs.com +3001.net +300113.com +300400.net +300624.com +300avs.com +300hu.com +300p.com +300ppt.com +300zi.com +301688.com +301773.com +301mba.com +301nn.com +301tz.cc +301zhuanfa.com +30200t.com +30200x.com +3023.com +3033c.com +306t.com +308308.com +309yy.com +30c.org +30cgy.com +30cn.net +30dj.com +30ka.com +30nl.net +30play.com +30px.com +30tqyb.com +30w.net +30xz.com +31.com +310game.com +310s-2520.com +310tv.com +310win.com +311100.com +311wan.com +312168.com +312green.com +312yy.com +313.com +3131tyc.com +313515.com +31365y.com +3145.com +314pay.com +3150315.com +315034.com +3158.com +315banzhao.com +315che.com +315fangwei.com +315hyw.com +315i.com +315online.com +315sc.org +315tech.com +315wangdai.com +315weishi.com +315z.net +315zqgl.com +315zw.com +315zww.com +31609.com +317608.com +317hu.com +3188.la +318ek.com +31966.net +3198.com +3199.com +319n.com +31alu.com +31bear.com +31bxg.com +31byq.com +31bzjx.com +31cg.com +31expo.com +31fabu.com +31food.com +31games.com +31gcjx.com +31gear.com +31huiyi.com +31jc.com +31jf.com +31jgj.com +31jiaju.com +31jmw.com +31jxw.com +31knit.com +31mada.com +31martech.com +31meijia.com +31mold.com +31myhome.com +31pump.com +31rzp.com +31seal.com +31sjjx.com +31spjx.com +31taoci.com +31wj.com +31xj.com +31xjd.com +31xs.com +31xs.net +31xs.org +31yarn.com +31yj.com +31zscl.com +320106.com +3207.com +3208.net +320921.com +321200.com +321274.com +321ba.com +321cad.com +321cy.com +321dai.com +321fenx.com +321go.com +321kaishi.com +321key.com +321mh.com +321zou.com +322wl.com +3230.com +3234.com +323507.com +323700.net +324.com +3259.com +32800.com +3289.com +328f.com +32bh.com +32ka.com +32r.com +32wan.com +32yx.com +33.com +330123456.com +3304399.com +3304399.net +33105.com +331234.xyz +3312345.com +331ka.com +3320.net +3321.com +3322.cc +3322.net +3322.org +3323.com +3323399.com +332831.com +333-555.com +3331909.com +3332025.com +3332219.com +3332235.com +3332358.com +3332600.com +33331.com +333333.com +3335665.com +33360.com +3336637.com +3336639.com +3336653.com +3336657.com +333666999.club +3336672.com +3336673.com +3336683.com +3336691.com +3337726.com +3337729.com +3337736.com +3337739.com +3337751.com +3337756.com +3337765.com +3337780.com +3337781.com +3337782.com +3337783.com +3337785.com +3338613.com +3338635.com +3338637.com +3338651.com +3338653.com +3338656.com +3338659.com +3338675.com +3338808.com +3338863.com +3339auto.com +333ck.com +333cn.com +333job.com +333ku.com +333racing.com +333y3.com +334433.xyz +3344u.com +33519.com +3361.com +3366.com +3366.net +336655.com +3366722.com +336688.net +3366img.com +3367.com +337000.com +337y.com +338336.com +3387.com +3389dh.com +3393.com +33app.net +33bus.com +33cp.com +33hei.com +33ip.com +33iq.com +33jianzhi.com +33jzw.com +33ly.com +33map.com +33map.net +33oncall.com +33or.com +33sp.com +33trip.com +33xs.com +33yq.com +34.com +341666666.com +3456.com +3456.tv +34580.com +345fk.com +345k.com +345kam.com +3464.com +3499.co +34dm.com +34ey.cc +34job.com +34l.com +34wl.com +34xiaoshuo.com +35.com +350.com +350.net +3500.com +350200.com +350abc.net +350bbs.net +3511.net +352.com +3520.net +352200.com +3525.com +35321.com +3533.com +3551.com +355xx.com +356123.com +35666c.com +35667.com +356688.com +3566t.com +357.com +357global.com +358.com +35941.com +3595.com +35ba.com +35dalu.com +35dxs.com +35free.net +35go.net +35hw.com +35inter.com +35kds.com +35mei.com +35nic.com +35pic.com +35q.com +35rc.com +35zww.com +36.la +360-bo.tv +360-g.net +360-game.net +360.cm +360.com +360.net +3600.com +3600.net +3600d.com +3600du.com +360114.com +360118.com +36099.com +360abc.com +360aiyi.com +360anyu.com +360bifen.net +360biji.com +360bike.net +360buy.com +360buyimg.com +360byd.com +360bzl.com +360caifu.com +360cdn.com +360changshi.com +360che.com +360chezhan.com +360cloudwaf.com +360daikuan.com +360ddj.com +360doc.com +360doc1.net +360doc2.net +360doc26.net +360doc28.net +360doc31.net +360doc33.net +360doc35.net +360doc7.net +360docs.net +360doo.com +360down.com +360drift.com +360drm.com +360edu.com +360eol.com +360fdc.com +360gann.com +360gogreen.com +360gtm.com +360guanai.com +360gyc.com +360haoyao.com +360hapi.com +360hitao.com +360hqb.com +360huzhubao.com +360hx.com +360hy.com +360hyzj.com +360ibm.com +360ic.com +360img.cc +360insurancemall.com +360ito.com +360jbw.com +360jk.com +360jq.com +360jrkt.com +360js.com +360jzhm.com +360kad.com +360kan.com +360kb.com +360kuai.com +360kuaixue.com +360kxr.com +360lj.com +360log.com +360longyan.com +360midi.com +360mkt.com +360os.com +360panyun.com +360powder.com +360qc.com +360qd.com +360qhcdn.com +360qikan.com +360qikan.net +360qws.com +360safe.com +360safedns.com +360sdn.com +360shipu.com +360shouji.com +360shouzhuan.com +360sides.com +360sok.com +360stamp.com +360tong.net +360top.com +360totalsecurity.com +360tpcdn.com +360u9.com +360uu.com +360vcloud.com +360vipshop.com +360vps.com +360vrzy.com +360wbl.com +360webcache.com +360weizhan.com +360wscdn.com +360wxw.com +360wyw.com +360wzb.com +360wzws.com +360xh.com +360xiaos.com +360xiehui.com +360xixi.com +360xkw.com +360yfw.com +360youtu.com +360zhai.com +360zhuizhu.com +360zhyx.com +360zimeiti.com +361.cm +361757.com +3618med.com +361a.com +361dai.com +361games.com +361mogame.com +361ser.com +361sport.com +361way.com +362.cc +363.com +363322014.com +363lm.com +363u.com +364000.com +365128.com +365135.com +36543.com +365500.com +365708.com +36578.com +365960.com +365art.com +365auto.com +365autogo.com +365azw.com +365bj.com +365book.net +365care.com +365cgw.com +365chanlun.com +365che.net +365cyd.net +365daan.com +365dhw.com +365diandao.com +365digitalonline.com +365ditu.com +365dmp.com +365dxlw.com +365editor.com +365eme.com +365essay.com +365exam.com +365f.com +365gangqin.com +365haoshu.com +365heart.com +365htk.com +365huaer.com +365huifu.com +365huo.com +365ibank.com +365icl.com +365ime.com +365inews.com +365j.com +365jcw.com +365jia.com +365jiating.com +365jilin.com +365jq.com +365jw.com +365jz.com +365kan.tv +365kandian.com +365key.com +365master.com +365mini.com +365pcbuy.com +365pk.com +365pp.com +365pr.net +365pub.com +365rili.com +365sec.com +365shequ.com +365sky.com +365ta.com +365tex.com +365ttcz.com +365webcall.com +365wenku.com +365world.com +365xiaoyanzi.com +365xiazai.com +365xuet.com +365xxy.com +365yg.com +365you.com +365yyd.com +365zn.com +365zzd.com +3663.com +366300.com +366ec.com +366translation.com +36706.com +3673.com +367783.net +368mall.com +368tea.com +369110.xyz +3694c.com +369785.com +3699.cc +36992.com +3699wan.com +369wenku.com +369xxw.com +36dianping.com +36dj.com +36hjob.com +36jr.com +36kr.com +36kr.net +36krcdn.com +36krcnd.com +36mh.com +36nu.com +36sfw.com +36tr.com +36ve.net +36yc.com +36yh.com +37.com +370fd.com +370fd.net +371.com +3710167.com +371414.com +37163.com +37168.com +371fangte.com +371house.com +371love.com +371site.com +371zhongyi.com +37201.com +3721ps.com +3722.com +3727.cc +37274.com +373.com +373135.com +373258.com +373294.com +3733.com +373391.com +3737.com +3737g.com +3737k.com +3737tyc.com +373820.com +373978.com +373best.com +373f.com +373house.com +373net.com +373yx.com +375263.com +375buy.com +375vip.com +37770559.com +378699.com +37937.com +3798.com +37bjw.com +37cos.com +37cs.com +37cu.com +37cy.com +37dh.com +37game2.com +37gogo.com +37gowan.com +37hr.com +37k.com +37live.com +37med.com +37pps.com +37see.com +37tang.com +37wan.com +37wan.net +37wanimg.com +37women.com +37www.com +37yue.com +37yzy.com +37zone.com +3800.cx +380852.com +380871.com +3817.com +381pk.com +38238r.com +3829.com +3837.cc +3839.com +3839app.com +3839app.net +3839img.com +3839pic.com +3839vc.com +3839video.com +383yun.com +3843zz.com +387a.com +3887.com +388kam.com +3892222.com +3895566.com +3899.net +38blog.com +38ejed.com +38fan.com +38hack.com +38hot.net +38hp.com +38hzt.com +38mhw.com +38xf.com +38xinbo.com +38zj.com +39.net +391065.com +3911.com +391k.com +3937.com +3964.com +39655.com +3975.com +3975ad.com +3975ad.xyz +3975app.com +3975cdn.com +3977s.com +39ask.net +39clean.com +39cs.com +39dg.com +39ej7e.com +39fei.com +39fengliao.com +39h83s.com +39health.com +39hp.com +39jks.com +39kf.com +39kx.com +39meitu.com +39mo.com +39shubao.com +39sk.com +39txt.com +39ws.com +39yst.com +3a4.net +3a4b5c.com +3aok.com +3avox.com +3b2o.com +3bu.com +3bwx.com +3c2p.com +3chongmen.com +3cjob.com +3conline.com +3cpp.org +3cvrc.com +3cwork.com +3cwu.com +3d-stereovision.com +3d2000.com +3d2s.com +3d56.net +3d66.com +3daima.com +3dbuyu.com +3dbuyu.net +3ddayin.net +3ddl.net +3ddl.org +3deazer.com +3demoo.com +3dfc.com +3dfrom.com +3dgenomics.org +3dhao.com +3dhat.com +3dhoo.com +3dinlife.com +3dinnet.com +3dkezhan.com +3dkk.com +3dkunshan.com +3dllc.cc +3dly.com +3dmax8.com +3dmaxvip.com +3dmgame.com +3dmgame.hk +3dmgame.net +3dmo.com +3dmomoda.com +3dmumu.com +3dnew.com +3doe.com +3dsc.com +3dsjw.com +3dsnail.com +3dtank.com +3dtvbits.org +3dwebyx.com +3dwwwgame.com +3dxia.com +3dxt.com +3dxuan.com +3dxy.com +3dzyw.com +3e.net +3eyes.org +3fang.com +3fantizi.com +3g-edu.org +3g210.com +3g2win.com +3g3h.org +3g567.com +3g899.net +3gcomet.com +3gdisk.com +3glasses.com +3gmimo.com +3gods.com +3gogogo.com +3gosc.com +3gpda.net +3gpk.net +3gsou.com +3gu.com +3gus.com +3h3.com +3haow.com +3hbox.com +3hgui.com +3incloud.com +3j4.com +3jdh.com +3jidi.com +3jke.com +3jrx.com +3k.com +3k3cn.com +3ke.cc +3kid.com +3kk.com +3kmq.com +3ko.com +3kongjian.com +3kr.com +3laohu.com +3laz.com +3lbrand.com +3lian.com +3lii.com +3lsoft.com +3mbang.com +3mh0yvx.com +3miao.net +3miii.com +3mtw.com +3n110.com +3nian.com +3png.com +3poo.com +3q2008.com +3qhouse.com +3qwe.com +3qzone.com +3r66.com +3renhe.net +3richman.com +3rkr.com +3rxing.org +3s.work +3s001.com +3s3w.com +3s78.com +3sbase.com +3scard.com +3shuwu.com +3snews.net +3songshu.com +3stl.com +3tilabs.com +3u.com +3uol.com +3us.com +3uww.cc +3v.do +3vjia.com +3vjuyuan.com +3vkj.net +3vlm.net +3vsheji.com +3wads.com +3wap.cc +3wcoffee.com +3wfocus.com +3wht.com +3wmm.com +3wnb.com +3wsw.com +3wzhaopin.com +3x88.net +3xgd.com +3xiazai.com +3y7h.com +3yoqu.com +3yx.com +3zhijk.com +3zmuseum.com +3zxsw.com +4-xiang.com +4.cm +400-lighting.com +400.com +4000278400.com +4000500521.com +4000600534.com +4000690600.com +4000730138.com +4000892990.com +4001006.com +4001006666.com +4001113900.com +4001581581.com +4001890001.com +4001961200.com +400301.com +400516.com +4006024680.com +4006026717.com +4006055885.com +4006216888.com +4006287387.com +4006339177.com +4006620996.com +4006666688.com +4006695539.com +4006906600.com +4007108885.net +4007112366.com +4007hao.com +4008000000.com +4008005216.com +4008060066.com +4008075595.com +4008103103.com +4008107107.com +4008109886.com +4008117117.com +4008123123.com +4008600011.com +4008800016.com +4008863456.com +4008885166.com +4008885818.com +4009515151.com +4009870870.com +4009991000.com +4009998797.com +400cx.com +400gb.com +400iu.com +400jk.com +400jz.com +400lyw.com +400num.com +400qikan.com +400vv.com +400web.com +402333b.com +40279.com +4040001.com +40407.com +404600.com +404forest.com +404mzk.com +404v.com +404wan.com +405400.com +406yx.com +407wan.com +4080dyy.com +40fenzhong.com +40manhua.com +40ya.com +41188.com +411au.com +4124.com +414.com +4143.cc +41443.com +41717.net +4177.com +418999.com +41fa6.icu +41fa8.icu +41fa9.icu +41game.com +41gw.com +41huiyi.com +41ms.com +41tp.com +41wan.com +41xt.com +42069.com +421.co +42144.com +423down.com +4243.net +425300.co +425yx.com +42651.com +426g.com +429006.com +42927bj.com +42927gz.com +42927xz.com +42hq.com +42trip.com +42xz.com +4311.com +4321.com +432520.com +43321.cc +43423manhua.com +435000.com +435200.com +435214.com +4355.com +4366.com +436675.com +4377.com +4377info.com +437zhifu.com +439.cc +4399-xyx.com +4399.com +4399.net +43999yx.com +4399api.com +4399api.net +4399biule.com +4399data.com +4399dmw.com +4399doc.com +4399er.com +4399hhh.com +4399i.net +4399j.com +4399pk.com +4399sj.com +4399swf.com +4399sy.com +4399wanju.com +4399youpai.com +43img.com +43ns.com +43zhubao.com +444333.xyz +444475.com +44485.com +4449992.com +4480.cc +44800.cc +4492.com +4493.com +44971.com +44api.com +44dt.com +44england.com +44hyk.com +44pd.com +44pq.cc +44pq.co +44te.com +44vs.com +453600.net +455261.com +45575.com +456.net +4567.tv +4567w.com +456ss.com +457.com +458kq.com +459.org +45app.com +45eee.com +45fan.com +45io.com +45ns.com +45r.com +45win.com +45xie.com +462546.com +46412.com +4647.org +4658.net +466.com +4662000.com +46644.com +4671580.net +46771313.com +467835.com +4699a.com +46design.com +46kavp.com +46mlsv.com +46z5j5.xyz +47365.com +4738.com +47473.com +474b.com +4765.com +4779.com +47819.com +47gs.com +47jh.com +47ks.com +47zu.com +48.com +4846.com +48575.com +485ka.com +4864678.com +4869.cc +48855268.com +48905.com +48hao.net +49321.com +49358.com +49363.com +4948.com +4949567.com +49644913.com +496601.com +497-img.com +497.com +498.net +499-img.com +499youxi.com +49app.com +49pic.com +49wanwan.com +49you.com +49yu.com +4a40.com +4apx.com +4aqq.com +4async.com +4c8t.com +4ci.cc +4cnzz.com +4cun.com +4d4c.com +4dai.com +4db.com +4dtime.com +4everdns.com +4f89.com +4fang.net +4fcom.net +4gfy.com +4ggogo.com +4gh6.com +4glte.org +4gqp.com +4gtoefl.com +4h6s.com +4hgame.com +4hou.com +4hpy.com +4inlook.com +4jplus.com +4k123.com +4kbizhi.com +4kmov.cc +4kong.com +4kya.com +4kyy.com +4l.hk +4lzr.com +4paradigm.com +4px.com +4pyun.com +4q5q.com +4qx.net +4sjob.com +4sscrm.com +4thetooth.com +4u4v.net +4w8.net +4wad.com +4xiazai.com +4xseo.com +4y4.net +4ye.cc +4yt.net +4yx.com +5-link.com +5.hn +50-jia.com +500.com +5000.com +50004.com +5000yan.com +50018.com +500boss.com +500cache.com +500d.me +500doc.com +500gm.com +500px.me +500sucai.com +500talk.com +500tb.com +500wan.com +500wancache.com +500zhongcai.com +5011.net +501wan.com +50215.com +503118.com +50331.net +503error.com +504pk.com +5054399.com +5054399.net +505gg.com +505uu.com +5066.net +5068.com +5068yx.com +506fhq.com +507777.cc +508843.com +50970.com +50bangzh.com +50fff.net +50pk.com +50pkpk.com +50sht.com +50tu.com +50union.com +50vm.com +50yc.com +50yin.com +50zera.com +50zw.co +50zw.com +50zw.la +50zww.net +51-cf.com +51-jia.com +51-n.com +51.am +51.com +51.design +51.la +51.net +5100.net +51008.com +510560.com +510ka.com +510yh.cc +511.la +511023.com +51110.com +51119.com +51168.tv +5117.com +511718.com +5117tools.com +5118.com +5118img.com +511god.net +511mv.com +511wan.com +511yj.com +5120.com +5120bb.com +51240.com +51269017.com +512play.com +512wx.com +5132.com +513523.com +5137.cc +51386.com +513c51.com +513hjs.com +514193.com +514200.com +51508.com +5151.com +51511.com +515158.com +5151doc.com +5151sc.com +5153.com +51555.net +51569.com +5156edu.com +5156rcw.com +515app.com +515car.com +515fa.com +515ha.com +515ppt.com +51658042.com +51661182.com +51663.net +5166ys.com +516a.com +516edu.com +516ly.com +516tx.com +5173.com +5173cdn.com +517best.com +517dv.com +517ee.com +517hotel.com +517huizhou.com +517huwai.com +517idc.com +517japan.com +517lppz.com +517ming.com +517mr.com +517rcw.com +517sc.com +517tez.com +517w.com +517xc.com +517zp.com +5184.com +51845.com +5184edu.com +5184pass.com +5185.cc +51864.com +5187g.com +5188.com +5188ab.com +518ad.com +519.best +519397.com +51969.com +51985.net +5199.cc +5199.com +5199658.com +519rv.com +51ade.com +51ads.com +51adxfly.com +51aimei.com +51aistar.com +51aiwan.com +51anidea.com +51ape.com +51app.com +51ask.org +51asm.com +51aspx.com +51auto.com +51autogo.com +51autoimg.com +51awifi.com +51babybuy.com +51baigong.com +51banban.com +51banhui.com +51baoku.com +51baoshui.com +51baoxiu.com +51baozhanggui.com +51bbo.com +51bdtime.com +51besttea.com +51bi.com +51biaoqing.com +51biz.com +51bjrc.com +51bmb.com +51bonli.com +51bos.com +51bras.com +51btceth.com +51btv.com +51bushou.com +51businessview.com +51buy.com +51bxg.com +51bzi.com +51cacg.com +51callcenter.com +51callu.net +51camel.com +51ccdn.com +51cdcs.com +51cdn.com +51chang.com +51changdu.com +51changdu.xyz +51changmi.com +51changshi.com +51changxie.com +51chaoban.com +51checai.com +51chongdian.net +51chost.com +51chuguo.org +51chuli.com +51cir.com +51cjyy.com +51cma.org +51code.com +51cok.com +51comp.com +51coolpad.com +51cpm.com +51credit.com +51csr.com +51css.com +51cto.com +51cube.com +51cunzheng.com +51cxd.com +51daao.com +51dai.com +51daifu.com +51daima.com +51dangpu.com +51daquan.com +51daxueedu.com +51dc.com +51devapp.com +51diangu.com +51din.com +51dingxiao.com +51ditu.com +51dmq.com +51dns.com +51dojoy.com +51dongshi.com +51down.vip +51dpub.com +51drv.com +51dtv.com +51dugou.com +51dzrc.com +51dzt.com +51dzw.com +51ean.com +51ebo.com +51ebooks.com +51edu.com +51eduline.com +51eim.com +51ejz.com +51ekt.com +51ele.net +51emo.com +51en.com +51epei.com +51eshop.com +51etong.com +51eway.com +51eyun.com +51f.com +51facai.com +51fangan.com +51fankui.com +51fanli.com +51fanli.net +51fdc.com +51feels.com +51feibao.com +51findshop.com +51flrc.com +51fmzg.com +51fpg.com +51fubei.com +51fucai.com +51fund.com +51fxkj.com +51fxzq.com +51fytx.com +51g3.com +51g3.net +51g4.com +51gaifang.com +51geeks.com +51gfl.com +51gfw.com +51ggd.com +51ggwu.com +51gh.net +51gif.com +51give.org +51gjie.com +51gjj.com +51gme.com +51golife.com +51gongjijin.com +51gouke.com +51goupiao.com +51gowan.com +51gran.com +51great.org +51growup.com +51gsl.com +51guanhuai.com +51guoji.com +51h5.com +51hanghai.com +51hangkong.com +51hanhua.com +51haofu.com +51haojob.com +51hcb.com +51hchc.com +51hcw.com +51hei.com +51hejia.com +51hika.com +51hjgt.com +51hjk.com +51hlife.net +51hosting.com +51hostonline.com +51hsw.com +51huanhuan.com +51huaxin.net +51huaya.com +51hunningtu.com +51hvac.com +51hwzy.com +51ias.com +51ibm.com +51idc.com +51ielts.com +51ifind.com +51ifonts.com +51img1.com +51img2.com +51img3.com +51img5.com +51img6.com +51img7.com +51imo.com +51ios.net +51itapp.com +51itstudy.com +51iwifi.com +51ixuejiao.com +51jam.com +51jiabo.com +51jiameng.com +51jianxie.com +51jiaxiao.com +51jiecai.com +51jiemeng.com +51jingke.com +51jingying.com +51jinhuan.com +51jishu.com +51jiuhuo.com +51job.com +51jobcdn.com +51jobdns.com +51joyfish.com +51js.com +51jt.com +51jucaimi.com +51julebu.com +51junshi.com +51jyrc.com +51jyzs.com +51kahui.com +51kaiye.com +51kanong.com +51kaowang.com +51kaxun.com +51kehui.com +51kids.com +51kik.com +51kt.com +51ktbyte.com +51kupai.com +51kupin.com +51kywang.com +51la.net +51labour.com +51laizhe.com +51langtu.com +51ldb.com +51ldzx.com +51lexing.com +51lg.com +51lifes.com +51lingji.com +51liucheng.com +51ljms.com +51lucy.com +51lunwenwang.com +51luying.com +51lvh.com +51lyrc.com +51mag.com +51maiquan.com +51marryyou.com +51mdq.com +51meigu.com +51meiliao.com +51meishu.com +51microshop.com +51miit.com +51mike.com +51minbingtuan.net +51miz.com +51mkf.com +51mockup.com +51modo.cc +51mokao.com +51mole.com +51moot.net +51mrp.com +51mta.com +51mtw.com +51nac.com +51nazhun.pub +51nb.com +51nicelearn.com +51niux.com +51nod.com +51nuoqi.com +51nwt.com +51ofc.com +51offer.com +51okf.com +51onb.com +51oneone.com +51onion.com +51only.com +51open.net +51opone.com +51ops.com +51osos.com +51pao.net +51papers.com +51pbnet.com +51pec.com +51peptide.com +51pgzs.com +51php.com +51piaozi.com +51pibu.com +51pigai.com +51ping.com +51pinwei.com +51pjys.com +51pla.com +51pocket.com +51pocket.net +51pos.com +51pot.com +51pptmoban.com +51psj.com +51puer.com +51qc.com +51qc.net +51qianduan.com +51qianguo.com +51qianvisa.com +51qicheng.com +51qilv.com +51qingjiao.com +51qinxue.com +51qqt.com +51qtg.com +51qub.com +51qudao888.com +51qudong.net +51qufx.com +51qumi.com +51qupu.com +51quzhe.com +51rc.com +51rcsl.com +51read.site +51reboot.com +51rencai.com +51render.com +51renpin.com +51renxing.com +51report.com +51rong.com +51rp.com +51rry.com +51rz.com +51rz.org +51sai.com +51sanhu.com +51scb.com +51sdjob.com +51search.net +51seer.com +51self.com +51serive.com +51sgg.cc +51share.net +51shebao.com +51shebao.org +51sheyuan.com +51shiping.com +51shop.ink +51shoubei.com +51shoufei.net +51shoushi.com +51shubiao.com +51shuobo.com +51shyc.com +51signing.com +51simple.com +51sjk.com +51sky.net +51sole.com +51songguo.com +51speeds.com +51spjx.com +51suitui.com +51sxue.com +51syoo.com +51talk.com +51talkenglish.com +51tanbao.com +51tao.com +51taonan.com +51taoshi.com +51taowei.com +51taoyang.com +51tb.me +51test.net +51testing.com +51testing.net +51testing.org +51tfb.com +51tiangou.com +51tie.com +51tietu.net +51tijian.com +51ting.com +51tingyi.com +51toefl.com +51tonglu.com +51tools.info +51toro.com +51touch.com +51toufang.com +51tour.com +51touxiang.com +51tra.com +51tracking.com +51ttxue.com +51tuiyi.com +51tunhuo.com +51tuodao.com +51tuz.com +51tv.com +51tv.net +51tvbao.com +51tvrom.com +51tyty.com +51tz.com +51uc.com +51ukf.com +51uyi.com +51uyun.com +51vhost.net +51vimeo.com +51vip.biz +51vs.com +51vv.com +51wan.com +51wangdai.com +51wanquan.com +51wcity.com +51web.com +51websec.com +51weihu.com +51wendang.com +51wf.com +51wincai.com +51windows.net +51wj.com +51wjrc.com +51wnl-cq.com +51wnl.com +51wofang.com +51world.win +51wp.com +51wtp.com +51wxjz.com +51wydj.com +51wyfl.com +51wyrc.com +51wzg.com +51wzxz.com +51xbl.com +51xbx.com +51xcrc.com +51xgjd.com +51xiancheng.com +51xianwan.com +51xiaohua.com +51xiaolu.com +51xie.com +51xingjy.com +51xpj.com +51xue8.com +51xuetang.com +51xuewen.com +51xuexiaoyi.com +51xumei.com +51xxs.com +51xxziyuan.com +51y5.com +51y5.net +51yabei.com +51yala.com +51yam.com +51yangsheng.com +51yanwang.com +51yasai.com +51yes.com +51yey.com +51yhdai.com +51yilu.com +51yip.com +51ykb.com +51yonggao.com +51you.com +51youcai.com +51youdian.com +51yougo.com +51youth.com +51youz.com +51ys.com +51ysrc.com +51yuansu.com +51yue.net +51yuepin.com +51yueqian.com +51yund.com +51yundong.me +51yunli.com +51yuu.com +51zan.com +51zbz.com +51zbz.net +51zd.net +51zhangdan.com +51zhantai.com +51zhaobizhi.com +51zheduoduo.com +51zhengxin.com +51zhi.com +51zhishang.com +51zhiyuan.net +51zhizhao.com +51zhucai.com +51zhujia.com +51zishentang.com +51zixuewang.com +51zjxm.com +51zmt.net +51zpyc.com +51zr.com +51zsjc.com +51ztzj.com +51zupu.com +51zx.com +51zxw.net +51zyrc.com +51zyzy.com +51zzl.com +52-ic.com +520.com +520.net +5200.net +5200cc.com +5200e.com +5200wx.com +520101.com +520520520520520.com +520520bo.com +520730.com +5207758.com +52088.cc +52091w.com +520990.com +520apk.com +520cai.net +520cc.com +520cfc.com +520chs.com +520discount.com +520fx.com +520hhht.com +520im.com +520it.com +520jiabo.com +520jita.com +520lbl.com +520ldf.com +520link.com +520love520.com +520meirenyu.com +520meirong.com +520mingmei.com +520mojing.com +520mwx.com +520sz.com +520wawa.com +520way.com +520wenshen.com +520xbw.com +520xiazai.com +520xp.com +520xst.com +520yidui.com +520z-2.com +520zg.net +520zuowens.com +52112.com +52114.org +52115211.com +5211game.com +52177.com +521che.com +521logo.com +521qw.com +521rmb.com +521ro.com +521szlx.com +521tieba.com +521up.com +52237377.com +522g.com +523333.com +5234444.com +52372.com +523touzi.com +525.life +5251.net +5251yx.com +5252e.com +5253.com +5254.com +5257.com +5258.net +5258da.com +525jmall.com +5262.com +52676.com +526net.com +527578.com +5277.com +527meeting.com +527pk.com +527u.com +5281.com +52841819.com +528500.com +528529.com +52892.com +528day.com +5293.com +5299shop.com +529c31.com +52ae.cc +52ai.com +52ali88.com +52analysis.com +52article.com +52as.com +52asus.com +52asy.xyz +52audio.com +52ayw.com +52bar.com +52bendi.com +52biquge.com +52bji.com +52bjy.com +52blackberry.com +52bookshop.com +52bqg.com +52bss.com +52bus.com +52by.com +52cake.net +52ch.net +52che.com +52cik.com +52ckd.com +52click.net +52codes.net +52da.com +52daohang.com +52debug.net +52design.com +52dfg.com +52dgs.net +52digua.com +52dmtp.com +52dns.com +52doc.com +52dr.net +52dtv.com +52dyy.com +52dzc.com +52dzxy.com +52ebook.com +52edy.com +52enku.com +52erhu.com +52fangzi.com +52flac.com +52fuqing.com +52fuqu.com +52game.org +52gg.com +52ggd.com +52ghai.com +52grz.com +52guixi.com +52gvim.com +52hardware.com +52hejia.com +52help.net +52hibuy.com +52hotel.net +52hrtt.com +52hrttpic.com +52hxw.com +52ig.net +52ij.com +52im.net +52investing.com +52inwet.com +52itstyle.com +52itstyle.vip +52jbh.com +52jbj.com +52jdyy.com +52jialejia.com +52jiaoshi.com +52jingsai.com +52jisu.com +52jrjy.com +52js8.com +52jscn.com +52jt.net +52jubensha.com +52jxt.com +52jying.com +52kanxiaoshuo.com +52kb365.com +52kfly.com +52khs.com +52liaoshen.com +52life.cc +52linglong.com +52linux.tech +52lion.com +52lishi.com +52lvyou.com +52mac.com +52maicong.com +52mba.com +52mengdong.com +52mhw.com +52miji.com +52miniapps.com +52ml.net +52mtc.com +52muyou.com +52njl.com +52njl.net +52opencourse.com +52pachong.com +52pcfree.com +52ph.com +52pi.com +52pi.net +52pictu.com +52pjb.net +52pk.com +52pk.net +52pkvr.com +52playpc.com +52podcast.com +52pojie.com +52ppt.com +52print.com +52qixiang.com +52qj.com +52qmct.com +52qqba.com +52qudao.com +52queji.com +52qumao.com +52ra3.com +52rd.com +52rd.net +52rental.com +52samsung.com +52shangou.com +52shici.com +52shijing.com +52shipping.com +52shufa.net +52shuw.cc +52shuxue.com +52sichou.com +52solution.com +52souji.net +52souluo.com +52soutu.com +52survey.com +52svip.cc +52svn.com +52sykb.com +52t1.com +52tc.co +52tc.info +52tech.tech +52tgfc.com +52tian.net +52tiny.com +52toys.com +52tps.com +52tq.net +52tql.com +52tt.com +52udl.com +52ugame.xyz +52uyn.com +52vr.com +52vrdy.com +52waha.com +52wana.com +52wanh5.cc +52wendang.com +52wlw.com +52wmb.com +52wubi.com +52xiaomian.com +52xiaoshuowang.com +52xiaoyuan.net +52xie.com +52xinmiao.com +52xinyou.com +52xitong.com +52xiuxian.com +52xiyou.com +52xpp.com +52xtxs.com +52xyz.com +52yawa.com +52yesu.com +52yh.com +52yifei.com +52ykjob.com +52youju.com +52youpiao.com +52youtu.com +52ywan.com +52yww.com +52yxyx.com +52z.com +52zhaopin.com +52zhizuo.com +52zhushan.com +52zixue.com +52zuji.net +52zx.cc +52zx.net +52zxw.com +52zy.com +52zzl.com +53.net +531314.com +5317wan.com +5321vip.com +533.com +533.net +5334.com +5336.com +5338.org +533y.com +53431.com +53471.com +535300.net +53531dcg.com +5360jx.com +53617686.com +5366.com +53666.org +5367.com +536wx.com +537.com +5379yx.com +537a.com +538618.com +5395.com +5399.com +53chewu.com +53dns.org +53info.com +53iq.com +53kf.com +53kjw.com +53miji.com +53nic.com +53r.com +53shop.com +53shubiao.com +53xjd.com +53yao.com +53yu.com +53zw.net +54.com +54114.com +542i.com +5433.com +545c.com +5460.net +5499.com +54benniao.com +54bt.com +54doctor.net +54doctors.net +54hcz.com +54heb.com +54hei.com +54im.com +54jj.com +54jkw.com +54job.com +54kefu.net +54lol.com +54manong.com +54md.com +54op.com +54pictu.com +54tf.com +54traveler.com +54tusi.com +54up.net +54yt.net +54yuqing.com +54zm.com +55.cc +55.la +55015.com +550400.com +5504ll.com +5507p.com +55178.com +55188.com +551house.com +552283.com +5523.com +55332147.com +55344.com +5548.net +555000d3.com +5551557.com +5551650.com +5551933.com +5552009.com +55555tao.com +555dy.fun +555yst.com +555zw.com +5566.net +5567.cc +5567.me +557.net +5577.com +55779.xyz +5588.tv +5599.com +55dai.com +55dian.com +55doc.com +55duanzi.com +55dushu.com +55dx.com +55e5.com +55haitao.com +55hl.com +55hl.net +55home.com +55hyk.com +55i8.com +55idc.com +55jisu.com +55jj.com +55la.com +55lady.net +55lewen.com +55shantao.com +55tuan.com +55tuanimg.com +55wz.com +55xiazai.com +55y5.com +55you.com +55zm.com +56-7.com +56.com +560.im +56015.com +560la.com +560xs.com +5611.com +56135.com +5617.com +5628l.com +5629.com +5636.com +56360.com +564.cc +5648.cc +56506666.com +5654.com +565880.com +566.com +566855.com +5669.com +566job.com +5676.com +5678la.com +567idc.com +567j.xyz +567w.xyz +5684.com +569.com +5694.com +56a.com +56ads.com +56beijing.org +56ca.com +56care.com +56china.com +56clte.org +56da.com +56dagong.com +56dichan.com +56dr.com +56en.com +56ggb.com +56gk.com +56golf.com +56img.com +56img.net +56imgs.com +56kad.com +56laile.com +56md.com +56ml.com +56mp.com +56pan.com +56php.com +56qq.com +56show.com +56shuba.cc +56shuku.org +56steel.com +56tchr.com +56tj.com +56uu.com +56wen.com +56ye.net +56zzx.com +57.net +57023.com +571400.net +571free.com +571xz.com +5721.net +5755.com +576.com +57608.com +57616.com +57665.com +5768.com +576tv.com +57821.com +579609.com +57ac.com +57auto.com +57dj.com +57dp.com +57ee.net +57fx.com +57gif.com +57go.com +57lai.com +57px.com +57qy.com +57sc.com +57tibet.com +57tuan.com +57us.com +57uu.com +57wo.com +57yy.site +57zhe.com +58.com +5800.com +580114.com +580168.com +580590.com +580ban.com +580eda.net +580jz.net +580k.com +580tequan.com +58199.com +582582.com +582hr.com +583go.com +5858.com +58611.net +5866.com +587c51.com +58801hn.com +5884.com +5887.com +5888.tv +588991.com +588art.com +588ku.com +58921.com +5898yun.com +58abb.com +58bangmang.com +58baogao.com +58bo.com +58buy.com +58che.com +58cloud.com +58coin.com +58corp.com +58cyjm.com +58czt.com +58dadi.com +58daojia.com +58display.com +58fangdai.com +58fenlei.com +58food.com +58game.com +58gameup.com +58ganji.com +58house.com +58huoban.com +58hzb.com +58img.com +58insure.com +58iwan.com +58jb.com +58jixie.com +58jurenqi.com +58kad.com +58kaifa.com +58kanshu.cc +58kasch.com +58kuaipai.com +58kuku.com +58meizhuo.com +58moneys.com +58moto.com +58net.com +58pic.com +58picc.com +58q8.com +58qz.com +58supin.com +58trz.com +58tyh.com +58ubk.com +58wan.com +58wangwei.com +58wanwan.com +58wzb.com +58xinrui.com +58xs.com +58xs.la +58xs.tw +58xuexi.com +58yiji.com +58yuefu.com +58yuesao.com +58zhuiju.com +59008gg.com +5906333.com +590m.com +59120.com +591234x.com +591522.com +59168.net +59178.com +5918dyw.com +5918s.com +591918.com +591change.com +591cto.com +591hx.com +591lh.com +591master.com +591moto.com +591vr.com +591wed.com +591wsh.com +591wy.com +591yhw.com +5923d.com +5925car.com +592zn.com +59313313.com +593555b.com +59370.com +593yx.com +5947.net +59490.com +5956pp.com +595818.com +595led.com +596fc.com +597.com +59706.com +597rcw.com +59881.com +598991.com +598g.com +599.com +5999.tv +599ku.com +59b2b.com +59di.com +59dun.com +59edu.com +59hs.com +59iedu.com +59na.com +59pk.net +59store.com +59w.net +59wj.com +59yx.com +5a3q.com +5a49.com +5a8.org +5aaa.com +5acbd.com +5adanhao.com +5ag.net +5agk.com +5ailiwu.com +5aivideo.com +5aiyoo.com +5ajob.com +5alw.com +5any.com +5atxt.com +5axxw.com +5azy.com +5bite.com +5biying.com +5bug.wang +5caicloud.com +5ce.com +5ceimg.com +5cgo.com +5cocoi.com +5cpod.com +5d2ede2.com +5d6d.com +5d6d.net +5dashi.com +5dfp.com +5dfsd2.com +5ding.com +5djbb.com +5djiaren.com +5djpg.com +5dmail.net +5down.net +5dplay.net +5ds.com +5duo.com +5earena.com +5earenacdn.com +5eplay.com +5etv.com +5ewin.com +5fen.com +5fun.com +5fwan.com +5gcg.com +5ggm.com +5goto.com +5gwan.com +5gy.com +5h.com +5ha.net +5hanjutv.com +5hb.org +5hrc.com +5hte21mz.com +5i-training.net +5i.com +5i5aj.com +5i5j.com +5i5t.com +5i9u.com +5iag.com +5iag.net +5iape.com +5ibc.net +5ibear.com +5icaipu.com +5icbs.com +5ichecker.com +5ichong.com +5icomment.com +5icool.com +5idc.com +5idev.com +5idhl.com +5idream.net +5iec.com +5ifapiao.com +5ifit.com +5iflying.com +5ifund.com +5ifxw.com +5igen.com +5igupiao.com +5ihome.net +5ikang.com +5iln.com +5ilog.com +5imeishi.com +5imoban.net +5imomo.com +5imx.com +5imxbbs.com +5iok.com +5iops.com +5ip9.com +5ipatent.com +5ipkwan.com +5ips.net +5iqiqu.com +5isanguo.com +5isohu.com +5iucn.com +5ixs.net +5ixuexiwang.com +5iyq.com +5iyxw.net +5j.com +5jin.org +5jjc.net +5jjdw.com +5jli.com +5joys.com +5jwl.com +5jzw.com +5k5m.com +5kbox.com +5kcrm.com +5kcrm.net +5kda.com +5khouse.com +5lanren.com +5lbw.com +5lejob.com +5lux.com +5m5m5m.com +5m68.com +5mapk.com +5minsgold.com +5mrk.com +5nd.com +5ndy.com +5ooq.com +5pao.com +5pb.net +5plus1.net +5pop.com +5ppt.net +5pub.com +5q.com +5qmall.com +5qwan.com +5qzone.net +5r1.net +5read.com +5ritt.com +5rs.me +5s4f.com +5sai.com +5sdy.cc +5sdy.com +5se34.com +5see.com +5seestar.com +5sem.com +5sha.com +5sharing.com +5snow.com +5stmt.com +5sw.com +5tangs.com +5teacher.com +5thhospital.com +5thspace.net +5thspace.org +5tps.com +5tps.vip +5txl.com +5u18.com +5u3d.com +5u588.com +5u5u5u5u.com +5uar.com +5ugaizhuang.com +5uks.com +5upm.com +5usport.com +5uu.us +5uu6.com +5uu8.com +5v55.com +5w.com +5w123.com +5w52.com +5w5w.com +5wanpk.com +5wanq.com +5weinisi.com +5wx.org +5xcg.com +5xiaobo.com +5xini.com +5xml.com +5xts.com +5xue.com +5xuni.com +5y100.com +5y51.com +5y6s.com +5y89.com +5ydj.com +5yhua.org +5yi.com +5ykj.com +5youchou.com +5yun.org +5zai.com +5zg.com +5zhibo.com +5zzu.com +6-china.com +6.gy +60.cm +600052.com +60012.com +600525.net +600895.com +600zi.com +601601.com +602.com +602img.com +603ee.com +6046.net +605-zy.com +605dns.com +605zy.co +6070.tv +6071.com +607777.cc +6080d.com +6080j.com +6080k.com +6088.xyz +6090b.com +60dj.com +60eee.net +60malaysia.com +60mil.com +60nm.com +60tui.com +61.com +61.life +610115.com +610213.net +612.com +6120aa.com +6122.net +612345.com +612459.com +6137.net +615c.com +61611.net +616114.com +6164.com +61658.com +6168511.com +616pic.com +616wan.com +618296.com +618344.com +618351.com +6186.com +6187wo.com +618cj.com +618day.com +618hr.com +618ky.com +61916.com +619k.com +61baobao.com +61bb.com +61bbw.com +61co.com +61diy.com +61draw.com +61ertong.com +61gequ.com +61haodian.com +61hr.com +61ic.com +61info.com +61k.com +61kezhan.com +61mami.com +61mc.com +61mk.org +61sheji.com +61sou.com +61tg.com +61vps.com +61xiangce.com +62.com +6210k.com +623k.com +626688.com +62669.com +626china.org +626x.com +62730.com +628.com +629600.com +62a.net +62game.com +630book.com +630shu.net +63243.com +6328.net +632news.com +6383.com +639311.com +6399868.com +63diy.com +63pe.com +63pic.com +63qingyou.com +63tl.com +63ys.com +63yx.com +641.com +6417000.com +642online.com +64365.com +64518.com +6453.net +64538.net +645w.com +646000.com +6463.com +64644444.com +648sy.com +64ba.com +64dns.com +64ds.com +64gua.com +64ma.com +64mv.com +64pay.com +64w.cc +651700.com +6528.com +6533.org +654.com +654320.com +6543210.com +654321wan.com +654h.com +655a.com +655u.com +655yx.com +656463.com +65688qp.com +65875.com +659595.com +65house.com +65mhxy.com +65singapore.com +65wan.com +65xs.net +6600.org +660pp.com +660x.com +66123123.com +66152.com +66163.com +66168.net +66173yx.com +661832.com +662city.com +662p.com +6631.com +663395.net +66378.com +66460.com +6655.la +6656pk.com +6660333.com +6665.com +6665890.com +6666519.net +666666.so +6669667.com +666baicai.com +666gps.com +666idc.com +666pic.com +666shuwu.com +666wan.com +666wan.net +666xinxin.com +6673p.com +6677000.com +667744.com +6677493.com +6678net.com +66825.com +668559.com +6686x1.com +6688.com +66889.net +668895.com +6688pay.com +668app.com +668lw.com +668map.com +668news.com +6695.com +6699.jp +669pic.com +669play.com +669ye.com +66beian.com +66call.com +66cn.com +66diqiu.com +66ds.net +66dt.com +66house.com +66ip.com +66jiedai.com +66liu.com +66mh2.cc +66mobi.com +66money.com +66mz8.com +66nao.com +66nh.com +66perfect.com +66php.com +66play.com +66rou.com +66rpg.com +66ruian.com +66shouyou.com +66sj.com +66sy.com +66team.com +66test.com +66to.net +66tv.tv +66u.com +66ui.com +66vod.net +66wc.com +66weiyou.com +66wz.com +66xh.com +66xue.com +66you.com +66zhang.com +66zhizu.com +66zhuang.com +66zw.com +67.com +67017.com +6711.com +6711img.com +676.com +676711.net +676z.com +6787.com +67876.com +67883.com +67888.com +6789.com +6789.net +678922c.com +6789che.com +6789go.com +678edu.net +678hyw.com +678ie.com +678pdf.com +678py.com +67cdn.com +67gu.com +67joy.com +67lm.com +67mb.com +67mo.com +67wanwan.com +67yes.com +680.com +68120120.com +6816.com +682.com +68211.com +6822.com +6844.com +6868.com +6868shop.com +686fw.com +688799a.com +688n.com +6899wan.com +68eg.com +68gainian.com +68ge.com +68h5.com +68hanchen.com +68hr.com +68jt.com +68pk10.com +68play.com +68team.com +68tuku.com +68web.net +68websoft.com +68youhui.com +69005a.com +6903.com +69260.com +6934.net +693836.com +693975.com +6949.com +695157.com +695175.com +695275.com +695828.com +695ljg.com +698wan.com +69916666.com +699g.com +699h5.com +699pic.com +699xs.com +69cy.net +69fenxiang.com +69hr.com +69jianzhi.com +69ps.com +69shu.org +69xiu.com +69yc.com +69ys.com +6a.com +6aas.com +6abc.net +6acm.com +6an8.com +6api.net +6apt.com +6b3b.com +6c6c.com +6cang.com +6ccn.com +6cit.com +6cnzz.com +6d4d5.com +6d4g.com +6dad.com +6dafu.com +6dan.com +6diy.com +6ds.me +6du.in +6duoyu.com +6dvip.com +6eat.com +6edigital.com +6eys.com +6fanyi.com +6fcsj.com +6fok.com +6g5fd1a.com +6gh4.com +6ght.com +6hgame.com +6hwan.com +6ict.com +6ih6.vip +6jianshi.com +6jworld.com +6k6g.com +6k9k.com +6kw.com +6laohu.com +6lk.net +6m5m.com +6mao.com +6mh7.com +6miii.com +6miu.com +6miu.net +6miv.com +6mxs.com +6pifa.net +6plat.org +6pmcn.com +6puppy.xyz +6renyou.com +6rooms.com +6s4qki.com +6s54.com +6say.com +6sfg.com +6sq.net +6stmmo.com +6t12.com +6tennis.com +6thhosp.com +6tiantian.com +6tie.com +6v.com +6v68.com +6vps.net +6wan.com +6wtx.com +6xd.com +6xigema.com +6xw.com +6yoo.com +6yu6.com +6yuexi.com +6yxk.com +6yyy7.com +6zu.com +7-hotel.com +7-vk.com +7-wx.com +700bike.com +700so.com +700static.com +700store.com +701.com +7017k.com +701sou.com +703804.com +705112.com +7068.cc +7080edu.com +7082.com +708990.com +70dh.com +70dir.com +70god.com +70mao.com +70ppt.com +70qn.com +70soft.com +70wei.com +70wx.com +70ym.com +70yx.com +71.com +71.net +710071.net +71133.com +7116dns.com +711pr.com +712.com +7120.com +712100.com +71360.com +7139.com +714.hk +715083.com +7152223.com +715300.com +71668.net +71714.com +7172737.com +7176.com +7190.cc +71908.com +7192.com +71acg.com +71acg.net +71baomu.com +71baomu.net +71dm.com +71du.com +71e.com +71edge.com +71k.com +71lady.com +71lady.net +71one.net +71p.net +71study.com +71txt.com +71wl.com +71xe.com +71zs.com +72.com +720582.com +720pmovie.com +720static.com +720think.com +720ui.com +720yes.com +720yun.com +720yuntu.com +720zh.com +7211.com +72177.com +724001.com +7255.com +726033.com +726p.com +7273.com +7280.com +7298.com +72bn.com +72book.com +72byte.com +72bz.com +72ce.com +72crm.com +72crm.net +72crm.org +72dj.com +72dns.com +72dns.net +72dy.com +72e.net +72en.com +72g.com +72la.com +72laodian.com +72link.com +72sc.com +72xf.com +72xit.com +72xuan.com +72yun.com +72zx.com +731yz.com +73232yx.com +732732.com +734969.com +7360.cc +737.com +73789.com +7384tv.com +738888.xyz +7399t.com +73bc.com +73bt.com +73card.com +73zw.com +74.com +7412557.com +7428.net +744zy.com +7474.com +7477.com +747wan.com +749997.com +74cms.com +74hy.com +74ig.com +74ir.com +75111.net +75184.com +75271.com +75367.com +75510010.com +75614.com +756u.com +7574.com +75757.com +757dy.com +7580.ltd +75n474.com +75team.com +75xyx.com +7618.com +761a.com +761w.com +762rc.com +764100.com +7654.com +7659.com +765i.com +765q.com +766.com +7663.com +76676.com +766z.com +7676.com +767stock.com +76868.com +76963.com +769car.com +76al.com +76baobao.com +76dongdong.com +76e.org +76ju.com +76wu.com +76xh.com +76xs.com +76y.com +76zu.com +7708zf02.com +770921.com +7711.com +77119159.com +771633.com +77169.com +77169.net +7717wan.com +7723.com +7724.com +77248a.com +7724yx.com +7725.com +7729.com +77313.com +77348k.com +7735.net +773buy.com +77495.com +77521.com +7756.org +7759.com +7766.info +7766.org +77745.com +777524.com +7775367.com +777biubiu.com +777lala.com +777moban.com +777n.com +7788.com +7788js.com +7788sky.com +7788tools.com +7788xj.com +7789.com +778buy.cc +778buy.com +7794.com +77991.com +7799520.com +77acg.com +77bx.com +77ds.com +77ebooks.com +77hei.com +77l.com +77music.com +77mv.com +77nt.com +77piano.com +77tianqi.com +77vcd.com +77xmd.com +77xsw.la +77y4.com +77ys.com +77zn.com +780.com +78114422.com +78187.com +782yx.com +78300.com +78302.com +78360.net +7849.com +785959.vip +7878hk.com +7881.com +788511.com +788899.com +788v.com +78901.net +789294.cc +789314.cc +789gg.com +789hi.com +789msw.com +789zy.cc +78bar.com +78books.com +78dian.com +78diy.com +78dm.net +78ee.com +78fz.com +78gk.com +78hr.com +78oa.com +78pan.com +78te.com +78tp.com +79.com +793360.com +7937.com +7940.com +79432.com +794579.com +7958.net +7964b.com +7979u.com +797sun.com +797xj.com +7988wan.com +798com.com +798edu.com +798ydh.com +798youxi.com +799.net +799281.com +7999.com +7999.tv +799job.com +79cha.com +79da.com +79tao.com +79tui.com +79yougame.com +79yx.com +79yx.net +7a31jmf.com +7a8k.com +7acg.com +7ahr.com +7analytics.com +7b2.com +7c.com +7caiyun.com +7capp.com +7ccj.com +7cen.com +7chacha.com +7chajiu.com +7cloud.shop +7cmz.com +7cname.com +7colorblog.com +7cxk.com +7dah8.com +7dapei.com +7dianw.com +7didc.com +7do.net +7down.com +7down.net +7dsp.com +7dsw.com +7dtest.com +7dtime.com +7dugo.com +7e.hk +7east.com +7edown.com +7fei.com +7fgame.com +7flowers.com +7forz.com +7fresh.com +7fun.org +7gz.com +7hcn.com +7help.net +7ho.com +7hon.com +7huang.org +7hxsxs.com +7i2.com +7iaoshou.com +7icp.com +7ipr.com +7jia.com +7jia2.com +7jiaqi.com +7jjjj.com +7jk.com +7jubao.com +7junshi.com +7k35.com +7k7k.com +7k8k.com +7ka.co +7kk.com +7kla.com +7kww.net +7kxs.com +7kzw.com +7littlemen.com +7liwu.com +7lk.com +7lw.com +7mah2.com +7mgame.com +7mo.cc +7modifier.com +7moe.com +7moor-fs1.com +7moor-fs2.com +7moor.com +7msj.com +7mx.com +7na7.com +7nepal.com +7net.cc +7oh.net +7pa.com +7pc8.com +7pei.com +7po.com +7q5.com +7qile.com +7r7z.com +7road.com +7road.net +7runto.com +7rv.net +7sbook.com +7scs.com +7sdn.com +7sheji.com +7sj.com +7su.com +7t9.com +7tapp.com +7tgame.com +7tou.com +7tt3333.com +7usa.net +7v6.net +7vk.com +7wa.cc +7wan.com +7wenku.com +7wenta.com +7wenyi.com +7wkw.com +7wnews.com +7wsh.com +7wsh.net +7x24cc.com +7x24s.com +7xdown.com +7xfilm.com +7y5.net +7y7.com +7yc.com +7youxi.com +7yue.pro +7yueji.com +7yun.com +7yzone.com +7zgame.com +7zhan.com +7zhibo.com +7zhou.com +7zm.com +8-008.com +8-host.com +80.com +80.hk +80000.cc +800020308.com +8000ad.com +800400.net +800423.com +800535.com +8006506.com +8006511.com +8006tu.com +800820.net +8008202191.com +800app.com +800bamboo.com +800best.com +800bestex.com +800cdn.com +800du.com +800hr.com +800li.net +800lie.com +800lj.com +800mei.net +800pai.com +800pharm.com +800t.net +800tu.com +800ux.com +800vod.com +800xs.net +800you.com +800youhuo.com +801167.com +802203.com +807.com +80710.com +80800.vip +8080i.com +8081.net +80881.com +808cdn.com +808w.com +8090.com +8090.pk +8090.so +8090120.com +8090app.com +8090cdn.com +8090mt.com +8090vision.com +8090xx.com +8090yx.com +8090yxs.com +809803.com +809926.net +80baicai.biz +80bi.com +80data.net +80hman.com +80host.com +80iter.com +80juqing.com +80kongjian.com +80kuku.com +80ml.com +80nb.com +80note.com +80paper.com +80s.cm +80s.im +80s.so +80s.tw +80sec.com +80shihua.com +80sjy.net +80tian.com +80txt.com +80txt.la +80vps.com +80xb.com +80xs.la +80ym.com +80yunying.com +80zhan.com +810236.com +810251.com +8108188.com +810840.com +811xs.com +812361.com +81265.net +81312.com +81329999.net +815good.com +815ybw.com +81629.com +81677.com +8169.com +817398.com +81761.com +817711.com +818.com +818371.com +818537.com +818it.com +818ps.com +818rmb.com +818tu.com +81999.org +81comdns.com +81dk.com +81it.com +81js.net +81kx.com +81tech.com +81toutiao.com +81tt.net +81xy.com +81yy.cc +81zw.co +81zw.com +81zw.us +8203app.com +8211.com +82222919.com +82250856.com +822644.com +82326999.com +82335966.com +8234567.com +8246.net +8264.com +826rc.com +826wan.com +82859.com +82871.com +8289880.com +828g.com +82ip.com +82ky.com +82pk.com +82ucc.com +83133.com +832200.com +8325.com +8329555.com +8329607.com +833833833.net +8339.org +83480900.com +834sy.com +83666.com +83681111.com +837711.com +838.cc +83823.net +83830.com +838dz.com +8395670.com +83990567.com +83dd.com +83edu.net +83h87d.com +83jie.com +83om.com +84.vc +8421.com +84384d.com +84399.com +844a.com +844dns.net +844wan.com +84519.com +84684.net +8477.com +848.com +8498899.com +849959.com +84dwc.com +84fk.com +84ktv.com +84lm.net +84zcb.com +84zhu.com +85.com +850500.com +8518.com +8521.org +85229666.com +8524999.com +85384.com +853lab.com +8548965.com +8558.org +85679999.com +85814.com +85878078.com +858game.com +858guakao.com +85kf.com +86-import.com +86.cc +86010.net +860527.com +860598.com +860816.com +861522.com +86175.com +861817.com +86215.com +86262.com +8633.com +86516.com +865211.com +86590.com +866ds.com +866lvyou.com +8673h.com +867game.com +867wn.com +8682.cc +8684.com +868578.com +8686c.com +86873.com +86888qp.com +8688g.com +86933.com +869d.com +869v.com +86amsdy.com +86campus.com +86clouds.com +86ditu.com +86djw.com +86dm.cc +86eh.com +86fis.com +86fm.com +86fsp.com +86game.com +86gc.net +86hcdnsuv.com +86hh.com +86hr.com +86hud.com +86huoche.com +86jg.com +86jobs.com +86joy.com +86kl.com +86kongqi.com +86lawyer.com +86mai.com +86mail.com +86mama.com +86mdo.com +86nb.com +86office.com +86pla.com +86pm25.com +86qc.com +86sb.com +86shouji.com +86tec.com +86uuu.com +86wan.com +86wol.com +86xq.com +86y.org +86zsw.com +87.com +870818.com +8714.com +87188718.com +872.cc +8721.com +872872.com +87311111.com +87535353.com +876web.com +8770000.com +877168.com +877325.com +87794560.com +878009.com +87803.com +87870.com +87994.com +87box.com +87g.com +87money.com +87pk.com +87yy.com +88-z.com +88.com +8800.org +8800808.com +8801.net +880114.com +880303.xyz +880331.net +880735.com +88077777.com +880sy.com +880you.com +88106.com +8825.com +8828dl.com +88303887.com +88360.com +8838sl.com +884109.com +884134.com +884358.com +8844.com +88444l.cc +88448.com +8848.com +8848phone.com +885.com +8850006.com +88520.cc +885210.net +8855.org +88582.com +8858a.com +8860.net +8864.com +8864.org +8866.org +886966.com +886abc.com +886bl.com +886vps.com +88765.com +887w.com +888593a.com +8888800000.com +888pic.com +888ppt.com +888rj.com +8890tu.com +8898wz.com +88995799.com +88999.com +8899yyy.vip +889su.com +889xp.com +88bank.com +88bx.com +88cdn.com +88dj.com +88duomi.com +88dushu.com +88eq.com +88fenxiao.com +88h3.com +88hom.com +88ht.com +88htu.com +88hu.com +88jianshen.com +88koo.com +88lan.com +88lgo.com +88lm.cc +88meishi.com +88mf.com +88ming.net +88ng.com +88pets.com +88popo.com +88rpg.net +88tang.com +88tph.com +88u.com +88wakuang.com +88xiaoshuo.com +88xr.org +88ysg.com +88zb.com +88zb0.com +88zha.com +88zyw.net +8910.io +89178.com +89303.com +893933.com +8961zx.com +8977567.com +8979.com +898.travel +8989118.com +898940.com +898984.com +898tc.com +8999.cc +89dj.com +89ds.com +89hl.com +89uu.com +8a.hk +8ao8ao.com +8aza.com +8b2.net +8bb.com +8bcd9.com +8bears.com +8bei8.com +8bit.xin +8btc-ops.com +8btc.com +8btm.com +8c8h.com +8cheche.com +8cname.com +8cnd.com +8cnet.com +8da.com +8ddao.com +8dexpress.com +8dlive.com +8dn.com +8dol.com +8dp.net +8dream.net +8dudata.com +8dwww.com +8e8z.com +8europe.com +8fenxiang.com +8gdh.xyz +8gov.com +8gw.com +8gyu.com +8hsleep.com +8jdns.net +8jiaoye.com +8jj.cc +8jxn.com +8jzw.cc +8k7k.com +8k8z.com +8kana.com +8kzw.com +8l8e.com +8le8le.com +8lhx.com +8liuxing.com +8lk.com +8llp.com +8mhh.com +8miu.com +8miu.net +8ms.xyz +8mu8.com +8multimill.com +8n2.com +8n6n.com +8njy.com +8o9o.com +8pig.com +8pingce.com +8pu.com +8qwe5.com +8qwx.com +8s123.com +8s8s.com +8she.com +8taobaodian.com +8tgh.com +8ttt8.com +8tupian.com +8twan.com +8u58.com +8uka.com +8uyx.com +8wan.com +8win.net +8wiu.com +8wq.com +8wss.com +8yao.cc +8ybct.com +8ym8.com +8yw.xyz +8yzw.com +8z.net +8zntx.com +8zy.com +9-zhuce.com +9000design.com +9000gou.com +9000idc.com +9000wy.com +900112.com +900501.xyz +900cha.com +900php.com +900ppt.com +900top.com +90123.com +903518.com +90370.com +90432.net +90576.com +906you.com +90880.com +908872.com +90907.com +90a.cc +90bola.cc +90ckm.com +90e.com +90ko.net +90lhd.com +90pan.com +90qh.com +90sheji.com +90sjimg.com +90tank.com +90vm.com +90wmoyu.com +90wx.com +90yang.com +90zm.net +91.com +910app.com +910play.com +91160.com +9118fu.com +911cha.com +911pop.com +911sl.com +911wow.com +911yao.com +911zy.com +912366.com +9125flying.com +912688.com +912k.com +912yx.com +913232.com +9133.com +9136.com +91378.com +913vr.com +913you.com +914.com +91472.com +915.com +915.im +9154wan.com +915658.com +915799.com +9158.com +9158ads.com +9158h5.com +915c.com +9166yx.com +916m.com +917.com +9170.com +917118.com +917558.com +917ka.com +917st.com +9188.com +9188wan.com +918dxs.com +918ka.cc +918rc.com +918ys.net +919.com +9191mr.com +9191net.com +9191zx.com +919377.com +91985.com +91ac.com +91act.com +91aiche.com +91aliyun.com +91all.net +91anjian.com +91art.net +91b2b.com +91baby.com +91bee.com +91boshuo.com +91bushou.com +91caijia.com +91canyin.com +91carnet.com +91cdkey.com +91ceshi.com +91cha.com +91chuxue.com +91cpm.com +91cps.com +91ctc.com +91cy.cc +91czxs.com +91daizhang.com +91danji.com +91data.com +91datong.com +91dba.com +91dbb.com +91dbq.com +91ddcc.com +91ddedu.com +91dena.com +91diany.com +91dict.com +91display.com +91dnso.com +91doujin.com +91dub.com +91duobaoyu.com +91dyl.com +91exam.org +91exiu.com +91feizhuliu.com +91fifa.com +91flac.com +91game.com +91gaoding.com +91guzhi.com +91h5.cc +91haiju.com +91haoka.com +91haoke.com +91huayi.com +91huoke.com +91ios.com +91jbz.com +91jf.com +91jiabohui.com +91jiafang.com +91jianguo.com +91jin.com +91jinrong.com +91jinshu.com +91jkj.com +91jkys.com +91jm.com +91jmw.com +91job.com +91join.com +91jsj.com +91juice.com +91kami.com +91kanju.com +91keman.com +91keto.com +91laihama.com +91ld.com +91lda.com +91lewei.com +91liangcai.com +91linux.com +91listen.com +91lx.com +91lxs.com +91maker.com +91mariadb.com +91maths.com +91mitang.com +91money.com +91muzhi.com +91nzh.com +91open.com +91paobao.com +91pdf.com +91pet.net +91php.com +91pic.org +91pkpk.com +91px.com +91qzc.com +91ri.org +91ronghui.com +91rtb.com +91ruyu.com +91safety.com +91sd.com +91sem.cc +91shenshu.com +91smart.net +91soer.com +91soker.com +91sotu.com +91sph.com +91spj.com +91sport.cc +91ssw.com +91student.com +91suan.com +91suke.com +91taobaoquan.com +91taoke.com +91tech.net +91tianqi.com +91ting.net +91tingge.com +91town.com +91tuyatu.com +91tw.net +91ud.com +91up.com +91vpn.com +91vps.com +91vst.com +91waijiao.com +91wan.com +91wangcai.com +91wangmeng.com +91watches.com +91way.com +91weimi.com +91weiwang.com +91wenmi.com +91wii.com +91wllm.com +91wujia.com +91wutong.com +91wzg.com +91xcm.com +91xhg.com +91xiake.com +91xiazai.com +91xsj.com +91xueshu.com +91xww.com +91xy.com +91y.com +91yao.com +91yian.com +91yinpin.com +91yixun.com +91yk.com +91yong.com +91you.com +91youban.com +91yuedu.com +91yunying.com +91yxbox.com +91zhiwang.com +91zwk.com +91zy.com +92.net +921.com +9211.com +921118.wang +921716.com +9217w.com +9217web.com +921lu.com +922000.com +92220668.com +92220701.com +922c25.com +925ps.com +927.la +927927.com +927953.com +927jx.com +928vbi.com +92913.com +92987.com +9299.net +92aliyun.com +92anycall.com +92aq.com +92ay.com +92bbs.net +92bizhi.com +92caijing.com +92cloud.com +92cy.cc +92demo.com +92dp.com +92ez.com +92fox.com +92game.net +92gushi.com +92hidc.net +92jiangbei.com +92kaifa.com +92kk.com +92le.com +92lm.com +92lucky.com +92mp.com +92ni.com +92python.com +92sucai.com +92tianjin.com +92to.com +92u93e.com +92wan.com +92wenzhai.com +92wudao.com +92wx.com +92wy.com +92xygame.com +92you.com +9312.net +933.moe +93338c.cc +934dsw.com +9355.com +93636.com +936u.com +9377.com +9377a.com +9377co.com +9377df.com +9377g.com +9377ja.com +9377ku.com +9377ne.com +9377os.com +9377s.com +9377si.com +9377z.com +938030968.com +93913.com +9396.net +93966.com +93bok.com +93cg.com +93eu.com +93hdw9.com +93hui.com +93jiang.com +93kk.com +93ku.com +93lh.com +93ne.com +93njf0.com +93pk.com +93sdk.com +93soso.com +93tyy.com +93wgames.com +93zp.com +93zw.com +941.so +941jy.com +941mg.com +942ss.com +944.com +94445.com +9448x.com +9453job.com +945idc.com +945n48.com +9466.com +946vr.com +94831.com +9495.com +949678.com +9499.net +94994.com +949949.com +94afx.com +94cb.com +94cto.com +94dreamer.com +94dwc.com +94hdj.com +94he38.com +94i5.com +94ip.com +94ixs.com +94ji.com +94lm.com +94mxd.com +94nw.com +94oz.com +94php.com +94pm.com +94q.com +94qy.com +94rp.com +94te.com +94uv.com +94xy.com +94you.net +94ys.com +95.com +95021.com +95060.com +95081.com +950901.com +95105369.com +95105555.com +95105556.com +95105899.com +9512.net +951368.com +95158.com +95169.com +95191.com +95195.com +9527cha.com +9527cloud.com +95303.com +95408.com +95504.net +95508.com +95511-8.com +95516.com +95516.net +95526.mobi +9553.com +9557.com +95572.com +95579.com +95588.com +95597.cc +95598pay.com +95599.hk +955yes.com +9560.cc +9564.com +9565.com +9588.com +958jbs.com +959249.com +95949c.com +9596956.com +95amxpj.com +95book.com +95en.com +95epay.com +95fenapp.com +95gq.com +95idc.com +95jr.com +95k.com +95links.com +95name.com +95nw.com +95px.com +95xiu.com +95ye.com +95yijing.com +96005656.com +960123.com +960638.com +96090090.com +960rc.com +9610.com +9611111.com +96160.cc +96189.com +9618968.com +962.net +96211.com +962121.net +962168.com +962222.net +96225.com +962518.com +962600.com +962740.com +962760.com +96369.net +9637.com +963999.com +964yx.com +96516.net +96520.com +96533.com +9665.com +966599.com +9666sr.com +9669.com +96711jmbm.com +968.com +96804.com +96811.com +96822.com +96845.com +96877.net +968pk.com +969009.com +9696e.com +9697.com +969g.com +96bbs.com +96caifu.com +96dp.com +96go.com +96hq.com +96jm.com +96jx.com +96kaifa.com +96kb.com +96lh.net +96lou.com +96ni.net +96pc.com +96pk.com +96plus.com +96sdk.com +96shuba.cc +96sir.com +96ttt.com +96weixin.com +96yx.com +96zxue.com +97-7.com +970655.com +9718.com +9718game.com +9724.com +973.com +973xs.com +97616.net +97775.com +977pk.com +977t.com +97828bb.com +97866.com +9787.com +978clouds.com +978sy.com +97936.com +97973.com +9797ly.com +9799.com +97add.com +97atc.com +97cms.com +97dod.com +97douyin.com +97gg.net +97go.com +97jz.com +97kid.com +97lk.com +97lp.com +97lpw.com +97ol.com +97rp.com +97ting.com +97ui.com +97uimg.com +97wd.com +97xiaoshuo.com +97xiaoshuo.net +98.com +98.ma +9800.com +980cje.com +98158.com +9823df.com +984g.com +985.so +98523.com +985sy.com +98654.com +987.com +9870n.com +987app.com +987jx.com +987jx.net +987you.com +988001.com +98809.com +988272.com +988640.com +9898c.com +98a.ink +98ep.com +98fp.com +98jx.com +98mp.com +98nice.com +98one.com +98t.net +98znz.com +99-ss.com +99.com +99083.com +9908qhb.com +99114.com +99118.com +99166.com +9917.com +9919.wang +9919345.com +991kang.com +9928.tv +9939.com +993h.com +994wan.com +995120.net +9955365.net +9955993.com +996.com +996.pm +9966.org +9966333.com +9966w.com +996a.com +9973.com +997788.com +998.com +9981seo.com +9981ypk.com +99887w.com +998jk.com +998jx.com +9991.com +999120.net +999178.com +99939.com +999777.com +9998.tv +99988866.xyz +99999net.net +999ask.com +999brain.com +999d.com +999dns.net +999inandon.com +999kan.com +999tea.com +999wx.com +999xy.net +99aiji.net +99bdf.com +99biaozhun.com +99bill.com +99bo.cc +99cc.com +99cfw.com +99cloud.net +99daigou.com +99danji.com +99ddd.com +99down.com +99downer.com +99dushu.com +99dw.com +99edu.net +99eo.com +99eyao.com +99fang.com +99fei.net +99fenlei.com +99fund.com +99fund.org +99haoche.com +99haoling.com +99hdf.com +99hkjf.com +99huizhou.com +99ielts.com +99inn.cc +99jianzhu.com +99jiaoshi.com +99k5.com +99kgames.com +99lb.net +99max.me +99mc.com +99meiju.app +99meiju.org +99meiju.tv +99meili.com +99mingxing.com +99mst.com +99music.net +99niu.com +99papa.xyz +99pdf.com +99pet.com +99ppt.com +99pto.com +99qh.com +99qimingzi.com +99qumingzi.com +99read.com +99rom.com +99sky.com +99sun.com +99sushe.com +99vf.com +99vu.com +99weiqi.com +99wuxian.com +99xr.com +99xxg.com +99xyx.com +99yoo.com +99youmeng.com +99ys.com +99zhizhu.com +99zihua.com +99zuowen.com +99zzw.com +9ailai.com +9aimai.com +9air.com +9aoduo.com +9aola.com +9beike.com +9bianli.com +9cb.com +9ccapital.com +9ccmsapi.com +9chew.com +9chun.com +9clive.com +9conn.net +9cts.com +9cwx.com +9d19.com +9d4d.com +9damao.com +9damao.net +9day-game.com +9ddm.com +9deli.com +9dfx.com +9dm.net +9do9.com +9douyu.com +9droom.com +9duw.com +9dwork.com +9earth.com +9ehao.com +9eii.com +9ela.com +9ele.com +9enjoy.com +9fav.com +9fbank.com +9first.com +9fpuhui.com +9fs.com +9g.com +9g8g.com +9gty.net +9hcom.com +9he.com +9host.org +9ht.com +9icode.net +9icy.com +9idudu.com +9igcw.com +9ihb.com +9ihere.com +9ihome.com +9ilu.com +9imobi.com +9inx.com +9iphp.com +9ishe.com +9itan.com +9j9y.com +9ji.com +9jiu9jiu.com +9juewu.com +9jx.com +9k51.com +9k9by.com +9k9k.com +9k9ms.com +9kd.com +9kld.com +9ku.com +9kus.com +9le8.com +9linux.com +9liuda.com +9longe.net +9man.com +9mayi.com +9mbv.com +9mi.me +9mi01.com +9miao.com +9miaoxueyuan.com +9mic.com +9msg.com +9nali.com +9now.net +9ok.com +9om.com +9open.com +9orange.com +9qu.com +9qu5.com +9rmb.com +9see.com +9simg.com +9skm.com +9sky.com +9sleep.org +9stor.com +9subi.com +9syw.com +9taobao.com +9thws.com +9to.com +9tong.com +9too.net +9tov.com +9txs.com +9txs.org +9u.net +9upk.com +9v.com +9w9.com +9wee.com +9wee.net +9weihu.com +9wuli.com +9xiazaiqi.com +9xiu.com +9xkd.com +9xu.com +9xwang.com +9yao.com +9yaocn.com +9yc.com +9ye.com +9yjk.com +9yoho.com +9you.com +9you.net +9yread.com +9yuntu.com +9yuonline.com +9ywp.com +9zhen.com +9zhitx.com +9zjob.com +9zonline.com +9zx.com +a-du.net +a-hospital.com +a-jazz.com +a-liai.com +a-map.link +a-sy.com +a0598.com +a0b88.com +a0bi.com +a0c00.com +a0c77.com +a1.mzstatic.com +a1166.com +a135.net +a166.com +a1714.com +a1a.me +a2.mzstatic.com +a2048.com +a21fs.com +a21yishion.com +a234567.com +a2dongman.com +a3.mzstatic.com +a4.mzstatic.com +a4s6.com +a5.mzstatic.com +a5.net +a5805.com +a5idc.net +a632079.me +a67dy.com +a6a1.com +a7.com +a8.com +a8cd.com +a8f947.com +a8tg.com +a8u.net +a8v5.com +a8z8.com +a9188.com +a9377j.com +a963.com +a9vg.com +aa43z7.com +aa65535.com +aa7.org +aa8828.com +aaahsxb.com +aaal.cc +aaapeixun.com +aaayun.com +aadongman.com +aads-cng.net +aaliyaheartha.com +aamachina.org +aaniao.com +aapy38.com +aaqqw.com +aarch64.me +aardio.com +aaronlam.xyz +aaspt.net +aastartups.com +aatccn.com +aayis.com +ab126.com +ab173.com +ab59.com +ab95569.com +abab.com +abacaipu.com +abang.com +abardeen-online.com +abbooa.com +abbyschoice.net +abbyychina.com +abc-ca.com +abc12366.com +abc188.com +abc360.com +abc369.net +abcache.com +abcbxw.com +abcd5.com +abcdocker.com +abcdv.net +abcfintech.com +abchina.com +abcjiaoyu.com +abcjifang.com +abckantu.com +abclogs.com +abcs8.com +abctang.com +abcve.com +abcxs.com +abcydia.com +abczw.com +abd007.com +abdstem.com +abe-tech.com +abeacon.com +abiechina.com +abiestem.com +abifsey.com +abilie.com +abitcg.com +abiz.com +ablanxue.com +able-elec.com +ableaders.com +ablejeans.com +ablesci.com +ablesky.com +abletive.com +ablman.com +abloz.com +abmau.com +aboatedu.com +aboboo.com +aboilgame.com +aboluojihua.com +aboutcg.com +aboutcg.net +aboutcg.org +aboutgk.com +aboutidc.com +aboutnew.net +aboutnuke.org +aboutyun.com +abovede6.com +abreader.com +abslw.com +abtionb.com +abuquant.com +abusi.net +abuyun.com +ac268.com +ac57.com +academypublication.com +acadki.com +acc3.net +acc5.com +accelink.com +accessgood.com +accessibilityunion.org +accessoft.com +accesspath.com +accgame.com +acconsys.com +accopower.com +account.cdnetworks.com +account.samsung.com +accsh.org +accu.cc +accurate-china.com +accyy.com +acde.net +ace-pow.com +acechuang.com +acejoy.com +acelamicro.com +acesheep.com +acewill.net +acftu.org +acfun.cc +acfunchina.com +acfunwiki.org +acg-moe.com +acg.gd +acg.gg +acg.tv +acg17.com +acg183.com +acg18s.com +acg4.com +acg456.com +acg6.com +acgaa.xyz +acgcd.com +acgcp.com +acgdb.com +acgdmzy.com +acgdoge.net +acgist.com +acgn.pw +acgnt.com +acgp.xyz +acgpiping.net +acgqd.com +acgres.com +acgsky.win +acgtofe.com +acgvideo.com +acgvr.com +acgw.pw +acgz.xyz +acgzc.com +achsd.com +aci-wh.com +aciml.com +acing.com +acingame.com +acirno.com +acjw.net +ackeline.com +aclqc.com +acmcoder.com +acmicpc.info +acmoba.com +acmsearch.com +acmx.xyz +acnow.net +aco-musical.com +aconf.org +aconline.com +acoolread.com +acpf-cn.org +acq42.com +across-mbox.com +acrpc.com +acshoes.com +acsrq.com +act-telecom.com +actacams.com +actamath.com +actcn.net +actime.net +actions-semi.com +actionsky.com +activeclub.net +activepower.net +activity180.com +actom.me +actoys.com +actranslation.com +actself.me +actuive.com +acucn.com +acumoxj.com +acuworld.net +acwifi.net +acwing.com +ad-cn.net +ad-gone.com +ad-goods.com +ad-mex.com +ad-safe.com +ad-survey.com +ad-young.com +ad110.com +ad12345.com +ad321.cc +ad5.com +ad518.com +ad7.com +ad778.com +adamlu.net +adanxing.com +adapay.tech +adarrive.com +adashuo.com +adawod.com +adaxin.com +adbats.com +adbxb.com +adc-expo.com +adccd.com +adcdn.com +adcdownload.apple.com +adcdownload.apple.com.akadns.net +adconfer.com +addaad.com +addgog.com +addinghome.com +addnewer.com +addoom.com +addpv.com +addsxz.com +adeaz.com +adebang.com +adeline.cc +adesk.com +adfeiwo.com +adflying.com +adfortest.com +adfuns.com +adfyt.com +adg-dental.com +adgomob.com +adhei.com +adhhome.com +adhimalayandi.com +adhubbj.xyz +adhudong.com +adiexpress.com +adiic.com +adinall.com +adinallcdn.com +adipman.net +adjie.com +adjucai.com +adjumo.com +adjuz.com +adkwai.com +adl888.com +adl999.com +adlefee.com +adlefei.com +adluckin.com +adlvyou.com +admai.com +admaimai.com +admamax.com +admasterto.com +admin.edu.pl +admin10000.com +admin168.net +admin5.com +admin5.net +admin6.com +admin60.com +admin88.com +adminportal.cdnetworks.com +adminso.com +admintony.com +adminxue.com +adminxy.com +admire.so +admpub.com +admqr.com +adnineplus.com +adnyg.com +adobe55.com +adobeae.com +adobeedu.com +adobetop.com +adoceans.com +adoregeek.com +adpchina.com +adpgsc.com +adplusx.com +adpolestar.net +adportion.com +adquan.com +ads8.com +adsage.com +adsagedsp.com +adsame.com +adscover.com +adservice.google.com +adsjdy.com +adslr.com +adsmogo.com +adsmogo.mobi +adsmogo.net +adsmogo.org +adssaas.com +adssap.com +adsspr.com +adsunflower.com +adt100.com +adtaipo.com +adtchrome.com +adtime.com +adtiming.com +adtmm.com +adubest.com +adunicorn.com +adunioncode.com +adunite.com +adups.com +adutou.com +adutp.com +advgbid.com +adview.com +advuser.com +adwangmai.com +adwep.com +adwetec.com +adwintech.com +adwo.com +adwuhu.com +adx.ms +adx666.com +adxhi.com +adxiaozi.com +adxiny.com +adxmq.com +adxpand.com +adxqd.com +adxvip.com +adyun.com +adzh.com +adzhongdian.com +adzop.com +adzshd.com +ae-people.com +ae256.com +ae60.com +aebiz.net +aec188.com +aecichina.com +aeenets.com +aegcar.com +aegins.net +aehyok.com +aemedia.org +aendc.com +aeo-cctv.com +aeonbuy.com +aeonlifes.com +aepku.com +aerfaying.com +aerochina.net +aes01.com +aesdrink.com +aesml.com +aesucai.com +aet21.com +aevit.xyz +aexpec.com +af360.com +afanti100.com +afarway.com +afcec.com +afdian.net +afdiancdn.com +afdsc.com +afdvr.com +afengseo.com +afengsoft.com +afenxi.com +affecthing.com +affu.net +afgame.com +afie.xin +afilmb.com +afjk.com +afjob88.com +afoxsshadow.com +afrazanna.com +afriendx.com +afshanghai.org +aft1v1.com +afu.io +afuchina.com +afunan.com +afunapp.com +afzhan.com +ag17.wang +ag365.com +ag8vip6.com +agalwood.net +agamepower.com +agcloudcs.com +age-spa.com +age.tv +age06.com +agefans.app +agenge.com +agenow.com +agentzh.org +agfoodpartnership.com +aghcdn.com +agile-china.com +agileex.com +aginomoto.com +agiso.com +agnezanna.com +agora.io +agrantsem.com +agrittex.com +agrochemshow.com +agrodt.com +agrofairs.com +agrokingcn.com +agrosg.com +agrowingchina.com +agucn.com +aguo.com +agxs.net +ah-inter.com +ah-px.com +ah12333.com +ah163.com +ah3c.com +ah477.com +ah499.com +ah5166.com +ah8.cc +ah9yu.com +ahacpp.com +ahafm.com +ahalei.com +ahanxun.com +ahao.moe +ahaohao.com +ahauto.com +ahbb.cc +ahbys.com +ahbztv.com +ahbzyy.com +ahc.ink +ahcaijing.com +ahcaw.com +ahcjhjj.com +ahcnb.com +ahdltj.com +ahdsez.com +ahdzfp.com +aheading.com +ahfbz.com +ahfdcb.com +ahfensitong.com +ahglj.com +ahgssh.com +ahhanmi.com +ahhdb.com +ahhhjx.com +ahhouse.com +ahhtzx.com +ahhwdp.com +ahhxcm.com +ahjdq.com +ahjem.com +ahjgxy.com +ahjk.com +ahjtxx.com +ahjyec.com +ahjyzb.com +ahjzjy.com +ahjzw.com +ahkemi.com +ahkende.com +ahkjksw.com +ahkjw.com +ahkxsoft.com +ahlib.com +ahlife.com +ahljnews.com +ahlsm1.com +ahmayun.com +ahmky.com +ahmup.com +ahnews.org +ahougn.com +ahphi.com +ahqmdq.com +ahqnrc.com +ahrefa.com +ahrunzi.com +ahscl.com +ahshsz.com +ahshuhua.net +ahsjxjy.com +ahsyj.com +ahsylsy.com +ahteacher.com +ahtlbyby.com +ahtlgc.com +ahtrain.com +ahu.cc +ahuano.com +ahudows.com +ahuyi.com +ahwwnews.com +ahwxcs.com +ahxwkj.com +ahydnet.com +ahydwy.com +ahyessoft.com +ahyouan.com +ahyouth.com +ahzs10000.com +ai-cai.com +ai-factory.com +ai-indestry.com +ai-qingchang.com +ai-start.com +ai-thinker.com +ai.cc +ai.mr +ai012.com +ai2hao.com +ai7.com +ai7.org +ai895.com +ai9475.com +aiagain.com +aiagain.net +aiai6.com +aiaisz.xyz +aiaiu.com +aiaor.com +aiba.com +aibaimm.com +aibang.com +aibang5.com +aibaov.com +aibeidian.com +aibing.cc +aibo123.com +aibooks.cc +aibosha.com +aicai.com +aicaicdn.com +aicaike.com +aicdn.com +aicdn4.com +aicdn5.com +aichaicp.com +aichaoxing.com +aichawu.com +aicheren.com +aichunjing.com +aiclicash.com +aiclk.com +aicloud.com +aicode.cc +aicoinstorge.com +aicsnet.com +aicu8.com +aicunfu.com +aidafen.com +aidai.com +aidaily.com +aidaiz.com +aidalan.com +aidangbao.com +aidanji.com +aidaxing.com +aidaxue.com +aideep.com +aidg.cc +aidianji.net +aidiao.com +aidigger.com +aidigong.com +aidimedia.com +aidingbuding.com +aidisida.com +aidlearning.net +aidog.com +aidong.me +aidoor.net +aidouer.net +aidpaper.com +aidrive.com +aiduoka.com +aidusk.com +aiduwenxue.com +aiec-alliance.com +aiegle.com +aiemy.com +aier021.com +aier0755.com +aierchina.com +aierfano.com +aiezu.com +aifamu.com +aifanfan.com +aifang.com +aifangke.com +aifanr.net +aifanyi.net +aifbr.com +aifcdn.com +aifei8.net +aifengjie.com +aifont.com +aifu10.com +aifu360.com +aigame100.com +aiganggu.com +aige010.com +aigei.com +aigewc.com +aigo.com +aigodiy.com +aigou.com +aigtek.com +aigupiao.com +aigzg.com +aihaisi.com +aihala.com +aihandu.com +aihanfu.com +aihanfu.net +aihangtian.com +aihao.cc +aihao.org +aihecong.com +aihehuo.com +aihelp.net +aihoge.com +aihuahua.net +aihuajia.com +aihuaju.com +aihuau.com +aihuishou.com +aihundan.com +aihuo.cc +aii-alliance.org +aiijournal.com +aiimg.com +aiimooc.com +aiioii.com +aiizen.net +aijc.net +aiji66.com +aijianji.com +aijigeci.com +aijikong.com +aijishu.com +aiju.com +aik.com +aikac.com +aikaixin.com +aikaiyuan.com +aikan.tv +aikan8.com +aikang.com +aikcms.com +aiketour.com +aikeu.com +aikexi.com +aikf.com +aikucun.com +ailaba.org +ailbaba.me +ailete.com +ailewan.com +aili.com +ailianbang.com +ailinglei.com +ailinux.net +ailinzhou.com +ailiyun.com +ailom.com +ailongmiao.com +ailuntan.com +ailvxing.com +aimagang.com +aimaoji.com +aimapp.net +aimatech.com +aimatrix.ai +aimeas.com +aimeideni.com +aimeike.tv +aimeit.com +aimikuajinggou.com +aiminer.cc +aimipay.net +aimiplay.com +aimituan.com +aimo.moe +aimodou.net +aimoge.com +aimsen.com +ainfiniteactivity.com +ainiapp.com +ainirobot.com +ainiseo.com +ainiu.net +ainiuwa.com +ainyi.com +aiodt.com +aiotvoice.com +aipai.com +aipark.com +aipear.com +aipenglai.com +aipiaxi.com +aipingxiang.com +aipinko.com +aiprose.com +aips.me +aipuo.com +aipz.com +aipz777.com +aiqianduan.com +aiqianxq.com +aiqin.com +aiqisoft.com +aiqiy.com +aiqiye.cc +aiqiyi.com +aiqiyivip.com +aiqu.com +aiquanjian.com +aiqucn.com +aiqumi.com +aiqzu.net +air-level.com +air-matters.com +air-quality.com +air.cc +airasia.com +airbft.com +airchina.com +airchinacargo.com +airchinagroup.com +airchinaim.com +airchinajet.com +airchinamedia.com +aircn.org +aircourses.com +airdropin.com +airen1314.com +airkunming.com +airmate-china.com +airmb.com +airmobyte.com +airnut.com +airoha.com.tw +airsavvi.com +airspa.net +airstar.com +airtofly.com +airtu.com +airwh.com +aisaohuo.com +aisaw.com +aisbeijing.com +aisearch.cc +aisee.tv +aiseminar.com +aishangcan.com +aishengji.com +aisila.com +aisino.com +aisinogd.com +aisinogz.com +aisixiang.com +aisk.me +aisky.cc +aiskycn.com +aisojie.com +aisoutu.com +aispeech.com +aispreadtech.com +aisy.com +aitaojin.com +aite.xyz +aitebuy.com +aitecar.com +aitemple.com +aiti.fun +aitiancheng.com +aitoushe.com +aitrans.net +aitsw.com +aituan.com +aitupian.com +aituwo.com +aityp.com +aiurl.com +aiuw.com +aiuxdesign.com +aiuxian.com +aiuxstudio.com +aiviy.com +aiviysoft.com +aiwall.com +aiwan4399.com +aiwan91.com +aiwanba.net +aiwanpai.com +aiwansc.com +aiwawa520.com +aiwebsec.com +aiweibang.com +aiweibk.com +aiweline.com +aiwen.cc +aiwenwo.net +aiwenyi.com +aiworkspace.com +aiwulao.com +aixchina.net +aixcoder.com +aixiaoduo.com +aixiashu.com +aixiatxt.com +aixiawa.com +aixiawx.com +aixiegao.com +aixiezuo.com +aixifan.com +aixigua.com +aixinbaomu.com +aixinquban.com +aixinwu.org +aixinyunfan.com +aixq.com +aixuedai.com +aixuefu.com +aixuejun.com +aixuetang.com +aixuexi.com +aixyz.com +aiyaapp.com +aiyadu.com +aiyangedu.com +aiyanqing.com +aiyaopai.com +aiyichuan.com +aiyidu.com +aiyinghun.com +aiyingli.com +aiyingshi.com +aiykj.com +aiyou.com +aiyoumi.com +aiyoweia.com +aiyuangong.com +aiyuke.com +aizaoqi.com +aizhan.com +aizhanku.com +aizhengli.com +aizhenrong.com +aizhet.com +aizhi.biz +aizhibaby.com +aizhicn.com +aizhigu.tv +aizhuizhui.com +aiziti.net +aizongyi.com +aizuna.com +aizuopin.com +ajaxjs.com +ajaxstu.com +ajbbkf.com +ajcass.org +ajcctv.com +ajclass.com +ajebw.com +ajhchem.com +ajiang.net +ajinga.com +ajiuqian.com +ajkcdn.com +ajkdns2.com +ajkimg.com +ajmide.com +ajrcb.com +ajs17.com +aju.space +ajwang.com +ajweishequ.com +ajxlx.com +ajyg.com +ak0.tw +ak1ak1.com +ak47ids.com +akaedu.org +akaifa.com +akaiwl.com +akandou.com +akaxin.com +akbe.com +akbkgame.com +akdanji.com +akerp.com +akey.im +akey.me +akeyun.com +akhtm.com +akhy.com +akinoheya.com +akjunshi.com +akkogear.com +akng.net +akniu.com +aknzb.com +akomr.com +akoofs.com +akppt.net +akr-developers.com +akscan.com +akswe.com +aksxw.com +aku.pub +akuaikan.com +akuziti.com +akyiyou.com +akylq.com +al-jin.com +al8l.com +alabmed.com +alaccountant.com +alacun.com +aladdin-e.com +aladdinnet.com +alading123.com +alai.net +alameal.com +alanyhq.com +albbzjx.com +albltc.com +aldcup.com +aldeee.com +aldnew.com +aldtop.com +aldwx.com +aledeco-hk.com +aleest.com +alenshaw.com +alertover.com +alexandraeden.com +alexyan.cc +aleyoo.com +alfeng.com +alfheim.cc +algorithmart.com +ali-health.com +ali213.com +ali213.net +ali37.net +ali727.com +aliagain.com +alianhome.com +aliapp.com +aliapp.org +aliavv.com +alibaba-inc.com +alibaba.com +alibaba.net +alibabacloud.com +alibabacorp.com +alibabadns.com +alibabadoctor.com +alibabafapiao.com +alibabagroup.com +alibabaonline.com +alibabapictures.com +alibabaplanet.com +alibabatech.org +alibabaued.com +alibabausercontent.com +alibjyun.com +alibjyun.net +alibole.com +alibuybuy.com +alicall.com +alicdm.com +alicdn.com +alicdngslb.com +alicelj.com +alicloudapi.com +alicloudccp.com +alicloudlayer.com +alicloudsec.com +alicloudwaf.com +alicontainer.com +alidata.org +alidayu.com +alidns.com +aliedge.com +alienfans.net +alientek.com +aliexpress-media.com +aliexpress.com +aliexpress.ru +alifabu.com +alifanyi.com +aligames.com +aligaofang.com +aligfwaf.com +alihd.net +alihuahua.com +aliimg.com +alijijinhui.org +alijk.com +alikunlun.com +alikunlun.net +alili.tech +aliliying.com +aliloan.com +alimama.com +alimebot.com +alimmdn.com +alinx.com +alinx.vip +aliog.com +alip.biz +alipanso.com +alipay-eco.com +alipay.com +alipay.hk +alipay.net +alipaycs.com +alipaydev.com +alipaydns.com +alipaylog.com +alipayobjects.com +alipcsec.com +aliplay.com +aliplus.com +aliqiche.com +aliresearch.com +alisoft.com +alisonedwina.com +alisports.com +alitchina.com +alithefox.net +alithon.com +alitrip.com +alitrip.hk +aliued.com +aliunicorn.com +aliuv.com +alivecdn.com +alivl.com +alivv.com +alivv.net +aliway.com +aliwd.com +aliwears.com +aliwx.net +alixiaozhan.net +alixinwen.com +alixixi.com +alixox.com +aliyiyao.com +aliyue.net +aliyun-cdn.com +aliyun-inc.com +aliyun-ns.com +aliyun-youhui.com +aliyun.com +aliyun.org +aliyun365.com +aliyunbaike.com +aliyuncdn.com +aliyunceng.com +aliyuncs.com +aliyundaiwei.com +aliyunddos0002.com +aliyunddos0005.com +aliyunddos0006.com +aliyunddos0010.com +aliyunddos0018.com +aliyunddos0019.com +aliyunddos0020.com +aliyunddos0023.com +aliyunddos0026.com +aliyunddos0027.com +aliyunddos0029.com +aliyunddos0030.com +aliyunddos1001.com +aliyunddos1002.com +aliyunddos1003.com +aliyunddos1004.com +aliyunddos1005.com +aliyunddos1006.com +aliyunddos1007.com +aliyunddos1009.com +aliyunddos1010.com +aliyunddos1011.com +aliyunddos1012.com +aliyunddos1013.com +aliyunddos1014.com +aliyunddos1015.com +aliyunddos1016.com +aliyunddos1017.com +aliyunddos1018.com +aliyunddos1019.com +aliyunddos1020.com +aliyunddos1021.com +aliyunddos1022.com +aliyunddos1023.com +aliyunddos1025.com +aliyunddos1026.com +aliyunddos1028.com +aliyunddos1029.com +aliyunddos1030.com +aliyundrive.com +aliyunduncc.com +aliyundunwaf.com +aliyunedu.net +aliyunfuwuqi.com +aliyunga0018.com +aliyungf.com +aliyunhn.com +aliyunj.com +aliyunlive.com +aliyunoos.com +aliyunpds.com +aliyunqifu.com +aliyuntest0161.xin +aliyunwaf.com +aliyunwaf1.com +aliyunwaf2.com +aliyunwaf3.com +aliyunwaf4.com +aliyunwaf5.com +aliyunx.com +aliyunyh.com +alizhaopin.com +alizila.com +alkuyi.com +all3c.com +all4seiya.net +allappapi.com +allawnfs.com +allawntech.com +allbrightlaw.com +allchinahardware.com +allchips.com +allcitygo.com +allcitysz.net +alldk.com +alldobetter.com +alleadprint.com +allfang.com +allfunnies.com +allhistory.com +allianz360.com +allibook.com +alliedjeep.com +allinfinance.com +allinpay.com +allinpayhb.com +alliread.com +alllget.com +alllook.tv +allmaga.net +allnow.com +allok.wang +alloyteam.com +allpayx.com +allposs.com +allpyra.com +allrace.com +allsenseww.com +allstack.net +allstor.org +alltoall.net +alltobid.com +alltosun.com +alltuu.com +allwin368.com +allwinnertech.com +allwinso.com +allyes.com +allyes.net +allystar.com +alma-intl.com +aloha-ukulele.com +alonemonkey.com +alongsky.com +alookbrowser.com +alookql.com +alookweb.com +alpaca.run +alpha-browser.com +alpha-star.org +alphabole.com +alphafun.com +alsovalue.com +alswl.com +altstory.com +altxw.com +aluaa.com +alumni-cn.org +alumni-scut.org +aluntan.com +alwaysdesign.xin +alwaysnb.com +alwindoor.com +alxw.com +alyisheng.com +alyssaeileen.com +alyzq.com +am774.com +am89.com +amaomb.com +amap.com +amarsoft.com +amassfreight.com +amaxchina.com +amazeui.org +amazfit.com +amazingsys.com +amazon1688.com +ambassador-sh.com +ambassadorchina.com +amberbj.com +amberedu.com +ambereduwh.com +ambition-soft.com +ambkct.com +ambow.com +amchamchina.org +amdotibet.com +amec-inc.com +amemv.com +americachineselife.com +americanobgyn.com +ameson.org +amethystum.com +amexpressnetwork.com +amfproject.org +amgbs.com +amgepic.com +amh.sh +amhimalayanet.com +amhl.net +amhnn.com +amicool.net +amif-expo.com +amijiaoyu.com +aminer.org +aminglinux.com +aminoacid-jirong.com +amo9.com +amobbs.com +amon.org +amon1997.com +ampc8.com +ampcn.com +amplesky.com +ampmake.com +ampxl.com +ams-ic.com +amsjsy.com +amsoveasea.com +amssro.net +amsxdc.com +amtron-ic.com +amuletj.com +amuletor.com +amunion.com +amuren.com +amwayapp.com +amwiki.org +amysql.com +amyxun.com +amz123.com +amz520.com +amzcaptain.com +an-ran.com +analysysdata.com +analytics-china.com +analyticskey.com +anandoor.com +anank.ke +ananzu.com +anatuprak.com +anav.com +anbang-life.com +anbanggroup.com +anchengcn.com +anchi-china.com +anchnet.com +ancii.com +ancun.com +and568.com +anda1516.com +andaike.com +andan.me +andefz.com +andeyi1688.com +andhj.com +andisoon.com +andpay.me +andreader.com +android-doc.com +android-studio.org +androidchina.net +androidcookie.com +androidinvest.com +androidmi.com +androidonline.net +androidonlines.com +androidperformance.com +androidvista.com +androidx86.net +andwi.com +andyiac.com +andyron.com +andyx.net +ane56.com +aneasystone.com +anf-z.com +anfan.com +anfang086.com +anfantech.com +anfeng.com +anfensi.com +angeeks.com +angel-game.net +angel-usa.com +angelhome.org +angeljjangnara.com +angell-studio.com +angellsec.com +angelmom.org +angelyeast.com +angelyeast.ru +angesi16.com +angiefans.com +angli.me +anglo-chinese.com +angogotech.net +angroups.com +angruo.com +angrymiao.com +anguanjia.com +angui.org +angwei.net +anhei2.com +anhei3.net +anheng.com +anhkgg.com +anhouse.com +anhuaedu.com +anhui365.net +anhuigwy.org +anhuihouniao.com +anhuihr.com +anhuilife.com +anhuimobile.com +anhuinews.com +anhuiry.com +aniccw.net +aniceapp.com +anicoga.com +anijue.com +animalchina.com +animationcritics.com +animetaste.net +anitama.net +anitoys.com +aniu.so +aniu.tv +anix.xyz +anji-ceva.com +anji-logistics.com +anji-tonghui.com +anji66.net +anjian.com +anjianghu.net +anjimicro.com +anjismart.com +anjuke.com +anjukestatic.com +ankang06.org +ankangrc.com +ankangwang.com +ankebio.com +ankelife.com +ankerjiedian.com +ankevip.com +ankichina.net +ankki.com +anlaiye.com +anlibaby.com +anlink.com +anlogic.com +anlu114.com +anmobc.com +anmoxiansheng.com +ann9.com +annangela.moe +annchain.io +anneishuo.com +annelhair.com +annhe.net +annto.com +anoah.com +anonym-hi.com +anorectal.net +anosmcloud.com +anoyi.com +anqingonline.com +anqn.com +anquan.info +anquan.org +anquan35.com +anquanbao.com +anquanke.com +anquanone.com +anquanquan.info +anquantong.com +anquanxia.com +anquanzhuomian.com +anrayer.com +anren.org +anrenmind.com +anruichina.com +ansbabe.com +ansgo.com +anshi7.com +anshouji.com +ansiding.com +ansky.com +ansteelgroup.com +ant-clean.com +ant78.com +anta.com +antairui.net +antarx.com +antbuyhot.com +antcloud-miniprogram.com +antcut.com +antdtheme.com +antdv.com +antebao.com +antebo.com +antfin-inc.com +antfin.com +antfortune.com +antgroup.com +anticheatexpert.com +antiy.com +antiy.net +antpedia.com +antpool.com +antriver.com +antrol.com +antrtb.com +antsdaq.com +antspainter.org +antuan.com +antuan365.com +antuan532.com +antuni.com +antutu.com +antutu.net +antuzhi.com +antvr.com +antzk.com +anw.red +anw8.com +anweishi.com +anweizhi.com +anwen.cc +anxcn.com +anxhu.com +anxia.com +anxiaoer.com +anxin.com +anxin360.com +anxin360.net +anxinapk.com +anxindavisa.com +anxindeli.com +anxinlirong.com +anxinmai.com +anxinssl.com +anxinyisheng.com +anxiu.com +anxiw.com +anxjm.com +anxz.com +any123.com +any8.com +anyan.com +anyang100.com +anyangedu.com +anyant.com +anybeen.com +anydd.com +anyelse.com +anyew.com +anyforweb.com +anygame.info +anyiidc.com +anyilv.com +anyka.com +anyknew.com +anymcu.com +anymetre.com +anyoy.com +anyrtc.io +anysdk.com +anysql.net +anytesting.com +anytranscription.com +anyuantec.com +anyunjianzhan.com +anyv.net +anyway.fm +anywlan.com +anywood.com +anyxz.com +anzerclub.com +anzext.com +anzhen.org +anzhi.com +anzhibao.com +anzhitan.com +anzhixun.com +anzhuoapk.com +anzhuotan.com +anzhuowo.com +anzogame.com +anzow.com +ao-hua.com +aoao365.com +aoaob.com +aoapp.com +aobacore.com +aobaishi.com +aobo62.com +aobosoft.com +aoc.com +aocde.com +aocdn.com +aoch.com +aoclia.com +aocslb.com +aodabo.tech +aodaliyaqianzheng.com +aoddoll.com +aodeng.cc +aodianyun.com +aodingsy.com +aoedi.com +aoerdz.com +aoetech.com +aofenghuanjing.com +aograph.com +aohuasports.com +aoidf3.com +aojauto.com +aojian.net +aojian2.net +aojiaostudio.com +aojiyingyu.com +aojiyouxue.com +aojiyuke.com +aojoo.com +aoju.net +aokangsports.com +aolai.com +aolaigo.com +aoliday.com +aolylcd.com +aomeng.net +aomoxo.com +aomygod.com +aomygodstatic.com +aonaotu.com +aoofu.com +aoogee.com +aoomoo.com +aoratec.com +aoscdn.com +aosens.com +aoseo.com +aoserp.com +aoshitang.com +aoshowsh.com +aoshu.com +aosong.com +aosoo.com +aoswtc.com +aotian.com +aotocn.com +aotrip.net +aotuzuche.com +aowei.com +aowenmarketing.com +aoxingboli.com +aoxingsujiao.com +aoxintong.com +aoxtv.com +aoya-hk.com +aoyanchang.com +aoye.com +aoyii.com +aoyor.com +aoyotech.com +aoyou.cc +aoyou.com +aoyou365.com +aoyoux.com +aoyuge.com +aoyunque.com +aozehuanbao.com +aozhanls.com +aozhougoufang.com +aozhuanyun.com +ap88.com +apa.me +apabi.com +apachecn.org +apad.pro +apcdianyuan.com +apcdns.net +apclc.com +apcupse.com +apdcdn.com +apdnews.com +ape8.com +apeeri.com +apehorse.com +apeiwan.com +apelearn.com +apesk.com +apetdog.com +apexmic.com +apexyun.com +apeyun.com +apgblogs.com +apgoview.com +aphidic.com +api.bz +apiadmin.org +apiairasia.com +apicase.io +apicloud.com +apicvn.com +apigwtencent.com +apiview.com +apizb.com +apizl.com +apizza.cc +apizza.net +apk3.com +apk8.com +apkevery.com +apkgu.com +apkplug.com +apkrj.com +apkyx.com +apkzu.com +aplan.tv +aplum-inc.com +aplum.com +apluscap.com +aplusunion.com +apmarry.com +apmbooth.com +apme-magnetics.com +apmvista.com +apnring.com +apollo.auto +apollotop.com +apous.com +apowo.com +apowogame.com +apoyl.com +app-123.com +app-echo.com +app-measurement.com +app-router.com +app-sage.com +app-store.name +app-web-seo-aso.com +app-zh.com +app001.com +app111.com +app111.org +app1116.app +app17.com +app178.com +app2pixel.com +app4cms.net +app86.com +app887.com +appadhoc.com +apparelsos.com +appbi.com +appbk.com +appbocai.com +appbsl.com +appbyme.com +appbz.info +appc1.com +appchina.com +appchizi.com +appcoo.com +appcool.com +appcpa.net +appcpx.com +appcup.com +appdao.com +appdown.info +appdp.com +appduu.com +appeasou.com +appgame.com +appganhuo.com +appgenuine.com +appgz.com +appicplay.com +appjiagu.com +appjzy.com +appkaifa.com +appkefu.com +appkg.com +appldnld.apple.com +appldnld.g.aaplimg.com +apple110.com +apple4.us +apple88.net +apple886.com +appleads-trk.com +appleadstech.com +applebl.com +applehunt.com +appleid.cdn-apple.com +appletuan.com +applex.net +applicationloader.net +applinzi.com +applysquare.com +applysquare.net +appmaker.cc +appmifile.com +appnode.com +appotronics.com +apppoo.com +appqingshu.com +apprcn.com +appresource.net +apps.apple.com +apps.mzstatic.com +apps.samsung.com +apps121.com +appscan.io +appsflower.com +appshike.com +appsimg.com +appsina.com +appstochina.com +apptao.com +appubang.com +appublisher.com +appurl.cc +appurl.me +appving.com +appvipshop.com +appvv.com +appweiyuan.com +appwill.com +appwuhan.com +appwuhan.net +appxcode.com +appxzz.com +appyao.com +appying.com +appykt.com +appzhonghua.com +appzhu.com +apsgo.com +apt.so +aptchina.com +aptchip.com +aptenon.com +apusic.com +apxm.net +aqara.com +aqb.so +aqbxcdn9.com +aqbz.org +aqdcdn.com +aqdesk.com +aqdh.com +aqdkc.com +aqdog.com +aqdstatic.com +aqee.net +aqfen.com +aqhbq.com +aqhuayu.com +aqidb.org +aqioo.com +aqisite.com +aqiyi.com +aqniu.com +aqqcx.com +aqquan.org +aqtd.com +aqtxt.com +aquacity-tj.com +aquanutriera.com +aquanyou.com +aquapipetech.com +aquayee.com +aqueck.com +aqumon.com +aqyun.com +aqyzm.com +aqzpw.com +aqzt.com +aqzyzx.com +ar-max.com +aragexpo.com +arapp.online +arayzou.com +arc-uds.com +arcas-da.com +arccode.net +arcdmi.com +archcollege.com +archcy.com +archermind.com +archeros.com +archerpeng.com +archery8.com +archerysalon.com +archgo.com +archi-motive.com +archiant.com +archidead.net +archina.com +archina.org +archiname.com +archio.pro +architbang.com +archlinuxmips.org +archsummit.com +arcsoftai.com +arctime.org +ardsec.com +areachina.com +areader.com +arebz.com +arefly.com +arenacdn.com +ares.dl.playstation.net +arestech-sz.com +arhieason.com +arhoo.com +aria2.org +ariesmob.com +arinchina.com +aris.la +arisastar.com +arkfeng.xyz +arkn81.com +arkoo.com +arkrdigital.com +arkread.com +arkteam.net +arliki.com +arm001.com +arm9.net +arm9home.net +armbbs.net +armchina.com +armsword.com +armystar.com +arocmag.com +arp.cc +arpg2.com +arpun.com +arrail-dental.com +arrow-tower.com +arrowos.net +art-ba-ba.com +art-child.com +art138.com +art2500.com +art456.com +artacode.com +artbeijing.net +artbookinchina.com +artcns.com +artddu.com +artebuy.com +artech-graphite.com +artexamcq.com +artfinace.com +artfoxlive.com +artgohome.com +artgoin.com +arthome163.com +arthurchiao.art +arti200.com +artimg.net +artintern.net +artlinkart.com +artliving.tv +artlnk.com +artopia-group.com +artp.cc +artplusall.com +artpro.com +artrade.com +artron.net +artronimages.com +artrus.net +arts-kunst.com +artsbuy.com +artsncollections.com +artvisioncg.com +artwe.com +artwer.com +artww.com +artxuanyi.com +artxun.com +arvato-ocs.com +arvinhk.com +aryasec.com +as-doll.com +as-exchange.com +as-hitech.com +as3f.com +as5.com +asaki.me +asao.com +asbeijing.com +asc-wines.com +aschina.org +aschtj.com +asciima.com +asczwa.com +asczxcefsv.com +asd868.com +asdyf.com +asean-china-center.org +aseantradecenter.com +aseoe.com +asfzl.net +asgxsy.com +ashan.org +ashj.com +ashvsash.com +ashvsash.net +asia-dns.com +asiabt.com +asiaci.com +asiacool.com +asiacorp.net +asiae.com +asiaeap.com +asiafactor.com +asiafpd.com +asiaidc.net +asiainfo-sec.com +asiainfo.com +asiainfodata.com +asianewsphoto.com +asiarobot.net +asifadeaway.com +asilu.com +asimi8.com +askci.com +asketchup.com +asklib.com +asklicai.com +askmaclean.com +askpanda.cc +askququ.com +asktao.com +askxt.org +aslzw.com +asm64.com +asmrv.com +asnlab.com +asnlab.org +aso.ink +aso100.com +aso114.com +aso120.com +asoasm.com +asomob.com +asoulfan.com +asp168.com +asp300.com +asp8php.com +aspbc.com +aspcool.com +aspire-info.com +aspirecn.com +aspirer.wang +aspku.com +aspnet.tech +aspsky.net +aspx.cc +aspxhome.com +aspxhtml.com +asqql.com +asrmicro.com +asrsingapore.com +assbbs.com +assets-global.viveport.com +assets.analog.com +assets.uxengine.net +assets.volvocars.com +assrt.net +astbbs.com +astestech.com +astfc.com +asthis.net +astorpiano.com +astrocn.org +astron.ac +astronautchina.com +astropulsion.com +asussmart.com +asussz-zp.com +aswetalk.net +asyzonline.com +at-siac.com +at0086.com +at0086.net +at58.com +at78.com +at851.com +at864.com +at98.com +ata-edu.com +ata-test.net +atacchina.com +ataoju.com +ataozx.com +atatech.org +atbug.com +atcc360.com +atchip.com +atcontainer.com +atcpu.com +atctest.org +atelier39.org +atf.com +atfeng.com +atfjk.com +atguigu.com +atguigu.org +athaitao.com +athmapp.com +atianqi.com +atido.com +ating.info +atitsc.com +atiyun.com +atjiang.com +atlas1688.com +atmbox.com +atobo.com +atomhike.com +atomic-art.com +atomwuxi.com +atool.org +atool9.com +atoolbox.net +atop.fun +atpanel.com +atriumlee.com +atstudy.com +attakids.com +attri.mobi +attyou.com +atuoyi.com +atwtech.net +atxwm.com +atyun.net +atzjg.net +atzlinux.com +atzuche.com +auak.com +aucanlink.com +aucnln.com +audio160.com +audiobookbay.nl +audiobuy.cc +audiocn.com +audiocn.org +audiofamily.net +audiy.com +audlabs.com +audley-printer.com +augsky.com +augth.com +augurit.com +auiou.com +auly.com +aunapi.com +auniontech.com +aunload.com +aupu.net +aurogon.com +auroivf.com +auromcs.com +ausaview.com +ausbio.com +auscoo.com +ausdn.com +aushinelyn.com +aushy.com +ausny.com +auspous.com +aussino.net +austargroup.com +austarskill.com +austarstudy.com +ausuu.com +auto-beijing.com +auto-ccpit.org +auto-learning.com +auto-made.com +auto-mooc.com +auto-purify.com +auto-wo.com +auto000.com +auto18.com +auto318.com +auto328.com +auto333.com +auto510.com +auto6s.com +auto98.com +autoai.com +autobaidu.com +autobizreview.com +autocamel.com +autochina360.com +autochips.com +autodg.com +autodmp.com +autodry.net +autodwg.com +autoesd.com +autofull.net +autogslb.com +autoharbin.org +autoho.com +autohome.com +autohr.org +autoitx.com +autojingji.com +autojkd.com +autojs.org +autonavi.com +autono1.com +autoparts-yoto.com +autophagy.net +autoplansearch.com +autoprotect365.com +autoqingdao.com +autoshanghai.org +autosmt.net +autospaceplus.com +autosup.com +autozw.com +auwinner.com +auxgroup.com +auyou.com +av-ic.com +av010.com +av199.com +av2.me +av269.com +av380.net +avacvisa.com +avalon.pw +avalon233.com +avanpa.com +avatarmind.com +avatarmobi.com +avc-mr.com +avc-ott.com +avc.com.tw +avdll.com +aves.art +avexchina.com +avgh5.com +avhome.net +avic.com +avic021.com +avicnews.com +avicone.com +avicsec.com +avicui.com +avivaqueen.com +avlsec.com +avlyun.com +avnpc.com +avoscloud.com +avq360.com +avrvi.com +avrw.com +avtechcn.com +avtt0033.com +avtt830.com +aw-ol.com +aw.cc +aw99.com +awaimai.com +awaker.net +awaysoft.com +awbang.com +awc618.com +awcloud.com +awcn.cc +aweb.cc +awehunt.com +awemeughun.com +awinic.com +awjiaju.com +aword.net +awotuan.com +awoyun.com +awsdns-cn-57.com +awsok.com +awspal.com +awstar.net +awtmt.com +awuming.com +awx1.com +ax1x.com +ax2nc4.ren +ax61.com +ax630.com +axatp.com +axbsec.com +axbxw.com +axcf.com +axera-tech.com +axfys.com +axhub.im +axjsw.com +axmag.com +axmro.com +axnsc.com +axshuyuan.com +axtmy.com +axtoutiao.com +axuer.com +axure.org +axure.us +axureshop.com +axureux.com +axureyun.com +axxiaoshuo.com +axyahaxn.tokyo +axyxt.com +axzchou.com +axzlk.com +ay57.com +ay99.net +aycav.com +ayfdc.com +ayfy.com +ayguge.com +ayibang.com +ayidada.com +ayijx.com +ayilaile.com +ayjs.net +ayqy.net +ayrbs.com +ayuren.com +ayurumen.com +ayushan.com +ayux.net +ayxbk.com +ayxz.com +azber.com +azbingxin.com +azchcdna.com +azchcdnb.com +azchcdng.com +azchcdnj.com +azchcdnm.com +azfashao.com +azg168.com +azhimalayanvh.com +azhituo.com +azhjt.com +azooo.com +azoyacdn.com +azoyagroup.com +azurew.com +azureyun.com +azycjd.com +azyx.com +azz.net +b-chem.com +b-eurochina.com +b-fairy.com +b086.com +b0w.me +b178.com +b1bj.com +b1qg.com +b1uew01f.net +b23.tv +b2b-builder.com +b2b.biz +b2b168.com +b2b168.net +b2b168.org +b2b179.com +b2b6.com +b2b98.net +b2baa.com +b2bic.com +b2bname.com +b2bneican.com +b2bvip.com +b2bvip.net +b2cedu.com +b2q.com +b355.cc +b35ii.com +b3inside.com +b5200.net +b5b6.com +b5esports.me +b5m.com +b612.me +b612kaji.com +b6ss.com +b780.com +b7l.cc +b8yx.com +ba-li.com +ba210.com +baaidu.com +baalchina.net +baba.cc +baba100.com +bababian.com +bababus.com +babaike.com +babaimi.com +babaipu.com +babao.com +babaofan.com +babapi.com +babariji.com +babaxiong.com +babeijiu.com +babidou.com +babidou.net +babihu.com +babsoft.net +baby-bus.com +baby169.net +baby577.com +baby611.com +baby868.com +babybus.com +babybus.org +babycdn.com +babyinhere.com +babymob.com +babymoro.com +babymozart.cc +babyqiming.com +babytree.com +babytreeimg.com +bacao8.com +bacaoo.com +bacaosh.com +bacic5i5j.com +backzero.com +bacocis.com +badls.com +badmintoncn.com +badouxueyuan.com +badu.com +badudns.cc +baertt.com +bafafafa.com +bafangjuhe.com +bafangka.com +bafangwang.com +bagb2b.com +bagesoft.net +bagevent.com +bagew.com +bageyalu.com +bags163.com +bagtree.com +bagualu.net +bagxs.com +bahens.com +bai.com +bai68.com +baibailai.com +baibaoyun.com +baibianwukong.com +baibianyishu.com +baibm.com +baibo8.com +baibu.com +baic-hs.com +baicai.com +baicaio.com +baicaiyouxuan.com +baicaosoft.com +baicells.com +baichanghui.com +baicheng.com +baichenginedu.com +baichuanhd.com +baichuanhudong.com +baicizhan.com +baicizhan.org +baiclouds.com +baicmotor.com +baicmotorsales.com +baicongjun.com +baicuoa.com +baidajob.com +baidao.com +baidd.com +baidenafu.com +baideye.com +baidinet.com +baidouya.com +baidu-360-yyy-kubo.com +baidu-int.com +baidu-itm.com +baidu-mgame.com +baidu-umoney.com +baidu-wenxue.com +baidu.cc +baidu.cm +baidu.com +baidu.jp +baidu.mobi +baidu.net +baidu.to +baidu1.com +baidu120.cc +baidu123.com +baidu521.com +baiduads.com +baidubaidubaidu.com +baidubaidubaidu.net +baidubce.com +baiduc.com +baiducdnku.com +baiducontent.com +baidudaquan.com +baidufe.com +baidufree.com +baiduhua.com +baidulook.com +baidunongmin.com +baiduonce.com +baiduor.com +baidupan.com +baidupcs.com +baidusobing.com +baidustatic.com +baidutab.com +baidutieba.com +baidutt.com +baiduux.com +baiduv.com +baiduwebgame.com +baiduwpan.com +baiduyun.com +baiduyun.wiki +baiduyundns.com +baiduyundns.net +baiduyunpan.com +baiduyunsousou.com +baiduyy.com +baiduzjn.com +baieryk.com +baietu.com +baifan.net +baifendian.com +baifubao.com +baifumeiba.com +baigepo.com +baigeseo.com +baigm.com +baigo.net +baigongbao.com +baihe.com +baiheee.com +baihei.net +baihephoto.com +baihexs.com +baihong.com +baihui.com +baihuikangjt.com +baihuillq.com +baihuoke.com +baihuwang.com +baiila.com +baiinfo.com +baijiacloud.com +baijiahulian.com +baijiasheping.com +baijiayun.com +baijiegroup.com +baijiekj.com +baijiexiu.com +baijincdn.com +baijindai.com +baijingapp.com +baijiu88.com +baijob.com +baijunyao.com +baikalminer.com +baike.biz +baike.com +baiked.com +baikemy.com +baikemy.net +baikezh.com +bailiaijia.com +bailiangroup.com +bailiban.com +bailiguangmang.com +bailitech.com +bailitop.com +bailuqixiu.com +baima.com +baimao-expo.com +baimao.com +baimaohui.net +baimda.com +baimei.com +baimg.com +baimiaoapp.com +baimin.com +baina.com +bainaben.com +baineng.cc +baiozhuntuixing.com +baipu365.com +baiqiaogame.com +baiqishi.com +baiquandai.com +baiquefahuasi.com +baironginc.com +bairuitech.com +baise520.com +baiseyun.com +baishakm.com +baishan-cloud.com +baishan.com +baishancloud.com +baishancloud.org +baishangeek.com +baishicha.com +baishishuju.com +baishixi.xyz +baishudata.com +baishunet.com +baisiker.com +baisu.com +baitaihuge.com +baiteng.org +baithu.com +baitianinfo.com +baitiao.com +baituibao.com +baiu.com +baiud.com +baiudu.com +baiven.com +baiwandz.com +baiwang.com +baiwantuan.com +baiwutong.com +baixiangxiang.com +baixiaosheng.net +baixing.com +baixing.net +baixingcdn.com +baixingfanli.com +baixingjd.com +baixingmall.com +baixingzixun.com +baixiong.online +baixiongz.com +baixiu.org +baiyangwang.com +baiye5.com +baiyewang.com +baiyi181.com +baiyiba.com +baiyinggd.com +baiyingtx.com +baiyintouzi.com +baiyjk.com +baiyou100.com +baiyouo.com +baiyu.tech +baiyuemi.com +baiyunairport.com +baiyundou.net +baiyuno.com +baiyunxitong.com +baiyuxiong.com +baizhan.net +baizhanke.com +baizhenzhu.com +baizhibest.com +baizhiedu.com +baizhixx.com +baizhu.cc +bajiebofang.com +bajiecaiji.com +bajiege.com +bajiehechuang.com +bajintech.com +bajiu.org +bakaawt.com +bakaxl.com +bakbitionb.com +bakchoi.com +bala.cc +baldc.com +baletu.com +balijieji.com +ballgametime.com +ballpure.com +balltv.cc +bama555.com +bamaiwo.com +bamaol.cc +bamaol.com +bamatea.com +bamaying.com +bamboo18.com +bamenzhushou.com +bamuyu.com +bananalighter.com +bananau.com +bananaumbrella.com +bananaunder.com +banbaise.com +banbao123.com +banbaowang.com +banbf.com +banciyuan.me +bandaoningmeng.com +bandari.net +bandcevent.com +bandenghui.com +bandengw.com +bandianli.com +bandoristation.com +bandubook.com +banfubbs.com +banfuzg.com +bangbang.com +bangbang93.com +bangbangbang.wang +bangbangrent.com +bangboss.com +bangcle.com +bangdao-tech.com +banggo.com +banghaiwai.com +bangirls.com +bangkebao.com +banglianai.com +bangmai.com +bangnixia.com +bangongdashi.com +bangongyi.com +bangongziyuan.com +bangqi66.com +bangqiu.biz +bangqu.com +bangquan.net +bangrong.com +bangshouwang.com +bangthink.com +bangwo8.com +bangwo8.net +bangxuetang.com +bangyike.com +bangzechem.com +bangzhufu.com +banht.com +banjiajia.com +banjiamao.com +banjuanshu.com +bank-of-china.com +bank-swift-code.info +bankcomm.com +bankcomm.com.mo +bankcomm.com.tw +bankcz.com +bankgz.com +bankhr.com +bankkf.com +bankksw.com +bankofbbg.com +bankofchangsha.com +bankofchina.com +bankofdl.com +bankofliaoyang.net +bankofshanghai.com +bankoftieling.com +bankofyk.com +bankpublish.com +banksteel.com +bankyy.net +banluyoulian.com +banma-inc.com +banma.com +banmajsq.com +banmamedia.com +banmasrf.com +banpie.info +banqumusic.com +banri.me +bansha.com +banshier.com +bantangapp.com +bantangbuy.com +banwagong.men +banwojia.com +banxiayue.com +banyou.la +banyuetan.org +banyuetanxcx.com +banyunjuhe.com +banzou.name +banzouku.com +bao-cun.com +bao-fang.com +bao-hulu.com +bao-jian.net +bao100.com +bao12333.com +bao21.com +bao315.com +bao369.com +baobao.com +baobao001.com +baobao18.com +baobao88.com +baobaobang.com +baobaoshu.com +baobei360.com +baobeicang.com +baobeigezi.com +baobeihr.com +baobeihuijia.com +baobeita.com +baobeituan.com +baobidai.com +baocai.com +baocdn.com +baodan360.com +baodaohealth.com +baodaosz.com +baodaren.net +baodigs.com +baodingmeishi.com +baodingtrade.com +baodu.com +baofeng.com +baofeng.net +baofeng365.com +baofengcinema.com +baofengtuandui.com +baofengzixun.com +baofoo.com +baofoo.net +baofu.com +baogang.info +baogao.com +baogao.store +baogaoting.com +baoge.net +baoguangsi.org +baohebao.com +baohuagroup.com +baoimg.net +baojia.com +baojianpu.com +baojiazhijia.com +baojidaily.com +baojiehang.com +baojijob.com +baojinews.com +baojinling.com +baojunev.com +baokan.name +baokan.tv +baoku.com +baokuandi.com +baokutreasury.com +baolaina.cc +baoltx.com +baomi.com +baomi365.com +baomihua.com +baoming.com +baomitu.com +baoqin.com +baoqingvip.com +baoruan.com +baoshe.net +baoshuanglong.com +baoshuiguoji.com +baoshuo.ren +baosiair.com +baosight.com +baosteel.com +baostock.com +baotime.com +baotoushizx.com +baotuba.com +baowu.com +baowugroup.com +baoxian.com +baoxianhai.com +baoxianshichang.com +baoxianzx.com +baoxiaobar.com +baoxinleasing.com +baoxinwen.com +baoxuexi.com +baoyang1.com +baoyang888.com +baoyangcs.com +baoyatu.cc +baoyeah.com +baoyou5.net +baoyt.com +baoyung.com +baoyuntong.com +baoyz.com +baoz.net +baozang.com +baozha.net +baozhayun.cloud +baozhenart.com +baozheng.cc +baozhilin.com +baozhuang.biz +baozhuang5.com +baozhuangren.com +baozifa.com +baozipu.com +baozou.com +baozoudi.com +baozoumanhua.com +baozouribao.com +baozy.com +baping.com +baqima.com +baqiu.com +baquge.com +baquge.tw +barmap.com +baron-bj.com +barretlee.com +bartender.cc +base64.us +base9174.com +basecity.com +basemu.com +basequan.com +basestonedata.com +bashan.com +bashuhuapai.com +bashuku.com +basiccat.org +basicfinder.com +bastengao.com +bat120.com +bathome.net +batian.net +batmanit.com +batplay.com +batpool.com +battery-cert.com +batterydir.com +batterykey.com +battleofballs.com +baudu.com +baufortune.com +bauschlombchina.com +bawagon.com +bawanglongbengye.com +baxi.tv +baxiami.com +baxichina.com +baybox.club +baydn.com +baye.tech +bayescom.com +bayimob.com +bayinfu.com +bayinh.com +bayinmao.com +bayuegua.com +bayueju.com +bayueweb.com +bayunhome.com +bayxs.com +bazaarjewelrychina.com +bazai.com +bazhan.com +bazhou.com +bazhua.me +bazhuay.com +bazhuayu.cc +bazhuayu.com +bazi.cloud +bazi5.com +bazp.net +bb-edu.com +bb-game.com +bb-pco.com +bb-seo.com +bb06.com +bb179.com +bbanp.com +bbaod.com +bbaqw.com +bbb77qqq.xyz +bbbaaa.com +bbbao.com +bbbb.com +bbbbbb.me +bbbtgo.com +bbbvip.com +bbcmart.com +bbcss.com +bbctop.com +bbcyw.com +bbdservice.com +bbdup.com +bbdzj.com +bbercn.com +bbfstore.com +bbgsite.com +bbgstatic.com +bbicn.com +bbioo.com +bbiquge.com +bbjkw.net +bbk.com +bbkantu.com +bbmar.com +bbmy.net +bbobo.com +bbonfire.com +bbped.com +bbpose.com +bbqe.com +bbqk.com +bbqmw.net +bbrtv.com +bbs-go.com +bbs1x.net +bbsaso.com +bbsds.com +bbse03.com +bbsheji.com +bbsls.net +bbsmax.com +bbsnet.com +bbsut.com +bbsxp.com +bbtang.info +bbtcaster.com +bbtkid.com +bbtree.com +bbtw.net +bbugifts.com +bbwfish.com +bbwxbbs.com +bbxinwen.com +bbytpjm.com +bbzhh.com +bbzhi.com +bbzplhy.com +bc12345678.com +bcactc.com +bcadx.com +bcb5.com +bcbanzou.com +bcbm55555.com +bcbm66666.com +bcbm688.com +bcbpm.com +bcbvi.com +bccbcdf6shjm.com +bccfw.com +bccn.net +bccnsoft.com +bccv.com +bcczbj.com +bcdaren.com +bcdy.net +bceapp.com +bcebos.com +bcedns.com +bcedns.net +bcedocument.com +bcegc.com +bceimg.com +bcelive.com +bcevod.com +bcitb.com +bcjy123.com +bclsw.com +bcmcdn.com +bcmeng.com +bcoderss.com +bcpcn.com +bcrealm.com +bcreat.com +bcrjl.com +bcsec.org +bcsytv.com +bctest.com +bctmo.com +bcty365.com +bcvbw.com +bcweibo.com +bcwhy.com +bcwxfy.com +bcxgame.com +bcxww.com +bcy.net +bcyimg.com +bczcdn.com +bczs.net +bczx.cc +bd-apaas.com +bd-caict.com +bd-film.cc +bd-film.co +bd-film.com +bd001.net +bd2020.com +bd689.com +bdall.com +bdapark.com +bdatu.com +bdc-rays.com +bdchina.com +bdcloudapi.com +bdclouddns.com +bdf2.com +bdf304.com +bdfkb.com +bdfzcd.net +bdfzgz.net +bdfzxj.net +bdgslb.com +bdhaoye.com +bdhuakan.com +bdi.pub +bdimg.com +bdinfo.net +bditong.com +bdkssc.com +bdkyr.com +bdmp4.com +bdpan.com +bdqn027.com +bdqn666.com +bdqnwh.com +bds-cn.com +bdsgps.com +bdshuang.com +bdsimg.com +bdstar.com +bdstatic.com +bdstatlc.com +bdsye.com +bdtic.com +bdtjs.org +bdtm.net +bdurl.net +bdwater.com +bdwm.net +bdwork.com +bdx100.com +bdxdnj.com +bdxhj.com +bdxiaodai.com +bdxiguaimg.com +bdxiguastatic.com +bdxiguavod.com +bdxx.net +bdydns.com +bdydns.net +bdys.me +bdysite.com +bdyxzx.com +be-xx.com +be90.com +beacons.gcp.gvt2.com +beacons.gvt2.com +beacons2.gvt2.com +beacons3.gvt2.com +beadwallet.com +bear20.com +bearad.com +bearead.com +beargoo.com +bearjoy.com +bearminers.xyz +bearrental.com +bearyboard.com +bearychat.com +beasure.com +beats-digital.com +beatu.net +beautifullinux.com +beautifulzzzz.com +beautydiarytw.com +bechangedt.com +bedtimepoem.com +beduu.com +bee-ji.com +bee-net.com +beebeepop.com +beebeeto.com +beecook.com +beedancing.com +beego.me +beejson.com +beekka.com +beelink.com +beemarket.tv +beep365.com +beeplay123.com +beervm.club +beervm.xyz +beeshow.tv +beestor.com +beestore.tv +beeui.com +beevideo.tv +beeweart.com +begcl.com +begindcc.com +bego.cc +begoto.com +begowin.com +begup.com +behake.com +behe.com +bei1688.com +beian88.com +beianapi29.com +beianapi30.com +beianidc.com +beianw.net +beibaozq.com +beibei.com +beibeicdn.com +beibj.com +beicdn.com +beichenzheng.net +beidahuang.net +beidamusic.com +beidasoft.com +beidd.com +beidian.com +beidoou.com +beidou.org +beidou66.com +beidouone.com +beidousafety.org +beidousj.com +beidouxingxueche.com +beieryouxi.com +beifabook.com +beifang.net +beifangfoshifen.com +beifangyanxue.net +beifeng.com +beifengwang.com +beifuni.com +beiguorc.com +beihai365.com +beihaidc.com +beihaiting.com +beihuasoft.com +beiidc.com +beijing-hmo.com +beijing-hualian.com +beijing-ip.com +beijing-kids.com +beijing-marathon.com +beijing-time.org +beijing120.com +beijingbang.com +beijingbaomu.com +beijingcenterforthearts.com +beijingfenxiangkeji.com +beijingidc.com +beijingkbd.com +beijingnorthstar.com +beijingoperacats.com +beijingrc.com +beijingrc.net +beijingrenyi.com +beijingsheying.net +beijingtongxin.com +beijingtoon.com +beijingwenshendian.com +beijingxinzhuoyue.com +beike21.com +beikeapp.com +beikeba.com +beikeit.com +beikeread.com +beikongyun.com +beileike.com +beiliangshizi.com +beimai.com +beimeigoufang.com +beimeihongfeng.com +beimu.com +beingmate.com +beipy.com +beisen.com +beisencorp.com +beitaichufang.com +beitao8.com +beitown.com +beiwaibest.com +beiwaiclass.com +beiwaiguoji.com +beiwaionline.com +beiwaiqingshao.com +beiweigroup.com +beiwo.com +beiwo.tv +beiww.com +beixingmh.com +beiyanmaoyi.com +beiying.online +beiyongzhan.com +beiyuu.com +beiyxiu.com +beizengtech.com +beizi.biz +beizigen.com +beiziman.com +bej9.com +bejoin.net +bejson.com +belfone.com +belle8.com +belmeng.com +beltandroadforum.org +beltxman.com +bemfa.com +bemhome.com +bemyceo.com +benbenlong.xyz +benbenq.com +benber.com +benbun.com +bendibao.com +bendiw.cc +benellimotor.com +bengbeng.com +bengchedaquan.com +bengden.com +bengfa.biz +benghuai.com +bengku.com +bengou.com +bengtie.com +benhu.cc +benhu01.com +beniao.com +benimg.com +benkejieye.com +benkua.com +benlai.com +benlailife.com +benmu-health.com +bensedl.com +benseshijue.com +benshouji.com +benyh.com +benyouhui.com +benzhb.com +benzhibbs.com +benztu.com +bepal.pro +bequgew.com +bequgezw.com +berlinchan.com +berlinix.com +berqin.com +berrl.com +berrydigi.com +berryol.com +berui.com +bes.ren +besg-bee.com +beshtech.com +bessystem.com +best-inc.com +best-intl-school.com +best100design.com +best66.me +best73.com +bestapp.us +bestatic.com +bestb2b.com +bestbaijiu.com +bestbeibao.com +bestcake.com +bestcdn.vip +bestcem.com +bestcovered.com +bestdjb.com +bestdo.com +bestdvd.com.tw +bestebookdownload.com +bestechnic.com +bestedm.net +bestedm.org +bestexpresser.com +bestfangchan.com +bestfuturevip.com +bestgo.com +besticity.com +bestinwo.com +bestjy.net +bestlee.net +bestmephoto.com +bestopview.com +bestpay.net +bestpeng.com +bestqliang.com +bestshinhwa.com +bestsign.info +bestsign.tech +bestsrc.com +bestswifter.com +besttoneh.com +besttrav.com +bestv6.com +bestvapp.com +bestvist.com +bestwa.com +bestwehotel.com +bestweshop.com +bestzone.org +bet007.com +betaflare.com +betaidc.com +betajy.com +betamao.me +betawm.com +betazixun.com +betop-cn.com +betop365.com +bettbio.com +betteredu.net +betterzip.net +betterzipcn.com +beva.com +bevol.com +bewellbio.com +beyebe.com +beyondbit.com +beyondcompare.cc +beyondcomparepro.com +beyondfund.com +beyonditsm.com +beyonds.com +beyoner.net +bf-z.com +bf35.com +bf92.com +bfcmovie.com +bfdcdn.com +bfdfe.com +bffzb.com +bfimg.com +bfjjw.com +bfjr.com +bfqh.com +bfqifu.com +bfsu-artery.net +bfsutw.com +bftq.com +bfttiao.com +bftv.com +bfvyun.com +bfw.cc +bfyx.com +bfyx.net +bfzhuce.com +bg.v4.a.dl.ws.microsoft.com +bg4.v4.a.dl.ws.microsoft.com +bgbk.org +bgc5.com +bgctv.com +bgcyygl.com +bgdeco.com +bgee.cc +bggd.com +bgk100.com +bgl88.com +bgmfans.com +bgmgw.com +bgmlist.com +bgren.com +bgrimm.com +bgsdk.net +bgsdyz.com +bgteach.com +bguai.com +bgwl.net +bgyfhyx.com +bgyjr.com +bh.sb +bh1t.com +bh3.com +bh4dks.com +bh5.com +bh8sel.com +bhdata.com +bhdns.net +bhfangchan.com +bhgmarketplace.com +bhgxq.com +bhhgallery.com +bhjck.com +bhjysp.com +bhk.mobi +bhnsh.com +bhpiano.com +bhrencai.com +bhuitong.com +bhxww.com +bhzhu203.com +bhzhuji.com +bhzpw.com +bhzyxy.net +biacgn.com +bian-min.com +biancheng.net +biancui.com +bianews.com +bianfeng.com +bianhao6.com +bianjibu.net +bianjiqi.net +bianjiyi.com +bianlidianjiameng.net +bianlifeng.com +bianlun.net +bianmachaxun.com +bianpingyou.com +biantaishuo.com +bianwa.com +bianwanjia.com +bianxianmao.com +bianxianwu.com +bianzhia.com +bianzhihui.com +bianzhile.com +bianzhirensheng.com +biao12.com +biaodan.info +biaodiancloud.com +biaodianfu.com +biaoge.com +biaoge.me +biaoju01.com +biaonimeia.com +biaoniu.net +biaopeibao.com +biaoqing.com +biaoqing233.com +biaoqing888.com +biaoqingjia.com +biaoqingmm.com +biaotukeji.com +biaoyi.com +biaoyu.org +biaozhiku.com +biaozhun.org +biaozhun8.com +biaozhuncang.com +biaozhuns.com +biaozhunyisheng.com +biask.com +bibenet.com +bibgame.com +bibibi.net +bibiku.com +bibitie.com +biblibili.com +bibuzhengxing.com +bicn.vip +bid-view.com +bidchance.com +biddingos.com +biddingx.com +bidemi.com +bidewu.com +bidianer.com +bidingxing.com +bidns.net +bidu.com +biduo.cc +biduobao.com +biduowu.com +biduoxs.com +bidwhy.com +biebird.com +biede.com +biedoul.com +bieshu.com +bietongfeng.com +bieyangapp.com +bifabu.com +bifeige.com +bifong.com +big-bit.com +big-shanghai.com +bigaaa.net +bigaka.com +bigan.net +bigbaicai.com +bigbenmeng.com +bigbigsun.com +bigbigwork.com +bigc.at +bigcat.com +bigda.com +bigdata-expo.org +bigdata.ren +bigdatabbs.com +bigdatabuy.com +bigdataedu.org +bigdatasafe.org +bigdatastudy.net +bigdiao.cc +bigecko.com +bigehudong.com +bigemao.com +bigengculture.com +bigeniao.com +bigerdata.com +bigertech.com +bigeshuju.com +bigeyes.com +biggerlens.com +biggeryun.com +biggsai.com +bigherdsman.com +bightbc.com +bigjpg.com +bigma.cc +bigniu.com +bignox.com +bigops.com +bigplayers.com +bigqiao.com +bigrnet.com +bigsec.net +bigtree.mobi +biguo100.com +biguolunwen.com +bigwayseo.com +bigwinepot.com +bigwww.com +bigxiao.com +bigzhong.com +bigzhu.com +bihongbo.com +bihoo.com +bihu-static.com +bihu.com +bihubao.com +bii-erg.com +biikan.com +biji.io +biji13.com +bijiago.com +bijiao.org +bijiasso.com +bijiatu.com +bijienetworks.com +bijirim.com +bijixia.net +bikecool.com +bikehome.net +biketo.com +biketour-giant.com +biknow.com +bilezu.com +bili.com +biliapi.com +biliapi.net +bilibii.com +bilibili.cc +bilibili.co +bilibili.com +bilibili.ru +bilibiligame.net +bilibilihelper.com +bilibilijj.com +bilibiliyoo.com +bilicdn1.com +bilicdn2.com +biligame.com +biligame.net +bilihot.com +biliimg.com +bilimoe.com +bilingling.com +bilinstar.com +bilive.com +bilivideo.com +biliyu.com +bill-jc.com +billchn.com +billionconnect.com +billionseo.com +billowlink.com +billwang.net +bilnn.com +bim-times.com +bim99.org +bimcn.org +bimo.cc +binaryai.net +binaryai.tech +binbinyl.com +bincailiuxue.com +binfen.tv +binfenyingyu.com +bing400.com +bingbing8.com +bingbingyy.com +bingchengwang.com +bingd.com +bingdian001.com +bingdian01.com +bingdong700.com +bingguner.com +binglai.net +binglanggu.com +binglingtech.com +binglixue.com +bingofresh.com +bingohuang.com +bingqipu.net +bingsin.com +bingsns.com +bingtuannet.com +bingwang.cc +bingyan.net +bingzhilv.com +binkery.com +binmt.cc +binmtplus.com +binpang.me +binqsoft.com +binstream.live +binuoniu.com +binvul.com +binyin.com +binzhi.com +binzhouquan.com +binzhuang.com +bio-equip.com +bio-fuyang.com +bio-review.com +bio360.net +bioberi.com +biocloud.net +biocome.com +biodiscover.com +biodiscover.net +biogo.net +biohyalux.com +bioktech.com +biolab.xyz +bionav.cc +bioon.com +bioon.net +biosren.com +biosrepair.com +biostatistic.net +biotecan.com +bipush.com +bipvcn.com +biqiga.com +biqige.cc +biqigewx.com +biqiudu.com +biqiuge.com +biqiwu.com +biqu6.com +biquan.link +biqubao.com +biqubu.com +biqudd.com +biqudu.com +biqudu.net +biqudu.tv +biqufu.com +biquge.biz +biquge.info +biquge.la +biquge.lu +biquge.vip +biquge0.cc +biquge11.com +biquge5200.cc +biquge5200.com +biquge8.com +biquge9.cc +biquge99.cc +biqugebook.com +biqugee.com +biqugeg.com +biqugemm.com +biquger.com +biquges.com +biqugetv.com +biqugew.com +biqugewx.com +biqugex.com +biqugexs.com +biqugexs.la +biqugexsw.com +biqugexsw8.com +biqugexx.com +biqugg.com +biqugu.net +biquguan.com +biqukan.com +biquke.com +biquku.co +biquku.la +biqulou.net +biquluo.com +biqumo.com +biqupai.com +biququ.com +biqusa.com +biqushu.com +biqusoso.com +biquter.xyz +biqutxt.com +biquw.com +biquwo.com +biquwu.cc +biquwx.la +biquyue.com +biquyun.com +biransign.com +bird4d.com +birdbro.com +birdol.com +birdpush.com +bisairi.com +bisenet.com +bishe1234.com +bishen.ink +bishengoffice.com +bisheziliao.com +bishijie.com +bishoujo.moe +bitauto.com +bitautoimg.com +bitautotech.com +bitbank.com +bitbays.com +bitbili.net +bitbug.net +bitcellulose.com +bitcongress.com +bitcron.com +bitdata.pro +bitdefender-cn.com +biteabc.com +bitecoin.com +biteedu.com +bitekou.com +bitell.com +bitett.com +bitetui.com +bitfish8.com +bitgo.cc +bitgo.net +bitguai.com +bithosts.net +bithub00.com +bitjia.com +bitky.cc +bitmain.vip +bitmap.cc +bitmap3d.com +bitmingw.com +bitol.net +bitqiu.com +bitscat.org +bitscn.com +bitscn.net +bitsde.com +bitse.com +bitsqa.com +bitu360.com +bitvh.com +biubiu.tv +biubiu001.com +biubiubiu.org +bivean.com +biwanshequ.com +bixiabook.com +bixiaobai.com +bixiaxs.net +bixingxing.com +bixinlive.com +bixishang.com +bixu.cc +bixu.me +bixueke.com +biyabi.com +biyage.com +biyangwang.com +biyao.com +biye.net +biye666.com +biyebi.com +biyele.com +biyelunwenjiance.com +biyi.net +biyidc.com +biyingniao.com +biyinjishi.com +biymx.com +biyong007.com +biyoshop.com +biyou.tech +biyoujz.com +biyuns.com +biyuwu.cc +biz-east.com +biz178.com +biz72.com +bizcent.com +bizchallenge.net +bizcharts.net +bizcn.com +bizconfstreaming.com +bizgame.com +bizhi360.com +bizhi88.com +bizhicool.com +bizhidaquan.com +bizhimi.com +bizhiquan.com +bizhitupian.com +bizhizj.com +bizhongchou.com +bizmoto.com +biznewscn.com +bizopsmall.com +bizpai.com +bizsn.com +bizsofts.com +bizvane.com +bj-apc.com +bj-big.com +bj-dianxintong.net +bj-dsmzyy.com +bj-ka.com +bj-kpn.com +bj-sagtar.com +bj-sea.com +bj-shouqi.com +bj-sydc.com +bj-tvart.com +bj-zhongying.com +bj-zkhb.com +bj-zywh.com +bj003.com +bj1.api.bing.com +bj1000e.com +bj148.org +bj159zx.com +bj1777.com +bj315.org +bj4066.com +bj51.org +bj5188.com +bj520.com +bj597.com +bj65z.com +bj96007.com +bjadn.net +bjaodidazhong.com +bjatv.com +bjbaodao.net +bjbeifangjx.com +bjbkh.net +bjbtfu.com +bjbus.com +bjbxg8.com +bjbywx.com +bjbzc.com +bjbzszxy.com +bjcae.com +bjcancer.org +bjcankao.com +bjcathay.com +bjcdc.org +bjcec.com +bjceis.com +bjcfzx.com +bjcgtrain.com +bjcifco.net +bjckkj.com +bjcls.net +bjcma.com +bjcoco.com +bjcomic.net +bjcshy.com +bjcsyg.com +bjcta.net +bjcurio.com +bjcxdf.com +bjcyzg.com +bjczxt.com +bjdachi.com +bjdbrc.com +bjdcfy.com +bjdfart.com +bjdfxj.com +bjdiaoyu.com +bjdingyi.com +bjdjc.com +bjdllti.com +bjdlzl.com +bjdongxin.com +bjdsppa.com +bjdt360.com +bjeasycom.com +bjepn.com +bjertong999.com +bjewaytek.com +bjexmail.com +bjexx.com +bjffdz.com +bjffkj.com +bjfsali.com +bjfwbz.org +bjfyw.org +bjg.ink +bjgas.com +bjgemi.com +bjggk.com +bjglxf.com +bjgnjdwx.com +bjgongteng.com +bjgujibaohu.com +bjgwy.org +bjhaiguang.com +bjhdnet.com +bjheadline.com +bjhee.com +bjhengjia.net +bjhj10000.com +bjhmdy.vip +bjhmxx.net +bjhouse.com +bjhrkc.com +bjhscx.com +bjhszp.com +bjhtx.com +bjhtzsgs.com +bjhwbr.com +bjhzkq.com +bjiab.com +bjicjm.com +bjidc.net +bjidit.com +bjinternet.com +bjipwqzx.com +bjiwex.com +bjjbsj.com +bjjchf.com +bjjdwx.com +bjjf.cc +bjjfsd.com +bjjhcczgs.com +bjjhwlgs.com +bjjihui.com +bjjiubo.com +bjjkglxh.org +bjjlyl.com +bjjnzf.com +bjjqzyy.com +bjjtat.com +bjjubao.org +bjjzsc.com +bjjzzpt.com +bjk30.com +bjkaihua.com +bjkaihua.net +bjkhzx.com +bjkqj.com +bjkrtwl.com +bjksd120.com +bjl777.com +bjlcs-tech.com +bjlemon.com +bjlevsoft.com +bjlkhd.net +bjlmfq.com +bjlongview.com +bjlot.com +bjlyw.com +bjmailqq.com +bjmama.com +bjmama.net +bjmantis.net +bjmcdh.com +bjmeikao.com +bjmeileju.com +bjmingdi.com +bjmjm.com +bjmslp.com +bjmti.com +bjmyw.com +bjnaxl.com +bjnsr.com +bjp321.com +bjpowernode.com +bjqcjdcj.com +bjqh.org +bjqhgjj.com +bjqichezl.com +bjqingyang.com +bjqyjjlb.com +bjrc.com +bjrcb.com +bjrdhx.com +bjrel.com +bjretech.com +bjreview.com +bjrhxp.com +bjrjgj.com +bjrmysjy.com +bjrtcdn.com +bjrun.com +bjry.com +bjsantakups.com +bjsasc.com +bjsbnet.com +bjscfl.com +bjscivid.org +bjsclp.com +bjscp.com +bjscszh.com +bjsctx.com +bjsdfz.com +bjsdr.org +bjsfrj.com +bjshcw.com +bjsheng.com +bjshijiyu.com +bjsidao.com +bjsjob.com +bjsjwl.com +bjsjxtm.com +bjsly.com +bjsmc.com +bjsoho.com +bjsound.com +bjsoyo.com +bjspw.com +bjsqgy.com +bjsryc.com +bjssedu.com +bjsspm.com +bjssqt.com +bjsubway.cc +bjsubway.com +bjsuewin.com +bjsupor.com +bjswds.org +bjsxt.com +bjsyqw.com +bjszhd.net +bjtata.com +bjtcf.com +bjtelecom.net +bjtitle.com +bjtjr.net +bjtjw.net +bjtjzx.com +bjtlky888.com +bjtobacco.com +bjtonghui.com +bjtopli.com +bjtth.org +bjttsf.com +bjtvnews.com +bjtysd.net +bjtyzh.org +bjunionstar.net +bjuri.com +bjwanjiabao.com +bjweimob.com +bjweizhifu.com +bjwfz.com +bjwhds.com +bjwkzl.com +bjwsk.com +bjwsyy.com +bjwszyxy.com +bjwwhc.com +bjwxhl.com +bjwyseo.com +bjxatq.com +bjxf315.com +bjxiangxiu.com +bjximei.com +bjxinku.com +bjxinyou.com +bjxjyy666.com +bjxwx.com +bjxx.vip +bjxx8.com +bjxydh.com +bjxztqn.com +bjyah.com +bjyczb.com +bjydzy.com +bjyestar.com +bjyhwy.com +bjyqsj.com +bjythd.com +bjyunyu.com +bjywt.com +bjzaxy.com +bjzbkj.com +bjzcha.com +bjzcth.com +bjzg.org +bjzghd.com +bjzgxr.net +bjzhishi.com +bjzhongxinjiancai.com +bjzhongyi.com +bjzjgyl.com +bjzkhs.com +bjzklp.com +bjzmkm.com +bjznnt.com +bjzph.com +bjzqcbook.com +bjzqw.com +bjzs114.com +bjzwzx.com +bjzxcp.com +bjzycd.com +bjzyrxgs.com +bk41.net +bk5u.com +bkclouds.cc +bkdou.com +bkill.net +bkjk-inc.com +bkjpress.com +bkn.cc +bkpcn.com +bkqq.com +bkweek.com +bkxs.net +bkzzy.com +bl.com +bl35.org +bl9k.com +bla01.com +black-unique.com +blackbirdsport.com +blackdir.com +blackeep.com +blackh4t.org +blackmailedslave.com +blackshark.com +blackshow.me +blackswancake.com +blackxl.org +blackyau.cc +blackzs.com +bladewan.com +blakat.cc +blangel-tool.com +blazefire.com +blazefire.net +blbx.com +blctwed.com +bld-hotel.com +bldimg.com +bldz.com +bleege.com +blemall.com +blendercn.org +blenderget.com +blessedbin.com +bliao.com +blibee.com +blibee.net +blimage.com +bliner.me +blingabc.com +blingclubs.com +blinkol.com +blissmall.net +blizzardcn.com +blkkj.com +bln7.com +bln8.com +block288.com +blockchain.hk +blockchain123.com +blockchainbrother.com +blockchainlabs.org +blockdao.net +blockflow.net +blockmeta.com +blockob.com +blocrepresents.com +blog.htc.com +blog007.com +blog120.com +blog1984.com +blogbus.com +blogchina.com +blogchinese.com +blogcn.co +blogdriver.com +bloger.wang +blogfeng.com +blogfshare.com +bloggern.com +blogjava.net +bloglegal.com +blogqun.com +blogturn.com +blogways.net +blogxuan.com +bloomgamer.com +bloves.com +blpack.com +blqx.com +blqy.com +blskye.com +blszhifa.com +blue-city.com +blue-zero.com +bluebeebox.com +bluecefa.com +blued.com +bluedon.com +bluefeel.com +bluefite.com +bluefocus.com +blueglass.vip +bluegq.com +bluehao.com +bluehn.com +blueidea.com +bluek.org +bluelettercn.org +bluelightfuse.com +bluelive.me +blueplus.cc +bluesdream.com +bluesharkinfo.com +blueshow.net +blueskykong.com +blueskyschool.net +blueskystudy.com +blueskyxn.com +blueslc.tech +bluestar-pc.com +bluestep.cc +blyol.com +blyun.com +bm001.com +bm023.com +bm2088.com +bm724.com +bm777777.com +bm8.tv +bm8885.com +bm999999.com +bmadx.com +bmatch.tech +bmc-medical.com +bmcx.com +bmdbr.com +bmdxcx.com +bmeol.com +bmfsm.com +bmijs.com +bmlink.com +bmobapp.com +bmobcloud.com +bmobpay.com +bmp.ovh +bmpj.net +bmqb.com +bmqy.net +bmrtech.com +bmshow.com +bmtcled.com +bmvps.com +bmw021.com +bmw143.com +bmw8033.com +bn016.com +bn13.com +bn54.com +bnapp.com +bnbcamp.com +bnbsky.com +bnbtrip.com +bnc66.com +bnchina.com +bncwork.com +bnhgsb.com +bnhshiguan.com +bnjyks.com +bnncn.com +bnnd.net +bnq86.com +bnqgsl.com +bnupg.com +bnwin.com +bnxb.com +bnzt88.com +bo-blog.com +bo-yi.com +bo56.com +boai.com +boanying.com +bob-cardif.com +bob-leasing.com +bob2012.com +bobaow.com +bobbns.com +bobcfc.com +bobcoder.cc +bobdirectbank.com +bobidc.com +bobiman.com +boblog.com +bobo.com +bobopic.com +bobopos.com +bobouny.com +bobtj.com +bocaidaka.com +boce.com +bocep2c.com +bocichina.com +bocim.com +bocomcc.com +bocommleasing.com +bocommlife.com +bocommtrust.com +bocsolution.com +bodchan.com +bodekang.com +bodimedia.net +bodoai.com +bodogqm.com +bodu.com +boduhappiness.com +boe.com +boertemc.com +bofangw.com +bofengkj.com +bofyou.com +bog.ac +bogokj.com +bohailife.net +bohaishibei.com +bohaiyun.com +bohe.com +bohuihe.com +bohutmt.com +boiots.com +bojianger.com +bojoy.net +bojun-import.com +bojuwang.com +bokanghui.net +bokao2o.com +boke.com +boke112.com +boke8.net +bokeboke.net +bokecc.com +bokecs.net +bokee.com +bokee.net +bokeren.cc +bokesoft.com +bokesoftware.com +bokeyz.com +bokhra.com +bolaa.com +bolan.net +bolaninfo.com +bolanjr.com +boldseas.com +bole.me +bolead.com +bolehu.net +boleihg.com +bolejiang.com +bolelink.com +boll.me +bolo.me +bolopp.com +bolq.com +boluo.com +boluo.link +boluo.org +boluogouwu.com +boluomee.com +boluomeet.com +boluoyunyu.com +bom.ai +bom2buy.com +bomanair.com +bomin-china.com +bon-top.com +bon-wine.com +bondlady.com +bongmi.com +bongv.com +bongwell.com +bonkee.net +bonnelivre.com +bonree.com +bonsj.com +bonwai.com +boobooke.com +booea.com +booeoo.com +boohee.com +book118.com +book1234.com +book365.net +book520.com +bookask.com +bookba.net +bookbook.in +bookdao.com +bookdown.net +bookersea.com +booking001.com +bookinlife.net +bookresource.net +books51.com +bookschina.com +bookshadow.com +bookshi.com +bookshoptw.com +bookshuku.com +booksky.cc +booksn.com +booktxt.com +booktxt.io +booktxt.net +bookuu.com +bookxnote.com +bookzx.org +boolan.com +boolaw.com +boole-tech.com +boolean93.com +boomsense.com +boonwin.com +boooba.com +boosj.com +boosyi.com +bootcdn.net +bootstrapmb.com +booyu-import.com +booz88.com +bopian.com +boqii.com +boqiicdn.com +boquxinxi.com +boraid.org +borderlessbd.com +borlonclan.com +borninsummer.com +bornlead.com +borpor.com +borscon.com +boruiqin.com +boruishijie.com +boruisx.com +boryou.com +bos.xin +bosdsoft.com +boseclub.com +bosenrui.com +bosera.com +bosera.com.hk +boshi.tv +boshika.com +boshixitong.com +boshiyl.com +boshungame.com +boshuo.net +bosideng.com +bosideng.me +bosideng.net +bosigame.com +bosondata.net +bosonnlp.com +boss-young.com +bosscdn.com +bossgoo.com +bosshr.com +bosszhipin.com +bosunman.com +botnet.cc +botongr.com +botorange.com +botslab.com +bottos.org +botui.ink +bounb.com +boweifeng.com +bowerp.com +bowin8.com +bowuku.com +bowuzhi.fm +boxgu.com +boxopened.com +boxuegu.com +boxueio.com +boxui.com +boxz.com +boy-toy.net +boy1818.com +boy1904.com +boyaa.com +boyaceo.com +boyais.com +boyamicro.com +boyasoftware.com +boyaxun.com +boydwang.com +boyicn.com +boyingsj.com +boyoucy.com +boyue.com +boyunso.com +boyuonline.com +bozhihua.com +bozhong.com +bphetaomiao.com +bpimg.com +bppan.com +bpqwxsh.com +bpsemi.com +bpteach.com +bpxxfw.com +bq04.com +bq233.com +bq8xs.com +bqatj.com +bqfy.com +bqg26.com +bqg5.cc +bqg8.cc +bqg8.la +bqgwu.com +bqgyy.com +bqiapp.com +bqimg.com +bql999.com +bqpoint.com +bqq8.com +bqrank.net +bqrdh.com +bqteng.com +bragood.com +braincf.com +brand4x4.com +brandcn.com +brandvista.com +brandzg.com +brbtyt.com +breadtrip.com +breakingnewsireland.com +breakyizhan.com +brentron.com +bricktou.com +bridge-image.com +bridgee.net +brighost.com +brightdairy.com +brightfood.com +brire.com +britesemi.com +brlinked.com +broad-ocean.com +broadcasteye.com +broadon.net +broadskytech.com +brogiao.com +bronzesoft.com +brother-cn.net +brother-movie.com +brother66.com +browurl.com +brsiee.com +brtbeacon.com +brtbeacon.net +bruce.wang +bruceit.com +brunoxu.com +brushes8.com +bryonypie.com +brzhang.club +bs-dolfin.net +bs008.com +bs56.net +bsbchina.com +bsbydd.com +bsccdn.com +bsccdn.net +bscdns.com +bscea.org +bscstorage.net +bsd4fz.com +bsdgco.com +bseas.com +bsgcnc.com +bsgslb.com +bsh-tech.com +bsh.com +bshaishu.com +bshare.com +bshjxxkj.com +bsida.com +bsidu.com +bsjhhzs.com +bsjquanwu.com +bsjuhui.com +bskk.com +bskrt.com +bskuav.com +bsmz.net +bspapp.com +bspeizi.com +bspia.com +bsrczpw.com +bsrkt.com +bssrvdns.com +bst24.com +bsteel.net +bstinfo.com +bstjiaoyu.com +bstzcs.com +bsurl.cc +bsyjrb.com +bsyxx.com +bt.cc +bt113.com +bt9527.com +btb8.com +btba.cc +btbat.com +btbctex.com +btbt.tv +btbt4k.com +btby-pump.com +btc114.com +btc116.com +btc1212.com +btc123.com +btc17.com +btc38.com +btc5.net +btc789.com +btcb.com +btcbbs.com +btcbl.com +btcha.com +btcsearch.com +btcside.com +btcsos.com +btcwatch.com +btdad.live +btdog.com +btdtech.net +btege.com +btgame.com +btgame01.com +btgang.com +btglotto.com +bthhotels.com +bthlt.com +bthss.com +bthuifu.com +btime.com +btmao.cc +btmayi.cc +btmeiju.com +btnotes.com +btoo3.com +btophr.com +btorange.com +btpig.com +btplay.net +btrcsc.com +bts.hk +btsabc.org +btschool.net +btsemi.com +btsha.com +btsmth.com +btsmth.org +btsou.org +btspreads.com +btsteel.com +btten.com +bttiantang.cc +bttiantang.com +btv.org +btvcd.net +btwob.net +btwuji.com +btxl8.com +btyou.com +btzhcc.com +buaaer.com +bubalusplus.com +bubugao.com +bubuko.com +bubukua.com +bubuol.com +bubuzheng.com +bucg.com +bucuo.me +bucuo100.com +budao.com +budao24.com +buddhalikedoge.com +budhano.com +buding.tv +budongnvren.com +budou.com +buduanwang.vip +buduobaobao.com +bufan.com +buffst.com +bug.im +bughd.com +bugku.com +bugnull.com +bugscan.net +bugscaner.com +bugsevent.com +bugtags.com +buguangdeng.com +bugucn.com +bugukj.com +bugumanhua.com +bugutime.com +bugwz.com +bugxia.com +buhuiwan.com +buhuyo.com +build-decor.com +buildface.com +buildhr.com +buildjob.net +buimg.com +bujie.com +bukamanhua.com +bukexue.com +bukeyi.net +bukop.com +bulaisi.com +bulaoge.net +bulejie.com +bullcome.com +bullmind.com +buluanmai.com +buluo007.com +bumimi.com +bumiu.com +bundpic.com +bunfly.com +bungalow54.com +bungba.com +bunze.com +buread.com +burgud.com +burl.cc +burnelltek.com +burongyi.com +buroniworks.com +buruizi.com +bus365.com +bus84.com +busbaoche.com +busdh.com +bushangban.com +bushen365.com +businessconnectchina.com +businessreviewglobal-cdn.com +busionline.com +busiphi.com +busiyi888.com +busnc.com +busytrade.com +but7.com +butair.com +buterp.com +butongshe.com +butonly.com +butterapis.com +buxia.net +buxiugangban.net +buy027.com +buy360.vip +buyanshufa.com +buyaocha.com +buybieshu.com +buycarcn.com +buychuan.com +buycoor.com +buyfine.net +buyhot.vip +buyigang.com +buyiju.com +buyinball.com +buyjk.com +buykee.com +buylabel.com +buysun.net +buysweet.com +buyu46.com +buzhi5.com +buzhibushi.com +buzzads.com +buzzinate.com +bvgv.com +bvimg.com +bvseo.com +bw1006.com +bw30yun.com +bw40.net +bw8848.com +bwae.org +bwangel.me +bwbot.org +bwchinese.com +bwda.net +bwfapiao.com +bwfhmall.com +bwgongye.com +bwgrt.com +bwhero.com +bwhgsb.com +bwie.net +bwjf.com +bwlc.net +bwmelon.com +bwptl.com +bwpx.com +bwsoft.net +bwv8.com +bwxsj.com +bx1k.com +bx24k.com +bx58.com +bxb2b.com +bxba.net +bxcc.vip +bxdaka.com +bxdlkj.com +bxfaka.com +bxgjyc.com +bxgtd.com +bxhaibao.com +bxjob.net +bxkejian.com +bxkxw.com +bxlac.com +bxnjmj.com +bxpedia.com +bxr.im +bxrfund.com +bxsnews.com +bxsychina.com +bxwst.com +bxwx.la +bxwx.org +bxwx.tv +bxwx.us +bxwx11.com +bxwx520.com +bxwx99.com +bxwxorg.com +bxxy.com +bxynzz.com +bxyuer.com +bxzhiku.com +bxzxw.com +by-health.com +by56.com +by6sx.com +bybbs.org +bybieyang.com +bybutter.com +bybzj.com +byc168.com +bycmw.com +byd.com +bydit.com +bydowstar.com +byete.com +byf.com +byfcw.com +byfen.com +byfuh.com +byfunds.com +byfzxy.com +bygamesdk.com +bygjhb.com +bygw.net +byhard.com +byhua.com +byi.pw +byjdxy.com +byjgxy.com +byjsjxy.com +byjzwh.com +byjzxy.com +bykjad.com +byloue.com +bylwcc.com +bylwjc.com +bymz.net +bynmc.com +bynsyh.com +byprxy.com +byqcxy.com +byr-navi.com +byr.cc +byr.wiki +byread.com +bysb.net +byshr.com +bysocket.com +bysxfz.com +bytcad.com +byte-gslb.com +byte.online +byte008.com +byteacctimg.com +bytebye.com +bytecdn.com +bytecdntp.com +byted-static.com +byted.org +bytedance.com +bytedance.net +bytedanceapi.com +bytedns.com +bytedns.net +bytedns1.com +bytednsdoc.com +byteedu.com +byteeffecttos.com +bytefae.com +bytefcdn.com +bytegecko.com +bytegoofy.com +bytegslb.com +bytehwm.com +byteimg.com +byteisland.com +bytelb.net +bytemaimg.com +bytemastatic.com +byteorg.com +byteorge.com +bytescm.com +bytesfield.com +bytesmanager.com +bytestacks.com +bytetcc.com +bytetos.com +bytexns.com +bytexservice.com +bytrip.com +byts.com +bytter.com +bytx888.com +bywave.io +byxx.com +byxy.com +byyapp.com +byzhihuo.com +byzlp.com +byzoro.com +byzp.com +bz-e.com +bz163.org +bz55.com +bzcm.net +bzcw8.com +bzd6688.com +bzdao.com +bzddrive.com +bzfwq.com +bzfxw.com +bzgd.com +bzgwl.com +bzkad.com +bzko.com +bzmfxz.com +bzname.com +bznx.net +bzonl.com +bzpc119.com +bzr99.com +bzrb.net +bzrnice.com +bzshw.com +bzsoso.com +bzw315.com +bzxinganghulan.com +bzxinwen.com +bzxz.net +bzxzk.net +bzzss.com +c-119.com +c-3.moe +c-c.com +c-canyin.com +c-cnc.com +c-ctrip.com +c-estbon.com +c-fol.net +c-lion.com +c-lodop.com +c-ps.net +c-sky.com +c-sz.com +c-t.work +c-yl.com +c.admob.com +c.android.clients.google.com +c.citic +c.team +c0594.com +c0ks.com +c1042.com +c1ass.com +c1s.com +c21wuhan.com +c2h4.org +c32356.com +c32869.com +c360dn.com +c366.com +c3acg.com +c3crm.com +c3player.com +c3x.me +c4008.com +c400c.cc +c4d.live +c4datc.com +c4dcn.com +c4dpro.com +c4dsky.com +c4hcdn.com +c4ys.com +c4yx.com +c50forum.com +c51rf.com +c53911.com +c571.com +c5game.com +c6c.com +c6n708.ren +c73160.com +c75uw72.com +c77c.com +c7c8.com +c7cc.com +c833.com +c9018.com +c969.com +c9cc.com +ca-sme.org +ca001.com +ca002.com +ca003.com +ca168.com +ca39.com +ca800.com +caaa-spacechina.com +caaad.com +caacbook.com +caacsri.com +caaladi.com +caanb.com +caasbuy.com +caasse.com +caayee.com +cabbagelol.net +cabbeen.com +cabee.org +cabhr.com +cabinetbuy.com +cableabc.com +cabling-system.com +cablingteam.com +cabplink.com +cacfo.com +cacg.cc +cache.pack.google.com +cachekit.com +cachepro.com +cachetime.com +cackui.com +cacpp.com +cacre.org +cacs100.com +cactifans.com +cactifans.org +cactmc.com +cad1688.com +cad8.net +cada.cc +cadcaecam.com +cadforex.com +cadict.net +cadmon.net +cadreg.com +cadzhuan.com +cadzj.com +cadzxw.com +caecc.com +caexpo.com +caexpo.org +cafachine.com +cafagame.com +cafamuseum.org +cafebeta.com +cafecole-maison.com +caffeenglish.com +cagesblog.com +cagetest.com +cageystone.com +cago365.com +cagoe.com +cahkms.org +cahuo.com +cai188.com +cai8.net +caian.net +caibaojian.com +caibaopay.com +caibeike.com +caibowen.net +caicaieat.com +caichongwang.com +caicui.com +caidan2.com +caidao1.com +caidao8.com +caidaocloud.com +caidaoli.com +caidian.com +caidianqu.com +caiens.com +caifu.com +caifuxingketang.com +caifuzhongwen.com +caigaowang.com +caigou2003.com +caigoubao.cc +caigoushichang.com +caiguayun.com +caihang.com +caihao.com +caihcom.com +caihezi.com +caihong360.com +caihong5g.com +caihongbashi.net +caihongqi.com +caihongtang.com +caihongto.com +caihuaw.com +caij100.com +caijing28.com +caijing365.com +caijingcaipiao22270.com +caijingche.com +caijingmen.com +caijingmobile.com +caijingwu.com +caijinyuan.com +caijixia.com +caijuanjuan.com +caiku.com +caikuai91.com +caikuan.net +cailele.com +cailianpress.com +cailiao.com +cailiaoniu.com +cailiaoren.com +cailol.com +cailongtong.com +cailutong.com +cailuw.com +caimai.cc +caimaovip.com +caimei365.com +caimogu.net +caimomo.com +cainachina.com +caing.com +cainiao.com +cainiaodoc.com +cainiaojc.com +cainiaojiaocheng.com +cainiaoqidian.com +cainiaoxueyuan.com +cainu.net +caipiaogu.com +caipintu.com +caipopo.com +caipucaipu.com +caipucn.com +caiqiuba.com +cairongquan.com +cairot.com +caisan.io +caishen66.com +caishencai.com +caishenpo.com +caishenwang.online +caishimv.com +caishuixxi.com +caistv.com +cait.com +caitlinbeverly.com +caitun.com +caiu8.com +caiweiming.com +caiwu51.com +caiwuchina.com +caixin.com +caixin021.com +caixinfoundation.org +caixun.com +caiyiduo.com +caiyun.com +caiyunai.com +caiyunapp.com +caiyunyi.com +caizhaowang.com +caizhihr.com +caj11.com +caj5.com +cake400.com +cake6.com +calawei.com +calculusdata.com +caldigit.net +cali-light.com +calibur.tv +callda.com +callmewhy.com +caloinfo.com +calorietech.com +calt.com +calvinneo.com +cambm.com +cambodiafang.com +cambricon.com +camcap.us +camcard.com +came-online.org +camelsee.com +camera360.com +camgle.com +camnpr.com +campanilechina.com +campus-app.net +campushoy.com +campusphere.net +campusplus.com +campusroom.com +camscanner.com +can-dao.com +can.tv +canaan-creative.com +canasy.com +cancda.net +candicebeverly.com +candou.com +candylab.net +candypay.com +candystars.net +canevent.com +canfire.net +cang.com +cangdu.org +cangfengzhe.com +cangnews.com +cangowin.com +cangpie.com +cangqiongkanshu.com +cangshui.net +cangshutun.com +cangtianbfq.com +cangya.com +canhighcenter.com +canhot.net +caniculab.com +canidc.com +canjiren.net +cankao100.com +cankaoxiaoxi.com +canlyn.com +canmounet.com +canon8.com +canpdu.com +canpoint.net +canrike.com +cansee.net +cansine.com +cansuan.com +cantoge.com +canvasf.com +canway.net +canwayit.com +canwaysoft.com +canxingmedia.com +canyin.com +canyin168.com +canyin2017.com +canyin375.com +canyin88.com +canyincha.com +canyincy.com +canyincy.net +canyinzixun.com +canyon-model.com +canyouchina.com +canyuanzs.com +canzhisz.com +caobao.com +caodan.org +caogen.com +caogen88.com +caohaifeng.com +caohejing.com +caohejing.org +caohua.com +caomeibook.com +caomeishuma.com +caomeixz10.xyz +caomin5168.com +caotama.com +caoxianfc.com +caoxie.com +caoxile.com +caoxiu.net +caoxudong.info +caoyudong.com +capillarytech-cn.com +capitalcloud.net +capitalonline.net +capjoy.com +capsuleshanghai.com +capvision.com +capwhale.com +car0575.com +car2100.com +car2sharechina.com +car365.org +car388.com +carben.me +carbonframe.com +carbonscn.com +carcav.com +carcdn.com +cardbaobao.com +cardcmb.com +cardcn.com +cardinfolink.com +cardniu.com +cardniudai.com +cardqu.com +care110.com +careerchina.com +careerqihang.com +careersky.org +careuc.com +cargeer.com +cargo001.com +carimg.com +carking001.com +carltonyu.com +carmov.com +carnegiebj.com +carnoc.com +carodpiano.com +carp56.com +carpela.me +carrobot.com +carrotchou.blog +carrotchou.com +carry6.com +cartoonwin.com +carutoo.com +carvendy.com +carxoo.com +carzd.com +carzyuncle.com +cas01.com +cas2s.com +casarte.com +casboc.com +casctcp.com +case91.com +casece.org +cashtoutiao.com +cashwaytech.com +cashzhan.com +casic-addsino.com +casic-amc.com +casic-t.com +casic.com +casic304.com +casic3s.com +casicloud.com +casicyber.com +casnb.com +casql.com +casqy.com +casszzy.com +castelu.com +casvino.com +casvm.com +casystar.com +cat898.com +catall.com +catalog-tj.com +catfish-cms.com +catguo.com +cathayagroup.com +cathayfund.com +catherinebeverly.com +catjc.com +cato-travel.com +cattsoft.com +catv.net +caua99.com +caup.net +cauvet.com +cav-ad.com +cavca.org +cawae.net +caxa.com +caylor.cc +cazpw.com +cbca.net +cbdio.com +cbdjrsh.org +cbe21.com +cbea.com +cbec365.com +cbes21.com +cbevent.com +cbex.com +cbfau.com +cbgcloud.com +cbi360.net +cbi88.com +cbice.com +cbiec.com +cbiec.net +cbismb.com +cbj1998.com +cbjuice.com +cbjzw.org +cbmay.com +cbmf.org +cbminfo.com +cbn.me +cbndata.com +cbndata.org +cbnmall.com +cbnri.org +cbnweek.com +cboad.com +cbsrb.com +cbsrc.com +cbtimer.com +cburi.com +cbvac.com +cbw111.com +cbxdxg.com +cbxsw.com +cby.me +cc-1.com +cc-glass.com +cc.co +cc0808.com +cc1021.com +cc11bh.com +cc148.com +cc222.com +cc55k.com +cc7m.com +cc8.cc +ccabchina.com +ccai.cc +ccapbook.com +ccapedu.com +ccartd.com +ccarting.com +ccasy.com +ccb.com +ccbfund.com +ccbiji.com +ccbookfair.com +ccbpension.com +ccbride.com +cccaq.com +cccbs.net +ccccl.net +cccdun.com +ccchz.com +cccitu.com +cccity.cc +ccciw.com +cccnec.com +cccollector.com +cccpan.com +cccsql.com +ccctspm.org +cccwww.com +cccyun.cc +ccd86.com +ccdby.com +ccddvr.com +ccdol.com +ccea.pro +cceai.com +cceato.com +ccedisp.com +ccedpw.com +ccee.com +cceea.net +cceep.com +ccefb.com +ccement.com +ccen.net +ccepc.com +cces2006.org +ccets.com +ccfei.com +ccflow.org +ccgaa.com +ccgfie.com +ccgslb.com +ccgslb.net +cchccc.com +cchezhan.com +cchfound.org +cchicc.com +cchongjing.com +cchorse.com +cchorse.net +ccian.com +cciatv.com +ccic.com +ccic2.com +cciccloud.com +ccice.com +ccichn.com +ccidcom.com +ccidconsulting.com +ccidcyt.com +cciddata.com +cciddesign.com +ccidedu.com +ccidexpo.com +ccidgroup.com +ccidjinglue.com +ccidnet.com +ccidreport.com +ccidsmart.com +ccidthinktank.com +ccidwise.com +ccieh3c.com +ccieshow.com +ccievide.com +ccigchina.com +ccigmall.com +ccihr.com +ccimz.com +ccipmedia.com +ccipp.org +ccita.net +ccitimes.com +cciup.com +ccjkwjjedu.com +ccjoy.com +ccjoyland.com +ccjt.net +ccjzzj.com +cclcn.com +cclexpo.com +cclimg.com +cclinux.org +cclndx.com +cclolcc.com +cclqme.xyz +cclycs.com +cclyun.com +ccm-1.com +ccm99.com +ccmama.com +ccmdl.adobe.com +ccmdls.adobe.com +ccme.cc +ccmfcm.com +ccmnn.com +ccmodel.com +ccmodel.net +ccmw.net +ccn360.com +ccnee.com +ccnew.com +ccnovel.com +ccnpic.com +ccnt.com +ccnubbs.com +ccnulx.com +ccnvpt.com +ccoalnews.com +ccoco.vip +ccoi.ren +ccopyright.com +ccpc.io +ccpc360.com +ccpgssd.com +ccpit-academy.org +ccpit-ah.com +ccpit-ep.org +ccpit-henan.org +ccpit-shaanxi.org +ccpit-sichuan.org +ccpit-sx.org +ccpit-tga.org +ccpit.org +ccpitbingtuan.org +ccpitbj.org +ccpitbm.org +ccpitbuild.org +ccpitcq.org +ccpitecc.com +ccpitfujian.org +ccpitgs.org +ccpitgx.org +ccpithebei.com +ccpithn.org +ccpithrb.org +ccpithz.org +ccpitjinan.org +ccpitjs.org +ccpitlight.org +ccpitln.org +ccpitnb.org +ccpitnmg.org +ccpitqd.org +ccpitsd.com +ccpitsy.org +ccpittex.com +ccpittj.org +ccpitwh.org +ccpitxiamen.org +ccpitxian.org +ccpitxj.org +ccplay.cc +ccpnt.org +ccprec.com +ccproxy.com +ccqtgb.com +ccqyj.com +ccrgt.com +ccrjw.com +ccshao.com +ccshell.com +ccsph.com +ccsw003.com +cct08.com +cct365.net +cctalk.com +cctaw.com +cctb.net +cctbn.com +cctc.cc +cctcce.com +cctcct.com +cctiedu.com +cctime.com +cction.com +cctlife.com +cctocloud.com +cctpress.com +cctry.com +cctsx.com +cctuw.com +cctv-19.com +cctv-22.com +cctv-star.com +cctv.com +cctv18.com +cctv1zhibo.com +cctv4g.com +cctv886.com +cctvcaizhi.com +cctvcdn.net +cctvcj.com +cctvctpc.com +cctvdyt.com +cctvfinance.com +cctvmall.com +cctvpic.com +cctvsdyxl.com +cctvse.net +cctvweishi.com +cctvxf.com +cctvyscj.com +cctw.cc +cctzz.net +ccutchi.com +ccutu.com +ccv160.com +ccv168.com +ccv5.com +ccview.net +ccvnn.com +ccwcw.com +ccwcyw.com +ccwonline.com +ccwonline.net +ccwow.cc +ccwqtv.com +ccwzz.cc +ccxcn.com +ccxcredit.com +ccxinyuedu.com +ccxiyuecare.com +ccxjd.com +ccyjjd.com +ccyts.com +ccyunmai.com +ccyyls.com +ccziben.com +cczihai.com +ccztv.com +cd-cxh.com +cd-kc.com +cd-vv.com +cd-zc.com +cd120.com +cd23f.com +cd37wan.com +cdabon.com +cdadata.com +cdadsj.com +cdaidu.com +cdairport.com +cdajcx.com +cdaten.com +cdbcw.com +cdbdsec.com +cdbjh.com +cdbsfund.com +cdbybo.com +cdccpit.org +cdcgames.net +cdchsj.com +cdchuandong.com +cdcoslm.com +cdcyts.com +cdcz.net +cddgg.com +cddgg.net +cddo8.com +cddscj.com +cddsgk.com +cde-os.com +cdedu.com +cdeledu.com +cdfcn.com +cdfgsanya.com +cdfinger.com +cdfmembers.com +cdfortis.com +cdfsunrise.com +cdfytx.com +cdgdad.com +cdggzy.com +cdgjbus.com +cdgmgd.com +cdgtw.net +cdgxfz.com +cdh3c.com +cdhaiguang.com +cdhfund.com +cdhongfu.com +cdhr.net +cdhtnews.com +cdidc.net +cditv.tv +cdjingfeng.com +cdjingying.com +cdjnrc.com +cdjsjx.com +cdjxjy.com +cdjzw.com +cdjzx120.com +cdjzzg.com +cdkf.com +cdkx.net +cdlaobing.com +cdlbyl.com +cdlfvip.com +cdlgame.com +cdlinux.net +cdlxqn.com +cdmcaac.com +cdmfund.org +cdmm.net +cdmoz.org +cdn-cdn.net +cdn-chuang.com +cdn-cn1.apple-mapkit.com +cdn-cn2.apple-mapkit.com +cdn-cn3.apple-mapkit.com +cdn-cn4.apple-mapkit.com +cdn-data-cloud.com +cdn-dns-kubo.com +cdn-files.net +cdn-hotels.com +cdn-ng.net +cdn-speed.com +cdn-static.farfetch-contents.com +cdn-uc.cc +cdn-v.com +cdn.apple-mapkit.com +cdn.fun +cdn.marketplaceimages.windowsphone.com +cdn.razersynapse.com +cdn.samsung.com +cdn.shanghai.nyu.edu +cdn08.com +cdn1.apple-mapkit.com +cdn1218.com +cdn2.apple-mapkit.com +cdn20.com +cdn20.info +cdn20.org +cdn2000.com +cdn2020.com +cdn3.apple-mapkit.com +cdn30.com +cdn30.org +cdn3344.com +cdn35.com +cdn4.apple-mapkit.com +cdn56.com +cdn86.net +cdn88.cc +cdnaaa.net +cdnbuild.net +cdnbye.com +cdncache.net +cdncache.org +cdncenter.com +cdnchushou.com +cdncl.net +cdncloud.org +cdnclouds.net +cdnczydwl.com +cdndm.com +cdndm5.com +cdndm5.net +cdndo.com +cdnet110.com +cdnff.com +cdngslb.com +cdngslb8.com +cdngtm.com +cdnhwc1.com +cdnhwc2.com +cdnhwc3.com +cdnhwc6.com +cdnhwchcg02.com +cdni.net +cdnip567.com +cdnjtzy.com +cdnk8.com +cdnle.com +cdnle.net +cdnmama.com +cdnmaster.com +cdnok.com +cdnpan.com +cdnpe.com +cdnsvc.com +cdntip.com +cdntips.com +cdntips.net +cdnudns.com +cdnunion.com +cdnunion.net +cdnunion.org +cdnvp.com +cdnvpn.net +cdnvue.com +cdnyoyun.com +cdnyt69.com +cdnyzdjj.com +cdooc.com +cdqcnt.com +cdqcp.com +cdqph.com +cdqss.com +cdrbs.net +cdren.com +cdren.net +cdronghai.com +cdrtvu.com +cdruzhu.com +cdryny.com +cds-cdn.v.aaplimg.com +cds.apple.com +cds.apple.com.akadns.net +cdsb.com +cdsb.mobi +cdsenfa.com +cdsglxx.com +cdshangceng.com +cdshijue.com +cdsjjy.com +cdsme.com +cdsns.com +cdsxlc.com +cdt-md.com +cdtaishan.com +cdtianda.com +cdueff.com +cduncname.com +cduyzh.com +cdvcloud.com +cdvisor.com +cdweikebaba.com +cdworking.com +cdxrdz.com +cdxsbdz.com +cdxwcx.com +cdyee.com +cdyestar.com +cdygdq.com +cdyichu.com +cdyimei.com +cdyou.net +cdyuanhang.com +cdyushun.com +cdywgou.com +cdyzg.com +cdzcy.net +cdzdgw.com +cdzdhx.com +cdzgh.com +cdzhinan.com +cdzikao.com +cdzimo.com +cdzixun.net +cdzmn.com +cdzspcls.com +cdzszp.com +cdzvan.com +ce-air.com +ce02.net +ce04.com +ce12366.com +ce2293.com +ceair.com +ceairdutyfree.com +ceairgroup.com +ceaj.org +ceamg.com +cebbank.com +cebcn.com +cebpubservice.com +cecb2b.com +cecc-cx.com +ceccen.com +cecdc.com +cece-mall.com +cece.com +cece.la +cecesat.com +cechoice.com +cecisp.com +cecloud.com +cecmath.com +cecom.cc +ceconline.com +ceconlinebbs.com +cecport.cc +cecport.com +cectcc.com +cectv.net +cedachina.org +cedarhd.com +cediy.com +cedock.com +ceecu.com +ceeger.com +ceeie.com +ceeji.net +ceepsp.com +cef114.com +cefc.co +cehbe.com +cehbh.com +cehbk.com +cehca.com +cehome.com +cehuashen.com +cehui8.com +cei1958.com +ceiaec.org +ceibs.edu +ceibsonline.com +ceic.com +ceiceicei.com +ceicloud.com +ceiea.com +cekid.com +celebpalace.com +celia520.com +celiang.net +cellixsoft.com +cellmean.com +cells-net.com +cells-net.net +celwk.com +cement365.com +cementren.com +ceming.com +cemyun.com +cenbel.com +cenbohao.com +cencs.com +cenray-ic.com +censh.com +centainfo.com +centanet.com +centcc.com +cententcymbals.com +centerm.com +centong.com +centos.bz +centoscn.vip +centralsolomon.com +centrincloud.com +centrixlink.com +century21cn.com +cenwor.com +cenwoy.com +cenxilm.com +cenya.com +ceobiao.com +ceoeo.com +ceoim.com +ceook.com +ceoplaza.com +ceotx.com +ceowan.com +ceowww.com +ceoxq.com +cepin.com +ceping.com +cepmh.com +ceppedu.com +ceprei.com +ceprei.org +ceqt.net +cer.net +cerambath.org +ceramicschina.com +cere.cc +cerestools.com +cernet.com +cernet.net +cernet2.net +cersp.com +ces-transaction.com +cescnb.com +cesfutures.com +ceshi.com +ceshi112.com +ceshigo.com +ceshigu.com +ceshiren.com +cespc.com +cesses.org +cet-46.com +cetc33.com +cetc36.com +cetc52.com +cetccloud.com +cetccloud.store +cetcio.com +cetcmotor.com +cetcssi.com +cetgps.com +cethik.com +ceunion.com +ceve-market.org +cevsn.com +cezxda.com +cf.com +cf027.com +cf865.com +cfachina.org +cfanclub.net +cfbond.com +cfc365.com +cfca-c.org +cfcdn.org +cfcdn.site +cfcglx.com +cfcp67.com +cfcpn.com +cfcyb.com +cfd-china.com +cfd163.com +cfda.pub +cfdp.org +cfdtlee.com +cfeie.com +cfej.net +cfeks.com +cfgjwl.com +cfhi.com +cfhot.com +cfhpc.org +cfido.com +cfiec.net +cfiecdns.net +cfimg.com +cflm.com +cfm119.com +cfmcc.com +cfmmc.com +cfmoto.com +cfogc.com +cfpa.pw +cfpsf.com +cfryny.com +cfsino.com +cfsl2017.com +cftea.com +cftong.com +cfucn.com +cfund108.com +cfwaf.com +cfxydefsyy.com +cfxyfsyy.com +cfxyjy.com +cfzq.com +cg-cdn.net +cg-orz.com +cg-vipwebs.com +cg-zwdb.com +cg.am +cg009.com +cg98.com +cgahz.com +cgangs.com +cgartt.com +cgbolo.com +cgboo.com +cgcountry.com +cgdown.com +cgdream.org +cgebook.com +cgejournal.com +cger.com +cgf-csyc.com +cghlj.com +cgiale.com +cgiia.com +cgjoy.com +cgjoy.net +cgke.com +cglnn.com +cglw.com +cgmantou.com +cgmao.com +cgmcc.net +cgmodel.com +cgmol.com +cgnjy.com +cgnmc.com +cgnne.com +cgnovo.com +cgohome.com +cgonet.com +cgown.com +cgpad.com +cgplayer.com +cgplusplus.com +cgptwd.com +cgpx.org +cgris.net +cgsdream.org +cgsec.com +cgsfusion.com +cgsoft.net +cgspread.com +cgstartup.com +cgtblog.com +cgtime.net +cgtn.com +cgtsj.com +cgtsj.org +cgtz.com +cguardian.com +cguiw.com +cguwan.com +cgvoo.com +cgvxingx-zhongjie.com +cgwang.com +cgwell.com +cgwic.com +cgws.com +cgxc.cc +cgxia.com +cgxm.net +cgylke.com +cgylw.com +cgyou.com +cgyouxi.com +cgyu.com +cgzair.com +cgzy.net +cgzyw.com +cgzz8.com +ch-auto.com +ch-water.com +ch.com +ch028.net +ch12333.com +ch318.com +ch999.com +ch999img.com +cha-tm.com +cha001.com +cha086.com +cha127.com +chabeichong.com +chachaba.com +chachaqu.com +chachongba.cc +chachongba.com +chacuo.net +chadan.wang +chadianhua.net +chadianshang.com +chadianshang2.com +chadown.com +chaduo.com +chaej.com +chafanhou.com +chafei.net +chahaotai.com +chaheji.com +chahua.org +chahuo.com +chaic.com +chaichefang.com +chaicp.com +chaihezi.com +chaijing.com +chaim.in +chaima.com +chaimage.com +chain-store.net +chaincar.com +chainflag.com +chainknow.com +chainnode.com +chainsdir.com +chainsinn.com +chainsql.net +chainwon.cc +chainwon.com +chairyfish.com +chaishiguan.com +chaitin.com +chajian110.com +chajianmi.com +chajiaotong.com +chajie.com +chajn.org +chakahao.com +chakd.com +chakuaizhao.com +chalangautozone.com +challenge-21c.com +chalwin.com +chamcfae.com +chamei.com +chamiji.com +champconsult.com +champhier.com +champzee.com +chance-ad.com +chandashi.com +changan.biz +changan.com +changancap.com +changanfunds.com +changansuzuki.com +changantaihe.com +changba-ktv.com +changba.com +changbaapi.com +changbaapp.com +changbaimg.com +changbalive.com +changchun-ccpit.com +changchundaxuehs.com +changeol.com +changfon.com +changfubai.com +changhe.tech +changhong.com +changhongdianzi.com +changhongit.com +changhongnet.com +changhuapower.com +changingedu.com +changjiangdata.com +changjiangexpress.com +changjiangtimes.com +changjuyi.com +changker.com +changliuliang.com +changning.net +changpingquzhongxiyijieheyiyuan.com +changpu3d.com +changqingshu.net +changrongwang.com +changsha-show.com +changshabdc.com +changshang.com +changshiban.com +changtounet.com +changtu.com +changxie.com +changxingyun.com +changyan.com +changyifan.com +changyin-lab.com +changyou.com +changyoyo.com +changyueba.com +changzhinews.com +chanjet.com +chanluntan.com +chanmama.com +channelbeyond.com +channeleffect.com +channingsun.bid +chanpay.com +chanpin.biz +chanpin100.com +chanpinban.com +chanpindashi.com +chanshiyu.com +chansige.com +chanumber.com +chanway.net +chanyeren.com +chanzhi.org +chanzuimei.com +chaoart.com +chaochaojin.com +chaofan.com +chaofan.wang +chaofan365.com +chaofanaishangyu.com +chaofanshuma.com +chaofenxiang.vip +chaogmp.com +chaoji.com +chaojibiaoge.com +chaojideng.com +chaojifan.com +chaojifangyu.com +chaojihetong.com +chaojilian.net +chaojilock.com +chaojishipin.com +chaojixiaobaicai.club +chaojiying.com +chaojiyun.com +chaolady.com +chaolean.com +chaolen.com +chaoliutai.com +chaolongbus.com +chaomengdata.com +chaomi.cc +chaomo25.com +chaonanrc.com +chaonei.com +chaonengjie.com +chaonenglu.com +chaoren.com +chaoshanren.com +chaoshen.cc +chaoshengboliuliangji.com +chaoskeh.com +chaosu.com +chaosuduokai.com +chaosw.com +chaov.com +chaoxin.com +chaoxing.com +chaoxz.com +chaoyindj.com +chaoyisy.com +chaoyuelm.com +chaoyuesd.com +chaoyuyun.com +chaozhiedu.com +chaozhoudaily.com +chaozhuo.net +chaozuo.com +chapangzhan.com +chapaofan.com +chaping.tv +chappell1811.com +chapuw.com +chargerlab.com +chargerlink.com +charlottebeverly.com +charmelady.com +charmingglobe.com +chartboost-china.com +chashebao.com +chatm.com +chatnos.com +chawenti.com +chawenyi.com +chawo.com +chaxinyu.net +chaxunfapiao.com +chayangge.com +chaye.com +chayeo.com +chayu.com +chayueshebao.com +chayuqing.com +chazc.com +chazhaokan.com +chazhengla.com +chazhilan.com +chazidian.com +chazishop.com +chaziwang.com +chaziyu.com +chazuo.com +chazuo.net +chazuowang.com +chbaojie.com +chbcnet.com +chbtc.com +chcedo.com +chcnav.com +chcoin.com +chcpd.com +chczz.com +chda.net +chdajob.com +chdelphin.com +chdtv.net +che.com +che0.com +che12.com +che127.com +che168.com +che300.com +che6che5.com +cheaa.com +cheapermai.com +cheapyou.com +cheari.com +chebaba.com +chebada.com +checheboke.com +chechong.com +check.cc +checkin.gstatic.com +checkip.biz +checkip.pw +checkoo.com +checkpass.net +chedan5.com +chediandian.com +cheduo.com +cheerfun.dev +cheerjoy.com +cheersee.com +cheersofa.com +cheerspublishing.com +cheerupmail.com +chefafa.com +chefans.com +chefugao.com +cheguanyi.com +chegud.com +cheguo.com +chehang168.com +chehejia.com +chehubao.com +chehui.com +chekb.com +chekucafe.com +chelun.com +chem17.com +chem31.com +chem36.com +chem365.net +chem960.com +chem99.com +chemalink.net +chemao.com +chemayi.com +chemcp.com +chemcyber.com +chemdrug.com +chemicalbook.com +chemishu.com +chemm.com +chemmade.com +chemnet.com +chemrc.com +chemsb.com +chemsrc.com +chemyq.com +chen-nuo.com +chen7782.com +chenag.com +chenall.net +chenanz.com +chenapp.com +chende.net +chenfan.info +cheng-nuo.com +cheng-sen.com +cheng95.com +cheng95.net +chengadx.com +chengailvsuo.com +chengbanren02.com +chengchuanren.com +chengdebank.com +chengdechina.com +chengder.com +chengdu-expat.com +chengdun.com +chengedeco.com +chengezhao.com +chengfeilong.com +chenggua.com +chengguw.com +chengjieos.com +chengjing.com +chengkao365.com +chenglang.net +chenglangyun.com +chenglin.name +chengliwang.com +chenglou.net +chengpeiquan.com +chengrang.com +chengrengaokaobaoming.com +chengshidingxiang.com +chengshiluntan.com +chengshiw.com +chengshizg.com +chengshu.com +chengsmart.com +chengtu.com +chenguangblog.com +chengxiangqian.com +chengxinyouxuan.com +chengxuan.com +chengyangnews.com +chengyangyang.com +chengye-capital.com +chengyin.org +chengyiqq.vip +chengyuw.com +chengyuwb.com +chengzhongmugu.wang +chengzi520.com +chengzijianzhan.cc +chengzijianzhan.com +chengzivr.com +chenhaiyue.com +chenhr.com +chenhui.org +chenii.com +chenjia.me +chenjie.info +chenjiehua.me +chenjunlu.com +chenksoft.com +chenlb.com +chenlianfu.com +chenlinux.com +chenlongyx.com +chenmomo.com +chenpeng.info +chenplus.com +chenpot.com +chenruixuan.com +chenrunjinshu.com +chenshipin.com +chensonglin.net +chenty.com +chenxi-sh.com +chenxinghb.com +chenxm.cc +chenxuehu.com +chenxuhou.com +chenxunyun.com +cheny.org +chenyaorong.com +chenyea.com +chenyistyle.com +chenyongjun.vip +chenyuan588.com +chenyuanjian.com +chenyudong.com +chenzao.com +chenzhicheng.com +chenzhongkj.com +chenzhongtech.com +cheonhyeong.com +cheoo.com +cheoz.com +chepin88.com +chepinnet.com +cherriespie.com +cherymanuals.com +cheshi-img.com +cheshi.com +cheshi18.com +cheshirex.com +cheshouye.com +chestar.net +chesthospital.com +chesudi.com +chesusu.com +chetuanwang.net +chetuobang.com +chetx.com +chevip.com +chewen.com +chexiang.com +chexin.cc +chexiu.com +chexun.com +chexun.net +cheyaoshi.com +cheyian.com +cheyipai.com +cheyishang.com +cheyisou.com +cheyo.net +cheyoo.com +cheyou123.com +cheyun.com +cheyuu.com +chez360.com +chezhanri.com +chezhibao.com +chezhubidu.com +chezhuzhinan.com +chezizhu.com +chgcis.com +chgcw.com +chgjedu.com +chgreenway.com +chhblog.com +chhua.com +chhzm.com +chi2ko.com +chi588.com +chiang.fun +chibaole.com +chichou.me +chichuang.com +chidaolian.com +chidaoni.com +chidaoni.net +chidown.com +chidudata.com +chiefmore.com +chieftin.org +chifenghualvlvxingshe.com +chihaigames.com +chihe.so +chiheba.com +chiji-h5.com +chijianfeng.com +childjia.com +childlib.org +chillyroom.com +chilunyc.com +chiluyingxiao.com +chimatong.com +chimee.org +chimelong.com +chimezi.com +china-10.com +china-3.com +china-315.com +china-ah.com +china-asahi.com +china-asm.com +china-b.com +china-caa.org +china-cas.org +china-cba.net +china-cbn.com +china-cbs.com +china-ccie.com +china-ccw.com +china-cdt.com +china-ceco.com +china-ced.com +china-cfa.org +china-changjiang.net +china-channel.com +china-chuwei.com +china-cicc.org +china-clearing.com +china-cloud.com +china-co.com +china-coc.org +china-cold.com +china-consulate.org +china-csdz.com +china-csm.org +china-customs.com +china-cw.com +china-d.com +china-def.com +china-designer.com +china-drm.net +china-ef.com +china-efe.org +china-eia.com +china-embassy.org +china-engine.net +china-entercom.com +china-enterprise.com +china-epa.com +china-erzhong.com +china-experts.com +china-fire.com +china-flash.com +china-flower.com +china-g.com +china-galaxy-inv.com +china-gehang.com +china-genius.com +china-gold.com +china-goldcard.com +china-highway.com +china-holiday.com +china-hongfei.com +china-hrg.com +china-huaxue.com +china-huazhou.com +china-hzd.com +china-insurance.com +china-invests.net +china-isotope.com +china-jm.org +china-kaihua.com +china-kaoshi.com +china-key.com +china-kids-expo.com +china-lawoffice.com +china-led.net +china-lushan.com +china-lzmj.com +china-m2m.com +china-moutai.com +china-nengyuan.com +china-nlp.com +china-obgyn.net +china-packcon.com +china-pcba.com +china-pharmacy.com +china-pops.net +china-pub.com +china-qiao.com +china-reform.org +china-ric.com +china-riscv.com +china-russia.org +china-see.com +china-seeq.com +china-share.com +china-shimo.com +china-show.net +china-shufajia.com +china-sites.com +china-slate.com +china-sorsa.org +china-spacenews.com +china-sss.com +china-tower.com +china-toy-edu.org +china-toy-expo.com +china-twofoundation.com +china-up.com +china-vcom.com +china-vision.org +china-vo.org +china-wanlin.com +china-warping.com +china-waste.com +china-wss.com +china-zbycg.com +china-zikao.com +china.com +china.mintel.com +china.uxengine.net +china001.com +china12365.com +china17.net +china1baogao.com +china1f.com +china2000.org +china35.com +china356.com +china360.net +china3gpp.com +china4a.org +china50plus.com +china5e.com +china60.com +china618.com +china6688.com +china724.com +china777.org +china95.net +china9s.com +china9y.com +chinaacc.com +chinaadec.com +chinaaet.com +chinaagrisci.com +chinaairer.com +chinaalex.com +chinaamc.com +chinaamuse.com +chinaanonymous.com +chinaapp.org +chinaar.com +chinaartificialstone.com +chinaasc.org +chinaaseanenv.org +chinaaseantrade.com +chinaasic.com +chinaautosupplier.com +chinaaviationdaily.com +chinab4c.com +chinabaike.com +chinabaiker.com +chinabaogao.com +chinabaokan.com +chinabaoke.net +chinabathware.com +chinabbtravel.com +chinabda.org +chinabdh.com +chinabdt.com +chinabeer.net +chinabenson.com +chinabeston.com +chinabgao.com +chinabidding.com +chinabiddingzb.com +chinabigdata.com +chinabike.net +chinabimdata.org +chinabmi.com +chinabn.org +chinabookinternational.org +chinabreed.com +chinabug.net +chinabus.info +chinabuses.com +chinabym.com +chinabyte.com +chinabzp.com +chinac.com +chinac3.com +chinacace.org +chinacache.cedexis.com +chinacache.com +chinacache.net +chinacaipu.com +chinacaj.net +chinacamel.com +chinacampus.org +chinacarbide.com +chinacarz.com +chinacasa.org +chinaccm.com +chinaccnet.com +chinaccnet.net +chinaccsi.com +chinacct.org +chinacdlm.com +chinaceot.com +chinaceotv.com +chinacfi.net +chinacfo.net +chinacft.org +chinachemnet.com +chinachilun.org +chinachugui.com +chinacics.org +chinacil.com +chinacir.com +chinacity.net +chinacitywater.org +chinackf.net +chinacleanexpo.com +chinaclip.net +chinacma.org +chinacmo.com +chinacnr.com +chinacoal.com +chinacomix.com +chinaconch.com +chinaconsulatesf.org +chinaconveyor.com +chinacosco.com +chinacourt.org +chinacpda.com +chinacpda.org +chinacpec.com +chinacpx.com +chinacqsb.com +chinacrane.net +chinacreator.com +chinacrumpler.com +chinacses.org +chinacsf.com +chinactv.com +chinaculture.org +chinacxjs.org +chinacyzf.org +chinadafen.com +chinadailyglobal.com +chinadance.com +chinadart.com +chinadatatrading.com +chinaday.com +chinadazhaxie.com +chinadds.net +chinadegi.com +chinadengshi.com +chinadentalshow.com +chinadep.com +chinadeveloper.net +chinadiaoyou.com +chinadigit.org +chinadmoz.org +chinadns.org +chinadoudi.com +chinadrtv.com +chinadsl.net +chinadysj.com +chinadyt.com +chinadz.com +chinadzyl.com +chinae.net +chinaeastlaw.com +chinaecnet.com +chinaecotech.org +chinaeda.org +chinaedu.com +chinaedu.net +chinaedunet.com +chinaedunewsw.com +chinaefu.net +chinaehs.net +chinaeic.net +chinaeinet.com +chinaeinv.com +chinaemed.com +chinaequity.net +chinaerman.com +chinaesm.com +chinaexam.org +chinaexpo365.com +chinaeye.com +chinafanyi.com +chinafarad.com +chinaffmpeg.com +chinafiber.com +chinafic.org +chinafilm.com +chinafilms.net +chinafinancenet.com +chinafinanceonline.com +chinafishtv.com +chinafix.com +chinaflashmarket.com +chinaflier.com +chinafoodj.com +chinaforklift.com +chinafpd.net +chinafph.com +chinafpma.org +chinaftat.org +chinafudaoban.com +chinagames.net +chinagayles.com +chinagb.net +chinagb.org +chinagba.com +chinagcp.org +chinagdg.com +chinagiftsfair.com +chinagoldcoin.net +chinagoldgroup.com +chinagp.net +chinagps.cc +chinagrid.net +chinagrowthcapital.com +chinagungho.org +chinaguyao.com +chinagwy.org +chinagwyw.org +chinagzn.com +chinagznw.com +chinahacker.com +chinaham.com +chinahao.com +chinaharp.com +chinahazelnut.com +chinahbnet.com +chinahightech.com +chinahighway.com +chinahkidc.net +chinahlwyy.com +chinahnjs.com +chinahorse.org +chinahost.org +chinahotel.com +chinahpa.org +chinahqjjw.com +chinahr.com +chinahrd.net +chinahrgy.com +chinahrt.com +chinahte.com +chinahtz.com +chinahuben.com +chinahumanrights.org +chinahvacr.com +chinahw.net +chinahydro.com +chinahyyj.com +chinaidaa.org +chinaidcnet.com +chinaidcnet.net +chinaidns.com +chinaido.com +chinaielts.org +chinaiern.com +chinaiia.com +chinainout.com +chinaiol.com +chinaios.com +chinaipmagazine.com +chinaipo.com +chinaiprlaw.com +chinairn.com +chinairr.org +chinaitcapital.com +chinaitlab.com +chinaitpower.com +chinajan.com +chinajcz.com +chinajeweler.com +chinajjz.com +chinajnhb.com +chinajoinin.com +chinajoy.net +chinajs120.com +chinajsxx.com +chinajungong.com +chinajuva.com +chinajyxdh.com +chinajzqc.com +chinakaoyan.com +chinakaratedo.org +chinakidville.com +chinakingland.com +chinakingo.com +chinakongzi.org +chinaks.net +chinaksi.com +chinakyzl.com +chinalabexpo.com +chinalabs.com +chinalancoo.com +chinalandpress.com +chinalao.com +chinalawbook.com +chinalawedu.com +chinalawinfo.com +chinalawyeryn.com +chinaleather.org +chinaledger.com +chinaleeper.com +chinalibs.net +chinalicensing.org +chinalicensingexpo.com +chinalifang.com +chinalims.net +chinalincoln.com +chinalink-sh.net +chinalink.tv +chinalinuxpub.com +chinalions.com +chinalm.org +chinalongmai.net +chinalsjt.com +chinalubricant.com +chinalure.com +chinalushan.com +chinaluxus.com +chinalxnet.com +chinamae.com +chinamags.org +chinamap.com +chinamarintec.com +chinamaven.com +chinambn.com +chinamca.com +chinamcache.com +chinamcloud.com +chinameasure.com +chinameat.org +chinameidu.com +chinamendu.com +chinamenwang.com +chinamerger.com +chinametro.net +chinameyer.com +chinamfi.net +chinamining.com +chinamission.be +chinamlmcc.com +chinamobile.com +chinamobilesz.com +chinamost.net +chinamsa.org +chinamsr.com +chinamusical.net +chinamusicbusinessnews.com +chinamworld.com +chinamypp.com +chinanbb.com +chinanet-sh.com +chinanet.cc +chinanet88.com +chinanetcenter.com +chinanetidc.com +chinanetsun-dns.com +chinanetsun.com +chinaneweast.com +chinanews.com +chinaningbo.com +chinanmi.com +chinaobp.com +chinaoct.com +chinaonward.net +chinaopc.org +chinaopen.com +chinaops.org +chinaopticsvalley.com +chinaore.com +chinaosx.com +chinaosx.net +chinaott.net +chinaowps.com +chinapastel.com +chinapay.com +chinape168.com +chinapet.com +chinapet.net +chinapharm.net +chinaphoto.cc +chinapipe.net +chinaplat.com +chinapm.org +chinapnr.com +chinapoesy.com +chinaports.com +chinapost-life.com +chinapowerbi.com +chinapp.com +chinapptx.com +chinaprint.org +chinapsy.com +chinapubmed.net +chinaqi.net +chinaqingtian.com +chinaqipeihui.com +chinaqking.com +chinaql.org +chinaqoe.net +chinaquickpcb.com +chinaqw.com +chinarayying.com +chinardr.com +chinardr.net +chinaredstar.com +chinaren.com +chinareports.org +chinarootdesign.com +chinartlaw.com +chinarun.com +chinarzfh.com +chinasaat.com +chinasafety.net +chinasanc.com +chinasatcom.com +chinasb.org +chinasbj.net +chinasbsp.com +chinasciencejournal.com +chinascopefinancial.com +chinascrum.org +chinascsoft.com +chinasexq.com +chinashadt.com +chinashangpinku.com +chinashj.com +chinashop.cc +chinashpp.com +chinasi.com +chinasie.com +chinasilk.com +chinasiwei.com +chinasmartpay.com +chinasnow.net +chinasnw.com +chinaso.com +chinasofti.com +chinasoftinc.com +chinasoftosg.com +chinasosuo.cc +chinasou.com +chinasoushang.com +chinaspringtown.com +chinassl.com +chinassl.net +chinasspp.com +chinastoneforest.com +chinastor.com +chinasufa.com +chinasupercloud.com +chinaswim.com +chinaswitch.com +chinasws.com +chinasydw.org +chinatai.com +chinataiwan.org +chinatalent.org +chinatarena.com +chinatat.com +chinatechinsights.com +chinatelecom-ec.com +chinatelecom.com.mo +chinatelecomiot.com +chinatelling.com +chinatet.com +chinatex.com +chinatex.net +chinatex.org +chinatibetnews.com +chinaticket.com +chinatietong.com +chinatikfans.com +chinatimber.org +chinatimes.cc +chinatiner.com +chinatiredealer.com +chinatmic.com +chinatopbrands.net +chinatourguide.com +chinatpm.com +chinatpm.net +chinatranslation.net +chinatravel.net +chinatraveldepot.com +chinatruck.org +chinatrucks.com +chinatsi.com +chinatsp.com +chinattl.com +chinatungsten.com +chinatupai.com +chinatv-net.com +chinatvc.com +chinatyco.com +chinaufo.com +chinaui.com +chinauidesign.com +chinauma.com +chinaums.com +chinaun.net +chinaunicom-a.com +chinaunicom.com +chinauniforms.com +chinaunionpay.com +chinauniversalasset.com +chinaunix.com +chinaunix.net +chinaunix.org +chinauo.com +chinauos.com +chinauos.net +chinauos.org +chinaups.com +chinaus-maker.org +chinaus.com +chinauso.com +chinavalin.com +chinavalue.net +chinavcpe.com +chinavfx.net +chinavid.com +chinavideo.org +chinavipsoft.com +chinavisual.com +chinavivaki.com +chinavnet.com +chinavoa.com +chinavr.net +chinawaiyu.com +chinawanda.com +chinawatchnet.com +chinawbk.com +chinawbsyxh.com +chinawch.com +chinawebber.com +chinawebmap.com +chinaweiyu.com +chinawenben.com +chinawenwang.com +chinawie.com +chinawiserv.com +chinawitmedia.com +chinawoodnet.com +chinawpn.com +chinawr.net +chinawudang.com +chinawutong.com +chinawutong.net +chinawuyuan.com +chinaxiaokang.com +chinaxinge.com +chinaxinport.com +chinaxpp.com +chinaxq.com +chinaxqf.com +chinaxueqian.com +chinaxwcb.com +chinaxzrc.com +chinayigou.com +chinayigui.com +chinayk.com +chinaymc.com +chinayouji.com +chinayuanwang.com +chinayyjx.com +chinayyo.com +chinayzyh.com +chinaz.com +chinaz.net +chinazhiqing.org +chinazichan.com +chinazikao.com +chinazjph.com +chinazjy.com +chinaznj.com +chinazns.com +chinaznyj.com +chinazov.com +chinazwds.com +chinazwds.org +chinazxt.com +chinazyjr.com +chinca.org +chindiaforum.com +chine-info.com +chinee.com +chinese-luxury.com +chinese-no1.com +chineseacc.com +chineseafs.org +chineseall.com +chinesecio.com +chineseconsulate.org +chineseembassy.org +chinesehongker.com +chinesejk.com +chinesejy.com +chineselaw.com +chinesemooc.org +chineserose.com +chinesetown.net +chingkun.com +chingli.com +chingmi.com +chinlingo.com +chinput.com +chint.com +chint.net +chipcoo.com +chipcreation.com +chipdance.com +chiphell.com +chiplayout.net +chipmanufacturing.org +chiponeic.com +chipown.com +chiprf.com +chipsbank.com +chipsec.com +chipsgo.com +chipsir.com +chipup.com +chipwing.com +chipwings.com +chiq-cloud.com +chiralquest.com +chisai.tech +chisc.net +chiselchina.com +chiser.cc +chishine3d.com +chishoes.com +chitanda.me +chitu.com +chitu101.com +chitu103.com +chitu104.com +chitu107.com +chivast.com +chivox.com +chivoxapp.com +chiwayedu.com +chixing.net +chixingkeji.com +chixm.com +chiyuebing.com +chiyuekj.com +chiyuewenhua.com +chizhouchacha.com +chizhoujob.com +chizhouren.com +chiznews.com +chjso.com +chkj365.com +chklingw.com +chlahb.com +chloe99.com +chmecc.org +chmed.net +chmgames.com +chmia.org +chn0769.com +chn112.com +chn168.com +chnart.com +chnau99999.com +chnbook.org +chnci.com +chncia.org +chncomic.com +chncpa.org +chncwds.com +chndesign.com +chndsnews.com +chndtb.com +chnews.net +chnfi.com +chnfund.com +chngalaxy.com +chngc.net +chnjet.com +chnlanker.com +chnlib.com +chnmodel.com +chnmus.net +chnmusic.org +chnp2p.com +chnpac.com +chnpec.com +chnpic.net +chnppmuseum.com +chnroad.com +chnsuv.com +chocolatehappyland.com +chofn.com +chofn.net +chofn.org +chofnipr.com +choiceform.com +chong-wu.net +chong4.net +chongai.co +chongchi.com +chongchuang.biz +chongdeedu.com +chongdiantou.com +chonghi.com +chongmingzhuce.com +chongqingdongjin.com +chongsoft.com +chongwu.cc +chongwujiaoyi.com +chongwuxiang.com +chongya.com +chongyacdn.com +chongyitang.org +chongzhi.com +chonka.com +chotee.com +chouchoujiang.com +choujue.net +choukang.com +choupangxia.com +chouqinshuwu.com +chouqu.com +chouti.cc +chouti.com +chplayer.com +chqgwy.org +chrent.com +chrice.net +chrieschina.com +chris-tina.com +chrisyue.com +chrmn.com +chrom-china.com +chromecj.com +chromedownloads.net +chromefor.com +chromeliulanqi.com +chronusartcenter.org +chroyoo.com +chrstatic.com +chs.so +chshcms.com +chshouyu.com +chsqh.com +chste.com +chtf.com +chtfund.com +chtgc.com +chtpe.com +chtse.com +chtwm.com +chuaiguo.com +chuairan.com +chuaizhe.com +chuanbofanyi.com +chuanbojia.com +chuanboyi.com +chuandaizc.com +chuandong.com +chuang.pro +chuangbie.com +chuangcache.com +chuangcdn.com +chuangchangnet.com +chuangcifang.com +chuangd.com +chuangduyouyue.com +chuangen.com +chuangfeixin.com +chuangjiangx.com +chuangkem.com +chuangkeup.com +chuangkit.com +chuanglian.net +chuanglinggame.com +chuangluo.com +chuangread.com +chuangshifurui.com +chuangshileather.com +chuangshizhenghe.com +chuangtoo.com +chuangx.org +chuangxin.com +chuangxinapi.com +chuangxinbeidou.com +chuangxinoa.com +chuangye.com +chuangye98.com +chuangyebaba.com +chuangyejia.com +chuangyejia.vip +chuangyejian.com +chuangyejmw.com +chuangyepu.com +chuangyijisu.com +chuangyimao.com +chuangyouqi.com +chuangyunet.com +chuangzaoshi.com +chuanjiaoban.com +chuanke.com +chuanmeixing.com +chuanmeizy.com +chuannan.net +chuanqi.com +chuanqian999.com +chuanshanqundao.com +chuansongme.com +chuantec.com +chuanxincao.net +chuanye.com +chuanying365.com +chuanying520.com +chuanyinpx.com +chuapp.com +chubaodai.com +chubh.com +chucaotang.com +chucaotang.net +chuchuguwen.com +chuchujie.com +chudaoyou.com +chudeer.com +chudian365.com +chufaba.me +chufw.com +chuge8.com +chuguo78.com +chuguofeng.com +chuguohao.com +chuhoi.com +chuimg.com +chuinet.com +chuixue.net +chuiyue.com +chuji8.com +chuju750.com +chujuan.net +chukong-inc.com +chukou1.com +chukuangren.com +chule.cc +chulouwang.com +chumacdn.com +chumanapp.com +chumenwenwen.com +chumo028.com +chunbo.com +chunboimg.com +chuncui.net +chuncuinet.com +chundakj99.com +chundi.com +chundi.org +chunengauto.com +chunfengapp.com +chunge188.com +chungeseo.com +chungkwong.cc +chunhingplasticbags.com +chunhui12.com +chunjingtech.com +chunjiws.com +chunmi.com +chunqiuwang.com +chunshuitang.com +chunshuizhijia.com +chunsuns.com +chuntiansongart.com +chunxuanmao.com +chunyiscdk.com +chunyu.me +chunyu.mobi +chunyuyisheng.com +chunzaichengnan.com +chuqimen.com +chuquan.me +chureng.com +churenjixie.com +chusan.com +chuseo.com +chushan.com +chushang027.com +chushibiao5.com +chushihome.com +chushiji.com +chushou.tv +chushu123.com +chutianlaser.com +chutianzhinu.com +chuwi.com +chuxiangyi.com +chuxindata.com +chuxingyouhui.com +chuxinhudong.com +chuxinm.com +chuxueyun.com +chuying.org +chuyouke.com +chuzhaobiao.com +chvv.com +chw365.com +chwlsq.com +chxyq.com +chyangwa.net +chydafuse.com +chyfh.com +chyoukj.com +chysoft.net +chyw.pub +chyxx.com +chzhkeji.com +chzhw.com +chzybj.com +ci123.com +ci800.com +ciamiecn.com +ciaoca.com +ciatcm.org +cibfintech.com +cibn.cc +cibn.com +cibntv.net +ciboedu.org +cibonet.com +cibresearch.com +cibuser.com +cicaf.com +cicc.com +ciccfund.com +ciccphoto.com +ciceme.com +cicet.net +ciciec.com +cicmag.com +cicphoto.com +cict.com +cicw.org +cidgroup.com +cidi.ai +cidiancn.com +cidianwang.com +cidschina.com +ciec-expo.com +ciect.com +cieet.com +cietac-hb.org +cietac-sc.org +cietac.org +cifalshanghai.org +cifco.net +cifm.com +cifnews.com +cifoo.com +ciftis.org +cigarambassador.com +cignacmb.com +cihai123.com +cihexpo.com +ciia-if.org +ciicgat.com +ciidoo.com +ciie.org +ciif-expo.com +ciiip.com +ciimg.com +cijilu.com +ciku5.com +cili001.com +cili8.xyz +ciliba.buzz +ciliba.life +ciliba5.xyz +ciliguanjia.cyou +cilin.org +cilogo.com +cim2025.net +cimamotor.com +cimc.com +ciming-bj.com +ciming-shop.com +ciming.com +cimingaoya.com +cimingsy.com +cimingyc.com +cimsic.com +cimtshow.com +cinasoft.com +cindasc.com +cindasoft.com +cinehello.com +cingta.com +ciniao.me +cinsee.com +cinyi.com +cio114.com +cio360.net +cioage.com +ciotimes.com +ciotour.com +ciou.com +cip.cc +cipgtrans.com +ciplawyer.com +cippe.net +ciprun.com +cipscom.com +cipunited.com +ciqinghui.com +cirmall.com +cirno9.net +cirs-reach.com +cirunzhang.com +cismag.net +cismef.com +cisskwt.com +citahub.com +citexpo.org +citiais.com +citic-cid.com +citic.com +citicbank.com +citicbankuser.com +citiccard.com +citicguoanbn.com +citicnetworks.com +citics.com +citicsf.com +citicsinfo.com +citicsqh.com +citicsteel.com +citidigital.com +citisa.org +citiz.net +citreport.com +cits-sz.net +cits0871.com +cits2.com +citscq.com +citscsc.com +citsgbt.com +citshq.com +citssh.com +citszz.com +cittc.net +citure.net +citvc.com +city8.com +city84.com +citydh.com +citygf.com +cityhui.com +citylinker.com +citysbs.com +citysz.net +citytogo.com +cityup.org +citywo.com +cityy.com +civilcn.com +civilness.com +civiw.com +ciweek.com +ciweekly.com +ciwei.me +ciwei.net +ciweimao.com +ciweishixi.com +ciweiyuedui.com +ciwong.com +ciwork.net +cixibank.com +cixiedu.net +ciyew.com +ciyocon.com +ciyuan.men +cizip.com +cj-elec.com +cjavapy.com +cjcjw.com +cjcp.org +cjdcw.com +cjdropshipping.com +cjdx1.com +cjeduw.com +cjftb.com +cjgcedu.com +cjhb168.com +cjhospital.com +cjhxfund.com +cjienc.com +cjiit.com +cjjhb.com +cjjjs.com +cjjnff.com +cjk3d.net +cjkcgs.com +cjkhd.com +cjkj.ink +cjkz.com +cjlap.com +cjlhs.com +cjm.so +cjmakeding.com +cjmit.com +cjmx.com +cjn.com +cjnis.com +cjol.com +cjolimg.com +cjrcsc.com +cjs-lwh.love +cjsc.com +cjting.me +cjveg.com +cjxz.com +cjyun.club +cjyun.org +cjyyw.com +cjzkw.com +cjzy.net +cjzzc.com +ck100.com +ck180.net +ckair.com +ckck.vip +ckd.cc +ckd.so +ckd8.com +ckdzb.com +ckefu.com +ckernel.org +ckeyedu.com +ckgcjl.com +ckimg.com +ckjr001.com +ckmov.com +ckook.com +ckplayer.com +ckpoo.com +cksd888.com +cksic.com +ckuai.com +ckxsw.com +ckxx.net +ckzhijiaedu.com +cl-acg.com +cl-clw.com +cl-hs.com +cl-kongtiao.com +cl0438.com +cl1-cdn.origin-apple.com.akadns.net +cl1.apple.com +cl2-cn.apple.com +cl2.apple.com +cl2009.com +cl3-cdn.origin-apple.com.akadns.net +cl3.apple.com +cl3000.com +cl4-cdn.origin-apple.com.akadns.net +cl4-cn.apple.com +cl4.apple.com +cl5-cdn.origin-apple.com.akadns.net +cl5.apple.com +cl597.com +clabso.com +clady.cc +claiks.com +clanzx.net +claritywallpaper.com +class01.com +classmateer.com +clayidols.com +claymore.wang +clb6.net +clboss.com +clbu.club +clcindex.com +clclibrary.com +clcmw.com +clcyd.com +clean-cn.com +cleaninfo.com +clear-sz.com +clear888.com +clearaki.com +clearcrane.com +clearsky360.com +clewm.net +clewx.com +clf.red +clfile.com +clgc88.com +cli.im +click-v.com +click369.com +clicksdiy.com +clickserve.dartsearch.net +clicksun.net +clickwifi.net +client51.com +clientflow.apple.com +clientflow.apple.com.akadns.net +clientservices.googleapis.com +cliffordtrading.com +cliim.com +cliim.net +clinicmed.net +clink-ads.xyz +clinkworld.com +cliport.com +clled.com +clloz.com +clngaa.com +clocklab.tech +cloopen.com +cloopen.net +cloopm.com +closertb.site +clostone.com +clotfun.online +clotfun.xyz +clotheshr.com +clothjob.com +clothr.com +clouclip.com +cloud-cube.net +cloud-dns.net +cloud-dns.vip +cloud-frame.com +cloud-links.net +cloud-neofussvr.sslcs.cdngc.net +cloud-sun.com +cloudacc-inc.com +cloudajs.org +cloudangelfunds.com +cloudbility.com +cloudcc.com +cloudcdn.net +cloudcdns.com +cloudcdns.net +cloudcross.com +cloudcsp.com +clouddcs.com +clouddiffuse.xyz +clouddn.com +clouddream.net +cloudflarea.com +cloudgap.net +cloudgfw.com +cloudgfw.net +cloudglb.com +cloudglb.net +cloudgoing.com +cloudguarding.com +cloudhosts.xyz +cloudhua.com +cloudhvacr.com +cloudinnov.com +cloudinward.com +cloudiplc.com +cloudkirin.com +cloudleft.com +cloudlet.info +cloudmap.hk +cloudmes.io +cloudminds.com +cloudnapps.com +cloudp.cc +cloudpense.com +cloudpnr.com +cloudpre.org +cloudroom.com +cloudsation.com +cloudsea.org +cloudsee.com +cloudseeplus.com +cloudseetech.com +cloudserver01.com +cloudsgis.com +cloudsohu.net +cloudstack-china.org +cloudtcp.net +cloudtomicro.com +cloudtopo.com +cloudtrans.com +cloudtui.com +cloudv.cdnetworks.com +cloudvast.com +cloudvdn.com +cloudvip1.com +cloudvogue.com +cloudvse.com +cloudwise.com +cloudxns.com +cloudyee.com +cloudyo.net +cloudyouku.com +clpga.org +clsn.io +clssn.com +clto.cc +cltt.org +clubweixin.samsung.com +clusterdnsserver.com +clx360.com +clyric.com +clz.me +clzqlhj.com +clzycld.com +cm-analysis.com +cm-iov.com +cm233.com +cm3721.com +cmacredit.org +cmaif.com +cmall.com +cmanuf.com +cmb-leasing.com +cmbajia.com +cmbbao.com +cmbchina.biz +cmbchina.com +cmbchina.net +cmbimg.com +cmbuy10086.com +cmbwinglungbank.com +cmc168.com +cmcc-ecs.com +cmcc.in +cmcm.com +cmcm5.cc +cmcm5.com +cmcm55.cc +cmcmcdn.com +cmd5.com +cmd5.la +cmd5.org +cmda.net +cmdb.xyz +cmdrh.com +cmdschool.org +cmdw.vip +cmdy2020.com +cmechina.net +cmejob.com +cmenergyshipping.com +cmes.org +cmetamap.com +cmfchina.com +cmfish.com +cmfspay.com +cmft.com +cmfu.com +cmgadx.com +cmgame.com +cmge.com +cmgos.com +cmgrasp.com +cmhello.com +cmia.info +cmicapm.com +cmidc.net +cming.com +cmiyu.com +cmjz.net +cmljs.org +cmmim.com +cmnet-speed.com +cmnxt.com +cmo.so +cmoct.com +cmodes.com +cmol.com +cmpassport.com +cmpay.com +cmread.com +cmri.cc +cms1924.org +cmsblogs.com +cmschina.com +cmscmc.org +cmseasy.cc +cmsfg.com +cmsjournal.net +cmskcrm.com +cmsky.com +cmsn.biz +cmspapp77.com +cmstop.com +cmswj.com +cmsyuanma.com +cmt178.com +cmt7.com +cmtdi.com +cmtech.net +cmtrq.com +cmu1h.com +cmuliang.com +cmvtc.com +cmwb.com +cmwin.com +cmxrcw.com +cmxwsj.com +cmzd.com +cmzj.net +cmzy168.com +cmzyk.com +cn-bowei.com +cn-c114.net +cn-em.com +cn-fe.com +cn-healthcare.com +cn-java.com +cn-lcd.com +cn-msedge.net +cn-mw.com +cn-office.com +cn-psy.com +cn-railway.net +cn-roofexpert.com +cn-soft.com +cn-truck.com +cn-visa.com +cn-xbn.com +cn-zhentai.com +cn.bing.com +cn.bing.net +cn.msi.com +cn.net +cn.pandora.net +cn.vc +cn.windowssearch.com +cn0-6.com +cn00.com +cn006.com +cn010w.com +cn0434.com +cn0556.com +cn0713.com +cn0851.com +cn0917.com +cn12333.com +cn12365.org +cn163.net +cn168.com +cn18k.com +cn2-cn2.com +cn20.com +cn21edu.com +cn22.net +cn2che.com +cn314.com +cn357.com +cn360cn.com +cn365c.com +cn365d.com +cn365e.com +cn3k5.com +cn3v.net +cn3wm.com +cn4e.com +cn51.com +cn5135.com +cn539.com +cn68.com +cn6szx.com +cn716.com +cn8fre.com +cn99.com +cn9f.com +cna5.com +cnaaa15.com +cnaaa6.com +cnaaa7.com +cnaaa9.com +cnacg.cc +cnad.com +cnaf.com +cnagcoin.com +cnaho.com +cnaicpa.org +cnaidai.com +cnaidc.com +cnaifm.com +cnair.com +cnal.com +cname-cdn.com +cname123.net +cnamegslb.com +cnantennas.com +cnanzhi.com +cnaomeng.com +cnautofinance.com +cnautonews.com +cnbabylon.com +cnball.net +cnbanbao.com +cnbaowen.net +cnbct.org +cnbeta.com +cnbetacdn.com +cnbetnew.com +cnbidding.com +cnbigcloud.com +cnbiocell.com +cnbis.com +cnbis.org +cnbizmedia.com +cnbksy.com +cnbkw.com +cnblogs.com +cnblogsc.com +cnblogse.com +cnbluebox.com +cnbmys.com +cnbntv.com +cnboat.com +cnbooks.org +cnbp.net +cnbuses.com +cnbw114.com +cnbzlf.com +cnbzol.com +cnbzs.com +cnc-gd.net +cnca.net +cncc.bingj.com +cnccac.com +cnccchina.com +cncdn.com +cncdzn.com +cncelab.com +cnceo.com +cncgw.org +cnchainnet.com +cnchanran.com +cncheng.com +cnchezhan.com +cnchu.com +cncico.com +cnciyuan.com +cncjmjg.com +cncloud.com +cncmrn.com +cncms.com +cncn.com +cncn.net +cncnbd.com +cncncloud.com +cncncn.com +cncnet.net +cncnki.com +cncolour.com +cncondom.com +cncookernet.com +cncoolm.com +cncopter.com +cncotton.com +cncourt.org +cncraftinfo.com +cncrk.com +cncrony.com +cncrypt.com +cncsj.net +cnctui.com +cnczjy.com +cnd8.com +cndao.com +cndata.com +cndatacom.com +cndds.com +cndesign.com +cndfilm.com +cndhotels.com +cndids.com +cndingxi.com +cndip.com +cndjyswlw.com +cndkc.net +cndns.com +cndns5.com +cndog.net +cndoornet.com +cndoors.com +cndrynet.com +cndsnet.com +cndss.net +cndtlab.com +cndtour.com +cndw.com +cndy.org +cndzq.com +cndzys.com +cnecc.com +cnedres.org +cneeex.com +cnelc.com +cnelecom.net +cnelite.org +cneln.net +cnemb.com +cnena.com +cnenergy.org +cneol-dns.net +cnep001.com +cnepaper.com +cnepaper.net +cnerlang.com +cnern.org +cnesf.com +cnetea.net +cnetec.com +cnetsec.com +cneuol.com +cnevi.com +cnexp.net +cnexps.com +cneyoo.com +cnezsoft.com +cnfanews.com +cnfantasia.com +cnfaxie.org +cnfczn.com +cnfdlt.com +cnfeat.com +cnfeelings.com +cnfeol.com +cnffi.com +cnfiberhome.com +cnfilternet.com +cnfina.com +cnfirst.org +cnfish.com +cnfisher.com +cnfla.com +cnfmp.net +cnfol.com +cnfol.hk +cnfolimg.com +cnforever.com +cnforex.com +cnfpzz.com +cnfq.com +cnfqy.com +cnfrag.com +cnfruit.com +cnfsae.com +cnfuyin.org +cnfxj.org +cnfygy.com +cnfyyj.com +cnfzflw.com +cngal.org +cngaosu.com +cngb.org +cngba.com +cngbdl.com +cngdwx.com +cnggt120.com +cngin.com +cngnu.net +cngold.org +cngoldres.com +cngrain.com +cngreenfield.com +cngrok.com +cngui.com +cngulu.com +cnh5.net +cnhacker.com +cnhaio.com +cnhalo.net +cnhan.com +cnhandan.com +cnhangpaiw.com +cnhanxing.com +cnhaoshengyi.com +cnhaskell.com +cnhbgt.com +cnhbstock.com +cnhd.com +cnhetianyu.com +cnhhl.com +cnhls.com +cnhlsxe.com +cnhm.net +cnhmsq.com +cnhnb.com +cnhongke.org +cnhonker.com +cnhowotruck.com +cnhsjz.com +cnhszx.com +cnhuadong.net +cnhuanya.com +cnhubei.com +cnhutong.com +cnhvacrnet.com +cnhwjt.com +cnhzz.com +cniaas.com +cniao5.com +cniao8.com +cnibx.com +cnicif.com +cnidea.net +cnimg.elex.com +cninfo.net +cninnovatel.com +cninternetdownloadmanager.com +cnipa-gd.com +cnipa-hb.com +cnipa-pesc.com +cnipa-sc.com +cnipa-tj.com +cnipai.com +cnipr.com +cnisland.com +cnisp.org +cnit-research.com +cnitblog.com +cniteyes.com +cniti.com +cnitom.com +cnitpm.com +cnjccrusher.com +cnjcs.com +cnjdz.net +cnjingbu.com +cnjingchu.com +cnjiwang.com +cnjiyin.com +cnjj.com +cnjjl.com +cnjjsd.com +cnjjwb.com +cnjlc.com +cnjnsb.com +cnjob.com +cnjoel.com +cnjournals.com +cnjpetr.org +cnjunzilan.com +cnjxol.com +cnjyky.com +cnjywl.com +cnjzb.com +cnjzjj.com +cnk8.com +cnkaile.com +cnkang.com +cnkefa.com +cnkeyboard.com +cnkeyboard.net +cnki.mobi +cnki.net +cnki.vip +cnkicheck.info +cnkicheck.org +cnkiki.net +cnkinect.com +cnkiorg.com +cnkirito.moe +cnkis.net +cnkitop.com +cnkivip.net +cnkix.com +cnkizw.com +cnklog.com +cnknowledge.com +cnkok.com +cnkore.com +cnkuai.com +cnky.net +cnlangier.com +cnlaw.net +cnledw.com +cnlhzb.com +cnlianjie.com +cnlid.net +cnlight.com +cnlightnet.com +cnlinfo.net +cnlist.com +cnlist.org +cnlive.com +cnliveimg.com +cnllz.com +cnlogo8.com +cnlty.com +cnluqiao.com +cnmanhua.com +cnmattson.com +cnmcom.com +cnmdy.com +cnmeishu.com +cnmeiwei.com +cnmia.org +cnmill.com +cnmineqs.net +cnmo.com +cnmobile.net +cnmods.org +cnmsl.net +cnmsn.net +cnmstl.net +cnmtpt.com +cnmxk.com +cnmysql.com +cnnaihuo.com +cnnb.com +cnnbfdc.com +cnndns.com +cnnerv.com +cnnetsec.com +cnnewss.com +cnnfootballclub.com +cnnmol.com +cnnorip.org +cnnot.com +cnnovels.com +cnnpz.com +cnns.net +cnntt.com +cnnuo.com +cnobol.com +cnodejs.org +cnoee.com +cnoenet.com +cnohd.com +cnoic.com +cnoil.com +cnokcn.com +cnol.cc +cnolnic.com +cnolnic.net +cnonline.org +cnookr.com +cnool.net +cnophol.com +cnops.xyz +cnosr.com +cnoswiki.com +cnoutdoor.com +cnpaf.net +cnpatent.com +cnpc-hy.com +cnpenjing.com +cnpereading.com +cnpet.cc +cnpghouse.com +cnphar.net +cnpharm.com +cnphotos.net +cnphp.info +cnpickups.com +cnpkm.com +cnplugins.com +cnpmjs.org +cnponer.com +cnpou.com +cnpowdernet.com +cnpowdertech.com +cnpps.org +cnprofit.com +cnpubg.com +cnpusi.com +cnpv.com +cnpython.com +cnpythoner.com +cnqc.com +cnqd.net +cnqiang.com +cnqiaoxiang.com +cnqichun.com +cnqjc.com +cnqjw.com +cnqr.org +cnquanjing.com +cnradio.com +cnrainbird.com +cnraksmart.com +cnrancher.com +cnratchet.com +cnrceo.com +cnrcloudfm.com +cnrdm.com +cnreagent.com +cnree.com +cnrencai.com +cnrepair.com +cnrepark.com +cnrexue.com +cnrmall.com +cnrmobile.com +cnrouter.com +cnrunda.com +cnrv.io +cns.hk +cnsaes.org +cnsal.com +cnsat.net +cnsav.com +cnsb.org +cnsc8.com +cnsce.net +cnscee.com +cnscfa.com +cnscore.com +cnsdjxw.com +cnsdtv.com +cnsdzb.com +cnseay.com +cnseeq.com +cnsesan.com +cnsfk.com +cnshipnet.com +cnsikao.com +cnsilkworm.com +cnsimin.com +cnskyit.com +cnsnpj.com +cnso.org +cnsoc.org +cnsoe.com +cnsoftbei.com +cnsoftnews.com +cnsolomo.com +cnsourcing.org +cnspeed.com +cnspeedtest.com +cnspeedtest.net +cnsphoto.com +cnstea.com +cnstock.com +cnsun.cc +cnsun.net +cnsuning.com +cnsunp.com +cnsuv.com +cnsyhz.com +cnsynews.com +cnsyyx.com +cntagore.com +cntaiping.com +cntan.net +cntapp.com +cntexjob.com +cntheory.com +cntiaoliao.com +cntofu.com +cntopgear.com +cntoplead.com +cntplus.com +cntrades.com +cntranslators.com +cntronics.com +cntuw.com +cntv.com +cntwg.com +cntxw.com +cnuninet.net +cnutcon.com +cnuuu.com +cnv168.com +cnvcs.com +cnvf.com +cnvps.com +cnvr-expo.com +cnwa.com +cnwage.com +cnwaking.com +cnwaternews.com +cnwb.net +cnwdjj.com +cnwdsy.com +cnwear.com +cnwebe.com +cnweblog.com +cnwebshow.com +cnweilo.com +cnwen.net +cnwenshi.net +cnwest.com +cnwhc.com +cnwhotel.com +cnwindows.com +cnwinenews.com +cnwnews.com +cnwtn.com +cnwxw.com +cnxad.com +cnxct.com +cnxds.com +cnxhacker.com +cnxiangyan.com +cnxiantao.com +cnxianzai.com +cnxiaoyuan.com +cnxibu.com +cnxile.com +cnxingoplastics.com +cnxishui.net +cnxk.com +cnxklm.com +cnxnmy.com +cnxuntu.com +cnyanglao.com +cnyicheng.com +cnyigui.com +cnyings.com +cnyipu.com +cnyouhao.com +cnys.com +cnyu.com +cnyugan.com +cnyuming.com +cnyw.net +cnywinfo.com +cnyxs.com +cnzao.com +cnzazhi.net +cnzhanting.com +cnzhanzhang.com +cnzhengmu.com +cnzhibo.com +cnzhiyuanhui.com +cnzjol.com +cnzlapp.com +cnzsqh.com +cnzsyz.com +cnzweal.com +cnzxsoft.com +cnzyao.com +cnzz.com +cnzz.net +cnzznn.com +cnzznz.com +co-effort.com +co-inclusion.org +co-mall.net +co188.com +co188cdn.com +coalcn.com +coantec.com +coaoo.com +coatingol.com +cobbersz.com +cobenet.com +cobkl.com +cocas.cc +cocblo.com +cocccc.vip +coccccc.cc +cocimg.com +coco413.com +cocoachina.com +cocodiy.com +cocomanga.com +coconuet.com +cocophp.com +cocoren.com +cocos.com +cocos.org +cocos2d-x.org +cocos2d.org +cocos2dev.com +cocos2dx.net +cocosbcx.net +cocostudio.org +cocounion.com +cocss.com +coctotoo.com +codante.org +code-by.org +code.sh +code4apk.com +code668.com +codeaha.com +codebe.org +codebus.net +codebye.com +codecomeon.com +codedefault.com +codedocs.net +codedq.net +codedream.xin +codeforge.com +codehy.com +codeisbug.com +codejie.net +codekissyoung.com +codekk.com +codeku.me +codelover.link +codemany.com +codemart.com +codemm.net +codeok.com +codepiano.com +codepku.com +codeplayer.vip +codepub.com +coder.work +coder100.com +coder4.com +coder55.com +coderbee.net +coderclock.com +codercto.com +coderdock.com +coderhuo.tech +coderli.com +coderplanets.com +coderprepares.com +codersec.net +coderxing.com +coderyuan.com +coderzh.com +codes51.com +codesec.net +codesky.net +codesoft.hk +codesoftchina.com +codesoso.com +codespu.com +codess.cc +codetc.com +codeweblog.com +codewenda.com +codewoody.com +codezyw.com +coding-newsletter.com +coding-pages.com +coding.me +coding.net +coding.red +codingapp.com +codingbelief.com +codingboy.com +codingdao.com +codingdict.com +codingke.com +codinglabs.org +codingpy.com +codingserf.com +codingsky.com +codingwhy.com +codingyang.com +codoon.com +codooncdn.com +codrim.net +cofco.com +cofcosp.com +cofeed.com +cofess.com +coffee-hdl.com +coffee-script.org +coffee08.com +cofly.com +cofortest.com +cogcpa.org +cogitosoft.com +cogobuy.com +cogonline.com +cohim.com +coilmx.com +coin007.com +coin163.com +coinall.live +coinall.ltd +coincola.net +coincsd.com +coinnice.com +coinsky.com +coinvs.com +cojia.net +cokemine.com +cokll.com +col.ink +coladrive.com +colafile.com +colahotpot.com +colasmart.com +coldfunction.com +coldlar.com +colineapp.com +colipu.com +colobu.com +color365.com +colorbird.com +colorfulltech.net +colorgg.com +coloros.com +coloros.net +colorv.com +colourfulchina.com +colourhs.com +colourlife.com +com-dy1-youku.com +com-rail.com +com.fi +com.tv +com21.com +com4loves.com +comac.cc +comba.xyz +combomen.com +combpm.com +combss.com +comebond.com +comefilm.com +comeken.com +comet.cc +comeyes.com +comfortzone.hk +comiai.com +comic520.com +comicdd.com +comicer.com +comicfans.net +comiclub.com +comicocn.com +comicst.com +comicv.com +comicyu.com +comidu.com +comiis.com +comingchina.com +comingspace.com +comlan.com +comlbs.com +commchina.net +communicatte.com +comocloud.net +companydns.com +compassedu.hk +compevt.com +compgoo.com +compressor-pld.com +comra.org +comsenz-service.com +comsenz.com +comseoer.com +comsharp.com +comsol.com +conbagroup.com +conchdesktop.com +concox.net +configuration.apple.com +configuration.apple.com.akadns.net +confuciusinstitute.net +cong9184.com +congm.in +congrongfund.com +congyicn.com +congzao.com +congzhi.com +connectivitycheck.gstatic.com +connector-systems.com +conoha.vip +conohavps.com +conpak.com.hk +conpersh.com +conshow.com +console-integration.cdnetworks.com +console.cdnetworks.com +contentchina.com +contentchina.net +contiez.com +conuo.com +convergemob.com +convertlab.com +conwos.com +conyedit.com +coobar.com +coocaa.com +coocaatv.com +coocare.com +cooch3d.com +coocox.org +coodir.com +coodub.com +coofans.com +cooffee.net +coohua.com +cookbookchina.com +cookcai.com +cookie4you.com +cookietang.com +cool-admin.com +cool-de.com +cool80.com +coolact.net +coolaf.com +coolapk.com +coolapkmarket.com +coolbook.cc +coolbuy.com +coolchuan.com +coolcode.org +coolcode.tech +coolcoolcloud.com +cooldock.com +cooldu.com +cooleasy.net +coolecho.net +coolfd.com +coolgamebox.com +coolgua.net +coolguang.com +coolkit.cc +coolkk.net +coolling.net +coolnull.com +coolook.org +coolool.com +coolpad.com +coolqi.com +coolrar.com +coolsc.net +coolsdream.com +coolsite360.com +coolsphoto.com +cooluc.com +coolwarmsy.com +coolwp.com +coolxap.com +coolxcloud.com +coolyun.com +coolzou.com +coomix.net +coooz.com +coophone.com +coorain.net +coorfeon.com +cootek.com +cootekos.com +cootekservice.com +coovbbs.com +coovee.com +coovee.net +cooxs.com +coozhi.com +cop.cdnetworks.com +copyedu.com +copyfuture.com +copymanga.info +copymanga.net +copymanga.org +cor-games.com +corachic.com +coralsec.com +corebai.com +coreldrawchina.com +corp.google.com +corpautohome.com +corpease.net +corpize.com +corpring.com +corpus4u.org +cortexfx.bnpparibas.com +cos-show.com +cosco.com +coscon.com +coscoshipping.com +cosedm.com +cosfund.com +coshelper.com +coshi.cc +coship.com +cosize.com +cosmoplat.com +cosoar.com +cosplay8.com +cosplayla.com +cosyjoy.com +coubei.com +counect.com +couns.com +couplefish.com +coupon996.com +couponmaster.store +coursegraph.com +covcec.com +coventrynv.com +coverweb.cc +covinda.com +covtv.com +cowarobot.com +cowlevel.net +cowtransfer.com +coyuk.com +cozumpartisi.com +cp127w.com +cp365.org +cp455.com +cpajia.com +cpass.com +cpatrk.net +cpbao.com +cpc.cc +cpcccac.com +cpcni.net +cpcw.com +cpcwe.com +cpdad.com +cpdaily.com +cpdyj.com +cpecc.net +cpeol.net +cpgzh.com +cphoto.net +cphoto.org +cpiano.com +cpiaoju.com +cpiccdn.com +cpicsz.com +cpihualai.com +cpitsh.org +cpjltx.com +cpk01.com +cplchain.com +cpo.xyz +cpo2o.com +cpolar.com +cpolar.io +cpolive.com +cpooo.com +cpp-prog.com +cpp114.com +cppblog.com +cppcns.com +cppentry.com +cppfoto.com +cpph.com +cppinfo.com +cpplay.com +cpplive.com +cppoc.com +cpppc.org +cpppf.org +cppwh.com +cps1688.com +cps800.com +cps88.cc +cpsbeijing.org +cpsct.com +cpsenglish.com +cptae.com +cpu668.com +cpubbs.com +cpupack.com +cpvjob.com +cpxco.net +cpxsxk.com +cpython.org +cq-wnl.com +cq.cm +cq315house.com +cq3a.com +cq5135.com +cq6.com +cq6969.com +cqaaa.com +cqae.com +cqaso.com +cqbdfeng.com +cqbm2007.com +cqbnedu.com +cqbnrc.com +cqbntv.com +cqbuchouhua.com +cqbyer.net +cqbys.com +cqcaee.com +cqcatr.com +cqcb.com +cqcbank.com +cqccn.com +cqcklib.com +cqcoal.com +cqcp.net +cqcqcq.com +cqcsic.com +cqcsrc.com +cqcxdl.com +cqcy.com +cqcyls.com +cqdadi.com +cqdai.com +cqdailynews.com +cqddnap.com +cqddzx.com +cqdent.com +cqdting.com +cqdzw.com +cqedo.com +cqemme.com +cqfire.com +cqfuzhuang.com +cqfzb.org +cqgc.com +cqggzy.com +cqgmfw.com +cqgz.com +cqh2o.com +cqhansa.com +cqhaotang.com +cqhcbk.com +cqhimalayanky.com +cqhkcdns.com +cqhpoldi.com +cqhxgf.com +cqhxzb.com +cqhyd.com +cqhydraulic.com +cqhyky.com +cqindex.com +cqivip.com +cqjbrc.com +cqjet.com +cqjiaz.com +cqjj.net +cqjjlsy.com +cqjjnet.com +cqjnw.org +cqjob.com +cqjsxx.com +cqjy.com +cqkdtui1.com +cqkeb.com +cqkhg.com +cqkjwx.com +cqklsm.com +cqkqinfo.com +cqkundian.com +cqkx.com +cqkytq.com +cqleba.com +cqlglg.com +cqliving.com +cqlp.com +cqlyckj.com +cqmama.net +cqmas.com +cqmcu.com +cqmj.org +cqmjkjzx.com +cqmmgo.com +cqmw.com +cqnc.cc +cqncnews.com +cqnews.net +cqnhn.com +cqnu0001.com +cqpa.org +cqpbx.com +cqph.com +cqpix.com +cqpost.com +cqqc3.com +cqqigao.com +cqqiyi.com +cqqnb.net +cqqp.com +cqqsl.com +cqqsyy.com +cqqzgrh.com +cqrc.net +cqrcb.com +cqscmy.net +cqshangceng.com +cqshenou.com +cqskl.com +cqslib.org +cqslsc.com +cqsms.net +cqsoft.org +cqsxedu.com +cqtally.co +cqtally.com +cqtaotan.com +cqtea.com +cqtransit.com +cqtresearch.com +cqttech.com +cquae.com +cquc.net +cqudp.com +cqvip.com +cqvip.vip +cqw.cc +cqwangwo.com +cqwenbo.com +cqwin.com +cqwulong.net +cqxdfpr.com +cqxh120.com +cqxiehe.com +cqxingyun.com +cqxxzwj.com +cqxyfl.com +cqyc.net +cqyestar.com +cqyeze.com +cqyfgs.com +cqyingang.com +cqyouloft.com +cqyu.com +cqyzqsy.com +cqzhanguan.com +cqzhongxingyuan.com +cqzk.net +cqzls.com +cqzq6.com +cqzww.com +cqzyx.net +cqzz.net +cr-expo.com +cr-nielsen.com +cr-power.com +cr11gcsgd.com +cr11gee.com +cr173.com +cr175.com +cr18g.com +cr19gj.com +cr6868.com +crabchina.com +crackersta.com +craftcontact.com +crandom.com +crazepony.com +crazydyz.cc +crazyenglish.org +crazyflasher.com +crazyphper.com +crazypm.com +crbeverage.com +crc.com.hk +crc.hk +crc81.com +crcapital.info +crcrfsp.com +crct.com +cre.net +cread.com +creatby.com +createcdigital.com +creati5.com +crec4.com +crec4mc.com +crecg.com +crecu.com +credibleglass.com +credit-cras.com +creditcn.com +creditsailing.com +creditxb.com +creke.net +creo-support.com +crestgps.com +crestv.com +crewcn.com +crfchina.com +crfsdi.com +crgecent.com +crgy.com +cric.com +cric2009.com +cricbigdata.com +crifst.com +crimoon.net +crispstata.com +crjfw.com +crl.globalsign.net +crl.kaspersky.com +crl.pki.goog +crlcn.com +crlf0710.com +crlg.com +crm.cc +crm1001.com +crmch.com +crmclick.com +crmeb.com +crmeb.net +crmg-ms.com +crmgz.com +crmip.com +crmrj.net +crmvscrm.com +crnds.com +crnews.net +crodigy.com +crossmo.com +crossoverchina.com +crosswaycn.com +crowya.com +crpaas.com +crrcgc.cc +crrjz.com +crs811.com +crsc.cc +crsky.com +crsn168.com +cruelcoding.com +crvic.org +crxdl.com +cryptape.com +crystalcg.com +crystaledu.com +cryuantafund.com +cryy120.com +cs-air.com +cs-cjl.com +cs-show.com +cs0799.com +cs090.com +cs1212.xyz +cs12333.com +cs27.com +cs2c.com +cs2ccloud.com +cs30.net +cs528.com +cs53.com +csadec.com +csaimall.com +csair.com +csairdutyfree.com +csairholiday.com +csairshop.com +csapa.org +csaspx.com +csau.com +csbdkj.com +csbidding.com +csbnj.net +csc108.com +csc86.com +cscan.co +cscatv.com +cscdf.org +cscec.com +cscec1b.net +cscec5b3.com +cscecst.com +cscsf.com +cscyw.com +csdc.info +csdeshang.com +csdh.com +csdian.net +csdjy.com +csdn.com +csdn.net +csdndx.com +csdndx.net +csdnxiazai.xyz +csdqp.com +csdxcw.com +csdyx.com +csea767.com +csebank.com +csehms.com +csflgg.com +csftyy.com +csgm168.com +csgokai.com +csgpc.org +csgwbn.com +csharpkit.com +cshixi.com +cshnkj.com +cshope.net +cshu360.com +cshxdc.com +cshzw.com +csi.gstatic.com +csiaexpo.com +csic-711.com +csic-ljtech.com +csic612.com +csic6801.com +csic76.com +csiccq.com +csicmakers.com +csiea.net +csj309.vip +csjcs.com +csjplatform.com +csjwang.com +csjyzq.com +cskule.com +cskxjk.com +cslfans.com +cslou.com +cslyrc.com +csmall.com +csmama.net +csmar.com +csmbcx.com +csmc-cloud.com +csmscon.com +csnbgsh.com +cspda.net +cspengbo.com +cspiii.com +cspro.org +cspruc.com +cspxw.com +csqc.cc +csqnews.com +csrcare.com +csrcbank.com +csrcsc.com +csrda.com +csres.com +csrgm.com +csrme.com +csrpme.com +css-js.com +css.network +css6.com +css88.com +cssa-swansea.com +cssaaa.com +csseplastic.com +cssf.com +cssf.net +cssforest.org +cssfz.com +cssg-ahi.com +cssgxmj.com +cssj.fun +csslcloud.net +cssmagic.net +cssmoban.com +cssmxx.com +cssplus.org +cssq33.com +cssqt.com +csstoday.net +csswgq.com +cssxt.com +cssyq.com +cssyzxx.com +cstat.apple.com +cstccloud.org +cstcloud.net +cstcq.com +cstea.org +cstech.ltd +csteelnews.com +cstimer.net +csto.com +cstong.net +cstriker1407.info +csuboy.com +csuedu.com +csundec.com +csvclub.org +csvsc.com +csvw.com +csw18.com +csweigou.com +cswsadlab.com +csxcdj.com +csxdf.com +csxingfutemple.org +csxnews.com +csxsjc.com +csxtedu.com +csxww.com +csyangchen.com +csyestar.com +csytv.com +cszb556.com +cszexin.com +cszit.com +cszsjy.com +cszx.com +cszybdf.com +cszykt.com +cszywl.net +cszzjc.com +ct-cdm.com +ct-laser.com +ct10000.com +ct108.com +ct597.com +ctaca.com +ctags.net +ctans.com +ctaoci.com +ctaweb.org +ctb50.com +ctbjia888.com +ctc100.com +ctcefive.com +ctcmo.com +ctcnn.com +ctcnpa.com +ctcontents.com +ctcwri.org +ctdc-itshare.org +ctdcn.com +ctdisk.com +ctdns.net +ctdsb.com +ctdsb.net +cteaw.com +ctecdcs.com +ctex.org +ctfile.com +ctfile.net +ctflife.com +ctfmall.com +ctfo.com +ctfund.com +ctghealthy.com +ctghr.com +ctguqmx.com +cthnet.com +cthuwork.com +cthuwork.net +cthy.com +cti-cert.com +ctibet.com +ctiforum.com +ctiku.com +ctils.com +ctime.com +ctisd.com +ctjin.com +ctjsoft.com +ctlcdn.com +ctldl.windowsupdate.com +ctlife.tv +ctmon.com +ctn1986.com +ctnz.net +ctobsnssdk.com +ctocio.com +ctoclub.com +ctoutiao.com +ctrip-lvyou.com +ctrip-ttd.hk +ctrip.co.id +ctrip.co.kr +ctrip.com +ctrip.my +ctrip.sg +ctripa.com +ctripbiz.com +ctripbuy.hk +ctripcorp.com +ctripgslb.com +ctripins.com +ctripqa.com +ctrlqq.com +ctrmi.com +ctsbw.com +ctsec.com +ctsho.com +ctsscs.com +ctssr.com +ctsto.com +ctszh.com +cttip.org +cttq.com +cttsd.com +cttv.co +ctvpost.com +ctvwx.com +ctwxc.com +ctxyw.com +ctycdn.com +ctyo.com +ctzrnet.com +cu-air.com +cu321.com +cuaa.net +cuanhuang.com +cuantianhou.net +cuav.net +cubead.com +cubejoy.com +cubie.cc +cucdc.com +cuchost.com +cuctv.com +cudaojia.com +cuebzzy.com +cuelog.com +cufe-ifc.org +cufeyk.com +cufou.com +cug2313.com +cugstore.com +cuihu100.com +cuihuan.net +cuimm.com +cuiniaoedu.com +cuiniuhui.com +cuipengfei.me +cuipixiong.com +cuiqingcai.com +cuirushi.com +cuishuai.cc +cuiuc.com +cuiweijuxing.com +cuixx.com +cuiyongjian.com +cuketest.com +cul-studies.com +culaiwan.com +cumtenn.com +cumulon.com +cun58.com +cunan.com +cuncun8.com +cuncunle.com +cuncx.com +cunminyi.com +cunnar.com +cunyoulu.com +cunzj.com +cuobiezi.net +cuour-edu.com +cuour.com +cuour.org +cupdapp.com +cupdata.com +cupdns.com +cupinn.com +cuplayer.com +cureedit.com +curlc.com +curryhuang.com +cusdvs.net +custeel.com +cut35.com +cutecomm.com +cutefishos.com +cuteng.com +cutercounter.com +cutout.pro +cutowallpaper.com +cutv.com +cuuhn.com +cuzz.site +cvchina.info +cvchome.com +cvcri.com +cvicse.com +cvicseks.com +cvmart.net +cvnad.com +cvonet.com +cvp-platform.com +cvrobot.net +cvte.com +cvtvcn.com +cw100.com +cwbpsi.com +cwddd.com +cwdma.org +cwebgame.com +cwems.com +cwestc.com +cwmining.com +cwq.com +cwqu.com +cwroom.com +cwyan.com +cwziyouren.com +cx312.com +cx580.com +cx930.net +cxacg.com +cxas.com +cxbz958.com +cxc233.com +cxcc.me +cxcyds.com +cxd-auto.com +cxdq.com +cxfuwu.com +cxgame.net +cxh99.com +cxhl365.net +cxhr.com +cximg.com +cxkjjy.com +cxmld.com +cxmms.com +cxmt.com +cxmtc.net +cxsw3d.com +cxta.com +cxthhhhh.com +cxtuku.com +cxtxt.com +cxvn.com +cxw.com +cxwl.com +cxwt103.com +cxwt104.com +cxwt105.com +cxwt106.com +cxwt113.com +cxwwhyc.com +cxxjs.com +cxy61.com +cxy7.com +cxyd.net +cxyfjy.com +cxyl.org +cxylfc.com +cxymsg.com +cxyob.com +cxytiandi.com +cxyxiaowu.com +cxyxwl.com +cxyym.com +cxz.com +cxz3d.com +cxzg.com +cxzudwk.com +cxzw.com +cxzww.com +cy-cdn.com +cy-email.com +cy.com +cy12301.com +cy1990.com +cy2009.com +cy52.com +cy52.org +cy580.com +cy865.com +cy88.com +cy887.com +cyagen.com +cyanhillcapital.com +cyb-bot.com +cyb-cie.com +cyb520.com +cyb800.com +cyberway-china.net +cybtc.com +cybtc.info +cybtc.net +cycares.com +cychaiqian.com +cyclingchina.net +cyclone-robotics.com +cyclonemoto.com +cycnet.com +cycoi.com +cycoo.com +cycyuan.com +cydf.com +cydiakk.com +cydiami.com +cydow.com +cydp5.com +cyedu.org +cyegushi.com +cyfeng.com +cyfengchao.com +cyhd.net +cyhm.com +cyhone.com +cyht168.com +cyhx98.com +cyidc.cc +cyikao.com +cyjcloud.com +cyjn.net +cyjnsy.com +cyjzzd.com +cyk-cable.com +cylong.com +cymh8.com +cynee.net +cynovan.com +cyol.com +cyol.net +cyou-inc.com +cyoupic.com +cypatent.com +cypmedia.com +cypresstel.com +cyprestar.com +cyqyzx.com +cyruc.com +cysq.com +cyss19.com +cysua.com +cytcard.com +cytcm.com +cyts.com +cytsgroup.com +cytsls.com +cytstibet.com +cyttc.org +cyudun.net +cyuew.com +cyuyan100.com +cywetc.com +cyy18.com +cyyizuo.com +cyypscl.com +cyyself.name +cyysjm.com +cyyz.org +cyzm.net +cz-hffm.com +cz-toshiba.com +cz-yk.com +cz.cc +cz2sc.com +cz365.com +cz8.com +cz89.com +czainuo.com +czb365.com +czbanbantong.com +czbank.com +czbanmutian.com +czbq.net +czbtv.com +czbx18.com +czcac.com +czcarbon.com +czchuanlin.com +czcid.com +czcqly.com +czctech.com +czcyme.com +czdingming.com +czdrbz.com +czds.net +czedu.com +czepb.com +czfcw.com +czfdc.com +czfesco-mg.com +czggsj.com +czgjj.com +czgjj.net +czgongzuo.com +czie.net +czifi.org +czitc.com +czjake.com +czjdu.com +czjpw.com +czjsy.com +czkbdq.net +czkingdee.com +czlxgc.net +czmc.com +cznewcom.com +czongyi.com +czopen.com +czpoly.com +czqfloor.com +czrj.com +czrxw.com +czry888.com +czsbtjx.com +czse7cxw.xyz +czsrc.com +czssx.com +cztour.com +cztv.com +cztv.tv +cztvcloud.com +czur.com +czvv.com +czvv.net +czwsg5.com +czxixi.com +czxsss.com +czxy.com +czyhq.com +czyooda.com +czyxba.com +czzsw.com +czzy-edu.com +d-controls.com +d-ctrip.com +d-heaven.com +d-prototype.com +d.cg +d03jd.com +d0evi1.com +d1222.com +d17.cc +d1cm.com +d1com.com +d1cy.com +d1ev.com +d1fm.com +d1lx.com +d1net.com +d1sm.net +d1tele.com +d1xf.net +d1xn.com +d1xz.net +d1ye.com +d20.net +d2fan.com +d2fbf.com +d2film.com +d2kdi2ss.com +d2scdn.com +d2shost.com +d3ch.com +d3cn.net +d3dweb.com +d3f.com +d3iz9md.com +d3skg.com +d3tt.com +d3zone.com +d4000.com +d586.com +d5h.net +d5power.com +d5wx.com +d65d6.com +d777.com +d77777777.com +d7baike.net +d7ol.com +d7vg.com +d8th.com +da-qian.com +da-quan.net +da88.net +daanbar.com +daba.com +dabache.org +dabaicai.com +dabaicai.org +dabaicai.pw +dabaicai.shop +dabangm.com +dabangp.com +dabangq.com +dabao123.com +dabaoku.com +dabieshu.com +dabin69.com +dabingseo.com +dabjy.com +daboluo.net +dabusi.com +dacai.com +dacankao.com +dacankao.net +dachanet.com +dachenglaw.com +dachengnet.com +dachengzi.net +dachuizichan.com +dachuw.com +dachuw.net +dadaabc.com +dadaabcc.com +dadabew.com +dadagame.com +dadagem.xyz +dadaizi.com +dadajiasu.com +dadajuan.com +dadakan.com +dadaojiayuan.com +dadayou.com +dadclab.com +daddymami.net +dadetong.com +dadianstudio.com +dadicinema.com +dadijilu.com +dadipedia.com +dadiwang.com +dadizq.com +dadou.com +dadoubao.com +dadunet.com +daf-rs.com +dafa53.com +dafaji.com +dafang24.com +dafangya.com +dafanshu.com +dafayu.com +dafhr.com +dafork.com +dafy.com +dagangcheng.com +dagongcredit.com +dagongnet.com +daguangnews.com +dagufood.com +daguu.com +daguzhe.com +dahainan.com +dahaiyang.com +dahanghaiol.com +dahangzhou.com +dahanwl.com +dahanyu.com +daheapp.com +dahecc.com +dahecube.com +dahei.com +dahelj.com +daheng-image.com +daheng-imaging.com +daheng-imavision.com +dahengit.com +dahepark.com +dahepiao.com +daheshui.com +dahongba.net +dahongpaochaye.com +dahouduan.com +dahua8.com +dahuaab.com +dahuaddns.com +dahuangmei.com +dahuatech.com +dahuawang.com +dahuifuwu.com +dahuitu.net +dahulu.com +dahuoji.biz +dai35.com +dai361.com +dai911.com +daibi.com +daichuqu.com +daicuo.cc +daicuo.co +daicuo.net +daicuo.vip +daicuo.wang +daidaitong.com +daidaitv.com +daidongxi.com +daijinquanaliyun.com +daijun.com +daikela.com +daikuan.com +daikuane.com +daili666.net +dailian.info +dailianqun.com +dailiantong.com +dailianzj.com +dailiba.com +dailijizhang.cc +dailiqing.net +dailnkm.com +dailyeconomic.com +dailygn.com +dailyheadlines.cc +dailyqd.com +daimabiji.com +daimadog.com +daimafans.com +daimajia.com +daimajiaoliu.com +daimajiayuan.com +daimami.com +daimasucai.com +daimg.com +daimiyun.com +daishangqian.com +daishu.com +daishujiankang.com +daishutijian.com +daiwoqu.com +daixiaobao.com +daixiaomi.com +daixiaorui.com +daiyanbao.com +daiyanmama.com +daizhuzai.com +daizitouxiang.com +daji.com +dajiabao.com +dajiachou.com +dajiadaohang.com +dajiadu8.com +dajialaikan.com +dajialawyer.com +dajianet.com +dajiang365.com +dajiangcp.com +dajiangsai.org +dajiangtai.com +dajianhui.com +dajiashequ.com +dajiashuo.com +dajiatou.com +dajiazhao.com +dajiazhongyi.com +dajie.com +dajieimg.com +dajiezhu.com +dajixie.com +dajke.com +dajuntech.com +dajuyuan.net +dajuyuanyanchu.com +daka.app +daka.net +daka5837.com +dakage.com +dakahr.com +dakamao8.com +dakao8.com +dakao8.net +dakaruanwen.com +dakawm.cc +dakawm.net +dakayi.cc +dakele.com +dalaba.com +dali163.com +dalianair-china.com +dalianiso.com +daliapp.net +daling.com +dalinggong.com +dalings.com +dalipan.com +dalongkeji.com +dalongyun.com +daluma.com +daluo.com +daluwang.net +damaibs.com +damatu1.com +damddos.com +dameisheng.com +dameiweb.com +dameiyunduan.com +dameng.com +damengxiang.me +damingweb.com +damndigital.com +damotea.com +damoyang.com +damuchong.com +damuzzz.com +dan665.com +danaicha.com +danale.com +dance365.com +dancf.com +dancihu.com +dancingcg.com +dandanjiang.tv +dandanman.com +dandanplay.net +dandantang.com +dandanz.com +dandinghuayi.com +dandongbank.com +dandoudou.com +danews.cc +dang-jian.com +dang3.com +dangan168.com +dangaoss.com +dangbei.com +dangbei.net +dangbeiprojector.com +dangcdn.com +dangdang.com +dangguai.com +danghongyun.com +danghuan.com +dangjian.com +dangjianwang.com +dangpu.com +dangran.me +dangtianle.com +dangwan.com +dangzhi.com +dangzhi.net +danhua.org +danhuaer.com +danhw.com +daniao.org +daniate.com +daningcenter.com +daningdaning.com +daniuit.com +daniujiaoyu.com +danji100.com +danji8.com +danjiali.com +danjuanapp.com +danjuanfunds.com +danke.com +dankegongyu.com +dankexiaoyuan.com +danlan.org +danlirencomedy.com +danlu.net +danmaku.live +danmakupie.com +danmei.la +danming-ic.com +danmo.com +danmu.com +dannysite.com +danotest.com +danpin.com +danqi.com +danqingshaonian.com +danrenzheng.com +danseshu.com +danteng.me +dantuvc.com +danxia.com +danxin.net +danyang.com +danzhaowang.com +dao345.com +dao42.com +dao50.com +dao6.net +daoapp.io +daoapp.me +daocaorenshuwu.com +daochu66.com +daocloud.io +daocloudapp.com +daodao.com +daodaojizhang.com +daodaoliang.com +daodian100.com +daodianfu.com +daododo.com +daoduoduo.com +daofengdj.com +daofenggame.com +daofengyx.com +daogeziyuan.com +daogoubang.com +daoguo.com +daohang4.com +daohang88.com +daohangtx.com +daohui.net +daoisms.org +daojia.com +daojiale.com +daokers.com +daokeyuedu.com +daokoudai.com +daokouren.org +daomengad.com +daonazhuce.com +daonchina.com +daoqin.net +daoqm.com +daoscript.org +daoshidianping.com +daoshui.com +daotin.com +daotudashi.com +daovoice.io +daoxiangcun.com +daoxila.com +daoxila.net +daoyouz.com +daoyu8.com +daozhao.com +dapaizixun.com +dapan.com +dapei.cc +dapengjiaoyu.com +dapenti.com +dapiniu.com +dapmax.com +dappdiscover.com +dapu.com +daqi.com +daqianduan.com +daqiangpco.com +daqids.com +daqihui.com +daqiso.com +daqsoft.com +daquan.com +darczpw.com +darenceping.com +darevip.com +darkmi.com +darmao.com +darongcheng.com +darryring.com +darshchemicals.com +dartchina.com +dartou.com +daruan.com +darwinlearns.com +dashangcloud.com +dashanghaizhuce.com +dashangu.com +dashedm.com +dashen520.com +dashengji.com +dashenglaile.com +dashengpan.com +dashenquan.com +dashentv.com +dashenxiaoshuo.com +dashet.com +dashgame.com +dashi.com +dashikou.com +dashitech.com +dashiyou.com +dashoucloud.com +dashuihua.com +dashuju123.com +dashuye.com +dasougu.com +dasoujia.com +dassm.com +dasung.com +dasungtech.com +data380.com +data5u.com +data985.com +datacaciques.com +datacname.com +datadragon.net +dataesb.com +dataeye.com +datagear.tech +datagrand.com +datahubtrack.com +dataie.com +dataman-inc.com +datang.com +datang.net +datangnxp.com +datangweishi.com +datangzww.com +dataodu.com +dataoke.com +datarelab.com +datarj.com +datasecurity.htcsense.com +datasheet5.com +datasl.com +datasoldier.net +datastoragesummit.com +datatang.com +datathinking.com +datathinking.net +datatist.com +dataunion.net +datayes.com +datazt.com +datebao.com +datesdata.com +datia-inspect.com +datianmen.com +datongtaxi.com +datouwang.com +datuc.com +dav01.com +davdian.com +davinfo.com +davvar.com +dawaner.net +dawantian.com +daweibro.com +daweisoft.com +daweixinke.com +dawenming.com +dawenxue.net +dawenxue.org +dawndiy.com +dawnlab.me +dawuhanapp.com +dawuxia.net +dawx.com +dawx.net +daxi.com +daxia.com +daxia520.com +daxiaamu.com +daxiangdaili.com +daxianghuyu.com +daxiangqun.net +daxiit.com +daxuecn.com +daxueit.com +daxuepc.com +daxueshengqiandai.com +daxueshi.com +daxuesou.com +daxuesushe.com +daxuewa.com +daxuewang.com +dayaguqin.com +dayangmotorcycle.com +dayangyugame.com +dayanmei.com +dayanzai.me +dayday.plus +daydayup123.com +dayee.com +dayhao.com +dayhr.com +dayichang.com +dayifund.org +dayila.net +dayima.com +dayin.com +dayin.la +dayinhu.com +dayinjiqudong.com +dayinjizhijia.com +dayinpai.com +dayinpiano.com +dayitong.net +dayong.name +dayoo.com +dayou123.com +dayoufeng.com +dayrui.com +daytokens.com +dayu-valve.com +dayu.com +dayuad.com +dayuansouti.com +dayue8.com +dayugame.net +dayugslb.com +dayukeji.com +dayuntongzhou.com +dayup.org +dazahui123.com +dazhan123.com +dazhangfang.com +dazhaoad.com +dazhaopeibang.com +dazhe5.com +dazhenzimiao.com +dazhewa.com +dazhongbanben.com +dazhonghr.com +dazhoudz8.com +dazhoushan.com +dazhuangwang.com +dazhuanlan.com +dazibo.com +dazidian.net +dazijia.com +dazpin.com +daztoutiao.com +dazui.com +db-cache.com +dbank.com +dbankcdn.com +dbankcloud.asia +dbankcloud.com +dbankcloud.eu +dbankcloud.ru +dbankedge.net +dbaxiaoyu.com +dbbqb.com +dbccv.com +dbcdh.com +dbcsq.com +dbcxz1.com +dbcxz1.net +dbdna.com +dbfansub.com +dbfen.com +dbgeek.org +dbh123.net +dbkan.com +dblgf.com +dbm-sh.com +dbmailserver.com +dbmall.com +dbmeinv.com +dbqf.xyz +dbscar.com +dbshop.net +dbt-coin.com +dbyb.org +dbytwl.com +dbzgia.com +dc-cn.com +dcarimg.com +dcarstatic.com +dcb123.com +dcdapp.com +dcement.com +dcetax.com +dcgsi.com +dcharm.com +dcic-china.com +dcits.com +dcjianghu.com +dcloud.io +dcloudlive.com +dcloudstc.com +dcmagcn.com +dcmk17.com +dcpfb.com +dcsapi.com +dcsdn.com +dcsjw.com +dcsme.org +dcv.so +dcwj168.com +dcxnews.com +dczou.com +dd-advisor.com +dd-cdn.origin-apple.com.akadns.net +dd-img.com +dd.net +dd128.com +dd2007.com +dd373.com +dd4.com +dd6300.fun +dd66778899.com +dd8828.com +ddbig.com +ddbiquge.cc +ddbiquge.com +ddbiu.com +ddchong.com +ddcode.net +ddd-china.com +dddazhe.com +ddddns.net +dddso.com +dddwan.com +dde-desktop.org +ddepin.com +ddfans.com +ddfchina.com +ddgjjj.com +ddguanhuai.com +ddiaas.com +ddianle.com +ddianshang.com +ddimg.mobi +ddimg.net +dding.net +ddjjzz.com +ddjk.com +ddk-alink.com +ddkids.com +ddkt365.com +ddkwxd.com +ddky.com +ddle.cc +ddlequ.com +ddlives.com +ddmap.com +ddmeishi.com +ddmer.com +ddnddn.com +ddnode.com +ddns-only.xyz +ddns.tokyo +ddnsto.com +ddong.com +ddooo.com +ddos.com +ddos2naive.com +ddosc.com +ddosendns.com +ddosimg7bfqw5tk3z2cvisjge.com +ddoswafcdn.xyz +ddove.com +ddpai.com +ddport.com +ddqcw.com +ddsaas.com +ddske.com +ddstarapp.com +ddswcm.com +ddsy.com +ddtaba.com +ddtugame.com +ddtui.com +ddun.com +ddurl.to +dduser.mobi +dduwork.com +ddweilai.com +ddwhm.com +ddwzh.com +ddxq.mobi +ddxs.cc +ddxstxt8.com +ddyun.com +ddyun123.com +ddyvip.com +ddz.com +ddzhj.com +ddztv.com +ddzuqin.com +de-moe.org +de.net +de0.cc +de123.net +de1919.com +de518.com +deaconhousewuxi.com +deadnine.com +deahu.com +dealsmake.com +deansys.com +dear520dear.com +dearda.com +dearedu.com +dearisland.com +dearloc.com +dearprinter.com +deartree.com +deathearth.com +debao.com +debo-info.com +debug.moe +debugdump.com +debuggap.com +debugger.wiki +debugo.com +debugtalk.com +debuycn.com +decard.com +decentcapital.com +decerp.cc +dechong.site +dechua.com +decorcn.com +decwhy.com +dede168.com +dedecms51.com +dedecmsplus.com +dededao.com +dedeeims.com +dedejs.com +dedemao.com +dedesos.com +dedeyun.com +dedezhuji.com +deehai.com +deemob.com +deemos.com +deepai.com +deepano.com +deepaso.com +deepba.com +deepbluenetwork.com +deepcloudsdp.com +deepdevelop.com +deepepg.com +deepermobile.com +deepin.com +deepin.org +deepinghost.com +deepinmind.com +deepinos.org +deepleaper.com +deeplearn.me +deepoon.com +deepsheet.net +deepvision.ai +deepzz.com +deerchao.net +deerex.com +deerma.com +defcoding.com +defectink.com +deheheng.com +deheng.com +dehsm.com +dehua.net +dehuaca.com +deifei.com +deifgs.com +deikuo.com +dekeego.com +dektw.com +delanauto.com +deli-tools.com +delib2b.com +delibao.com +delicloud.com +delikaixi.com +delinklab.com +delishi.com +deliwenku.com +deliworld.com +delixi-electric.com +dell027.com +dellemc-solution.com +delunyk.com +demage.com +demaxiya.com +demgs.com +demix.cc +demlution.com +demo8.com +democome.com +demodashi.com +demogic.com +demohour.com +demonlee.tech +demoso.net +demososo.com +denachina.com +denganliang.com +dengb.com +dengbi.cc +dengbi8.com +dengcuo.com +dengfeilong.com +denghao.org +denghaoxuan.com +denghuo.com +dengkanwen.com +dengliye.com +denglu.cc +dengmoe.com +dengpeng.me +dengshiyuanyi.com +dengta120.com +dengtacj.com +dengtadaka.com +dengxiaolong.com +dengxiaopingnet.com +dengyong.cc +denic.de +denic.net +dentistshow.com +denuoexpo.com +deosin.com +dep-star.com +dephir.com +depin.com +deppon.com +deppxp.net +deqingbank.com +deqinglaw.com +derekchou.com +derenbs.com +derwer.com +derzh.com +des8.com +desaysv.com +deshui.wang +design006.com +designboard.cc +designsketchskill.com +designuuu.com +desk9.com +deskcar.com +deskcity.com +deskcity.org +deskguanjia.com +deskier.com +desktopcal.com +desktopqa.com +desktx.com +deskwc.com +despiertocfilms.com +destoon.com +detian-chem.com +detu.com +detuyun.com +dev-dh.com +dev798.com +dev996.com +devask.net +devclub.cc +develenv.com +developer.dji.com +developer.microsoft.com +devemi.com +devework.com +devexception.com +devexel-tech.com +devexel.com +devexpresscn.com +devio.org +devkang.com +devops-master.com +devpss.com +devqinwei.com +devsiki.com +devtang.com +devzeng.com +devzhang.com +dewmobile.net +dewu.com +dewumall.com +dexian.mobi +dexindat.com +dexingrv.com +dexinsg.com +dexuee.com +dexunyun.com +deyang5.com +deyatech.com +deyayk.com +deyi.com +deyi.net +deyijijin.org +deyiso.com +deyoulife.com +deyun.fun +deyunxiangsheng.com +deyurumen.com +dezhi.com +dezhong365.com +dezhongmobi.com +dezhoudaily.com +dezhouqh.com +df81.com +df9377.com +dfafei.com +dfbgv.com +dfcfs.com +dfcfw.com +dfcx-bj.com +dfdaily.com +dfddd.com +dfdjy.net +dfdtt.com +dfedu.com +dfham.com +dfhon.com +dfhtjn.com +dfkcgs.com +dfkhgj.com +dfmc.com +dfmcastrol.com +dfmingya.com +dfpk.com +dfrcb.com +dfs168.com +dfs800.com +dfshurufa.com +dfshw.com +dfsjr.com +dfsrcw.com +dfss-club.com +dfstw.com +dfsyjm.com +dftoutiao.com +dftq.net +dftzj.com +dfv5.net +dfxq.com +dfxwdc.com +dfyanyi.com +dfyapp.com +dfyl-luxgen.com +dfyoo.com +dfysw.net +dfyuan.com +dfyydl.com +dfyzx.com +dfzmzyc.com +dg-360lhx.com +dg-hanxin.com +dg-huawei.com +dg-mall.com +dg11185.com +dg114.com +dg121.com +dgbfzz88.com +dgch.net +dgchangan.com +dgddh.xyz +dgdxs.com +dgg.net +dggdf.com +dggdk.com +dgggs.com +dggjqw.com +dggkj.com +dggvip.net +dghqmotor.com +dginfo.com +dgjiuqi.com +dgjoy.co +dgjs123.com +dgjxmk.com +dgjyw.com +dgksxx.com +dglpool.com +dgmama.net +dgmmbb.com +dgn.cc +dgod.net +dgptjob.com +dgq2018.com +dgqjj.com +dgrbcj.com +dgsbtjx.com +dgsltx.com +dgsme.org +dgssmy.com +dgt-factory.com +dgtle.com +dgtpcj.com +dgtuoyue.com +dgwap.com +dgwoto.com +dgwtrl.com +dgxbjg.com +dgxue.com +dgyejia.com +dgygpx.com +dgykz.com +dgyldjy.com +dgym519.com +dgyuanyi.com +dgzhihongjx.com +dgzhisen.com +dgzj.com +dgzsgjg.com +dgzz1.com +dh.cx +dh01.com +dh0580.com +dh5idnf.com +dh7373.com +dh7999.com +dh818.com +dh9191.com +dh975.com +dh978.com +dhb168.com +dhcc.wang +dhfeng.com +dhhqfw.com +dhifi.com +dhimavision.com +dhjt.com +dhkq120.com +dhkqmz.com +dhkqyy.com +dhmeri.com +dhq898.com +dhqtech.com +dhrcbank.com +dhrest.com +dht5867.com +dhwooden.com +dhygw20.com +dhygw2999.com +dhygw488.com +dhyjaqa.com +dhyz.net +dhzw.cc +di3fang.com +di3fang.vip +diablohu.com +diaidi.com +diaigame.com +diamondfsd.com +dian-ai.com +dian-stable.com +dian-ying.com +dian.so +dian123.com +dian321.com +dian5.com +diananjia.com +dianapp.com +dianbo.org +dianbobao.com +dianbook.cc +dianbucuo.com +diancaijun.com +dianchacha.com +diandainfo.com +diandanbao.com +diandao.org +diandaxia.com +diandazuoye.com +diandian.com +diandianshu.com +diandianwaimai.com +diandianys.com +diandianzhe.com +diandianzu.com +diandong.com +diandongche.biz +diandongzhi.com +dianfengcms.com +dianfuji.com +diangan.org +diangon.com +diangong8.com +diangongwu.com +dianhen.com +dianhi.com +dianhong.com +dianhou.com +dianji007.com +dianjianggame.com +dianjiliuliang.com +dianjin123.com +dianjinghu.com +dianjingzhe.com +dianjinzs.com +dianjiqi.com +diankeji.com +dianlancg.com +dianler.com +dianli.com +dianli08.com +dianliang8.com +dianliaoapp.com +dianlujitao.com +dianlut.com +dianm.cc +dianmiaoshou.com +dianmoney.com +diannaoban.com +diannaodian.com +diannaokepu.com +diannaoshiyong.com +diannaoxianka.com +dianopen.com +dianou.com +dianpifa.com +dianping.com +dianpingba.com +dianqiweixiu.net +dianqizazhi.com +dianranart.com +dianrong.com +dianru.com +dianru.net +diansan.com +dianshang.com +dianshanghy.com +dianshangyi.com +dianshi.com +dianshige.com +dianshihome.com +dianshijia.com +diantoushi.com +diantui.net +dianview.com +dianwanhezi.com +dianwannan.com +dianwoba.com +dianwoda.com +dianwoyou.com +dianwuque.com +dianxiaobao.net +dianxin.net +dianxinnews.com +dianxinos.com +dianyingjie.com +dianyingshow.com +dianyingwenxue.com +dianyinjidiao.com +dianyong123.com +dianyongqi.com +dianyuan.com +dianyuanic.net +dianyue8.com +dianyuesh.com +dianzhanggui.net +dianzhangzhipin.com +dianzheli.com +dianzhentan.com +dianzhi.com +dianziaihaozhe.com +dianzis.com +dianzixuexi.com +diaoao.com +diaoben.com +diaochapai.com +diaochapai.net +diaocn.com +diaoding.biz +diaojiang.com +diaokeji.net +diaosi.net +diaosiweb.net +diaosu9.com +diaosu98.com +diaosunet.com +diaox2.com +diaoy.com +diaoyan360.com +diaoyanbao.com +diaoyou.com +diaoyoupai.com +diaoyu.com +diaoyu123.com +diaoyu365.com +diaoyubo.com +diaoyula.com +diaoyur.com +diaoyuren.com +diaoyuwang.com +diaoyuweng.com +diaoyuwo.com +diary365.net +diaxue.com +dib66.com +dibaotong.com +dibcn.com +diboot.com +dic123.com +dichan.com +dichanlao.com +dichanren.com +dichedai.com +dictall.com +dida110.com +dida365.com +didacar.com +didachuxing.com +didao.com +didapinche.com +didatravel.com +didaxing.com +didialift.com +didiapp.com +didichuxing.com +dididadidi.com +dididapiao.com +dididawo.com +didiling.com +didipay.com +didiqiche.com +didispace.com +didistatic.com +didiwuxian.com +didixk.com +didiyun.com +didiyunapi.com +didown.com +didu86.com +diducoder.com +diebaosoft.com +diebian.net +dieclock.com +diediao123.com +diemameishi.com +diemoe.net +dieniao.com +dierkezhan.com +diershoubing.com +dietfd.com +diexia.com +difanapp.com +difangfengsu.com +digcredit.com +digforfire.net +digforfire.org +digg58.com +digi-uniclick.net +digi-wo.com +digirepub.com +digisky.com +digital-ren.com +digitalchina.com +digitalcq.com +digitaling.com +digitalvolvo.com +digitalwuhan.com +digitalwuhan.net +digitlink.net +digitser.net +digiwin.com +digiwork.com +digod.com +digpage.com +digu.com +digu365.com +digua.com +diguage.com +diguan.wang +diguff.com +diguobbs.com +digwow.net +dihuikj.com +diiqu.com +dijiahealth.com +dijingchao.com +dijinlianmeng.com +dijiuban.com +dijunsm.com +diketattoo.com +dili360.com +dili365.com +dililitv.com +dim0.com +dimeng.net +dimensionalzone.com +dimpurr.com +dimsmary.tech +dinais.com +dindin.com +dingdanggj.com +dingdangnao.com +dingdangsheji.com +dingdean.com +dingdian.la +dingdianku.com +dingdiansk.com +dingdianzw.com +dingding.com +dingding.xin +dingding2014.com +dingdingdoctor.com +dingdingkaike.com +dingdone.com +dingdongcloud.com +dingdongqb.com +dingdongxiaoqu.com +dingfang123.com +dinggou.org +dinghaiec.com +dinghuaren.com +dinghuihuojia.com +dinghuoche.com +dingip.com +dingkeji.com +dinglc.com +dinglia.com +dingliangame.com +dingliss.com +dingqidong.com +dingsheng.com +dingshifa.com +dingso.com +dingtalent.com +dingtalk.com +dingtalkapps.com +dingtangzqx.com +dingteam.com +dingxiang-inc.com +dingxin66.com +dingxinhui.com +dingxuewen.com +dingyantec.com +dingyueads.com +dingzhijl.com +diningcity.asia +dinzd.com +dioenglish.com +dionly.com +diougens.net +dious.cc +dipaispa.com +dipan.com +dipephoto.com +dipont.com +diqi.net +diqi.sh +diqibu.com +diqishu.com +diqiujiayuan.com +diqiuw.com +diqu114.com +diqua.com +dir001.com +directui.com +discourse-studies.com +discoversources.com +discuz.chat +discuz.com +discuz.net +discuz.org +discuzfans.net +discuzlab.com +dishen.com +dishuge.com +dishuizhijia.com +diskgenius.com +diskgirl.com +disksing.com +dismall.com +disneybox.com +ditan360.com +ditan369.com +dithub.com +ditian-tech.com +ditietu.com +ditiezu.com +ditiezu.net +ditu.live.com +ditu100.net +dituge.com +dituhui.com +dituwuyou.com +diudou.com +diugai.com +diushouji.com +div.io +divcss5.com +diwork.com +dixiao.org +dixintong.com +diybcq.com +diybuy.net +diycode.cc +diydoutu.com +diyer.so +diygogogo.com +diygw.com +diyhi.com +diyicai.com +diyidan.com +diyidan.net +diyifanwen.com +diyifanwen.net +diyigaokao.com +diyihuifu.com +diyinews.com +diyiredian.com +diyishijian.com +diyitech.com +diyiwl.wang +diyixiazai.com +diyixitong.com +diyiyou.com +diyiyunshi.com +diyiziti.com +diyju.com +diymianmo.com +diynova.com +diypda.com +diyring.cc +diytrade.com +diyvm.com +diywoju.com +diyworld.com +diywz.com +diyyh.com +diyzhuye.com +dizhi.xin +dizzylab.net +dj.net +dj10.com +dj134.com +dj175.com +dj34.com +dj3721.net +dj63.com +dj88.com +dj89.com +dj97.com +djbh.net +djbstatic.com +djbx.com +djcc.com +djcp099.com +djdkk.com +djduoduo.com +djec.net +djeconomic.com +djf.com +djhgyy.com +djiavip.com +djjlseo.com +djjw.com +djkk.com +djkpai.com +djkxl.com +djlmvip.com +djlsoft.net +djrcl.com +djsh5.com +djstechpc.com +djstg.com +dju8.com +djw51.com +djwcp.com +djwxw.com +djyde.com +djye.com +djyjob.com +djysx.com +djyyh.com +djzbl.com +djzhj.com +djzhx.com +djzr88.com +dkdangle.com +dkjiaoyang.com +dklogs.net +dkmol.net +dkpdd.com +dksgames.com +dky.cc +dkybpc.com +dkys.org +dl-origin.ubnt.com +dl-rc.com +dl.delivery.mp.microsoft.com +dl.djicdn.com +dl.google.com +dl.l.google.com +dl.ubnt.com +dl0728.com +dl158.net +dl24gjb.com +dl2link.com +dl321.net +dl8z.com +dlangchina.com +dlbh.net +dlbljy.com +dlbyg.com +dlcaic.com +dlcdnets.asus.com +dld.com +dld56.com +dldlsw.com +dledu.com +dlfederal.com +dlg029.com +dlgaoji.com +dlgcpvc.com +dlgwbn.com +dlidli.wang +dljrw.com +dljs.net +dll01.com +dllake.com +dllcm.com +dllhook.com +dllku.com +dllzj.com +dlmonita.com +dlmzk.com +dlnap.com +dlosri.com +dlpuwan.com +dlrjtz.com +dlrkb.com +dlrspace.com +dlsjcsb.com +dlsqb.com +dlssa.com +dlsstax.com +dlsunworld.com +dlszywz.com +dltm.net +dltobacco.com +dltsfh.com +dltubu.com +dlvalve.com +dlxgjy.com +dlxk.com +dlxww.com +dlyestar.com +dlyilian.com +dlzb.com +dlztb.com +dlzyc.com +dlzycf.com +dm004.net +dm0571.com +dm176.com +dm190.com +dm300.com +dm321.com +dm321.net +dm4mm.com +dm5.com +dm789.com +dm9.com +dmacg.net +dmaku.com +dmall.com +dmallcdn.com +dmbcdn.com +dmcbs.com +dmcdn.com +dmcgas.com +dmchina1.com +dmcoders.com +dmd968.com +dmeg88.com +dmeiti.com +dmeiti.net +dmeng.net +dmfuns.com +dmgapp.com +dmgeek.com +dmgpark.com +dmguo.com +dmhlj.com +dmhmusic.com +dmiug.com +dmjtxt.com +dmlei.com +dmmds.com +dmozdir.org +dmpans.com +dmread.com +dmrtb.com +dmssc.net +dmtg.com +dmyy.cc +dmyz.org +dmyzw.com +dmzfa.com +dmzj.com +dmzx.com +dn.com +dn1234.com +dn580.com +dn8188.com +dnbbn.com +dnbbs.com +dnbcw.info +dnbiz.com +dncheng.com +dndci.com +dndiy.net +dnf8.com +dnfly.net +dnfziliao.com +dngjxx.com +dngswin7.com +dngsxitong.com +dngz.net +dnion.com +dnjishu.com +dnjs8.com +dnjsb.com +dnmall.com +dnnskin.net +dnnunion.com +dnparking.com +dnpz.net +dnpz123.com +dnqc.com +dns-diy.com +dns-diy.net +dns-dns.net +dns-sky.com +dns-url.com +dns-vip.net +dns.com +dns.la +dns.pub +dns002.com +dns0755.net +dns100.net +dns102.com +dns110.com +dns123.net +dns12345.com +dns2008.com +dns383.com +dns456456123.com +dns567.com +dns6132.com +dns6868.com +dns800.com +dns999999.com +dnsabc-a.com +dnsabc-b.com +dnsabc-f.com +dnsabc-g.com +dnsapple.com +dnsapple.net +dnsce.com +dnscnc.com +dnsddos.com +dnsdiy.com +dnsdizhi.com +dnsdun.com +dnsdun.net +dnsfamily.com +dnsfang.com +dnsff.com +dnsfwq.com +dnsgtm.com +dnsgulf.net +dnsh6666.com +dnshot.net +dnshwx.com +dnsinside.net +dnsip.net +dnsis.net +dnsjia.com +dnsmeasurement.com +dnsmsn.com +dnsng.net +dnsnn.com +dnsns5.com +dnsns6.com +dnsnw.com +dnsor.com +dnsoray.net +dnsour.com +dnspai.com +dnspig.com +dnsplus.co +dnspod.com +dnspod.net +dnspood.net +dnsppdd.com +dnsrw.com +dnss.me +dnss.vip +dnssina.com +dnsum.com +dnsurl.net +dnsv1.com +dnsv1.net +dnsv2.com +dnsv3.com +dnsv4.com +dnsv5.com +dnsv8.net +dnsvcache.com +dnsvhost.com +dnswa.com +dnswhk.com +dnswind.net +dnsx365.com +dnszh.com +dnxp.net +dnxtc.net +dnzhuti.com +dnzjds.com +do-shi.com +do1024.com +do123.net +do1618.com +do1999.com +doabit.com +dobest.com +dobirduser.com +dobunkan.com +doc163.com +doc88.com +doccamera.com +docer.com +docexcel.net +docin365.com +dockerinfo.net +dockone.io +doclass.com +docools.com +docpe.com +docs.cdnetworks.com +docs.djicdn.com +docs.microsoft.com +docs.oracle.com +docschina.org +docsou.com +doctorcom.com +doctorxiong.club +documents.cdnetworks.com +docx88.com +doczhi.com +doczj.com +dodashang.com +dodjoy.com +dodo.link +dodo8.com +dodobook.me +dodobook.net +dodoca.com +dodoeasy.com +dodoedu.com +dodoh5.com +dodonew.com +dodovip.com +doergob.com +doershow.com +dofanyi.com +dofund.com +dog126.com +dogecdn.com +dogecloud.com +dogedoge.com +dogfight360.com +doglobal.net +dogmr.com +dogwhere.com +dogyun.com +doh.pub +dohuo.com +doido.com +doit.am +doitim.com +doiua.com +doki8.com +doko.com +dolanzz.com +dolcn.com +dole.club +dolfincdnx.com +dolfindns.net +doll-leaves.com +doll-zone.com +dollun.com +dolphin-browser.com +dolphin.com +dolphinphp.com +domaingz.com +domarketing.org +domengle.com +dominoh.com +domobcdn.com +domolo.com +domp4.cc +domp4.com +domyshop.com +doname.com +doncc.org +donews.com +dong-shou.com +dong-xu.com +dongannews.com +dongao.com +dongbao120.com +dongbeishifandaxue.com +dongbucaijing.com +dongcai.net +dongcaibaoxian.com +dongchaba.com +dongchedi.com +dongcheng120.com +dongchenghotels.com +dongdalou.com +dongdao.net +dongdongaijia.com +dongdongwenda.com +dongdongyx.com +dongdongzu.com +dongdui.com +dongeedu.com +dongeejiao.com +dongfang-wh.com +dongfang.com +dongfang77.com +dongfangfj.com +dongfangfuli.com +dongfangnews.com +dongfangtech.net +dongfeng-honda-elysion.com +dongfeng-honda-gienia.com +dongfeng-honda-greiz.com +dongfeng-honda-inspire.com +dongfeng-honda-jade.com +dongfeng-honda-ur-v.com +dongfeng-honda-xr-v.com +dongfeng-nissan.com +dongfeng.net +dongfengtrucks.com +dongfund.com +dongganboy.com +dongge.com +donghaifunds.com +donghao.org +donghongqiao.com +donghuaxsp.com +donghulvdao.com +dongjinyu.com +dongjun.cc +dongke.org +dongkelun.com +dongkouren.com +donglingying.cc +donglishuzhai.net +dongliw.com +donglizhixin.com +dongman.fm +dongmansoft.com +dongmanxingkong.com +dongmiban.com +dongnanmaifeng.com +dongni100.com +dongniao.net +dongnienglish.com +dongniyingyu.com +dongoog.com +dongputech.com +dongqiniqin.com +dongqiudi.com +dongqiudi.net +dongsenzs.com +dongshenghuiyang.com +dongshou.com +dongsport.com +dongtaijt.com +dongting.com +dongtu.com +dongua.com +dongwm.com +dongxi.net +dongxingkonggu.com +dongxuyitai.com +dongyaods.com +dongyin.net +dongzhougroup.com +dongzhuoyao.com +donhonet.net +donvv.com +doodoobird.com +doofull.com +dooioo.com +dookhub.com +dooland.com +doomii.com +dooo.cc +doooor.com +door-expo.com +dooreb.com +doorhr.com +dopa.com +dopic.net +dora-control.cdnetworks.com +dora-family.com +dorapp.com +doraunion.com +dormforce.net +dorrr.com +dortail.com +doserv.com +doshome.com +dosnap.com +dospy.com +dossav.com +dossen.com +dostor.com +dot.pub +dota2rpg.com +dota2tester.com +dotamax.com +dotcpp.com +doteck.com +dotgate.com +dotinapp.com +dotty-china.com +dou.bz +dou.li +douban.co +douban.com +douban.fm +doubanio.com +doubaojf.com +doubean.com +doubi.ren +doubimeizhi.com +doubimm.net +doubleclick.net +douboshi.net +doubozhibo.com +douc.cc +doucang.com +douco.com +doudang.com +doudehui.com +doudier.com +doudons.com +doudou.com +doudou.in +doudou3.com +doudou911.com +doudouad.com +doudouba.com +doudoubianli.com +doudoubird.com +doudoudm.com +doufan.tv +doufl.com +doufm.net +douglassclub.com +douguo.com +douguo.net +douhan.li +douhaogongyu.com +douhaomei.com +douhua.net +douhuar.com +douhuibuy.com +doukantv.com +doukeji.com +doulai.com +doulaicha.com +doulaidu.cc +doulaidu.com +doulaidu8.cc +douliao.net +douluodalu123.com +douluodalu3.com +doumengkeji.mobi +doumi.com +doumistatic.com +doumobfour.club +doumobsix.site +doumobtech.online +dounimei.net +doupai.cc +doupir.com +doupobook.com +doupocangqiong1.com +douqi.com +douquyyds.com +doushen.com +doutian.me +doutukeji.com +doutushe.com +douwanweb.com +douxiaotoutiao.com +douxie.com +douya2.com +douyaobuy.com +douyapu.com +douyar.com +douyi.com +douyin.com +douyincdn.com +douyinec.com +douyinpic.com +douyinstatic.com +douyinvideo.net +douyinvod.com +douyinxiaodian10.com +douyou100.com +douyu.com +douyu.tv +douyuscdn.com +douyutv.com +douzi.com +douzihuyu.com +dovechina.com +dovesky.com +dovov.com +dowater.com +dowebok.com +dowei.com +doweidu.com +dowell-health.com +dowhere.com +down0.com +down123.cc +down123.me +down1997.com +down7788.com +downbei.com +downcc.com +downclass.com +downerapi.com +downfi.com +downg.com +downi9.com +downjoy.com +downkr.com +downkuai.com +download.developer.apple.com +download.microsoft.com +download.visualstudio.microsoft.com +download.windowsupdate.com +downloadcenter.samsung.com +downloadla.pro +downok.com +downol.com +downos.com +downpp.com +downsave.com +downun.com +downv.com +downxia.com +downxy.com +downya.com +downyi.com +downza.com +downzz.com +dowv.com +doxue.com +doyee.com +doyoe.com +doyoo.net +doyoudo.com +doyouhike.net +dozer.cc +dozview.com +dp.image-gmkt.com +dp2px.com +dp2u.com +dpcafc.com +dpcq1.net +dpcyjt.com +dper.com +dpfile.com +dplor.com +dplord.com +dplslab.com +dpqct.com +dprktimes.com +dptech.com +dptechnology.net +dpwl.net +dpxq.com +dq123.com +dq18.com +dq247.com +dq3c.com +dq99.net +dqccc.cc +dqccc.com +dqcccc.com +dqdaily.com +dqdgame.com +dqguo.com +dqhui.com +dqiis.com +dqjob88.com +dqpi.net +dqrailing.com +dqshdj.com +dqshjt.com +dqyfapiao.com +dr009.com +dr668.com +drageasy.com +dragon-guide.net +dragon-hotel.com +dragonballcn.com +dragoncg.com +dragonest.com +dragonnewsru.com +dragonparking.com +dragonsea-china.com +dragontrail.com +dragonwell-jdk.io +drakeet.me +dramx.com +drartisan.com +drasy.net +draveness.me +drawyoo.com +drcact.com +drcbank.com +drcg8.com +drclvs.com +drcuiyutao.com +drdrq.com +dre8.com +dream.ren +dream1986.com +dreamad.mobi +dreamcast.hk +dreamchasercapital.com +dreamersall.com +dreamershop.com +dreamine.com +dreamkite.net +dreamo100.com +dreamofchinese.com +dreamore.com +dreampiggy.com +dreams-travel.com +dreamsky.me +dreamswood.com +dreamsz.net +dreawer.com +drgou.com +drhudong.com +drice.cc +drip.im +dripcar.com +driverdevelop.com +drivergenius.com +driversdown.com +driverzeng.com +drivethelife.com +drli.group +drlmeng.com +drm-x.com +drm-x.net +drmaml.com +drmj.org +droi.com +droibaas.com +dropboxchina.com +dropsec.xyz +drouma.com +drpneu.com +drscrewdriver.com +drtyf.com +drugfuture.com +druggcp.net +drumchina.com +drupal001.com +drupalla.com +drupalproject.org +drvics.com +drvsky.com +drwfggc.com +ds-360.com +ds023.com +ds123456.com +ds5f.com +dsblog.net +dscbs.com +dsdbearing.com +dsdjclub.com +dsfdc.com +dsfof.com +dsgho.com +dshigao.com +dshjfh.com +dshrc.com +dskb.co +dslp168.com +dsmyiyuan.com +dsmzyy.com +dsmzyy120.com +dsn300.com +dsonekey.com +dsook.com +dsp.com +dspliuliang.com +dspwhy.com +dsq.com +dsqin.com +dssz.com +dstfsbc.com +dsti.net +dstoutiao.com +dswjcms.com +dswmt.com +dswzxh.com +dsxdn.com +dsyjz0755.com +dszw.net +dtcash.com +dtcj.com +dtcms.net +dtcoalmine.com +dtcxw.com +dtdiefa.com +dtdream.com +dtdxcw.com +dtfcw.com +dtftsm.com +dthrb.com +dtidc.com +dtime.com +dtmao.cc +dtmuban.com +dtqiufa.com +dtrcb.com +dts007.com +dtshot.com +dtstack.com +dtstatic.com +dttc-icp.com +dttt.net +dtuosh.com +dturl.cc +dtuyun.com +dtxmw.com +dtxn.net +dtxww.com +dtysky.moe +dtyzg.com +du00.com +du114.com +du175.com +du1du.org +du7.com +du7.org +du8.com +duai.com +dualaid.com +duan.red +duanjn.com +duanjuzi.com +duanlonggang.com +duanmale.com +duanmeiwen.com +duanqu.com +duanrong.com +duanshu.com +duantian.com +duanwenxue.com +duanwxue.com +duanxin321.com +duanxin520.com +duanyoutv.vip +duanzao001.com +duanzhihu.com +duanzikuaizui.com +duapp.com +duba.com +duba.net +dubbo.io +dubiwang.com +dubprince.com +dubyc.com +duchang.org +dudong.com +duduaa.com +dudubashi.com +dududu.la +dudumeijia.com +duduyu.net +duelcn.com +dugoogle.com +duguoxue.com +duguying.net +duhao.net +dui.ai +dui1dui.com +dui88.com +duia.com +duiai.com +duianba.com +duihuan123.com +duihuashijie.com +duikuang.com +duimg.com +duimin.com +duiopen.com +duitang.com +duitianhe.com +duizhuang.com +dujiaoshou.org +dujiapin.com +dujin.org +dujiza.com +dukechiang.com +dukharo.com +dukuai.com +dulesocks.com +dullong.com +dullr.com +dulouw.com +dumanhua.com +dumasecurity.com +dumasoftware.com +dumeiwen.com +dumi0898.com +dumili.com +dumou.com +dumpapp.com +dunjiaodu.com +dunkhome.com +dunlve.com +duobaoqibin.com +duobei.com +duobeiyun.com +duobeiyun.net +duoben.net +duobiji.com +duocaitou.com +duochang.cc +duodaa.com +duodada.com +duodaoertong.com +duodian.com +duoduo123.com +duoduobaba.com +duoduocdn.com +duoduodashi.com +duoduotv.com +duoduoyin.com +duoduoyouli888.com +duoduozb.com +duoduozhifu.com +duoente.net +duoerpharmacy.com +duofull.com +duogouhui.com +duohou.net +duohui.co +duoic.com +duojiaochong.com +duokaiwang.com +duokan.com +duokanbox.com +duokebao.net +duokebo.com +duoketuan.com +duoku.com +duolabao.com +duolabaocdn.com +duoladayin.com +duolaima.com +duolapiao.com +duolduo.com +duole.com +duolebo.com +duolegame.com +duolerong.com +duolunmoma.org +duoluodeyu.com +duoluosb.com +duomai.com +duomeiti.co +duomi.com +duomi.me +duomiapp.com +duomicheng.com +duomijuan.com +duomiyou.com +duomni.com +duomu.tv +duopao.com +duoqu.com +duorenwei.com +duorou.com +duosai.com +duose.com +duosenfashion.com +duoshoubang.com +duoshuo.com +duososo.com +duosq.com +duost.com +duotai.net +duote.com +duotegame.com +duotoupiao.com +duotuwang.com +duouoo.com +duowan.com +duowanns.com +duoxinqi.com +duoxuanyundian.com +duoyewu.com +duoyi.com +duoyinsu.com +duoyoumi.com +duozhi.com +duozhishidai.com +duozhuayu.com +duozhuayu.net +duoziwang.com +dup2.org +dupv.com +dushewang.com +dushicn.com +dushijia.com +dushiliren.net +dushitiyan.com +dushiyufu.com +dushu.com +dushu.io +dushu263.com +dushu365.com +dushu369.com +dushudaren.com +dushuge.net +dushuzhe.com +dushuzhong.com +dushw.com +dustess.com +dustit.me +dusulang.com +dusuu.com +dute.me +dutenews.com +dutils.com +dutor.net +dutory.com +dutype.com +duuchin.com +duunion.com +duwenfei.com +duwenxue.com +duwenz.com +duwenzhang.com +duxiaoman.com +duxiaomanfintech.com +duxiaoshuo.com +duxinjianli.com +duxiu.com +duyandb.com +duyao001.com +duyidu.com +duyixing.com +duzelong.com +duzhe.com +duzhoumo.com +dv37.com +dv58.com +dvagent.com +dvbbs.net +dvbcn.com +dvcms.com +dvd85.com +dvd94.com +dvdc100.com +dvdjy.com +dvmama.com +dvmission.com +dvr163.com +dvrdydns.com +dvvvs.com +dw.la +dwfei.com +dwhub.net +dwinput.com +dwion.com +dwjoy.com +dwmoniqi.com +dwntme.com +dwnxy.com +dwq.com +dwqcw.com +dwrh.net +dwsedu.com +dwstatic.com +dwstock.com +dwt.life +dwtedx.com +dwz.date +dwz.lc +dwz.mk +dx-job.com +dx-tech.com +dx00.net +dx04131.com +dx114118.com +dx168.com +dxbei.com +dxclinics.com +dxcm.net +dxda.com +dxdlw.com +dxecs.com +dxf5.com +dxf6.com +dxias.com +dxjs.com +dxlfile.com +dxlmdd.com +dxmpay.com +dxmstatic.com +dxpei.com +dxpmedia.com +dxqyy.com +dxrc.com +dxs96.com +dxsaxw.com +dxsbb.com +dxsclass.com +dxsdb.com +dxsng.com +dxsport.com +dxsvr.com +dxszx.com +dxton.com +dxwei.com +dxxnews.com +dxxps.com +dxxxfl.com +dxy.com +dxy.me +dxy.net +dxyan.org +dxyb.com +dxycdn.com +dxyrc.com +dxys.pro +dxzq.net +dxztc.com +dxzx.com +dxzy163.com +dy008.com +dy1905.net +dy2018.net +dybeta.com +dycar.net +dycars.com +dycdn.com +dycf.net +dycmjkgl.com +dydata.io +dydt.net +dydytt.com +dydytt.net +dyee.org +dyfc.net +dyg-hec.com +dygang.com +dygang.net +dygangs.com +dygf.com +dygod.com +dygod.org +dyhhy.cc +dyhjw.com +dyhr88.com +dyhxgame.com +dyhzj.com +dyj.cc +dyjqd.com +dykj.site +dylc.com +dylxx.net +dyly.com +dyonr.com +dypai.com +dyqc.com +dyrbw.com +dyrcb.net +dyrjjt.com +dyrt168.com +dysxxw.com +dytechnolog.com +dytol.com +dytt.net +dytt2019.net +dytt789.com +dytt7899.com +dytt8.com +dytt8.net +dyw0.com +dyxldjy.com +dyxsdwm.com +dyxtw.com +dyxuexin.com +dyxw.com +dyxz.la +dyymwy.com +dyynong.net +dyys.com +dyysoft.net +dyzdx.com +dyzxw.org +dz-z.com +dz.tt +dz11.com +dz19.net +dz1982.com +dz31hao.com +dz666.com +dz746.com +dz88.com +dz88.la +dzbake.com +dzbarcode.com +dzbchina.com +dzblxx.com +dzboligang.com +dzcgtgcl.com +dzcj.tv +dzcjw.com +dzcmedu.com +dzdgsm.com +dzdiy.com +dzdoll.com +dzdu.com +dzfc.com +dzfxh.com +dzgoo.com +dzgwg.com +dzgxq.com +dzhaoj.com +dzhope.com +dzhqexpo.com +dzjcp998.com +dzjrc.com +dzkbw.com +dzlaa.com +dzllzg.com +dzmdq.com +dzmhospital.com +dzng.com +dzoptics.com +dzpk.com +dzqu.com +dzr120.com +dzrbs.com +dzrlvy.com +dzsaas.com +dzsaascdn.com +dzsc.com +dzsfx.com +dzsg.com +dzshengchi.com +dzsm.com +dzsrcw.com +dzssy.com +dztcbj.com +dztcfj.com +dztchun.com +dztcjt.com +dztcnm.com +dztv.tv +dzty365.com +dzvv.com +dzwebs.net +dzwindows.com +dzwww.com +dzwww.net +dzxwnews.com +dzxxzy.com +dzynyy.com +dzyqc.com +dzyqh.com +dzysclite.com +dzyule.com +dzyysb.com +dzz.cc +dzzgsw.com +dzzoffice.com +e-10031.com +e-3lue.com +e-baby.tw +e-bidding.org +e-bq.com +e-bq.org +e-buychina.com +e-celap.com +e-chinalife.com +e-cloudstore.com +e-cookies.net +e-cuc.com +e-cwinfo.com +e-cyb.com +e-dache.com +e-deehoo.com +e-eway.com +e-fangtong.com +e-flyinc.com +e-ging.com +e-ging.net +e-gooo.com +e-hongw.com +e-investingguide.com +e-jjj.com +e-jlt.com +e-kawai.com +e-lifemall.com +e-lining.com +e-lock.xin +e-mallchina.com +e-micromacro.com +e-muzeo.com +e-nci.com +e-net.hk +e-onekey.com +e-picclife.com +e-pointchina.com +e-ruikd.com +e-sleb.com +e-sscard.com +e-tiller.com +e-tui.net +e0514.com +e0575.com +e0734.com +e077.com +e118114.com +e12345.com +e12e.com +e139.com +e1988.com +e21cn.com +e22a.com +e24c.com +e253.com +e2capp.com +e2esoft.com +e2say.com +e360e.com +e365.org +e365mall.com +e3cloud.com +e3ol.com +e4008.com +e4asoft.com +e521.com +e5421.com +e546.net +e5618.com +e5n.com +e66666.com +e68cname.com +e7890.com +e7e6.net +e7e7e7.com +e7wei.com +e836g.com +e890.com +e8ud3.com +e8zw.com +e9377f.com +e9898.com +e99999.com +ea-retina.com +ea3w.com +eabax.com +eabds.com +eachinfo.com +eachnet.com +eachsee.com +eaeb.com +eafifaonline2.com +eaglexiang.org +eahui.com +eaibot.com +eaka365.com +eal-ceair.com +eallcn.com +eallerp.com +eallone.com +eamimi.com +eamn.net +earth2037.com +earthedu.com +earthstar-cloud.com +easck.com +eascs.com +easeapi.com +easeeyes.com +easemob.com +easerun.com +easeslb.com +easetuner.com +easeus.com +easeyedelivery.com +easilysend.com +easiu.com +east.net +east263.com +eastall.com +eastbest.com +eastchinafair.com +eastcom-sw.com +eastcom.com +eastcompeace.com +eastcoms.com +eastday.com +eastdesign.net +eastdigit.com +eastdushi.com +easteat.com +eastent.com +easternalong.com +eastforever.com +eastftp.net +eastfu.com +easthome.com +eastib.com +eastled.com +eastlending.com +eastmannplastics.com +eastmoney.com +eastmoneyfutures.com +eastmoneyloans.com +eastobacco.com +eastpharm.com +eastsilver.com +eastsoo.com +eastsunintl.com +easttone.com +eastups.com +eastwinn.com +easy-all.net +easy-china.com +easy-linkholiday.com +easy-mock.com +easy2world.com +easy361.com +easy888.com +easyai.tech +easyaq.com +easyaq.org +easyar.com +easyarvr.com +easybug.org +easydarwin.org +easyder.com +easydoc.xyz +easyfami.com +easyfang.com +easyfapiao.com +easygametime.com +easyhaitao.com +easyhexo.com +easyhin.com +easyjf.com +easylaa.com +easyliao.com +easyliao.net +easylink.io +easylinkin.com +easylinkin.net +easymks.com +easymorse.com +easymule.com +easynet.vip +easypayx.com +easypcmac.com +easyreadtech.com +easyrecovery.cc +easyrecovery.net +easyrecoverychina.com +easyrecoverycn.com +easysofthome.com +easyswoole.com +easytalkee.com +easytifen.com +easytimetv.com +easytite.com +easytocn.com +easytouch.com +easytrip.com +easyzw.com +eatonchn.com +eaydu.com +eayou.com +eayuan.com +eayyou.com +eazytec-cloud.com +eb163.com +eb80.com +ebadu.com +ebadu.net +ebaifo.com +ebaina.com +ebama.net +ebangchina.com +ebanma.com +ebanshu.net +ebaoquan.org +ebasset.com +ebchina.com +ebchinatech.com +ebdan.net +ebdoor.com +ebeta.org +ebfcn.com +ebibi.com +ebigear.com +ebingqilin.com +ebiobuy.com +ebioe.com +ebiogo.com +ebioweb.com +ebjfinance.com +ebkj.net +eblockschina.com +ebnew.com +ebocert.com +ebook.name +ebookbao.net +ebookcn.com +ebookmen.com +ebopark.com +eboxmaker.com +ebrun.com +ebscn.com +ebseek.com +ebtang.com +ebtrust.com +ebuckler.com +ebuy31.com +ebways.com +ec-ae.com +ec-cloudtech.com +ec-founder.com +ec-world.com +ec.com +ec0715.com +ec3s.com +ec51.com +ec517.com +ec66.com +ecadi.com +ecaidian.com +ecaihr.com +ecaray.com +ecare365.com +ecartoon.net +ecasesoft.com +ecbcamp.com +ecboo.com +eccang.com +eccbb.com +eccc-china.com +eccdnx.com +eccn.com +eccnmall.com +ecco-market.com +ecctaa.com +ecdpower.net +ecduo.com +eceibs.com +eceibs.net +eceibs20.com +ecej.com +ecer.com +eces66.com +ecgci.com +ecgoods.com +echanceyun.com +echangye.com +echao8.com +echargenet.com +echarpile.com +echashi.com +echatsoft.com +echead.com +echiele.com +echinacareers.com +echinacities.com +echinagov.com +echinatobacco.com +echo-isoftstone.com +echo188.com +echomod.com +echoteen.com +echuandan.com +eciawards.org +ecice06.com +ecig100.com +ecigm.com +ecitic.com +ecjson.com +eckjzx.com +eckwai.com +ecloud.hk +ecmagnet.com +ecmoban.com +ecnudec.com +ecoalchina.com +ecochuse.com +ecocn.org +ecombdimg.com +ecombdstatic.com +ecomoter.com +ecookinn.com +ecool.site +ecoplastech.com +ecoprint.tech +ecorr.org +ecouser.net +ecovacs.com +ecp888.com +ecparty.net +ecphk.com +ecppn.com +ecqun.com +ecrrc.com +ecs004.com +ecs6.com +ecsage.net +ecshop.com +ecshop123.com +ecsits.com +ecsponline.com +ecsxs.com +ecuc123.net +ecustmde.com +ecvv.com +ecwan77.net +ecydm.com +ecyj.net +ecyti.com +ed2000.com +ed2kers.com +ed2kfile.com +ed2kk.com +eda-china.com +eda1024.com +eda365.com +eda365.net +eda8.com +edabbs.com +edaboss.com +edacn.net +edadoc.com +edagit.com +edai.com +edaibo.com +edaidb.com +edaili.com +edaixi.com +edaizhijia.com +edajin.com +edajob.com +edanji.com +edaocha.com +edatahome.com +edatop.com +edawiki.com +edb-tech.com +edcba.com +eddic.net +eddycjy.com +ede35.com +edenhermosa.com +edgesrv.com +edhic.com +edianchi.com +edianshang.com +edianzu.com +ediclot.com +edieai.com +edifier.com +edingtou.com +edingzhuan.com +edinuan.com +edirect.asia +ediuschina.com +edk24.com +edmcn.net +ednrc.com +edns.com +edodocs.com +edogantt.com +edojia.com +edojs.com +edong.com +edongeejiao.com +edongli.net +edongyun.com +edowning.net +edqgk.com +edragongame.com +edrawsoft.com +edsionte.com +edspay.com +edt2017.com +edt2018.com +edtsoft.com +edu-book.com +edu-chineseembassy-uk.org +edu-cj.com +edu-job.org +edu-nw.com +edu-shanghai.net +edu.com +edu03.com +edu0851.com +edu201.com +edu24o1.com +edu24ol.com +edu510.com +edu5a.com +edu63.com +edu777.com +edu80.com +edu84.com +edu84.net +edu88.com +eduartisan.com +educg.net +educhicago.org +educhn.net +educoder.net +edudc.net +eduease.com +eduego.com +eduei.com +eduglobal.com +eduglobalchina.com +eduiso.com +edujia.com +edujunyi.com +edumail.pub +eduour.com +edupm.com +edurck.com +edushi.com +edusoho.com +edusoho.net +edutao.com +edutime.net +edutt.com +eduu.com +eduuu.com +eduwenzheng.com +eduwest.com +eduwg.com +eduwo.com +eduwx.com +eduxiao.com +eduyf.com +eduyo.com +eduzhai.net +eduzhi.com +eduzhixin.com +edward-han.com +edwiv.com +ee1234.com +ee68.com +ee8828.com +eebbk.com +eebbk.net +eebest.com +eeblog.net +eeboard.com +eechina.com +eecn.cc +eecnt.com +eecourse.com +eecso.com +eedns.com +eeduol.com +eee-eee.com +eee114.com +eee4.com +eee5701.com +eeedri.com +eeedu.net +eeeee.com +eeeen.com +eeeetop.com +eeeff.com +eeeknow.com +eeelw.com +eeeqi.net +eeetb.com +eefans.com +eefcdn.com +eeff.net +eefocus.com +eehu.com +eeio99.com +eeioe.com +eelly.com +eeloves.com +eenot.com +eeook.com +eeparking.com +eeq8.com +eeqiu.com +eeskill.com +eeso.net +eetoday.com +eetop.com +eetop.wang +eetrend.com +eetrust.com +eeworld.com +eeworm.com +eexiaoshuo.com +eexing.com +eeyaa.net +eeybo.com +eeyxs.com +eeyy.com +ef-cdn.com +ef-school.com +ef360.com +ef360.net +ef82.com +ef9377.com +efala.net +efang.tv +efapiao.com +efashionchina.com +efe.cc +efengji.org +efesco.com +eff-soft.com +effapp.com +effecthub.com +effevo.com +efficient.hk +effirst.com +efly.cc +eflybird.com +eflycloud.com +eflydns.net +efmac.org +efnchina.com +efotile.com +efount.com +efoxconn.com +efpp.com +efucms.com +efueloil.com +efwang.com +efwh.com +efy-tech.com +efyt6.com +egainnews.com +egaoxiu.com +egbgedu.com +egfcare.com +egg-born.org +egg.htcsense.com +eggjs.org +eggscute.com +eggtt.com +eghnmj.xyz +egonetworks.org +egongzheng.com +egoonet.com +egotops.com +egou.com +egou0515.com +egouo.net +egouz.com +egovsum.com +egreatworld.com +egret-labs.org +egret.com +egsea.com +egshuyuan.com +ehafo.com +ehaier.com +ehaimao.com +ehaiwang.com +ehangtian.com +ehaoyao.com +ehaoyao.us +ehclglobal.com +ehcoo.com +ehealthcareforum.com +ehedco.com +ehijoy.com +ehiman.com +ehinvest.hk +ehome5.com +ehome8.com +ehomeclouds.com +ehomeday.com +ehometu.com +ehouse411.com +ehousechina.com +ehoutai.com +ehowbuy.com +ehowbuy.net +ehsy.com +ehtttop.com +ehualu.com +ehuatai.com +ehub.net +ehui.net +ehujia.com +ehuoke.com +ehuoyan.com +ehust.net +ehuzhu.com +ehvacr.com +ei6nd.com +eia0.net +eiabbs.net +eickaopei.com +eicodesign.com +eicp.net +eidlink.com +eigentech.ai +eigenvr.com +eightbridge.com +eightedu.com +eigpay.com +eiicn.com +eiimg.com +eiisys.com +eilieili.cc +eimoney.com +eindex.me +einkcn.com +eintone.com +eiot.com +eiray.com +eis100.com +eisoo.com +eistudy.com +eit0571.com +ej38.com +ejamad.com +ejcms.com +ejcop.com +ejdyin.com +ejee.com +ejeegroup.com +ejfeng.com +ejiacn.com +ejianji.com +ejianmedia.com +ejiayu.com +ejie.me +ejinqiao.com +ejinshan.net +ejion.net +ejiyao.com +ejmrh.com +ejoy.com +ejoy365hk.com +ejoy99.com +ejrfood.com +ejttp.com +eju.com +ejudata.com +ejunshi.com +ek6.com +ekaidian.com +ekan001.com +ekang99.com +ekaobang.com +ekaoyan.com +ekaoyan365.com +ekclubinternational.com +ekesoo.com +eketong.com +ekuaibao.com +elabinfo.com +elanso.com +elanw.com +elbmodel.com +eldawa.com +ele.me +ele.to +ele001.com +ele12.com +elecfans.com +elecfans.net +elecinfo.com +elecrystal.com +elecshop.com +elefang.com +eleme.io +elemecdn.com +element3ds.com +elementfresh.com +elenet.me +elephant-base.com +elesos.com +elex-tech.net +elexcon.com +elfartworld.com +elfjs.com +elgnet.com +elht.com +elian5.com +elianhong.com +elianmeng.vip +elichtmedia.com +elikeme.com +elikeme.net +elitecrm.com +elitejlb.com +eliushi.com +elkpi.com +ellechina.com +ellemen.com +elliotxing.com +ellll.com +elmerlxy.com +eloancn.com +elong-edm.com +elong.com +elong.net +elongshine.com +elongstatic.com +elpcon.com +elpwc.com +els001.com +elsenow.com +elsiehoney.com +elsyhw.com +eltws.com +eluosidy.com +eluxiu.com +elvgufen.com +elvhome.com +elvshi.com +elvxing.net +elxk.com +emacs-china.org +emadao.com +emaileds.com +emailflame.com +emailxqq.com +emakerzone.com +emall.site +emall001.com +emao.com +emao.net +emarbox.com +emas-poc.com +emaup.com +embbnux.com +embcom.net +embed.cc +embedfire.com +embedhq.org +embedsky.com +embedtrain.org +embedu.org +embedunion.com +embedway.com +embest-tech.com +embexperts.com +embryform.com +embsky.com +emcbj.com +emcbtc.com +emcite.com +emcsosin.com +emdl.ws.microsoft.com +emea.cdnetworks.com +emeixs.com +emeor.com +emepu.com +emilhk.com +emjob.com +emlinix.com +emlog.net +emohe.com +emojidaquan.com +emojimobile.com +emojiwiz.com +empos.net +emrl0z.com +ems-audio.com +ems517.com +emshost.com +emsym.com +emtana.com +emtronix.com +emtx.com +emu999.net +emuban.com +emuch.net +emufan.com +emugif.com +emui.com +emuia.com +emulatedlab.com +emumax.com +emushroom.net +emwan.com +emyard.com +en-sem.com +en.tm +en51.com +en8848.com +en998.com +ename-dns.net +ename.com +ename.net +enamourmall.com +enappstore.com +enbowang.com +enbrands.com +enec.net +enelcn.com +enen6.com +enet360.com +enetedu.com +enfi.vip +enfodesk.com +enfogrowth.com +eng24.com +eng888.com +engeniustec.com +englishtownpromotion.com +engloncar.com +engpx.com +enguo.com +engz.net +enicn.com +enjoy.link +enjoy1992.com +enjoy3c.com +enjoydiy.com +enjoyfe.com +enjoykorea.net +enjoymeet.com +enjoyyue.com +enjoyz.com +enkichen.com +enkiorder.com +enkj.com +enlightent.com +enlistsecurely.com +enlistsecureup.com +enmajor.com +enmonster.com +enmotech.com +enmsb.com +enmuo.com +ennresearch.com +ennweekly.com +enoya.com +enpapers.com +enqoo.com +enread.com +enroo.com +enroobbs.com +enrz.com +enscg.com +enshide.com +enshifdc.com +enshijob.com +enstylement.com +ent120.com +entboost.com +enterdesk.com +enunix.com +envisioncn.com +enyamusical.com +enzj.com +eoaoo.com +eoeandroid.com +eoemarket.com +eoemarket.net +eoffcn.com +eoivisa.com +eol8.com +eolinker.com +eomoy.com +eoncon.com +eonun.com +eooioo.com +eoopoo.com +eooqoo.com +eoouoo.com +eoozoo.com +eoriver.com +eorzea.moe +eosantpool.com +eospark.com +eovas.net +ep-china.net +epaas.net +epailive.com +epalfish.com +epama.com +epanshi.com +epbiao.com +epchina.com +epciu.com +epcnn.com +epcsw.com +epday.com +epeaksport.com +epeiyin.com +epet.com +epetbar.com +epetpet.com +epexpo-asia.com +ephen.me +ephoton.me +epichust.com +epinautomation.com +epinduo.com +epinga.com +epinv.com +epjike.com +epjob88.com +epjyw.com +epkey.com +eplove.com +epmao.com +epoos.com +epqiming.com +eprezi.com +eps114.com +epschool.net +epub360.com +epubchina.com +epubit.com +epweike.com +epwitkey.com +epwk.com +epwksx.com +epzcw.com +eqbyc.com +eqding.com +eqh5.com +eqidi.com +eqie.com +eqifa.com +eqigou.com +eqingdan.com +eqiseo.com +eqishare.com +eqixiu.com +equn.com +eqxiu.com +eqxiu.mobi +eqxiul.com +eqxiuzhan.com +eqyn.com +eqz.cc +eraclean.com +eran123.com +eranet.com +ercc.cc +erdaicms.com +erdangjiade.com +erdianzhang.com +erdong.site +erdosrcb.com +ere3j2e001.com +erentalcarpro.com +ereuiib.com +erfdhiu.com +erg2008.com +ergecdn.com +ergedd.com +ergengtech.com +ergengtv.com +ergouzi.fun +erhaojie.com +ericfu.me +erichfund.com +erji.com +erji.net +erke.com +erldoc.com +erlo.vip +erlou.com +ermao.com +ermiao.com +ernaonet.com +ernest.me +ernxzc.com +eroacg.com +erongda.com +erongdu.com +erpcoo.com +errenzhuan.cc +ershenghuo.net +ershicimi.com +ershouhui.com +ert295.com +ert7.com +ertongkongjian.com +ertongtuku.com +ertongyouleshebei.com +erun360.com +erutluv.com +erxe.club +erya100.com +eryajf.net +eryuapp.com +eryyutu.com +es-soccer.com +es123.com +es9e.com +esa2000.com +esafenet.com +esavip.com +esbag.com +escdn.com +escjy.net +esclass.com +esdaxiagu.com +esde.cc +esduu.com +esemseo.com +esensoft.com +esfimg.com +eshangxian.com +eshanyao.com +eshenan.com +eshenlin.com +eshimin.com +eshiyun.info +eshop-switch.com +eshopb2c.com +eshow365.com +eshufa.com +eshukan.com +eshuu.com +eshzp.com +esinidc.com +esj365.com +esk365.com +eskgn.com +esky8.com +eskysky.com +eslosity.com +esmartwave.com +esnai.com +esnai.net +esoboy.com +eson.org +esoo.org +esouou.com +esouti.com +esoyu.com +espier.mobi +espnlol.com +essaystar.com +essca.com +essclick.com +essdc.com +essemi.com +ession.com +essjj.com +essyy.com +estory365.com +estrongs.com +estudychinese.com +esugimoto.com +esun21.com +esun88.com +esuniao.com +esunny.com +eswin.com +esxqk.com +eszmall.com +esztsg.org +esztyg.com +eszwdx.com +et59.com +etao.com +etaog.com +etaxcn.com +etccenter.com +etcchebao.com +etcsd.com +etdown.net +etelux.com +eternalsakura.com +eternalsakura13.com +eternalsys.com +etest8.com +eteste.com +etf.group +etf88.com +eth6.org +ethainan.com +ethan.pub +ethercap.com +ethern.me +ethfans.org +etiantian.com +etiantian.net +etiantian.org +etimeusa.com +etiv.me +etjournals.com +etlong.com +etmchina.com +etmoc.com +etmt1.com +etocrm.com +etomlink.com +etongdai.com +etongguan.com +etonkidd.com +etoote.com +etoplive.com +etosun.com +etoubao.com +etowz.com +etpass.com +etrack01.com +etrack02.com +etrack03.com +etrack04.com +etrack05.com +etrack07.com +etrack08.com +etranshare.com +etrd.org +ets100.com +etsc-tech.com +etsoon.com +etsstar.com +etstock.net +ettbl.org +ettdnsv.com +ettshop.com +etu3.com +etu6.com +etuan.com +etudu.com +etuonet.com +etycx.com +etyy.com +etyyy.com +etz927.com +etzuqiu.com +eu4cn.com +eub-inc.com +euci-software.com +eudic.net +eueueu.com +eugnnn.com +eui.cc +euibe.com +eulike.com +eulixos.com +eureka.name +eurochinesedaily.com +eusercenter.com +ev123.com +ev123.net +ev3ds.com +eva-game.com +eva001.com +evaad.com +evacg.co +evacg.com +evancg.com +evask360.com +evcar.com +evcard.com +evcard.vip +evdays.com +eve.moe +eventdove.com +events2.djicdn.com +everdns.com +evereasycom.com +everedit.net +everet.org +evergrande.com +evergrandeauto.com +everknight.net +evernakedcake.com +eversino.com +everstar.xyz +everstray.com +everturst.com +evervc.com +everychina.com +everydo.com +everyinch.net +everyouthtech.com +evestemptation.com +evewan.com +evfchina.com +evget.com +evhui.com +evideocloud.net +evideostb.com +evilbinary.org +evilcos.me +evileyesaint.com +evilwind.fun +evketang.com +evlo.us +evlook.com +evoc.com +evotrue.com +evzhidao.com +ew9z.com +ewaga.com +ewang.com +ewanshang.com +ewarecomputer.com +ewatt.com +ewceo.com +ewdcloud.com +ewdtx.com +ewebeditor.net +ewebsoft.com +ewebweb.com +ewecha.com +ewei.com +eweiqi.com +ewenyan.com +ewide.net +ewidecloud.com +ewidewater.com +ewin007.com +ewinall.com +ewind.us +ewinnet.com +ewku.com +ewoka.com +ewomail.com +eworksglobal.com +eworldship.com +ewp051.com +ewpeinfo.com +ewqcxz.com +ewstudy.com +ewtang.com +ewteacher.com +ewuqa.com +ex-silver.com +ex-starch.com +exam58.com +exam76.com +exam8.com +examcoo.com +examda.com +examebook.com +examk.com +exampx.com +examw.com +exands.com +exaphotons.com +exasic.com +exbot.net +exbulk.com +excake.com +excalibur.link +excaliburdx.com +excbio.com +excean.com +excel8.com +excel880.com +excel99.com +excelcn.com +excelhome.net +excelpx.com +exceltip.net +exchangecn.com +exchen.net +exdoll.com +exezhanqun.com +exfree.com +exhera.com +exiaoba.com +exinee.com +exiqu.com +exmailqq.com +exmrw.com +exnpk.com +exntech.com +exo-mk.com +expai.com +expba.com +expdns.net +expiredns.net +expirenotification.com +expirepausedns.com +expku.com +expo-china.com +expobbs.com +expoeye.net +exponingbo.com +expoon.com +expoooo.com +expotu.com +expowindow.com +expresscompanynetwork.com +expreview.com +expsky.com +exsvc.net +ext2fsd.com +extfans.com +exthin.net +extmail.org +extremep2p.com +extron-tech.com +extstars.com +exuanfang.cc +exuanpin.com +exuanshi.com +exuekt.com +exuezhe.com +exv9.com +exxstar.com +exxvip.com +exziyuan.com +ey-app.com +ey99.com +eyangguang.com +eyangmedia.com +eyao168.com +eyaobei.com +eyasglobal.com +eyasgloble.com +eycans.com +eydata.net +eye024.com +eye027.com +eye0712.com +eye0731.com +eye0746.com +eyee.com +eyejin.com +eyeofcloud.com +eyeofcloud.net +eyepetizer.net +eyesar.com +eyeshenzhen.com +eyeuc.com +eyexp.com +eyhsj.com +eyoodns.com +eyou.com +eyou.net +eyoucms.com +eyoujj.com +eyourbusiness.com +eyrefree.org +eyuangong.com +eyuanzhou.com +eyuconnect.com +eyugame.com +eyunidc.com +eyunker.com +eyunsou.com +eyunzhu.com +eyurumen.com +eyuyan.com +eyuyan.la +eyuyao.com +eywedu.com +eywedu.net +eywedu.org +eyy168.com +ez-leaf.com +ezagoo.com +ezaiai.com +ezbuypay.com +ezca.org +ezcname.com +ezcpt.com +ezcun.com +ezdcw.com +ezdnscenter.com +ezeroshop.com +ezhangdan.com +ezhangu.com +ezhaobiao.com +ezhdd.com +ezhicai.com +ezhijiantuoluo.com +ezhun.com +ezitong.com +ezlippi.com +ezliushao.com +ezloo.com +ezlost.com +eznowdns.com +eznowdns.net +ezpaychain.com +ezqhdz.com +ezrpro.com +ezsmth.com +eztcn.com +eztest.org +eztg.com +eztvnet.com +eztxw.com +ezubao.com +ezucoo.com +ezwan.com +ezwebtest.com +f-0.cc +f-stack.org +f.cx +f008.com +f0580.com +f1-shanghai.com +f139.com +f1688.com +f1zd.com +f2e.im +f2qu.com +f2time.com +f2zd.com +f315.cc +f32365.com +f3322.net +f3322.org +f41g.com +f513.com +f537.com +f5432.com +f54321.com +f5gh.com +f5sd.com +f5yx.com +f773.com +f7777.net +f8fm.com +fa-today.com +fa597.com +faakee.com +fabang.com +fabao365.com +fabaofoundation.com +fabco-air.asia +fabiao.com +fabiao.net +fabiaoqing.com +fabigbig.com +fabu114.com +faburuanwen.com +facai1000.cc +facaishur.com +facang.com +face100.net +face2ai.com +faceboer.com +facecloud.net +faceh5.com +facehufu.com +faceid.com +faceminiproject.online +faceplusplus.com +faceu.mobi +faceu.net +faceui.com +faceunity.com +facri.com +factj.com +factube.com +fad123.com +fadada.com +fadaren.com +fadesky.com +fadfunds.com +fadianying.com +fadior.cc +fadsc.com +fadui.com +fafa9.com +fafa986.com +fafaku.com +fafawang.com +fafeng.com +fafuli.com +fagaoshi.com +fageka.com +fagua.net +fahai.com +fahao8.com +faidev.cc +faidns.com +faioo.com +faipod.com +fairguard.net +fairguard.tech +fairyever.com +fairygui.com +fairysoftware.com +fairytest.com +faisco.com +faisys.com +faiusr.com +faiusrd.com +faiww.com +fajiayun.com +fajjj.com +faka.cat +fala114.com +falomall.com +faloo.com +famanoder.com +famecl.com +fameile.net +famen88.com +famens.com +famensi.com +famicn.com +famige.com +familykoloro.com +familylifemag.com +famiyou.com +famulei.com +fan-lun.com +fan-xun.com +fan-yong.com +fan88.com +fanai.com +fancai.com +fanchongling.com +fanchuanxiao.net +fancyapi.com +fancydsp.com +fancyecommerce.com +fandaojian.com +fandengds.com +fandian.com +fandongxi.com +fanfannet.com +fanfou.com +fang-zhou.com +fang.com +fang027.com +fang33.com +fang668.com +fang99.cc +fang99.com +fangbaoqiang.net +fangbei.org +fangbianle.com +fangbx.com +fangcang.com +fangchan.com +fangchan0573.com +fangchanhz.com +fangchip.com +fangcloud.com +fangcs.net +fangdaijisuanqi.com +fangdaijisuanqi.net +fangdd.com +fangdede.com +fangdichanceo.com +fangdr.com +fangfa.net +fangfaku.net +fangfanwang.com +fanghaofang.com +fanghouguo.com +fanghuafu.com +fanghuihui.com +fanging.com +fangjia.com +fangjiadp.com +fangjial.com +fangjs.com +fangkeduo.net +fangketong.net +fangkewang.com +fangkuaiwang.com +fangkuaiyi.com +fangle.com +fanglimei.com +fanglist.com +fanglitong.com +fangmeileju.com +fangqk.com +fangshanzi.com +fangshuitan888.com +fangsi.net +fangstar.com +fangtan007.com +fangtangtv.com +fangte.com +fangtingzfc.com +fangtoo.com +fangtoon.com +fangtuwang.com +fangtw.com +fangtx.com +fangwei315.com +fangweima.com +fangwuzaixian.com +fangxiaoer.com +fangxin.com +fangxinbao.com +fangxinmai.com +fangxinzhuomian.com +fangxuela.com +fangyb.com +fangyi.com +fangying.tv +fangyou.com +fangyouquan.com +fangyuan365.com +fangyuange.com +fangyunlin.com +fangzd.com +fangzhipeng.com +fangzhur.com +fangzongguan.com +fanhai-hk.com +fanhai8.com +fanhaobai.com +fanhaojia.org +fanhaoyue.com +fanhonghua.net +fanhougame.com +fanhuan.com +fanhuan.org +faniuwenda.com +fanjian.net +fanjian8.com +fanjianhome.com +fanjinyan.com +fankhome.com +fanli.com +fanli001.net +fanlibang.com +fanlibei.com +fanlicome.com +fanligame.com +fanlihe.com +fanlijinfu.com +fanlisaas.com +fanlitou.com +fanmugua.net +fannaojiputi.com +fanpusoft.com +fanqiang.com +fanqianzhushou.com +fanqie.im +fanqier.com +fanqiesoq.com +fanqietuan.com +fanqieui.com +fanqievv.com +fanqiewin10.com +fanquanba.com +fanquanwang.com +fanque.cc +fanrenshucheng.com +fanruan.com +fans1.com +fans8.com +fansgu.com +fanshicekong.com +fanshuapp.com +fanshui.net +fanshuvideo.com +fanshuxiaobao.com +fanshuxiaozu.com +fansiji.com +fansimg.com +fansjoy.net +fansobattery.com +fansoon.com +fansx.com +fansyes.com +fantablade.com +fantaiai.com +fantanggame.com +fantatech.com +fantawild.com +fante.com +fanten123.com +fantizi5.com +fantong.com +fanuchdf.com +fanw8.com +fanwe.com +fanwen118.com +fanwenbaike.com +fanwenq.com +fanwenvip.com +fanwenzhan.com +fanxian.com +fanxiang.com +fanxiaocuo.com +fanxiaojian.com +fanxihui.com +fanxing.com +fanxuefei.com +fany-eda.com +fany-online.com +fanyantao.com +fanyeda.com +fanyedu.com +fanyeong.com +fanyi.com +fanyibase.com +fanyigou.com +fanyigou.net +fanyijia.com +fanyiqi.net +fanyishang.com +fanypcb.com +fanyu.com +fanyueciyuan.info +fanyuip.com +fanzehua.com +fanzhiyang.com +fapharm.com +fapiao.com +fapiao365.com +fapiaobang.com +faqrobot.org +far123.com +far2000.com +faradayfuturecn.com +fareastcontainers.com +farenhui.com +farennews.com +farerdak.com +farisl.com +farll.com +farmkd.com +farmsec.com +farsee2.com +fashaoyou.net +fasheng.org +fashengba.com +fashion-virus.com +fashuounion.com +fasionchan.com +fast.im +fastadmin.net +fastadx.com +fastapi.net +fastcdn.com +fastcname.com +fastdo.cc +fastgit.org +fastgz.com +fastidea.cc +fastidea.me +fastio.tech +fastliii.com +fastmirror.org +fastmis.com +fastmock.site +fastmovie88.com +fastmyna.com +fastonetech.com +fastreportcn.com +fastsoc.com +fastsoso.cc +fat999.com +fatedier.com +fateskins.com +fatiao.pro +fatjiong.com +fatkun.com +fatsoon.com +fatvg.com +favdeb.com +favolist.com +favopen.com +favorites.ren +faw-benteng.com +faw-mazda.com +faw-vw.com +fawaitui.com +fawan.com +fawulu.com +faxdns.com +faxdns.net +faxingchina.com +faxingcn.com +faxingnet.com +faxingsj.com +faxingtp.com +faxingtupian.com +faxingzhan.com +faxiufang.com +faxsun.com +faxuan.net +fayea.com +fayifa.com +fayiyi.com +fayurumen.com +fazhijx.com +fazj.org +fb.mu +fb111.com +fbabi.com +fbaichuan.com +fbicdn.com +fbigame.com +fbirdsmall.com +fblife.com +fbook.net +fbsjedu.com +fbuy365.com +fbxslw.com +fc-kf.com +fc0531.com +fc0633.com +fc12319.com +fc2.red +fc2live.pw +fc571.com +fc811.com +fcachinagsdp.com +fcai.com +fcb16888.com +fcbox.com +fcchbj.com +fccs.com +fcczp.com +fcg51.com +fcgsnews.com +fcgtt.com +fcheche.com +fcjob.net +fcjob88.com +fcloudpaas.com +fcnes.com +fcpiao.com +fcrc114.com +fcsc.com +fcsjw.com +fcvvip.com +fcww19.com +fcxjiuyuan.com +fcxxh.org +fcyhw.com +fcz360.com +fczx.com +fd-trust.com +fd167.com +fd597.com +fd7c.com +fdcing.com +fdcyun.com +fdczbstatic.com +fdddf.com +fdeent.org +fdemo.com +fdevops.com +fdjyw.com +fdjzu.com +fdkjgz.com +fdkm88.com +fdlly.com +fdlt.net +fdmgj.com +fdpx.com +fdqh360.com +fds.so +fdsr.org +fduky.com +fdzq.com +fe-cable.com +fe2x.cc +fe520.com +fearlazy.com +feaye.com +febug.com +fecable-gz.com +fecmall.com +fecn.net +fecshop.com +fedte.cc +feeclouds.com +feedou.com +feedsky.com +feedss.com +feeey.com +feehi.com +feekr.com +feelcars.com +feelchat.net +feelcode.net +feelec.net +feeliu.com +feemoo.vip +feepan.com +feesoon.com +feeyan.com +feeye.com +feeyeah.com +feeyo.com +feeyun.com +fegine.com +feheadline.com +fei123.com +fei580.com +feiair.com +feibaojianshen.com +feibaokeji.com +feibisi.com +feibisi.org +feibit.com +feibo.com +feichangzhuan.com +feicool.com +feicui168.com +feicuiwuyu.com +feidaep.com +feidavalve.com +feidee.com +feidee.net +feidieshuo.com +feidou.com +feie.work +feierlaiedu.com +feifanblog.com +feifandesign.com +feifanindustry.com +feifantxt.net +feifanwangg.com +feifei.com +feifeiboke.com +feifeicms.co +feifeixitong.com +feiffy.cc +feifustudio.com +feige.ee +feihu.me +feihuo.com +feihutaoke.com +feiin.com +feiji666nihao.com +feijizu.com +feikanu.net +feikongbao.com +feiku.com +feiliao.com +feiliks.com +feilong.me +feilu.cc +feilvway.com +feimalv.com +feimanzb.com +feimao666.com +feimaoyun.com +feimosheji.com +feiniao.name +feiniaomy.com +feiniu.com +feiniubus.com +feinno.com +feiphp.com +feipin.com +feiq18.com +feirar.com +feiren.com +feisan.net +feishu-3rd-party-services.com +feishucdn.com +feisu.com +feitian001.com +feitianwu7.com +feitsui.com +feiwen98.com +feiwentianxia.com +feixiaoquan.com +feixiong.tv +feixuege.com +feixueteam.net +feiyang.com +feiyangedu.com +feiyicheng.com +feiyit.com +feiyng.com +feiyu.com +feiyuapi.com +feiyuemu.com +feiyuhk.com +feiyunjs.com +feiyuteam.com +feizan.com +feizao.tv +feizhaojun.com +feizhu.com +feizhupan.com +fekonmotor.com +felearn.com +feling.net +felink.com +felix021.com +femba.net +femrice.com +fenbaner.net +fenbei.com +fenbeijinfu.com +fenbi.com +fenbishufa.com +fenby.com +fencescn.com +fenduotie.com +fenfen.com +fenfenriji.com +fenfenwz.com +fenfenzh.cc +feng.com +feng1.com +fengakj.com +fengbao.com +fengbaowo.com +fengbolive.com +fengbuy.com +fengcheco.com +fengchizixun.com +fengchj.com +fengchuanba.com +fengchusheng.com +fengcms.com +fengcx.com +fengdu.com +fengdzq.com +fengedu.com +fengeek.com +fengeini.com +fengex.com +fengfeng.cc +fenggeba.com +fenghenever.com +fenghuaju.cc +fenghui.tv +fenghuidongman.com +fenghuoyunji.com +fengiling.com +fengimg.com +fengj.com +fengji.me +fengji.net +fengjing.com +fengjr.com +fengjunzi.com +fengkongcloud.com +fengkuangzaoren.com +fengkui.net +fengli.com +fengli.su +fenglinjiu.com +fengmanginfo.com +fengmaniu.com +fengmeng.net +fengmi.tv +fengmk2.com +fengniao.com +fengniaocaijing.com +fengniaohuanjing.com +fengniaojr.com +fengone.com +fengpengjun.com +fengpintech.com +fengqiyc.com +fengqu.com +fengread.com +fengshangweekly.com +fengshui22.com +fengsung.com +fengtai.tv +fengtalk.com +fengting.io +fengtouwang.com +fengwanyx.com +fengwenyi.com +fengwo.com +fengxianghuawu.com +fengxianrc.com +fengxiaotx.com +fengxuan.co +fengxuelin.com +fengyan.cc +fengye.cool +fengyitong.name +fengyu.cc +fengyu.moe +fengyuansufen.com +fengyuncx.com +fengyunpdf.com +fengyushan.com +fengyx.com +fengzhangame.net +fengzigame.com +fengzixbs.com +fenha.net +fenhao.me +fenking.club +fenlei168.com +fenlei265.com +fenleidao.com +fenleitong.com +fenliu.net +fennessy.hk +fenqihome.com +fenqile.com +fenqix.com +fenqubiao.com +fens.me +fensebook.com +fenshua123.com +fensishenghuo.com +fenxi.cc +fenxi.com +fenxi.org +fenxiangdashi.com +fenxianglife.com +fenxiyi.com +fenxuekeji.com +fenying.net +fenyu.net +fenyucn.com +fenzhi.com +fenzijr.com +feotech.com +fequan.com +ferlie.net +fersese.com +fescoadecco.com +fescogroup.com +festaint.com +fetiononline.com +feverassets.net +fevte.com +feydj.com +ff14.org +ff14yuanxiang.com +ff54.ink +ff63.com +ff8828.com +ffan.com +ffasp.com +ffcell.com +ffdns.net +ffeeii.com +ffepower.com +fffbbf.com +ffff.cc +fffzgh.com +ffhre.com +ffis.me +ffjd1.com +ffmarket.com +ffmulu.com +ffpedia.com +ffpk-cdn.xyz +ffplay.net +ffquan.com +ffsgame.com +ffsky.com +fft.plus +fft123.com +ffxiv.tk +ffxiv.xin +ffyd8.com +ffyinxiang.com +fg.cc +fgeekcloud.com +fghi34.com +fgidna.com +fgkj.cc +fgo-teamup.com +fgo.wiki +fgowiki.com +fgvisa.net +fh1551.com +fh21static.com +fh77.com +fh77.net +fh86.com +fhadmin.org +fhd001.com +fhdjh.com +fhdq.net +fhg90.com +fhhgj.com +fhkioskmodules.com +fhldns.com +fhlun.com +fhmion.com +fhoverseas.com +fhrl2018.com +fhrlw.com +fhsas.com +fhtj.com +fhtlw.com +fhtre.com +fhwlgs.com +fhycs.com +fhyx.com +fhyx.hk +fi94.com +fiberhome.com +fiberhomegroup.com +fibocom.com +fibodata.com +fibrlink.net +fidding.me +fiehff.com +fieldschina.com +fiery-data.com +fifsky.com +figoc.pw +fiiimg.com +fiinote.com +fiio.net +filcochina.com +file001.com +filediag.com +fillersmart.com +fillseo.com +films666.com +fim34s.com +fimmu.com +fimvisual.com +fin-shine.com +finacerun.com +finaltheory.me +financeun.com +financialstreetforum.com +finansbankservices.net +finchain.info +finchina.com +finctive.com +finderweb.net +findhro.com +findic.com +findic.kr +findic.tw +findic.us +finditandzip.ga +findlawimg.com +findme.wang +findoout.com +findshu.net +findxk.com +findyou.xin +findzd.com +finebi.com +fineidc.com +finer2.com +finereport.com +finereporthelp.com +finetopix.com +finetopix.net +fineui.com +fineway.com +finger66.com +fingerstylechina.com +fingertc.com +fingu.com +fingu.net +finlayliu.com +finndy.com +finogeeks.com +finshell-cib.com +fintechinchina.com +fintechquan.com +finupfriends.com +finupgroup.com +finzfin.com +finzjr.com +fiphoenix.com +fir.vip +firadio.net +fire233.com +fire2333.com +firebase-settings.crashlytics.com +firebirdprint.com +fireemblem.net +fireemulator.com +fireflyacg.com +firefoxbug.com +firefoxcn.com +firekylin.org +firemail.wang +firetry.com +firhq.com +firshort.com +firstdrs.com +firstfood-cn.com +firstgw.com +firstheartbeat.net +firstlinkapp.com +firstp2p.com +firstproduction.net +firstrow-sports.com +firstsolver.com +fish2bird.com +fish3000.com +fish960.com +fishapi.com +fishcn.com +fisherac.com +fishing-sinkers.com +fishingbar.net +fishingjoy.com +fishings.biz +fishlee.net +fishmobi.com +fishtui.com +fit-start.co +fit-time.com +fitbbs.com +fitoneapp.com +fiuchina.com +fivestarsolar.com +fixsub.net +fiyta.com +fj-atfz.com +fj-jm.com +fj007.com +fj10010.com +fj173.net +fj263.com +fj96336.com +fj987.com +fjanlian.com +fjber.com +fjbgwl.com +fjccdn.net +fjcesuo.com +fjcoop.com +fjcqjy.com +fjcy10010.com +fjcyl.org +fjdaily.com +fjdh.com +fjdnf.com +fjeca.com +fjedu.com +fjfoxiang.com +fjgdwl.com +fjgwy.org +fjhrss.com +fjhun.com +fjhxbank.com +fjhxcaee.com +fjii.com +fjjcjy.com +fjjsp01.com +fjjszg.com +fjjyt.net +fjkqyy.com +fjlh.com +fjly.com +fjmlh.com +fjmstc.com +fjmwjx.com +fjnacc.com +fjndwb.com +fjnet.com +fjotic.com +fjpta.com +fjreading.com +fjsdfz.org +fjsdn.com +fjsen.com +fjsfa.org +fjsfy.com +fjsj.com +fjsjs.com +fjstfc.com +fjtelecom.com +fjtgyxa.vip +fjtianya.com +fjtn.com +fjtv.net +fjty1688.com +fjutu.com +fjvs.org +fjxiehe.com +fjxisuzi.com +fjxn.com +fjybt.com +fjycw.com +fjyy.org +fjzixun.com +fjzol.com +fk100.com +fk2019.com +fkblog.org +fkcaijing.com +fkdmg.com +fkdxg.com +fkesfg.com +fkjie.com +fkw.com +fkw100.com +fkxs.net +fkxxyz.com +fkyuer.com +fkyun.com +fkzgz.com +fl-game.net +fl0632.com +fl168.com +fl365.com +fl5.co +fla38.com +flac.today +flac123.com +flachina.com +flacro.me +flamesky.org +flamingcold.com +flaredup.com +flash8.net +flash8f.com +flashempire.com +flashgame163.com +flashgene.com +flashget.com +flashgoing.com +flashmemoryworld.com +flashv8.com +flashwar.com +flashwing.net +flatshare365.com +flawcache.com +flduo.com +flexifont.com +fleyun.com +flgwx.com +flidc.net +fliggy.com +fliggy.hk +flintos.com +flip.fun +fliplus.com +flnet.com +flnetiot.com +flomoapp.com +flooc.com +floorb2b.com +florentiavillage.com +floverow.com +flowbet365.com +flower-med.com +flower188.com +flower33.com +flowerpassword.com +flowever.net +flowportal.com +flpsz.com +flstudiochina.com +fltacn.com +fltau.com +fltcsb.com +fltrp.com +fluke-ig.com +flutterchina.club +flvcd.com +flvsp.com +flvurl.net +flxc.net +flxdns.com +flxz.com +fly1999.com +fly3949.com +fly63.com +flyacat.com +flybridal.com +flyco.com +flycua.com +flydigi.com +flyenglish.com +flyert.com +flyertea.com +flyertrip.com +flyfish8.com +flyfishx.com +flyfunny.com +flygon.net +flyguest.com +flyine.net +flyme.com +flymeos.com +flyml.net +flymobi.biz +flypy.com +flysnow.org +flytexpress.com +flyxg.com +flyzen.com +flyzy.com +flyzyblog.net +flzc.com +flzhan.com +flzsdq.com +fm0754.com +fm120.com +fm4399.com +fm520.com +fm918.net +fm960.net +fmbimg.com +fmcoprc.gov.mo +fmeibao.com +fminers.com +fmketang.com +fmpan.com +fmsh.com +fmtol.com +fmtt6.xyz +fmwei.com +fmwhahaha.com +fmy90.com +fn-mart.com +fn-tech.com +fn.com +fnetlink.com +fnf-foods.com +fngz01.com +fnji.com +fnjiasu.com +fnjsq.com +fnkq.com +fnmobi.com +fnmz.com +fnnsh.com +fnrcw.com +fnrczp.com +fnysb.com +fnyy.net +fnyy666.com +fnzoo.com +fo12.com +fob123.com +fobshanghai.com +focalhot.com +fochot.com +focus-eloan.com +focus-fusion.com +focuschina.com +focussend.com +fodang.org +fodian.net +fodlab.com +fodoco.com +fokan88.com +folieyun.com +folluo.me +foloda.com +folou.com +fomen123.com +foneplatform.com +fongmong.com +fonrex.com +fonsoft.net +fonsview.com +font.im +font168.com +font5.com +font6.com +fontke.com +fonts.googleapis.com +fonts.gstatic.com +foodbk.com +foodjx.com +foodmate.net +foods1.com +foodsc.net +foodspace.net +foodszs.com +foodu14.com +fooher.com +foojoo.com +fookwood.com +fookyik.com +fooleap.org +foolyun.com +foooooot.com +fooww.com +for-compass.com +for-mail.com +for-she.com +for512.com +for68.com +forbeschina.com +forbetty.com +forbuyers.com +forcemz.net +forcger.com +ford.com +fordgo.com +forenose.com +forerunnercollege.com +foreseamall.com +foresl.com +forestfood.com +forestpest.org +forestpolice.org +forevercd007.com +foreveross.com +forgame.com +forgotfun.org +forindata.com +forkeji.com +forlinx.com +form-create.com +formtalk.net +formysql.com +fornature.com +forrealbio.com +forrerri.com +forsigner.com +forsou.com +forthxu.com +fortiortech.com +fortunebill.com +fortunebs.net +fortunevc.com +forwardgroup.com +forwe.store +foryone.com +foryougroup.com +fos.cc +foscam.com +foshanaosibo.com +foshanmuseum.com +foshannet.com +foshannews.com +foshannews.net +fosss.org +fosun-uhi.com +fosun.com +fotao.name +fotao9.com +fotilestyle.com +foto8.net +fotoe.com +fotomore.com +fotoplace.cc +fotosay.com +fototuan.com +foufu.com +fouleide.com +foumeng.com +founder.com +founderbn.com +foundercentury.com +foundereagle.com +founderff.com +founderfu.com +founderic.com +founderinternational.com +founderit.com +founderpcb.com +founderpod.com +foundersc.com +foundersz.com +foundertech.com +foundertype.com +founderuc.com +foundgame.com +foundpdf.com +founei.com +founpad.com +fountask.com +fovmy.com +fox-studio.net +fox008.com +fox688.com +fox800.xyz +foxconn.com +foxera.com +foxmail.com +foxphp.com +foxtable.com +foxweixin.com +foxwho.com +foxwq.com +foxzld.com +foyuan.net +fpdisplay.com +fpgabbs.com +fpgaw.com +fphis.com +fphs5.com +fpliu.com +fpoll.net +fps7.com +fpsace.com +fpsv.com +fpwap.com +fq597.com +fqapps.com +fqgj.net +fqis.xin +fql.cc +fqpai.com +fqsszx.com +fqxs.org +fqzww.com +fr-odc.samsungapps.com +fr-trading.com +fr2007.com +fr8npi.com +fractal-technology.com +francissoung.com +francochinois.com +frankorz.com +franzsandner.com +frbao.com +frdic.com +fread.com +free-api.com +free-e.net +free-eyepro.com +free-img.com +free.mk +free789.com +freebsdchina.org +freebuf.com +freecplus.net +freedgo.com +freefrp.net +freegeeker.com +freehome25.net +freehpcg.com +freeibook.com +freeidea.win +freejishu.com +freekaobo.com +freekaoyan.com +freekeyan.com +freelycode.com +freemancn.com +freemindworld.com +freemoban.com +freemojo.com +freemudgame.com +freeoa.net +freeqingnovel.com +freericheyes.com +freeshoppingchina.com +freessl.org +freetstar.com +freetvro.com +freeuid.com +freewhale.net +freeydch.com +freeyun.com +freezl.net +frensworkz.com +freqchina.com +fresh-ideas.cc +freshhema.com +freshnewsnet.com +frhelper.com +friendeye.com +fright-tattoo.com +fringe-zero.com +friok.com +frjie.com +frlh168.com +fro14.com +frombyte.com +fromgeek.com +fromhomelearn.com +fromwiz.com +frontenddev.org +frontjs.com +frontopen.com +frontwize.com +frostming.com +frostwell.cc +frostwell.net +frostwing98.com +fruitday.com +frysb.com +frytea.com +fs-ade.com +fs.microsoft.com +fs0757.com +fs121.com +fs23.com +fs31.com +fs315.org +fs7000.com +fsaligzf.com +fsbankonline.com +fsbus.com +fsc555.com +fscinda.com +fsclzs.com +fsdhub.com +fsecity.com +fsesa.com +fsfund.com +fsgejian.com +fsgzhg.com +fshd.com +fshzg.com +fsigc.com +fsjiaju.com +fsjoy.com +fskmp.com +fsky.pro +fsl.to +fslgz.com +fsllq.com +fslsg.com +fsmama.com +fsmeeting.com +fsmy88888.com +fsoptronics.com +fspage.com +fspbg.com +fspcdn.com +fsq3626.com +fssfs.com +fsshenneng.com +fstcb.com +fswl66.com +fsxchina.com +fsxdwy.com +fsxsj.net +fsymltc.com +fsyule.net +ft12.com +ft22.com +ftaro.com +ftbj.net +ftcauction.com +ftfast.com +ftium4.com +ftnormal00ab.com +ftnormal00ak.com +ftnormal01as.com +ftoul.com +ftqq.com +ftrsit.com +ftsafe.com +ftsfund.com +ftt.me +ftuan.com +ftxad.com +ftxgame.com +ftxsoccer.com +ftxzq.com +ftzn.net +fu57.com +fubao.org +fubaofei.com +fuchaoqun.com +fuckingdata.com +fudaiapp.com +fudanglp.com +fudanmed.com +fudanpress.com +fudian-bank.com +fuedf.org +fufeng-group.com +fufuok.com +fugetech.com +fugui.net +fuhai360.com +fuhancapital.com +fuhanziben.com +fuhaodaquan.org +fuhaoku.com +fuhaozi.com +fuheng.org +fuhuibao.club +fui.im +fuimg.com +fuiou.com +fuioupay.com +fujiabin.com +fujianlaser.com +fujianrc.com +fujiansme.com +fujieace.com +fujincenter.com +fujinli.com +fuka.cc +fukeha.com +fulantv.com +fuli.la +fuli1024.com +fuli404.net +fuliansheng.com +fuliao.com +fuliapps.com +fuliba2020.net +fuliba2021.net +fulibbs.com +fulibest.com +fulichao.com +fulijd.com +fulimin.org +fulin.org +fulinedu.com +fuling.com +fulingwx.com +fuliti.com +fuliw.net +fuljk.com +full-way.com +fulllinks.com +fullstack.love +fulu.com +fumake.com +fuman8.net +fumanyou.cc +fumi.com +fumu.com +fumubang.com +fumuhui.com +fun.tv +fun48.com +funchat.cc +functionads.com +fund001.com +fundebug.com +fundebug.net +fundog.cc +fundrive.com +funeralchain.com +funfungolf.com +funinput.com +funiutang.net +funjsq.com +funletu.com +funliving.com +funmovie.cc +funnulldns.com +funnycore.com +funnypicsbox.com +funnyplaying.com +funshion.com +funshion.net +funshipin.com +funtimebbs.com +funtoygame.com +funvge.com +funwear.com +funxun.com +funyqq.com +fuqian.la +fuqiangw.com +furenkeji.com +furongedu.com +furrychina.com +furuijiaju.vip +fusaide.com +fusion.design +fusroda.io +fute.com +futonghb.com +futu5.com +futuhk.com +futuku.com +futuniuniu.com +futunn.com +futureengineer.org +futureprize.org +futurescircle.com +futurescontest.com +fututrade.com +fuwa.org +fuwaliuxue.com +fuweivision.com +fuwit.com +fuwo.com +fuwuce.com +fuwuqinet.com +fuwuqu.com +fuxiaohei.me +fuxinbank.com +fuxing56.com +fuxingtech.com +fuxingwang.com +fuxunpay.com +fuyangtv.com +fuych.net +fuyinchina.com +fuyou888.com +fuyoubank.com +fuyoukache.com +fuyuan5.com +fuyuandian.com +fuyuncc.com +fuyuncun.com +fuyuzhe.com +fuz.cc +fuzadu.com +fuzamei.com +fuzangtang.com +fuzeetech.com +fuzegame.com +fuzhimao.com +fuzhongvisa.com +fuzhugo.com +fview.com +fvti.com +fw-12365.com +fw-biotech.com +fw4.co +fw4.me +fwcranes.com +fwdq.com +fwdq.net +fwdqw.com +fwhzxxgbyy.com +fwjia.com +fwmob.com +fwqbdn.com +fwqtg.net +fwqzx.com +fwsir.com +fwtoys.com +fwxgx.com +fwzjia.com +fx120.net +fx168api.com +fx168vip.com +fx273.com +fx3q.com +fx678.com +fx678.net +fx678red.com +fxbaogao.com +fxcccbbs.com +fxclass.net +fxcns.com +fxcsxb.com +fxcw.com +fxdm.net +fxdp.com +fxian.org +fxiaoke.com +fxk8.com +fxlbb.com +fxltsbl.com +fxm.so +fxmoe.com +fxo2opt.com +fxpan.com +fxsw.net +fxtrip.com +fxtrips.com +fxw.la +fxwfx.com +fxwst.com +fxxw.net +fxxww.net +fxxz.com +fxyfmp.com +fxzhj.com +fxzhjapp.com +fxzpfyy.com +fxzygc.com +fy-data.com +fy-game.com +fy027.com +fy169.net +fy35.com +fy558.com +fy65.com +fy98.com +fybiji.com +fybooks.com +fybxw.com +fychinago.com +fydckl.com +fydeos.com +fydisk.com +fydmodel.com +fydqw.com +fyeds0.com +fyeds1.com +fyeds2.com +fyeds3.com +fyeds4.com +fyeds5.com +fyeds6.com +fyeds7.com +fyeds8.com +fyeds9.com +fyfch.com +fygame.com +fygdrs.com +fygsoft.com +fyigou.com +fyjsz.net +fynas.com +fynews.net +fyrcbk.com +fyrexian.com +fyrsks.com +fyrwzz.com +fysjlogo.com +fysns.com +fytcw.com +fytxonline.com +fytz.net +fyuanpack.com +fyvart.com +fywx.cc +fyyy.com +fyzku.com +fz0512.com +fz222.com +fz2sc.com +fz597.com +fzbtv.com +fzccpit.org +fzchpos.com +fzcyjh.com +fzdmag.com +fzengine.com +fzf.com +fzfapp.com +fzfzjx.com +fzg360.com +fzita.com +fzithome.com +fzjxw.com +fzl7.com +fzlawyers.net +fzlbar.com +fzlft.com +fzlol.com +fzmama.net +fzmeetdecor.com +fzn.cc +fzpig.com +fzqcbz.com +fzrsrc.com +fzshbx.org +fzshoukuanji.com +fzsjob.com +fzswy.com +fzwcn.com +fzxiaomange.com +fzxyyqd.com +fzyfan.com +fzyfan.net +fzyfs.net +fzzqcdn.com +fzzrlh.com +g-emall.com +g-photography.net +g-var.com +g1.gstatic.com +g12345.com +g12e.com +g168.net +g188.net +g1c5.com +g1d.net +g1f5.com +g2.gstatic.com +g2.link +g207.com +g2g1.com +g2h3.com +g2us.com +g2work.com +g312.com +g32365.com +g3d.org +g3img.com +g3user.com +g5h4.com +g72.com +g7430.com +g77775555.com +g77776666.com +g88885555.com +g88886666.com +g8f8.com +ga0.me +ga001.com +ga25.com +gaapqcloud.com +gabiplay.com +gac-capital.com +gac-nio.com +gacfca.com +gacfcasales.com +gacfiatauto.com +gack.citic +gaclib.net +gacmotor.com +gacsofinco.com +gaeadata.com +gaeamobile.net +gafata.com +gafei.com +gaga.me +gagaga.tech +gagahi.com +gagalee.ink +gai.net +gaiamount.com +gaibar.com +gainda.net +gainet.com +gaingreat.com +gaini.net +gainscha.com +gaitu.com +gaituba.com +gaitubao.com +gaitubao.net +gaixue.com +gaizhui.com +galaxix.com +galaxy-immi.com +galaxyappstore.com +galaxyasset.com +galaxyfont.com +galaxyinfo.com +galaxymacau.com +galaxyns.net +galeo.me +galgamezs.com +galiaoba.com +gallopgazelle.com +galstars.net +galsun.com +galudisu.info +gamdream.com +game-as.com +game-props.com +game-reign.com +game-yx.com +game1126.com +game12315.com +game13.com +game141.com +game2.com +game234.com +game345.com +game3vs7novel.com +game4343.com +game5.com +game5399.com +game5iw.com +game798.com +game900.com +game9g.com +gameabc.com +gameabc2.com +gamebar.com +gamebbm.com +gamebean.com +gamebean.net +gamebee.net +gamebto.com +gamecat.fun +gamecomb.com +gamecps.com +gamed9.com +gamedashi.com +gameegg.com +gameexp.com +gamefk.com +gamefm.com +gamefv.com +gamehome.tv +gamehui.com +gameinns.com +gameiy.com +gamejym.com +gamekee.com +gameley.com +gameloveman.com +gamemale.com +gamemei.com +gameol.com +gamepf.com +gamept.com +gamerboom.com +gameres.com +gamerey.com +gamerhome.net +gamerlol.com +gamermake.com +gamersky.com +gamerstorm.com +gameservice.com +gamesh.com +gamesifu.com +gamesir.com +gametanzi.com +gametaptap.com +gametdd.com +gamethk.com +gametrees.com +gamett.net +gametu.net +gamevvip.com +gamewifi.net +gamexdd.com +gamexhb.com +gamexz.com +gameyisi.com +gameyj.com +gamfe.com +gammatimes.com +gamutsoft.com +gamux.org +gan-ren.com +ganggeban123.com +ganggg.com +ganghaowang.com +ganglonggou.com +gangpaibao.com +gangqinpu.com +gangzai.online +ganhuoche.com +ganhuodaquan.com +ganji.com +ganjiangrc.com +ganjistatic1.com +ganjistatic2.com +gank-studio.com +gank.io +gankang.com +gankgames.com +gankh5.com +ganlv.org +ganlvji.com +ganniu.com +ganqi.com +ganqi.net +ganso.net +gansunet.com +gansuyunshi.com +ganxi666.com +ganxianw.com +ganxianzhi.win +ganzhe.com +ganzhishi.com +gao.com +gao3d.com +gao4.com +gao7.com +gao7gao8.com +gaobata.com +gaobei.com +gaobiao.net +gaobo.name +gaocegege.com +gaochengnews.net +gaochun.info +gaodabio.com +gaodage.com +gaodalei.com +gaode.com +gaodilicai.com +gaoding.com +gaoduanqianzheng.com +gaodugj.com +gaodun.com +gaodunwangxiao.com +gaofang.cloud +gaofangcache.com +gaofangz.com +gaofeib2c.com +gaofeie.com +gaofen.com +gaofenplatform.com +gaoguai.com +gaoguangcn.com +gaogulou.com +gaohaipeng.com +gaohangip.com +gaohbook.net +gaohr.com +gaoimg.com +gaoji.ren +gaojiaju.net +gaojianli.me +gaojie.com +gaojihealth.com +gaokao.com +gaokao365.com +gaokao789.com +gaokaobaoming.com +gaokaohelp.com +gaokaopai.com +gaokaoq.com +gaokaozhiku.com +gaokeyan.com +gaokin.com +gaokowl.com +gaokw.com +gaokzx.com +gaolouimg.com +gaomaomao.com +gaomeig.com +gaomeluo.com +gaomon.net +gaopaiwood.com +gaopeng.com +gaoqing.fm +gaoqingpai.com +gaoqiwenda.com +gaoqixhb.com +gaore.com +gaosan.com +gaoshou.me +gaoshouvr.com +gaoshouyou.com +gaosiedu.com +gaosivip.com +gaosouyi.com +gaosu.com +gaosudu.com +gaotang.cc +gaotie.net +gaotieshike.com +gaotu006.club +gaotu100.com +gaoxiao88.net +gaoxiaobang.com +gaoxiaojob.com +gaoxiaovod.com +gaoxin123.com +gaoxinbao.xyz +gaoxinkc.com +gaoyizaixian.com +gaoyong666.com +gaoyoujob.com +gaoyy.com +gaozhaiedu.com +gaozhiip.com +gaozhongwuli.com +gaozhouba.com +gap.hk +gapitech.com +gara.cc +garden-aquarium.com +gardencn.com +garmuri.com +garnoc.com +garphy.com +garply.com +gas-analyzers.com +gasfw.com +gasgoo.com +gashr.com +gasshow.com +gaszx.com +gate-dhgames.com +gateface.com +gatewang.com +gateway.craft.moe +gather-dns.com +gathernames.com +gaussianoptics.com +gavindesign.com +gaxrmyy.com +gay20.com +gbase8a.com +gbasebi.com +gbdex.com +gbgba.com +gbhome.com +gbiac.net +gbicdn.com +gbicom.com +gblhgk.com +gblj365.com +gbofd.com +gboooo.com +gbpjam.com +gbsou.com +gbt88.com +gbtags.com +gbtranswins.com +gbw114.com +gc-repair.com +gc-zb.com +gc1616.com +gc39.com +gc5.cc +gc600.com +gccdn.net +gcchina.com +gccmgw.com +gcdcrs.com +gcgd.net +gchao.com +gche8.com +gcihotel.net +gcimg.net +gcjc.com +gcjr.com +gcjx123.com +gcl-et.com +gcloudcs.com +gcloudgbs.com +gcloudsdk.com +gclxry.com +gcmc.cc +gcoreinc.com +gcores.com +gcstorage.com +gcsz.net +gcyts.com +gczp.cc +gczx.cc +gczyg.com +gd-china.com +gd-hskj.com +gd-id.com +gd-linux.com +gd-linux.org +gd1580.com +gd165.com +gd2000.org +gd32.com +gd3n.com +gda086.com +gdadjs.com +gdadri.com +gdadsly.com +gdatacube.net +gdbhnk.com +gdbljd.com +gdbyhtl.net +gdcct.com +gdcic.net +gdcom.wang +gdcoop.com +gdcrj.com +gdcts.com +gdctsvisa.com +gdcx.net +gdcyl.org +gddarf.com +gddata.net +gddg.cc +gddhn.com +gdebidding.com +gdefair.com +gdems.com +gdevops.com +gdforestry.com +gdfplaza.com +gdgcep.com +gdggkf.com +gdgudong.com +gdgwyw.com +gdhaoma.com +gdhbsh.com +gdhouqin.com +gdhuan.com +gdhy0668.com +gdie.com +gdimmi.com +gdinfo.net +gdiso.com +gdjdxy.com +gdjinge.com +gdjn.org +gdjqwl.com +gdjyw.com +gdkaman.com +gdkepler.com +gdkjb.com +gdkjw.com +gdkszx.com +gdkz88.com +gdlins.com +gdlppow.com +gdlsgz.com +gdmappress.com +gdmingshizx.com +gdmm.com +gdmoa.org +gdmschina.com +gdmseduol.com +gdmuseum.com +gdmxjy.com +gdong.com +gdou.com +gdpanshi.com +gdpycy02.com +gdqynews.com +gdrc.com +gdrc360.com +gdrc365.com +gdrcu.com +gdrfyy.com +gds-services.com +gdscse.net +gdscw.com +gdsincom.com +gdsoq.com +gdsports.net +gdsrcw.com +gdssl.image-gmkt.com +gdstlab.com +gdswine.com +gdsxgd.com +gdszjgdj.org +gdszpdt.com +gdtai.com +gdtaihao.com +gdtex.com +gdtextbook.com +gdtimg.com +gdtnio.com +gdtone.com +gdtoolkit.com +gdtrafficad.com +gdtravel.com +gdttc.com +gdtz888.com +gdunis.com +gdupi.com +gdvolunteer.net +gdwca.com +gdwlgp.com +gdwlife.com +gdwxmz.com +gdxgt.com +gdxxb.com +gdyjs.com +gdysdz.com +gdyunyin.net +gdyxc.com +gdzbs.com +gdzhlh.com +gdzhongshan.com +gdzp.org +gdzrlj.com +gdzs2018.cc +gdzs2018.vip +gdzsxx.com +gdztck.com +gdzuoxie.com +gdzzz.com +ge-garden.net +ge100.com +geakr.com +geality.com +geapu.com +gearkr.com +geautos.com +gebi1.com +gebilaoshi.com +gebiqu.com +gec123.com +geci345.com +gecimi.com +geciwang.net +gedou8.com +gedoumi.com +gedu.org +geeboo.com +geebook.com +geedai.com +geedu.com +geeetech.com +geeeu.com +geejing.com +geek-docs.com +geek-era.com +geek-papa.com +geek-share.com +geek-workshop.com +geekbang.org +geekbangtech.com +geekcar.com +geekdigging.com +geekdream.com +geekercloud.com +geekerconsulting.com +geekersq.cc +geekfan.net +geekfans.com +geekhub.com +geekiron.com +geekjc.com +geekluo.com +geekmaker.com +geekman.vip +geekniu.com +geekori.com +geekotg.com +geekpark.net +geekpwn.org +geeksblog.cc +geektutu.com +geeku.net +geekwom.com +geekxue.com +geekzu.org +geely.com +geement.com +geeqee.com +geermunews.com +geesee.com +geeseteam.com +geetest.com +geewaza.com +geexek.com +geeyep.com +geezn.com +gegejia.com +gegeyingshi.com +geicloud.com +geihuasuan.com +geihui.com +geilicdn.com +geilijiasu.com +geimian.com +geindex.com +geiniwan.com +geishost.com +geisnic.com +geizan.cc +gejian.net +gejiawen.com +gejiba.com +gelics.com +gelonghui.com +gelu.me +gemchina.com +gemdale.com +gemgsx.com +gemii.cc +gemini-galaxy.com +gemini530.net +geminight.com +gempay.com +gempoll.com +gemuedu.com +genbaike.com +genban.org +gendantong.com +genekong.com +geneskies.com +genetalks.com +geneworldcn.com +gengnie.com +gengwen.net +geniatech.com +genrace.com +genscript.com +gensee.com +genshuixue.com +gentags.com +gentags.net +genymotion.net +genzhuang.org +geo-prism-cn.htcsense.com +geo-prism.htcsense.com +geo.kaspersky.com +geo2k.com +geogsci.com +geohey.com +geoidc.com +geospatialsmart.com +geotmt.com +gepresearch.com +gepubbs.com +gepush.com +gequ77.com +gequdaquan.net +geren-jianli.com +gerenjianli.com +gerhard-china.com +geruihuate.com +gesanghua.org +gesep.com +geshui.com +geshui100.com +geshuiw.com +gesuo.com +get.vip +get233.com +getbingo.net +getbs.com +getcai.com +getcn.net +gethover.com +getiis.com +getip.name +getkwai.com +getlema.com +getmarkman.com +getquicker.net +getsurfboard.com +getteamyi.com +getui.com +getui.net +getui.vip +getuikit.net +getulab.com +getvidi.co +gewai-cnc.com +gewala.com +gewara.com +gewu.vc +gexiao.me +gexiaocloud.com +gexing.com +gexing.me +gexings.com +gexingzipai.com +geyan123.com +geyanw.com +geyo.com +geyoukj.com +gezhixq.net +gezida.com +gezila.com +gf-funds.com +gf.cc +gf521.com +gfan.com +gfanstore.com +gfbhgz.com +gfcdn.shop +gfcdn.xyz +gfcname.com +gfcvisa.com +gfd178.com +gfdns.net +gfdsa.net +gfedu.com +gffirm.com +gffwq.com +gfglb.com +gfhj.com +gfjl.org +gfnormal01ac.com +gfnormal01aq.com +gfnormal02ak.com +gfnormal03ab.com +gfnormal03aj.com +gfnormal04ac.com +gfnormal04ad.com +gfnormal04ar.com +gfnormal06aa.com +gfnormal07ak.com +gfnormal07ar.com +gfnormal07at.com +gfrtrttweet.com +gftuan.com +gfun.me +gfund.com +gfvip00ao.com +gfvip04af.com +gfvip05ad.com +gfvip07ap.com +gfvip08ad.com +gfvip08ao.com +gfvip08ar.com +gfvip09ac.com +gfvip09aj.com +gfvip09an.com +gfvip09aq.com +gfvip09at.com +gfxaa.com +gfxcamp.com +gfxtr1.com +gfxy.com +gfzj.us +gg-ev.com +gg-lb.com +gg-led.com +gg1994.com +gg8828.com +ggac.net +ggcida.com +ggcj.com +ggcykf.com +ggda365.com +ggemo.com +ggerg.com +ggeye.com +ggg.cool +ggj88.com +ggjrw.com +ggjstz.com +gglenglish.com +ggmm777.com +ggmmqq.com +ggmzy1.com +ggo.la +ggo.net +ggpeixun.com +ggqule.com +ggqx.com +ggsafe.com +ggsq.cc +ggt1024.com +ggwan.com +ggweb.net +ggxt.net +ggxxe.com +ggytc.com +ggzgg.com +ggzuhao.com +gh6.org +gh8s.com +ghatg.com +ghboke.com +ghgy.com +ghgy.net +ghjie.com +ghlearning.com +ghlqjxj.com +ghmba.com +ghmcchina.com +ghmp4.com +gho5.com +ghost008.com +ghost11.com +ghost123.com +ghost64.com +ghostchina.com +ghostsf.com +ghostw7.com +ghostwin10.net +ghostwin7.net +ghostxp2.com +ghostxp6.com +ghostxpsp3.net +ghostxx.com +ghproxy.com +ghpym.com +ghrlib.com +ghs.net +ghsmpwalmart.com +ght.me +ghui.me +ghwgame.com +ghxi.com +ghyg.com +ghzhushou.com +ghzs.com +ghzs666.com +giabbs.com +giaimg.com +giant-cycling-lifestyle.com +giantcdn.com +gibcp.com +giccoo.com +gicp.net +giexya.com +gif-china.cc +gif5.net +gifcool.com +giffox.com +gifhome.com +gifms.com +gifshow.com +giftsbeijing.com +gifu-pr.com +giga-da.com +gigabyte.com +gigaget.com +giikin.com +giiso.com +gildata.com +gilieye.com +giltbridge.com +giltworld.com +gimcyun.com +gimhoy.com +gimmgimm.com +gimoo.net +gio.ren +giocdn.com +gionee.com +gionee.net +giordano.com +giraff3.com +girlbt.com +girls-frontline.com +girlw.net +giscafer.com +giser.net +giserdqy.com +gissaas.com +gissky.net +git-star.com +gitbook.net +gitcafe.net +gitclone.com +gitcode.net +gitee.com +gitee.io +githang.com +github.do +githubusercontents.com +gitissue.com +gitlib.com +gitlore.com +gitnavi.com +gitnoteapp.com +gitnova.com +gitos.net +gitsea.com +gitv.tv +gityuan.com +giuem.com +giveda.com +giveme5.cc +giyu8.com +gizwits.com +gj515.com +gjalk.com +gjb9001b.com +gjbaek.ren +gjcdn.vip +gjceshi9.com +gjds.vip +gjfax.com +gjgwy.net +gjgwy.org +gjgzpw.com +gjjcxw.com +gjjnhb.com +gjnlyd.com +gjpdh.com +gjsj.com +gjtjjp.com +gjw.com +gjw123.com +gjxh.org +gjyys.com +gjzy.com +gk-net.com +gk-z.com +gk.link +gk100.com +gk114.com +gk99.com +gkbbapp.com +gkczgs.com +gkdgz.com +gkeydoor.com +gkfb.com +gkkxd.com +gkmhq.com +gkmotor.com +gkong.com +gkoudai.com +gkpass.com +gkshuju.com +gkstk.com +gktianshanjd.com +gkwo.net +gkxd.com +gkzhan.com +gkzj.net +gkzxw.com +gl-data.com +gl-inet.com +gl258.com +glab.online +glamever.com +glamourred.com +glanimaltrade.com +glanu.com +glasseasy.com +glawyer.net +glb3.com +glb6.com +glbdns.com +glbdqn.com +glcanyin.net +glcct.com +gldtztc.com +gleasy.com +glface.com +glgczk.com +glgoo.com +glgoo.net +glgoo.org +glhospital.com +glike.me +glinfo.com +gljrkj.com +gllue.com +gllue.me +gllue.net +glmama.com +glmapper.com +glmei.net +global-download.acer.com +global-harbor.com +global-idc.net +global-jf.com +global-scsl.com +global-trade-center.com +globalaccentchinese.com +globalbuy.cc +globalcompressor.com +globaldangdang.hk +globaletrust.com +globalhardwares.com +globalimporter.net +globalizex.com +globalmarket.com +globalmil.com +globalpingbao.com +globalscanner.com +globalsign.com +globalslb.net +globalsources.com +globalstech.com +globeauto.org +globeedu.com +globeimmi.com +globerexpress.com +globlevip.com +globrand.com +globrand.net +glodon.com +glorymobi.com +gloryre.com +gloryview.com +glorze.com +glosku.com +glqh.com +glshimg.com +gltattoo.com +gltjk.com +gltop.com +glvs.com +glxlawyer.com +glzhuang.com +glzip.com +glzj88.com +glzy8.com +gm193.com +gm2007.com +gm825.com +gm86.com +gm88.com +gm99game.net +gmacsaic.com +gmanhua.com +gmb2b.com +gmcc.net +gmcchina.net +gmdun.com +gmecity.com +gmed.cc +gmem.cc +gmem.site +gmgc.info +gmgcongress.com +gmgdc.com +gmgm668.com +gmhysj.com +gmilesquan.com +gming.org +gmiot.net +gmjk.com +gmm01.com +gmmch5.com +gmmicro.com +gmmsj.com +gmonline-all.com +gmpanel.com +gmrmyy.com +gms-lighting.com +gmsjf.com +gmssl.org +gmt-china.org +gmtv.cc +gmugmu.com +gmwiki.com +gmwtp.com +gmwuf.com +gmyl.com +gmz88.com +gmzhushou.com +gmzi.com +gn00.com +gn168.com +gnaixx.cc +gname-dns.com +gndaily.com +gnehr.com +gnetis.com +gng92.com +gnhpc.com +gnrcbank.com +gnss.help +gnssinfo.com +gnssopenlab.org +gnvip.net +gnway.com +go-gddq.com +go-goal.com +go.cc +go007.com +go05.cc +go108.com +go24k.com +go2aaron.com +go2eu.com +go2hn.com +go2map.com +go2tu.com +go2yd.com +go300.com +goalan.net +goalhi.com +goalmobi.com +goapk.com +gobanma.com +gobelike.net +gobivc.com +gocarjourney.com +gocashback.com +gocea.net +goceshi.com +gocheck.net +gochego.com +gocn.vip +god51.com +godaily.org +godasai.com +godbach.com +godbiao.com +godblessyuan.com +goddelivery.com +goddessxzns.com +godeve.com +godic.net +godida.com +godiscoder.com +godiy8.com +godo.pub +godoor.com +godotdotdot.com +godpan.me +godrry.com +godruoyi.com +godsheepteam.com +godsignal.com +godwolf.com +goeasy.io +goepe.com +goertek.com +goetheslz.com +goflac.com +goframe.org +gogbuy.com +gogo-le.com +gogo.so +gogo123.com +gogoauc.com +gogobids.com +gogofly.com +gogojiang.com +gogolinux.com +gogooffer.com +gogopzh.com +gogoqq.com +gogoup.com +gohighfund.com +goho.co +gohoedu.com +gohom.win +gohomesafe.org +gohong.com +gohugo.org +going-link.com +gojiaju.com +goke.com +gokols.com +gokuai.com +golangapi.com +golanger.com +golangtc.com +golangweb.com +golaravel.com +gold-v.com +gold58.com +gold678.com +goldapple.name +goldav.net +goldbj.com +goldbox.vip +golden-book.com +golden-infor.com +goldenad.net +goldenholiday.com +goldenhome.cc +goldenname.com +goldentom.com +goldgrid.com +goldhoe.com +goldke.com +goldlvshi.com +goldmantis.com +goldmarkrealestate.com +goldstonepack.com +goldsunchn.com +goldtoutiao.com +golf568.com +golfvv.com +golink.com +golinksworld.com +golive-tv.com +golivetv.tv +gomeart.com +gomecloud.com +gomegj.com +gomeholdings.com +gomehome.com +gomeplus.com +gomesell.com +gomo.com +gonever.com +gong123.com +gongbaike.com +gongboshi.com +gongchang.com +gongchengbing.com +gongchou.com +gongfubb.com +gongheshengshi.com +gongjiao.com +gongjiaomi.com +gongju.com +gongju5.com +gongjuji.net +gongjumi.com +gongkaoleida.com +gongkong.com +gongkong001.com +gongkongbpo.com +gongkongedu.com +gongkongke.com +gongkongmall.com +gonglin91.com +gongmutang.com +gongnou.com +gongpin.net +gongpingjia.com +gongshang120.com +gongshe99.com +gongshi8.com +gongsibao.com +gongsijiaoyi.com +gongsizhijia.com +gongwuxing.com +gongxiangcj.com +gongxiao8.com +gongxinbang.com +gongxuku.com +gongye360.com +gongyeku.com +gongyelian.com +gongyeyun.com +gongyicn.org +gongyijijinhui-info.com +gongyingshi.com +gongyishibao.com +gongyixiang.com +gongyoumishu.com +gongzhonghaozhushou.com +gongzi.org +gongzicp.com +gongzifu.com +gongzuoshouji.net +gongzuoyun.org +gonsun.com +gonvvama.net +goo17.com +gooagoo.com +gooann.com +good-display.com +good-fine.com +good-import.com +good.cc +good1230.com +good321.net +goodaiai.com +goodapk.com +goodapp.net +goodbaby.com +goodbabygroup.com +goodbaike.com +goodbook100.com +goodcti.com +gooddr.com +gooddu.com +goodealwigs.com +goodera8.com +goodev.org +goodgupiao.com +goodid.com +goodix.com +goodjd.com +goodjili.com +goodjzjg.com +goodkejian.com +goodlucknet.com +goodnic.net +goodprogrammer.org +goodrain.com +goods-brand.com +goodstudydayup.com +goodtea.cc +goodtp.com +goofish.com +google-analytics.com +googleadservices.com +googleanalytics.com +googlebridge.com +googlefonts.net +googleoptimize.com +googlesyndication.com +googletagmanager.com +googletagservices.com +googlevip8.com +googlevoice.org +googleyixia.com +googpc.com +goojer.com +goolink.org +gooo8.com +gooogua.com +gooooal.com +goooob.com +gooood.hk +goootech.com +goootu.com +goosai.com +goosail.com +gooseeker.com +goosetalk.com +gooxi.com +gooyo.com +goozp.com +gopedu.com +gopiaowu.com +goplaycn.com +goplayervideo.com +gorichox.com +gorouter.info +gorse.com +goryun.com +goshijia.com +gosinoic.com +gospelwin.com +gosuncdn.com +gosunm.com +goten.com +gotocdn.com +gotodn.com +gotohz.com +gotohzrb.com +gotoip.net +gotoip1.com +gotoip11.com +gotoip2.com +gotoip3.com +gotoip4.com +gotoip55.com +gotojp.net +gotokeep.com +gotonav.com +gotonets.com +gotoubi.com +gotozhuan.com +gotran.com +gotvg.com +gou.com +gou5juan.com +gouai.com +gouchezj.com +goufang.com +goufq.com +goug.com +gougoujp.com +gougousc.com +gougoutxt.com +gouhai.com +gouhaowang.com +gouhuasuan.shop +goukuai.com +goulew.com +goulong.com +goumee.com +goumin.com +gounahaozi.org +goupuzi.com +goushh.com +gouso.com +gousu.com +goutanzi.com +gouwanmei.com +gouwubang.com +gouwuke.com +gouwumai.com +gouwuyu.com +govfz.com +govmade.com +gow100.com +gowa.club +gowan8.com +goweb2.net +goweb3.net +gowincms.com +gowinlease.com +gowinxp.com +gowithmi.com +goyihu.com +goyoo.com +goyouhuima.com +gozap.com +gp-cdn.net +gp-tm.com +gp123.cc +gp1903.com +gp1907.com +gp1908.com +gp1909.com +gp1910.com +gp241.com +gp259.com +gp451.com +gp51.com +gp88888.com +gp891.com +gpai.net +gpautobid.com +gpbctv.com +gpbeta.com +gpcqjy.com +gpcxw.com +gpd.hk +gpdi.com +gper.club +gpio.me +gpl-express.com +gplayspace.com +gplqdb.com +gpnewtech.com +gppapp.com +gps8.com +gpslook.net +gpsoo.net +gpsspg.com +gpsuu.com +gpticket.org +gpxxz.com +gpxygpfx.com +gpxz.com +gqgkj.com +gqhmt.com +gqjd.net +gqk.tv +gqm168.com +gqooh.com +gqqsm.com +gqsoso.com +gqt168.com +gqtpw.com +gqyy8.com +gqzctsj.com +gqzzw.com +grablan.com +grabsun.com +gracece.com +gracg.com +gradaimmi.com +gradgroup.com +gradgroup.net +grainedu.com +grainstorage.net +gran.work +grandinsight.com +grandomics.com +grapchina.org +graphene.tv +graphmovie.com +graueneko.xyz +gray-ice.com +grcbank.com +grchina.com +gre.vip +greatbit.com +greatopensource.com +greatops.net +greatroma.com +greatsk.com +greatssp.com +greatstargroup.com +greatstartools.com +greatwalldns.com +greatwallships.com +gree-jd.com +gree.com +greebox.com +green-android.org +green12306.com +greenbodhi.com +greenchengjian.com +greencompute.org +greendh.com +greenhua.com +greenism.net +greenlandsc.com +greentomail.com +greenxf.com +gretf.com +greycdn.net +greyli.com +grfy.net +grfyw.com +grg2013.com +grgbanking.com +grge23.com +grgsecurity.com +grgvision.com +grgyintong.com +gridsum.com +gridsumdissector.com +gridy.com +grieom.com +grikin.com +grinm.com +grirem.com +grizcom.com +grmxdy.com +gro2004.com +gro2005.com +groad.net +groovyfilmes.com +grouk.com +group-purchasing.com +group.citic +groupjx.com +grouplus.com +growingio.com +grt-china.com +gruntjs.net +grvape.com +gryu.net +grzmz.com +gs-loc-cn.apple.com +gs-loc.apple.com +gs.ww.np.dl.playstation.net +gs14.com +gs2.ww.prod.dl.playstation.net +gs307.com +gsadds.com +gsafc.com +gsafcct.com +gsbankchina.com +gsbankmall.com +gscaijing.com +gscidc.net +gsdk.tv +gsdlcn.com +gsdpw.com +gsflcp.com +gsgs10086.com +gshhqy.com +gsi24.com +gsicpa.net +gsjie.com +gsjpy.com +gsjtky.com +gsjy.net +gsktraining.com +gskwai.com +gskyty.com +gslxrc.com +gsmpers.com +gsmyi.com +gsp10-ssl-cn.ls.apple.com +gsp13-cn.ls.apple.com +gsp4-cn.ls.apple.com +gsp4-cn.ls.apple.com.edgekey.net +gsp4-cn.ls.apple.com.edgekey.net.globalredir.akadns.net +gsp5-cn.ls.apple.com +gsp85-cn-ssl.ls.apple.com +gspaceteam.com +gspcc.com +gspe19-cn-ssl.ls.apple.com +gspe19-cn.ls-apple.com.akadns.net +gspe19-cn.ls.apple.com +gspe21-ssl.ls.apple.com +gspe21.ls.apple.com +gspe35-ssl.ls.apple.com +gsqx.com +gsrcu.com +gsrecv.com +gssdlv.com +gssfgk.com +gst-china.net +gstarcad.com +gstaticadssl.l.google.com +gstdt.com +gston.cc +gstonegames.com +gsxcdn.com +gsxservice.com +gsxtj.com +gsxzq.com +gsyuanquan.com +gszhuli.com +gszlyy.com +gszph.com +gt-oil.com +gt-semi.com +gt520.com +gtadata.com +gtags.net +gtan.com +gtanhao.com +gtaxqh.com +gtcedu.com +gtcim.com +gtdlife.com +gtdstudy.com +gter.net +gtfund.com +gtgres.com +gtibee.com +gtimg.com +gtja-allianz.com +gtja.com +gtjadev.com +gtjaqh.com +gtjazg.com +gtk2.com +gtlrxt.com +gtm-a1b2.com +gtm-a1b3.com +gtm-a1b4.com +gtm-a1b6.com +gtm-a1b7.com +gtm-a2b3.com +gtm-a2b4.com +gtm-a2b6.com +gtm-a2b7.com +gtm-a3b1.com +gtm-a3b5.com +gtm-a3b6.com +gtm-a3b7.com +gtm-a4b1.com +gtm-a4b4.com +gtm-a4b6.com +gtm-a4b8.com +gtm-a4b9.com +gtm-a5b4.com +gtm-i1d6.com +gtm-i1d9.com +gtm.oasisfeng.com +gtmlufax.com +gtn9.com +gto365.com +gtobal.com +gttof2020.com +gttxidc.com +gtuanb.com +gtuu.com +gtxp2.com +gtzy123.com +gu166.com +gu360.net +guabu.com +guahao-inc.com +guahao.com +guahaoe.com +guahaowang.com +guaihaha.com +guaihaha.net +guaihou.com +guaikemov.com +guaili.org +guailuo.com +guailuzi.com +guainiuwang.com +guaiwola.com +guaixun.com +guajibao.club +guajibao.me +guajibaola.com +guajob.com +guakaoba.com +gualemang.com +guan.wang +guan5.com +guanaitong.com +guanchangcun.com +guanchao.site +guandan.com +guandang.net +guandata.com +guandianle.com +guandongphoto.com +guandongyucang.com +guang.com +guangbo.net +guangchangwu.net +guangchilieche.com +guangdauser.com +guangdianyun.tv +guangdiu.com +guangfeng.com +guanggao.com +guanggu100.com +guanggua.com +guanghe.tv +guanghuayigou.com +guangjiaohui888.com +guangjie5u.com +guangjieba.com +guangka.com +guangkatf.com +guangli88.com +guanglunshiji.com +guangminggame.com +guangmingjx.com +guangsuss.com +guanguser.com +guangwaifu.com +guangwangye.com +guangweihui.com +guangxigrc.com +guangxindai.com +guangxiyou.com +guangyaguang.com +guangyinglvxing.com +guangyv.com +guangzhitui.com +guangzhou-logistics.com +guangzhou-marathon.com +guanhuaju.com +guanjia2.com +guanjiabo.net +guanjiajf.com +guanjianfeng.com +guankou.net +guanli360.com +guanlixinli.com +guanmeikj.com +guannews.com +guannin.com +guanplus.com +guanqifeier.com +guanrenjiaoyu.com +guanshangsq.com +guanshangyu.cc +guanshi.net +guanshuzw.com +guantaicn.com +guanting.com +guanvip8.com +guanwang.com +guanwangdaquan.com +guanwangshijie.com +guanwangyun.com +guanwawa.com +guanxiaokai.com +guanyiyun.com +guanzhongrc.com +guanzhu.mobi +guanzhulian.com +guapaijia.com +guardrailchina.com +guazhuan.com +guazi-apps.com +guazi.com +guazipai.com +guazistatic.com +guazixs.com +gubo.net +gubo.org +gucciblog.net +gucheng.com +gucn.com +gucun.info +gucunpark.net +gudage.cc +gudaiba.com +gudaovision.com +gudi.cc +gudianhr.com +guduodata.com +guer.org +guestops.com +gufeiposuiji.com +gufengge.org +gufengmh.com +gufengmh8.com +gufengmh9.com +guge.tw +gugeanzhuangqi.com +gugeapps.net +gugexs.com +gugong.net +gugu5.com +gugud.com +guguread.com +gugutm.com +gugutown.com +guguyu.com +guguzhu.com +guhai66.com +gui333.com +gui66.com +guibi.com +guibook.com +guibuyu.org +guidechem.com +guiderank-app.com +guiderank.org +guifan110.com +guifun.com +guigu.org +guiguzhongguo.com +guiheyue.com +guihua.com +guihuayun.com +guiji.com +guijinshu.com +guikeyun.com +guilin.la +guilinhd.com +guilinlife.com +guilintravel.com +guimengning.com +guimi.com +guimilu.com +guimipay.net +guitarpro.cc +guixue.com +guizeco.com +guizheng.net +gujianba.com +gujianzhixiang.com +gujiushu.com +gukaifu.com +gukaihu.com +gukun.com +gulandscape.com +gullmap.com +gulltour.com +gulou120.com +gulu.tv +gulu001.com +gulugj.com +gulutea.com +gumang.com +gumaor.com +gumo.pro +gunfans.net +guntian.com +guo.com +guo7.com +guo98.com +guoanaz.com +guoanqi.com +guoaso.com +guobaihui.com +guobaoyou.com +guobensd.com +guobiao99.com +guoboshi.com +guocaiqinghai.com +guocuijingju.com +guodafdc.com +guodegang.org +guodingnet.com +guodongbaohe.com +guodu.com +guodu.hk +guoers.com +guofen.com +guofenchaxun.com +guofenchaxun.net +guoguo-app.com +guohanlawfirm.com +guohead.com +guohuapharm.com +guoji.biz +guojianglive.com +guojieba.com +guojimami.com +guojing-tech.com +guojixuexiao.org +guojixumu.com +guojj.com +guojucloud.com +guojusoft.com +guokr.com +guokr.io +guokr.net +guoku.com +guolaiwanba.com +guoli.com +guoliangjie.com +guolianglab.org +guolier.com +guolin.tech +guoluonews.com +guolv.com +guomai.cc +guomii.com +guomu.com +guopc.com +guopeiwang.com +guopi8.com +guopika.com +guoping123.com +guoqinwang.com +guorentao.com +guorongfei.com +guoruiinfo.com +guoruijx.com +guoshi.com +guoshudq.com +guotv.com +guowaidiaocha.com +guowaitianqi.com +guowenku.com +guoxingjun.com +guoxinqh.com +guoxue.com +guoxue123.com +guoxuemeng.com +guoxuemi.com +guoxuwang.com +guoyang.cc +guoyanni.com +guoyi360.com +guoyice.com +guoyitangtt.com +guoyu.com +guozaoke.com +guozh.net +guozhihua.net +guozhivip.com +guozhiyouq.com +guozhongxin.com +guozi.org +guoziyx.com +gupaoedu.com +gupei.com +gupen.com +gupiao111.com +gupiao135.com +gupiao8.com +gupiaowajue.com +gupiaozhidao.com +gupowang.com +gupt.net +gupuu.com +guqiankun.com +guqiu.com +guqu.net +gurudigger.com +gurukeji.com +gushequ.com +gushi.ci +gushi.com +gushicimingju.com +gushidaquan.cc +gushiju.net +gushimi.org +gushufang.com +gusiyuan.com +gusuwang.com +gutianfood.com +gutou.com +gutouwang.net +guwan.com +guweimin.com +guwenxs.com +guwu121.com +guxunw.com +guyouzhan.com +guyuenglish.com +guyungame.com +guzaosf.com +guzhangting.com +guzhifengds.com +guziyy.com +gvacdn.com +gvi-tech.com +gvlocalization.com +gw-dv.net +gw-ec.com +gw2sc.com +gw8888.com +gwamcc.com +gwapi.net +gwauto.com +gwclouds.net +gwdang.com +gweike.com +gwell.cc +gwidc.com +gwj-test.com +gwm-global.com +gwmfc.com +gwmsoft.com +gwname.com +gworg.com +gwoversea.com +gwyoo.com +gwyou.com +gwypxw.com +gwyzk.com +gwzwfw.com +gx-newmedia.com +gx34.com +gx8899.com +gxaedu.com +gxaj.com +gxar.com +gxb.io +gxb2b.net +gxbaidutg.com +gxbf.net +gxbys.com +gxbyw.com +gxc-coin.com +gxcards.com +gxcic.net +gxdahua.com +gxdianhua.com +gxdmw.com +gxehiil.bar +gxeqx.com +gxfdcw.com +gxfin.com +gxfxwh.com +gxganju.com +gxgkcat.com +gxgzlm.com +gxhl.com +gxhma.com +gxhouse.com +gxhzxw.com +gxiang.net +gxiang.org +gxibvc.net +gxicpa.com +gxidc.com +gxind.com +gxjgdj.com +gxjtaq.com +gxjznet.com +gxkjbg.com +gxkjdns.com +gxkjec.com +gxkjjt.com +gxlcms.com +gxlsjt.com +gxlxs2008.net +gxmenjin.com +gxmlyjy.com +gxmmkt.com +gxnas.com +gxnnxmhb.com +gxp.cc +gxpfyy.com +gxqcw.com +gxqs.org +gxrc.com +gxsell.com +gxshuairun.com +gxskm.com +gxsky.com +gxtodo.com +gxtstatic.com +gxw98.com +gxwmcu.com +gxxgle.com +gxxiaotutu.com +gxxmyjs.com +gxycwy.com +gxylxtc.com +gxyxlx.com +gxzjy.com +gxzmrl.com +gxzpw.org +gy-center.net +gy-fuji.com +gy.com +gy7n.com +gy818.com +gyb086.com +gycode.com +gydongli.com +gyersf.com +gyguohua.com +gyhj.org +gyip.net +gyljc.com +gymama.com +gymbo-online.com +gymsj.com +gyncb.net +gynsh.net +gypserver.com +gyqcw.com +gyr.cc +gysk.com +gysou.com +gysq.org +gystatic.com +gytcwb.com +gytsg.net +gytsjk.com +gytsm.com +gyuancdn.com +gywlwh.com +gywygl.com +gyxdkjdl.com +gyxuan.com +gyypw.com +gyyqcloud.com +gyzfbz.net +gyzy.com +gyzyfw.com +gz-cmc.com +gz-cube.com +gz-data.com +gz-gz.com +gz-lodihair.com +gz-notary.com +gz-station.com +gz-tylx.com +gz007.net +gz121.com +gz12301.com +gz300.com +gz360.com +gz4399.com +gz4u.net +gz5.com +gz528.com +gz85.com +gz91.com +gz9d.com +gzasiatech.net +gzasp.net +gzate.com +gzaune.com +gzbaibian.net +gzbaozhilin.com +gzbio.net +gzbmw.com +gzbzsport.com +gzchupai.com +gzcl999.com +gzcn.net +gzcppa.com +gzcycling.com +gzdai.com +gzdaily.com +gzdata.net +gzdayang.com +gzdbx.com +gzdingyu.com +gzdinuan.com +gzdsw.com +gzdysx.com +gzenxx.com +gzesap.com +gzexpo.com +gzfilm.com +gzfsnet.com +gzfxkwl.com +gzgc120.com +gzgdwl.com +gzguard12th.com +gzgxkj.com +gzhakj.com +gzhangcha.com +gzhaoxiang.net +gzhatao.com +gzhc365.com +gzhdcs.com +gzhhr.com +gzhifi.com +gzhphb.com +gzhshoulu.wang +gzhtg.com +gzhtinfo.com +gzhuake.cc +gzhxpw.com +gzhzcj.com +gzidc.com +gzif.net +gzittc.net +gzj568.com +gzjingsha.com +gzjisikj.com +gzjkzzp.com +gzjpad.com +gzjqd.com +gzjtjx.com +gzjtjy.com +gzjunyu.com +gzjuqi.com +gzjykj.com +gzjzc.com +gzkz88.com +gzlingli.com +gzlujiao.com +gzlz307.com +gzlzfm.com +gzmama.com +gzmath.com +gzmediaclick.com +gzmiyuan.com +gzmjhzs.com +gzmri.com +gzmtr.com +gzmxol.com +gzncstudios.com +gznemo.com +gznet.com +gzngn.com +gznote.com +gznxbank.com +gzpeite.com +gzpinda.com +gzpma.com +gzprobig.com +gzpts.com +gzpy120.net +gzqbd.com +gzqiche.com +gzqunsheng.com +gzqwkj.com +gzqxxz.net +gzrishun.com +gzrmw.com +gzrobot.com +gzrobots.com +gzrsa.com +gzshandi.com +gzshangshan.net +gzshujuhui.com +gzsjyzx.com +gzsjzx.com +gzsmove.com +gzspeedtest.com +gzstv.com +gzsuiti.com +gzsums.net +gzsww.com +gzsy06.com +gzsy07.com +gzszgas.com +gzszk.com +gztaiyou.com +gztcdj.com +gztfgame.com +gzthrc.com +gztopkt.com +gztour.org +gztv.com +gztwkadokawa.com +gztxedu.com +gztz120.com +gzuc.net +gzuni.com +gzw.net +gzwanbao.com +gzwangshang.com +gzwarriortech.com +gzwcds.com +gzwcjs.com +gzweicai.com +gzweix.com +gzwot.com +gzwrit.com +gzxdf.com +gzxf35.com +gzxftz.com +gzxhdyc.com +gzxiaopeng.com +gzxict.com +gzxidu.com +gzxjzc.com +gzxszf.com +gzxulang.com +gzxwtjy.com +gzycdy.com +gzyct.com +gzyeah.com +gzyitop.com +gzyouai.com +gzysbpay.com +gzyszy.com +gzyucai.com +gzzbgs.com +gzzg.org +gzzhitu.com +gzzkzsw.com +gzzlfw.com +gzzlgame.com +gzzoc.com +gzzongsi.com +gzzoo.com +gzzqy.net +gzzswy.com +gzzsxxw.com +gzzy04.com +gzzy05.com +h-college.com +h-heguo.com +h-sea.net +h-shgroup.com +h-ui.net +h-world.com +h-zl.net +h0591.com +h0758.net +h0f.me +h1bz.com +h231.com +h2ero.com +h2ex.com +h2os.com +h2vm.com +h3c.com +h3c.com.hk +h3dns.net +h3ue2s.com +h3yun.com +h4.cc +h41s.com +h4399.com +h4kdxs.com +h5-share.com +h5-x.com +h5.net +h5120.com +h51h.com +h55u.com +h5abc.com +h5aiwan.com +h5anli.com +h5app.com +h5avu.com +h5ay.com +h5data.com +h5ds.com +h5eco.com +h5gamecdn.club +h5in.net +h5jun.com +h5king.com +h5ky.com +h5le.com +h5mc.com +h5mgd.com +h5mota.com +h5mugeda.com +h5no1.com +h5po.com +h5shuo.com +h5tpl.com +h5uc.com +h5war.com +h5youxi.com +h5yunban.com +h6295.com +h6688.com +h6969.com +h6app.com +h7ec.com +h8jx.com +ha97.com +haawking.com +habadog.com +habbygames.com +hac-ker.net +hack-gov.com +hack0nair.me +hack50.com +hack520.com +hackav.com +hackcn.net +hackdig.com +hackerav.com +hackernews.cc +hackertalk.net +hackhome.com +hackhp.com +hackhw.com +hacking-linux.com +hacking8.com +hackline.net +hacknical.com +hackp.com +hackpascal.net +hackrf.net +hackroad.com +hacori.com +hacpai.com +haczjob.com +hadax.com +hadobi.com +hadsky.com +hadyang.com +haers.com +haguan.com +haguotu.com +haguworld.com +haha168.com +haha33.com +haha360.com +haha365.com +haha9911.com +hahack.com +hahadiaoyu.com +hahaha365.com +hahait.com +hahasou.com +hahawen.com +hahayouxi.com +hahour.com +hahtlyy.com +hai0.com +haiana.com +haianbank.com +haianedu.net +haianw.com +haibao.com +haibaobaoxian.com +haibaoyl.com +haibaoyouxi.com +haibeinews.com +haibian.com +haibog.com +haiboinvest.com +haiboyi.com +haicent.com +haichufang.com +haici.com +haicj.com +haidaibao.com +haidaoteam.com +haidaotrip.com +haidaozhu.com +haidii.com +haidilao.com +haidilao.net +haidilao.us +haidimao.com +haidubooks.com +haier.com +haier.hk +haier.net +haiershequ.com +haierubic.com +haieruplus.com +haifangbest.com +haige.com +haigeek.com +haigui001.com +haiguime.com +haijia.org +haijiangzx.com +haijiaonet.com +haijincang.com +haijingfang.cc +haiketrip.com +hailiangedu.com +hailiangip.com +haililiang.com +hailingke.com +hailinzeng.com +hailiys.com +hailuowu.com +haima.me +haima001.com +haimacloud.com +haimawan.com +haimayisheng.com +haimi.com +haimii.com +haiming-cn.com +haimini.com +haina.com +hainachuan.org +hainan.com +hainan.net +hainanairlines.com +hainancom.com +hainancp.com +hainandj.com +hainanfp.com +hainanfz.com +hainanjiuzi.com +hainanparadise.com +hainanpc.net +hainic.com +haining.cc +haining.tv +hainingnews.net +hainiubl.com +hainiuxy.com +hainuotech.com +haiqingyanyu.com +haiqisoft.com +haiqq.com +hair43.com +hair8.net +hairbobo.com +hairunmedia.com +hairunpictures.com +haisapan.com +haisenyouxi8.com +haisheninfo.com +haisheteam.com +haishisheji.com +haishui.cc +haitaibrowser.com +haitaichina.com +haitao.co +haitao.com +haitao369.com +haitao8.com +haitaocheng.com +haitaohou.com +haitaoing.com +haitaoit.com +haitaoj.com +haitaolab.com +haitaopd.com +haitaoqq.com +haitaotong.com +haitaozu.org +haitianhome.com +haitl.com +haitongjiaoyu.com +haitou.cc +haitou360.com +haitoujia.com +haitudy.com +haituie.com +haituncun.com +haitundr.com +haitunshenghuo.com +haituntui.com +haitunvoice.com +haituoqi.com +haitutech.com +haiwaimoney.com +haiwaioo.com +haiwaiyou.com +haiwaiyoujia.com +haiwanli.com +haiwanxinxi.com +haiweili.com +haiwell.com +haiwen-law.com +haiwenky.com +haixiahao.com +haixianlai.net +haixice.com +haixindichan.com +haixinews.com +haixiulive.com +haixiumv.com +haixiutv.com +haixiuvv.com +haixue.com +haixunpr.org +haixunw.com +haiyi701.com +haiying168.com +haiyingshuju.com +haiyue.info +haiyuhe.com +haiyun.me +haiyunx.com +haiyusoft.com +haizhangs.com +haizhixing.net +haizhlink.com +haizhoumo.com +haizhuyx.com +haizitong.com +haizol.com +haku77.com +halade.com +halaha.com +halead.com +halffashion.com +halfrost.com +halixun.com +halloar.com +hallofix.com +hallotw.com +halomobi.com +haluoha.com +hamanw.com +hambut.com +hamir.net +han-tang.cc +han66.com +hanamichi.wiki +hanbaiji.com +hanbaoying.com +hanboshi.com +hanchao9999.com +hancloud.com +hanclouds.com +hand-china.com +handanjob.com +handanw.com +handanyz.com +handbb.com +handday.com +handdiy.com +handfunds.com +handian027.com +handone.com +handu.com +handuyishe.com +hanergy.com +hanergymobileenergy.com +hanfan.cc +hanfei.net +hanfengcars.com +hanfugong.com +hangge.com +hanghaimeng.com +hanghang666.com +hanghangcha.com +hangjiayun.com +hangkong.com +hangmiwang.com +hangomart.com +hangowa.com +hangpu-topsys.com +hanguangbaihuo.com +hanguopai.com +hanguu.com +hangxinyiqi.xin +hangye114.net +hangye365.com +hangyjx.com +hangzhiqiao.com +hangzhoufcw.com +hangzhouluohu.com +hangzhoutianqi114.com +hanhai.net +hanhaiqikan.com +hanhande.com +hanhande.net +hanhuazu.cc +hanjianbing.org +hanjiaying.com +hanjie.biz +hanjjl.com +hanju-tv.org +hanjucc.com +hanjudao.com +hanjutiantang.com +hanjutv.com +hanjutvaa.com +hankeer.org +hankewins.com +hanking.com +hankunlaw.com +hanlefang.net +hanlei.org +hanmadiancan.com +hanmaker.com +hanmanapp.com +hanmanzj.co +hanmanzj.org +hanmeilin.com +hanmi520.com +hannor.com +hanqiweb.co +hanqiweb.com +hanqiweb.net +hanqiweb.red +hanshijiaoye.com +hanshow.com +hanshuliang.com +hansight.com +hansiji.com +hansme.com +hanspub.org +hansrobot.com +hansuku.com +hantang59.com +hantangrx.com +hantangxintong.com +hanterry.com +hantinghotels.com +hanvitools.com +hanvon.com +hanvonmfrs.com +hanvontouch.com +hanweb.com +hanweimetal.com +hanxinbank.com +hanxinsheng.com +hanyanseed.com +hanyi.studio +hanyingtv.com +hanyou.com +hanyouwang.com +hanyucar.com +hanyuehui.site +hanyurumen.com +hanzhifeng.com +hanzhong123.com +hanzify.org +hanzufang.com +hao-sheng-yi.com +hao.ac +hao.wang +hao007.net +hao0202.com +hao120.cc +hao123-hao123.com +hao123.com +hao123.com.sg +hao123img.com +hao1258.com +hao163.com +hao168.cc +hao181.com +hao184.com +hao1970.com +hao1996.com +hao1cm.com +hao22.com +hao222.com +hao224.com +hao24.com +hao245.com +hao268.com +hao315.cc +hao315.com +hao315.tv +hao3399.com +hao352.com +hao360.com +hao378.com +hao394.com +hao568.com +hao6.com +hao61.net +hao661.com +hao695.com +hao7188.com +hao753.com +hao76.com +hao86.com +hao8dai.com +hao9669.com +hao974.com +haoad.org +haoamc.com +haoayi.xyz +haobanyi.com +haobiaoke.com +haobtc.com +haocai.com +haocai1688.com +haocai777.com +haochang.tv +haochangyou.com +haocheedai.com +haochi123.com +haochijixie.com +haochu.com +haodaibao.com +haodanku.com +haodaquan.com +haodeplus.com +haodevps.com +haodewap.com +haodf.com +haodf.org +haodiany.com +haodiaoyu.com +haodingdan.com +haodiy.net +haodns123.cc +haodns999.cc +haodongdong.com +haodou.com +haoduofangs.com +haoduojiaju.com +haoduorou.net +haoest.com +haofajz.com +haofanben.com +haofang.net +haofang365.com +haofang5.com +haofangkankan.com +haofaxing.com +haofenxiao.net +haofly.net +haofz.com +haoge500.com +haogj8.com +haogongzhang.com +haogoshop.com +haogow.com +haogu114.com +haohaizi.com +haohan-data.com +haohanfw.com +haohanguo.com +haohanseo.com +haohaotuan.com +haohaowan.com +haohaoxiu.com +haohaoyx.com +haohaozhu.com +haohaozhu.me +haohead.com +haohiyou.com +haohongfan.com +haoht123.com +haohtml.com +haohuan.com +haohuoa.com +haoii123.com +haoinvest.com +haoiyon.com +haoiyong.com +haoji.me +haojiameng.net +haojiaolian.com +haojiaolian.org +haojing.org +haojue.com +haojue163.com +haokan.com +haokan123.com +haokan5.com +haokan58.com +haokanbu.com +haokanzhan.com +haokecheng.com +haokejie.com +haokongbu1.com +haokoo.com +haoku.net +haolangtech.com +haolawyer.com +haole.com +haolexiang.com +haolezen.com +haolietou.com +haoliners.net +haolints.com +haoliv.com +haolizi.net +haolvlv.com +haolyy.com +haomagujia.com +haomaimrm.com +haomaishou.com +haomaiyi.com +haomaku.com +haomee.net +haomeili.net +haomijie.com +haomingr.com +haommn.com +haomove.com +haomugua.com +haonames.com +haonic.com +haonongzi.com +haopeixun.com +haopianyi.com +haopinku.com +haoq.tv +haoqiao.com +haoqikan.com +haoqixingstem.com +haoqq.com +haoquandudu.com +haorc.com +haoread.com +haorencai.net +haorendao.com +haorooms.com +haoseals.com +haosenchina.com +haoservice.com +haosf.com +haosf5.com +haoshanpu.com +haoshanxi.com +haoshengla.com +haoshengmall.com +haoshenqi.com +haoshetou.net +haoshici.com +haoshipin123.com +haoshiqi.net +haoshsh.com +haoshunjx.com +haoshuo.com +haosijia.com +haosijia.vip +haosix.com +haosou.com +haostay.com +haotb.com +haote.com +haotehui.com +haotianhuyu.com +haotihui.com +haotijin.com +haotoufa.com +haotougao.com +haotougu.com +haotu.net +haotui.com +haotukankan.com +haotxt.com +haouc.com +haowa.com +haowaicaijing.com +haowandeni.com +haowanyou.com +haoweiguang.me +haoweishow.com +haowen100.com +haoword.com +haowu.com +haowu.info +haowu.link +haowui.com +haowuyunji.com +haowuyx.com +haoxg.net +haoxiake.com +haoxiang.org +haoxiaoguo.net +haoxipu.com +haoxitong.com +haoxiyou.com +haoxue.com +haoxuetang99.com +haoxxwang.com +haoxyx.com +haoyangmao8.com +haoyao.com +haoychuang.com +haoyhq.com +haoyisheng.com +haoyishui.com +haoyong.cc +haoyongapp.com +haoyouqian.com +haoyouyinxiang.com +haoyu.love +haoyuanxiao.com +haoyun13.com +haoyun56.com +haoyunbb.com +haoyunma.com +haoyunmom.com +haoyy168.com +haozai120.com +haozaishop.com +haozhai.com +haozhanhui.com +haozhebao.com +haozhegai.com +haozhexie.com +haozhuangji.com +haozhuodao.com +haozi.org +haozi.xyz +haozip.com +haozjj.com +haozu.com +haozuojia.com +hapi123.net +hapimall.com +hapingapp.com +hapiweb.com +haplat.net +happigo.com +happy24uk.com +happycamp.cc +happycaoyue.com +happychang.net +happycodeboy.com +happyelements.com +happyev.com +happyjuzi.com +happylivelife.com +happymath2009.org +happymmall.com +happynear.wang +happyphonewoods.com +happypingpang.com +happyplaygame.net +happyroll.net +happysky.org +happytrave.com +happyux.com +happywalk.net +happyya.com +hapying.com +haqu.com +harbin-electric.com +harborhousehome.com +hardkr.com +hardspell.com +hareric.com +harlanc.vip +harmay.com +harmight.com +harmony3.com +harmony4s.com +harmonyos.com +haroldrandom.me +harrynull.tech +harrypottermagicawakened.com +harvestcm.com +harvestpawn.com +hasea.com +hasee.com +hasee.net +hashcoding.net +hashfish.net +hashnest.com +hasndq.com +hasoltd.com +hassbian.com +hat358.com +hatdot.com +hatfav.com +hatlonely.com +hatm.vip +hatoem.com +haval-global.com +have.ink +havefun.im +hawbel.com +hax18.com +haxiu.com +haxwx.cc +hayeen.com +hayseen.com +hazq.com +hb-green.com +hb-hengda.com +hb-ly.com +hb-ws.com +hb-wtw.com +hb-zikao.com +hb10000.com +hb10000sale.com +hb114.cc +hb12333.com +hb189.cc +hb189.mobi +hb30.com +hb3rm.com +hb6.org +hb96568.com +hbadei.com +hbanbao.com +hbap.net +hbbaidu.com +hbbidding.com +hbbsw.vip +hbbutler.com +hbbxpx.com +hbbzyys.org +hbcccm.com +hbccp.org +hbccpit.org +hbcdc.com +hbcg.cc +hbchen.com +hbchy.net +hbciqtc.com +hbcjaq.com +hbcjh.net +hbcjlq.com +hbcjw.com +hbcjxx.com +hbcms.com +hbcofco.com +hbcourt.org +hbcsche.com +hbcszb.com +hbctjk.com +hbcyclub.com +hbdangyang.com +hbddrn.com +hbdfdh.com +hbdmia.com +hbdns.org +hbdthy.com +hbdtjqj.com +hbdzcg.com +hbecsc.com +hbeducloud.com +hbekt.com +hbepec.com +hbez.net +hbezzx.com +hbfie.org +hbfire.com +hbfnnyw.com +hbfootball.com +hbfy.com +hbfyhb.com +hbfzb.com +hbgajg.com +hbgdwl.com +hbglky.com +hbgonglue.com +hbgrb.net +hbgsetc.com +hbguanwei.com +hbgwy.org +hbgzh.com +hbha027.com +hbhande.com +hbhaolinju.com +hbhaoyi.com +hbhcdn.com +hbhdhd.com +hbhm.net +hbhtcm.com +hbhtxx.com +hbhxbb.com +hbhxqq.com +hbhxrff.com +hbhyychem.com +hbhz.net +hbicpa.org +hbidc.net +hbifeng.com +hbinitiate.com +hbjcgy.com +hbjdxt.com +hbjfscc.com +hbjhc.com +hbjhpx.com +hbjhyh.com +hbjianzhuwang.com +hbjimin.com +hbjinnong.com +hbjjrb.com +hbjk114.com +hbjkjt.com +hbjlhw.com +hbjsinfo.com +hbjubao.com +hbjxjy.org +hbjxjyw.com +hbjxym.com +hbjz12333.com +hbjzx.com +hbjzzx.com +hbkqw.com +hbksw.com +hbky.com +hbla.net +hblady.com +hblccy.com +hbliti.com +hblszq.com +hbltzb.com +hblykj.com +hbm360.com +hbmes.com +hbmmtt.com +hbmrjx888.com +hbnews.net +hbnewsoft.com +hbneww.com +hbooker.com +hbousite.com +hbpangu.net +hbpengxi.com +hbpic5.com +hbpictures.com +hbprjx.com +hbptzsbw.com +hbpukang.com +hbpygt.com +hbqnb.com +hbqnxy.com +hbqtgg.com +hbqyj.org +hbqyxy.com +hbrbmedia.com +hbrc.com +hbrcgd.com +hbrchina.org +hbrchinese.org +hbrd.net +hbrebond.com +hbrfxh.com +hbrjcspx.com +hbrqygr.com +hbruicai.com +hbryzx.net +hbrzkj.com +hbs-nd.com +hbsccloud.com +hbsdenterprise.com +hbsem.com +hbsfgk.org +hbshbsh.com +hbshengbangwl.com +hbshgzx.com +hbshls.com +hbsia.org +hbskw.com +hbslncy.com +hbslndx.com +hbsmservice.com +hbsmw.com +hbsocar.com +hbsoft.net +hbsogdjt.com +hbspcar.com +hbsql.com +hbssfw.com +hbssspot.com +hbsszx.com +hbstars.com +hbsti.com +hbsunlink.com +hbswkj.com +hbsydw.org +hbszfw.com +hbsztv.com +hbszzd158.com +hbszzk.com +hbszzx.com +hbtcmu.com +hbtcw.com +hbtengniu.com +hbtobacco.com +hbtxbaidu.com +hbtybio.com +hbtycp.com +hbwh.net +hbwhgs.com +hbwhjj.com +hbwhrd.org +hbwjs.com +hbwlyh.com +hbww.org +hbxdf.com +hbxhxkj.com +hbxiyuan.com +hbxtzy.com +hbxyairport.com +hbxytc.com +hbyczk.com +hbyeson.com +hbyidu.com +hbyjfs.com +hbynet.net +hbyoyo.com +hbyspx.com +hbzaxh.com +hbzbw.com +hbzgjx.com +hbzhan.com +hbzhjxzz.com +hbzhonghai.com +hbzjzb.com +hbzknet.com +hbzkzx.com +hbzkzxw.com +hbzncz.com +hbzqzx.com +hbzsb.com +hbzuojia.com +hbzxtyq.com +hbzywh.com +hc-byq.com +hc-cdn.com +hc-software.com +hc01.com +hc121.com +hc23.com +hc360-inc.com +hc360.com +hc39.com +hc79.com +hc9.com +hcbbs.com +hcbuy.com +hcc11.com +hccpcba.com +hcdamai.com +hcdyhr.com +hcgroup.com +hch518.com +hchbblg.com +hchezhu.com +hchlidc.com +hcicloud.com +hcjsk120.com +hcl100.com +hcmiraefund.com +hcocoa.com +hcpzdm.com +hcrjy.com +hcshebao.com +hcsilk.com +hcsindex.org +hcsip.com +hcstzz.com +hctxf.org +hcty.com +hcw.so +hcwiki.com +hcx123.com +hcx99.com +hcxcw.com +hcxy6.com +hcyacg.com +hczc.com +hczhifu.com +hczxmr.com +hczypay.com +hd-tvb.com +hd.gg +hd00.com +hd027.com +hd123.com +hd123.net +hd12333.com +hd199.com +hd199.net +hd288.com +hd3p.com +hd88599.com +hdavchina.com +hdb.com +hdbaichuan.com +hdchd.cc +hdcolorant.com +hdd-group.com +hddhhn.com +hddid.com +hddznet.com +hdem12.com +hdfimg.com +hdgogogo.com +hdh.im +hdhgzx.com +hdhospital.com +hdhui.com +hdingsheng.com +hdj.me +hdjay.com +hdjwww.com +hdlcdns.com +hdlchina.com +hdletv.com +hdlogo.com +hdltest.com +hdmayi.com +hdmnw.com +hdmooncake.com +hdmtv168.com +hdmv.org +hdpfans.com +hdpyqa.com +hdpyqc.com +hdpyqd.com +hdsdyyy.com +hdslb.com +hdslb.net +hdsx36hb.com +hdsx39hb.com +hdtgtm.com +hdtmedia.com +hduofen.com +hdurl.me +hduzplus.xyz +hdwbsaas.com +hdyouxi.com +hdypw.com +hdzp.com +hdzxyy.com +he-nan.com +he-one.com +he11oworld.com +he1j.com +he2d.com +he9630.com +heacn.net +head-way.com +headns.com +headphoneclub.com +healthcareol.net +healthjd.com +healthr.com +healthych.com +healthyun.com +hearstchina.com +heart-game.com +heartide.com +heartinsti.com +hebangdianzi.com +hebaodai.com +hebbank.com +hebbr.com +hebca.com +hebcar.com +hebchkj.com +hebcsr.org +hebdh.com +hebei.cm +hebeidns.com +hebeifeimeng.com +hebeigwy.org +hebeijd.com +hebeinongzi.com +hebeisy.com +hebeiyichen.com +hebeizhouji.com +hebgtjt.com +hebiw.com +hebjxw.com +hebl.name +hebmusic.com +hebnx.com +hebolaw.com +hebotc.com +hebradio.com +hebsg.net +hebshanggu.com +hebtv.com +hebxtjx.com +hec-al.com +hec-changjiang.com +hecai360.com +hecaijing.com +hecdn.com +hecdn.net +hechaku.com +hechangquan.com +hechengbb.com +heclouds.com +heconns.com +hecpharm.com +hedaotang.net +hedgehogrock.com +heduibu.com +heduwang.com +heeeeeh.com +heerit.com +hefei.cc +hefeizp.com +hegii.com +hegouvip.com +hegsryjq.com +heheba.com +hehesheng.com +heheshouyou.com +hehesy.com +hehewan.com +hehouse.com +hei7.net +heibai.org +heibaimanhua.com +heicha.com +heicheng51.com +heidiankeji.com +heigaga.com +heiguang.com +heiguang.net +heijiao.net +heijiazi.com +heijin.org +heikexs.com +heilanhome.com +heilaot.com +heilei.com +heilqt.com +heiluo.com +heima.com +heima8.com +heimabao.com +heimac.net +heimacode.com +heimadao.com +heimadata.com +heimai666.com +heimajijin.com +heimancc.com +heimaol.com +heimaoseo.org +heimaoseojishu.com +heimaoshe.com +heimayijiancai.com +heimaying.com +heimeiai.com +heimeng.net +heimizhou.com +heiniubao.com +heinote.com +heirenlei.com +heisener.com +heisha.net +heishao.net +heishenhua.com +heisiwang.com +heitao.com +heitao.me +heitao2014.com +heixi.com +heiyaheiya.com +heiyan.com +heiyan.la +heiyan.org +heiyange.com +heiyanimg.com +heiyanwang.com +heiying.cc +heiyuewan.com +heiyunxitong.com +heizhushoes.com +heizuan.com +hejiajinrong.com +hejinchuitou.net +hejiu2016.com +hejizhan.com +hejun.com +heketai.com +hekouxin.com +heku.org +hel168.com +helensbar.com +helianhealth.com +helight.info +helijia.com +helingqi.com +helishi.net +helishun.com +heliuyan.com +heliweb.net +hello-code.com +hello-inc.com +hello-mom.com +hello1010.com +hellobanma.com +hellobi.com +hellobike.com +hellobiye.com +hellobtc.com +hellocq.net +hellodive.com +hellof1.com +helloflask.com +hellogame.net +hellogithub.com +hellogslb.com +hellohuohu.com +helloimg.com +hellojava.com +hellokang.net +hellokid.com +hellokidvip.com +hellomeowlab.com +hellomoecomrade.xyz +hellonitrack.com +helloradio.org +hellorf.com +hellotalk8.com +hellotw.com +helloweba.com +helloweba.net +hellowebfont.com +helloyao.com +helong.info +help-hope.org +helperaddress.com +helplib.com +helpmeng.com +helpton.com +heluowenhua.net +hemabt.com +hemadaili.com +hemajy.com +hemamax.com +hemaos.com +hemayouxi.com +hemayun.com +hemayx.com +hempelgroup.com +hen360.com +henan100.com +henanart.com +henanfucai.com +henangeli.com +henanjianling.com +henanjubao.com +henanlvyi.com +henanpige.com +henansenli.com +henanyouth.com +henbt.com +hencin.com +hencoder.com +hengancaifu.com +hengannet.com +hengbogroup.com +hengcaotang.com +hengchang6.com +hengdayun.com +hengdianfilm.com +hengdianworld.com +hengdongli.com +hengdu.cc +hengdulaw.com +hengfujz.com +hengjiafish.net +hengqian.com +hengqijy.com +hengqikuaiji.com +hengshenggongyi.net +hengshuilaobaigan.net +hengtai-law.com +hengtiansoft.com +hengtianyun.com +hengwenzhendangqi.com +hengxiangtaji.com +hengxinjinshu.com +hengyan.com +hengyer.com +hengyidai.com +hengyoux.com +henhaoji.com +henjay724.com +henkuai.com +henmimang.com +henri.ren +henxisoft.com +henzan.com +henzanapp.com +hepalink.com +hepan.com +hepan.org +hepawang.com +hepmall.com +hepost.com +hequnshebei.com +hercity.com +hercules-micro.com +herdsric.com +here120.com +hereisdownload.com +hermesguanwang.com +heroad-data.com +heroestactics.com +heroicyang.com +herosanctuary.com +heroskate.com +herostart.com +herowind.com +heroworld.net +hertzhu.com +heshui.com +hetao101.com +hetaoa.com +hetaoapis.com +hetaobiancheng.com +hetaocdn.com +hetaointernal.com +hetaolin.com +hetianyu.cc +hetusoft.com +heu8.com +heweather.com +heweather.net +hewebgl.com +hexagonsemi.com +hexianrc.com +hexiaoxiang.com +hexicomtech.com +hexie168.com +hexilai.com +hexindai.com +hexinli.org +hexmeet.com +hexun.com +heyang.cc +heyang365.com +heycan.com +heycode.com +heydayinfo.com +heygugu.com +heyguo.com +heyi.com +heyinguanli.com +heymore.com +heyou51.com +heyplus.com +heyreport.com +heyria.com +heytap.com +heytapcs.com +heytapdownload.com +heytapimage.com +heytapmobi.com +heytea.com +heyuan5.com +heyuyhw.com +heywoodsminiprogram.com +heywow.net +hez70.com +heze.cc +hezebus.com +hezeribao.com +hezhenzi.com +hezhonglaw.com +hezhoubbs.com +hezi.com +hezibook.com +hezibuluo.com +hezxs.com +hf-dhj.com +hf-iflysse.com +hf10000.com +hf12345.vip +hf365.com +hf777.com +hfbaogao.com +hfbeta.com +hfbz.com +hfchzyy120.com +hfcyh.com +hfdbcy.com +hffund.com +hfgjj.com +hfhcl.com +hfhouse.com +hfhyw.com +hfi-health.com +hfjy.com +hfkeheng.com +hfkj0754.com +hfkktt.com +hflwy.com +hflz.com +hfmama.com +hfmckj.com +hfmoney.com +hfqzdz.com +hfray.com +hfrc.net +hfrcbc.com +hfrqh.com +hfrsggff.com +hfsava.com +hfsid.com +hfssw.com +hfswcz.com +hftfund.com +hftogo.com +hfwx.net +hfx.link +hfx.net +hfyestar.com +hfyjgg.com +hfykd.com +hfyouqi.com +hfyt365.com +hg-z.com +hg12333.com +hg1946.vip +hg28a7.com +hg32x.com +hg5177.com +hg5677.org +hg58.pw +hg6262.biz +hg707.com +hg7799.net +hg87.com +hg8880.org +hga833.cc +hga994.com +hgaas.com +hgame.com +hgbang.com +hgcyh.com +hgdgcxy.com +hgfdcscxx.com +hgfdrf.com +hghhh.com +hgimage.com +hgitv.com +hgjart.com +hgjt.net +hgjx.com +hglaser.com +hgmai.com +hgmhu.com +hgmmav.com +hgnc.net +hgvip804.com +hgy413.com +hgyjs.com +hgyx.cc +hgzdq.com +hgzk.com +hgzkb.com +hgzrc.com +hh-gltd.com +hh010.com +hh04.com +hh1488.com +hhailuo.com +hhbg123.com +hhcmjt.com +hhcn.com +hhczy.com +hhdx120.com +hhfbqzgs.com +hhfg.org +hhfxw.com +hhgslb.com +hhh233.net +hhh885.com +hhhai.com +hhhoo.com +hhhstz.com +hhhtnews.com +hhhtscf.com +hhjtwl.com +hhl1916.com +hhpj.net +hhrcard.com +hhrdc.com +hhrhl.vip +hhrtu.com +hhtravel.com +hhvv.com +hhxdkj.com +hhxin.com +hhycdai.com +hhycdk.com +hhygame.com +hhygames.com +hhyungu.com +hi-54.com +hi-books.com +hi-gtd.com +hi-lead.com +hi-linux.com +hi-roy.com +hi-spider.com +hi0755.net +hi138.com +hi1718.com +hi2000.com +hi2000.net +hi8090.com +hiapk.com +hiavr.com +hibea.com +hibixin.com +hibt.net +hibtc.org +hibuzz.net +hiby.com +hibymusic.com +hic.cloud +hicamelia.com +hicat.net +hicdma.com +hiceon.com +hichao.com +hichina.com +hicling.com +hicloud.com +hiconey.com +hicoo.net +hicosmo.com +hicp.net +hicss.net +hiczp.com +hidesigncloud.com +hideystudio.com +hiditie.com +hidna.net +hidva.com +hienshi.com +hiersun-hdp.com +hiersun-ido.com +hiersun-zuanjindian.com +hiesquire.com +hifi168.com +hificat.com +hifidiy.net +hififf.com +hifime.net +hifini.com +hifiok.com +hifishes.com +hifishuo.com +hifiveai.com +hifly.mobi +hifly.tv +hifmcloud.com +hifpga.com +hifreud.com +hifuntv.com +higame123.com +higeshi.com +highdigitizing.com +highgg.com +highgo.com +highlightoptics.com +highlm.com +highsharp.com +hightopo.com +highwayguitar.com +higon.com +higrid.net +hihell.com +hihocoder.com +hihonor.com +hihope.org +hiido.com +hiigame.net +hiimii.com +hiing.net +hijiaoshi.com +hijoys.com +hikailink.com +hikcreate.com +hiklife.com +hikoon.com +hikops.com +hikparking.com +hikrobotics.com +hikstor.com +hikvision-jl.com +hikvision.com +hikyun.com +hilarryxu.com +hiliad.com +hilistentome.com +hillstonenet.com +hillyton.com +hiloong.com +hilunwen.com +himaker.com +himawari-japan.com +himeidian.com +himengyou.com +himigame.com +himiku.com +himofi.com +himovie.net +himy2.com +hinabian.com +hinavi.net +hindlish.com +hinew8.com +hinpy.com +hiopensource.com +hioug.com +hioyun.com +hiparking.com +hipcam.net +hiphop8.com +hipiao.com +hippoanimation.com +hippter.com +hipring.net +hipu.com +hiram.wang +hirede.com +hiregistry.com +hireye.com +hiroop.com +hirosspac.com +hirossz.com +his.sh +hiscene.com +hisense-home.com +hisense-plaza.com +hisense-syxs.com +hisense.com +hisensehitachi.com +hisensesmarthome.com +hishendeng.com +hisilicon.com +hisiphp.com +hislota.com +hismarttv.com +hisoft.com +hisofts.com +hisonracking.com +hisports.com +histarter.com +histriver.com +hisupplier.com +hit180.com +hitachi-helc.com +hitalk.com +hitalkers.com +hitevision-solution.com +hitfmfans.com +hitgk.com +hitnology.com +hitokoto.us +hitouch.com +hitsword.org +hitui.com +hitutu.com +hitux.com +hituyu.com +hitv.com +hiuo08jnsoo00bytu32shcs555aa1564dvfguiio0o0885432.com +hivecn.net +hiveview.com +hivi.com +hivictor.net +hiwafer.com +hiwbb.com +hiwebgl.com +hiwechats.com +hiwemeet.com +hiwenku.com +hiwifi.com +hiworld.com +hixgo.com +hixianchang.com +hixiaoman.com +hiyd.com +hiyongche.com +hiyouib.com +hiyouqu.com +hizg.org +hizhu.com +hizip.net +hizj.net +hizuan.net +hizyw.com +hj-mail.com +hj.vc +hj776.com +hjagent.com +hjapi.com +hjbbs.com +hjbxw.com +hjchee.com +hjcjifen.com +hjclass.com +hjd123.com +hjdict.com +hjdns.com +hjdns.net +hjdzn.com +hjenglish.com +hjgcd.com +hjgjmy.com +hjhanjy.com +hjhrcloud.com +hjiesuan.com +hjjg.com +hjjh.com +hjjs.org +hjkhjkl.com +hjmdjd.com +hjplw.com +hjpp.net +hjr-exchange.com +hjsjs.com +hjtag.com +hjwblog.com +hjwsky.com +hjwxcps.com +hjxsjx.com +hjy1314.com +hjyanxue.com +hjyedu88.com +hjygame.com +hjyl.org +hjz518.com +hk-island.hk +hk-vstart.com +hk.uy +hk5.cc +hk515.net +hkaco.com +hkance.com +hkance.xyz +hkanews.com +hkbchina.com +hkcd.com +hkcgart.com +hkcna.hk +hkcts.com +hkctshotels.com +hkctsmembers.com +hkfc.hk +hkfe.hk +hkfljt.com +hkgcr.com +hkhanji.com +hkjapp.com +hkkaoyan.com +hkklock.com +hkkuaiyixiu.com +hklego.com +hklongbang.com +hkm168.com +hkmjd.com +hkpanamie.com +hkpep.com +hkproperty.com +hkqbh.com +hkscxh.com +hkskyloyd.com +hkstv.tv +hkt4.com +hktzschool.com +hkvisen.com +hkwb.net +hkxbjt.com +hkxen.com +hkyykq.com +hkzcdn.com +hkzlcm.com +hl-brushes.com +hl95.com +hlapi.com +hlbeixiu.com +hld-marathon.com +hldbtv.com +hldgp.com +hldnews.com +hldqjx.com +hldsjsjx.com +hlej.com +hlfssh.com +hlgad.com +hlgdata.com +hlgnet.com +hlgnet.net +hlhmf.com +hlideal.com +hlj-aptech.com +hljjjb.com +hljjxrc.com +hljjytkj.com +hljnzy.net +hljpost.com +hljradio.com +hljrcc.com +hljsfjy.com +hljszjxhw.com +hljtv.com +hljucm.net +hljyestar.com +hljyqnj.com +hlkncse.com +hlmseo.com +hlnmg.com +hloong.com +hlpretty.net +hlread.com +hlsdq.com +hltcy.com +hlwidc.com +hlxsykd.com +hlxxq.com +hlxy.com +hly.com +hlybar.com +hlytec.com +hlyy.in +hlzq.com +hlzsgw.com +hm-3223.net +hm-yc.com +hm120.com +hm16888.net +hm648.com +hm86.com +hmecw.com +hmgj.com +hminvestment.com +hmlan.com +hmldds.com +hmltec.com +hmnst.com +hmpic.xyz +hmplay.com +hmsce.org +hmsem.com +hmsemi.com +hmseo.net +hmskw.com +hmsxw.com +hmting.com +hmxw.com +hmyz.com +hmz.com +hmzixin.com +hmzone.com +hmzs.net +hmzx163.com +hn-pc.com +hn165.com +hn96520.com +hnaccp.com +hnaee.com +hnagroup.com +hnair.com +hnair.net +hnaiya.com +hnangel.com +hnapay.com +hnayg.com +hnbaili.net +hnbits.com +hnbljy.com +hnbwsd.com +hnccpit.org +hnchuncheng.com +hncloud.com +hncourt.org +hncreate.com +hncsmjzs.com +hncsmtr.com +hncsvod.com +hndbs.com +hndca.com +hndfbg.com +hndnews.com +hndpx.com +hndtl.com +hnehome.net +hnemb.com +hnetn.com +hnfa.org +hnfapiao.com +hnfaren.com +hnfdx.com +hnfjwh.com +hnfjz.com +hnfyqmj.com +hngbjy.com +hngbw.com +hnggzy.com +hngh.org +hngican.com +hngoldcorp.com +hngou.com +hngwg.com +hngwmt.com +hngyzx.org +hnh.cc +hnhaofang.com +hnhllv.net +hnhnled.com +hnhxxk.com +hniec.org +hniois.com +hnisca.org +hniso.net +hnisvc.com +hnjg.com +hnjing.com +hnjing.net +hnjkjn.com +hnjkw.net +hnjshzy.com +hnkeji999.com +hnkljnxh.com +hnklnf.com +hnks.com +hnksln.com +hnktgame.com +hnkuaifawu.com +hnlat.com +hnlbdl.com +hnleisu.com +hnliangku.com +hnlzhd.com +hnlzw.net +hnmdtv.com +hnmgjr.com +hnmj.vip +hnmsw.com +hnmuseum.com +hnnx.com +hnnxs.com +hnnzwhyy.com +hnoceanrace.com +hnol.net +hnpet.net +hnpfw.com +hnpolice.com +hnpost.com +hnqbb.com +hnqfseed.com +hnquxing.com +hnquyou.com +hnrcsc.com +hnrcsc.net +hnrich.net +hnrmb.com +hnsfdc.com +hnshengben.com +hnsimeng.com +hnsiwei.com +hnsjgl.com +hnsktc.com +hnsmj.org +hnsss.com +hnst.org +hnstguolu.net +hnsy386.com +hnsyda.com +hnsyu.net +hnteacher.net +hntengn.com +hntianduo.com +hnticai.com +hntobacco.com +hntv.tv +hntvjiaotong.com +hnweimeng.net +hnwisecom.com +hnwlcm.com +hnwlxh.net +hnwtv.com +hnwz8.com +hnxdf.com +hnxfpfb.com +hnxgzg.com +hnxmxit.com +hnxuntang.com +hnxyjt.com +hnydmq.com +hnyfkj.com +hnyh.net +hnyingfang.com +hnyinhan.com +hnykcs.com +hnyouneng.com +hnyuandian.com +hnyuanyou.com +hnyumantang.com +hnyunji.com +hnyunww.com +hnyunzhiyi.com +hnyyss.com +hnzhaobiao.com +hnzjdc.com +hnzjfcw.com +hnzjgfw.com +hnzjip.com +hnzjzx.org +hnzqw.com +hnztfs.com +hnzxyy.com +hnzytp.com +hnzyzx.com +hoau.net +hobalab.com +hobbiestree.com +hobr.site +hocode.com +hodiasflavor.com +hodoop.com +hoehub.com +hogesoft.com +hoho.tv +hoho666.com +hohode.com +hokori.online +holaq.com +holdhr.com +holdsteel.com +holegots.com +holiland.com +holleykingkong.com +hollischuang.com +hollycrm.com +hollysys.com +hollyuc.com +holoem.com +hologres.io +holteksupport.com +holyxiongan.com +home-assistant.cc +home-cn.htcsense.com +home.htcsense.com +home0311.com +home0538.com +home0668.com +home133.com +home178.com +home4love.com +home616.com +home77.com +homeartschina.com +homebehind.com +homecdn.com +homecloud-lab.com +homed.me +homedo.com +homeinframes.com +homeinmists.com +homeinns.com +homeking365.com +homekingcdn.com +homekoo.com +homekoocdn.com +homelnns.com +hometeda.com +hometex114.com +hometexjoin.com +homevv.com +homeyao.com +hommk.com +homolo.com +homolo.net +homylogistics.com +honda-sundiro.com +hondooy.com +hong-lawfirm.com +hong-shun.com +hong.ren +hongbao.show +hongbaorili.com +hongbeibang.com +hongbizi.org +hongbocheng.com +hongbowang.net +hongchalin.com +hongchaping.com +hongdaym.com +hongdefund.com +hongdezk.com +hongdian.com +hongdoufm.com +hongdoulive.com +hongen.com +hongfen.org +honggancn.com +honggebang.com +honghailt.com +honghanda.com +honghe-tech.com +hongheiku.com +honghonghu.com +honghuotai.com +hongjiang.info +hongjiejia.com +hongjing.com +hongjingedu.com +hongjiu66.com +hongkang-life.com +hongkou.net +hongku.com +hongkunjinfu.com +honglulan.com +hongmen.com +hongmoka.com +hongniang.com +hongpig.com +hongqi.tv +hongqipress.com +hongrenzhuang.site +hongru.com +hongsehuoxian.com +hongsejiqing.com +hongshi-tech.com +hongshn.xyz +hongshu.com +hongshunet.com +hongsungifts.com +hongt.com +hongtongad.com +hongtu.net +hongtuwang.com +hongxiaolong.com +hongxin18.com +hongxingzn.com +hongxiu.cc +hongxiu.com +hongyan.info +hongyanliren.com +hongyaxuan.com +hongyeshuzhai.com +hongyicd.net +hongyingfangshui.com +hongyue.com +hongyunlww.com +hongyunvren.com +hongze.net +hongzhoukan.com +hongztl.com +honkaiimpact3.com +honorfair.com +honpery.com +honpu.com +honsuntec.com +honycapital.com +honyuan.net +hoodinn.com +hoodong.com +hooenergy.com +hoofei.com +hoogge.com +hookbase.com +hookdll.com +hoolai.com +hoolaigames.com +hoolee8.com +hoolinks.com +hoolo.tv +hoop-archi.com +hoop8.com +hoopchina.com +hoopugames.net +hoosho.com +hooyagames.com +hooyoo.com +hope-tarsus.com +hopebank.com +hopebeauty.com +hopecool.com +hopehook.com +hoperun.com +hopetrip.com.hk +hophingfood.com +hori3d.com +horion.com +horizon.ai +horizonfuelcell.com +horizonrcg.com +horn-yacht.com +horsa.org +horti-expo2019.com +horti-expo2019.org +hortor.net +hortor002.com +hortor005.com +hortor020.com +hortorgames.com +hosizoraworks.org +hosjjk.com +hospmall.com +hostadm.net +hostbuf.com +hostdie.com +hostelxian.com +hostker.com +hostkvm.com +hostloc.com +hostmsu.ru +hostxen.com +hostyun.com +hotalk.com +hotcbit.org +hotdb.com +hotdeeplink.com +hotdic.com +hoteamsoft.com +hoteastday.com +hotelcis.com +hoteldig.com +hotelgg.com +hotelvi.com +hotelyunos.com +hotent.com +hotent.xyz +hotgamehl.com +hotkd.com +hotkey123.com +hotkidclub.com +hotking.com +hotmisl.com +hotoos.com +hotpotpro.com +hotpub.com +hotread.com +hotsales.net +hotssp.com +hotstoday.com +hottechsemi.com +hottui.com +hotwind.net +hotwindbox.com +houbank.com +houcaller.com +houdao.net +houdask.com +houdunwang.com +houge.biz +hougonw.com +houkai.com +houpuwang.com +houqinbao.com +houqun.me +houqun.net +houquner.com +houruitouzi.com +house086.com +house178.com +house365.com +house5.net +house510.com +house86.com +housebaby.com +housedp.com +housenhe.com +housoo.com +houxue.com +houyicaiji.com +houzhibo.com +hoverlees.com +hovertree.com +hovfree.com +how234.com +howardwchen.com +howbuy.com +howelllighting.com +howjoin.com +howsci.com +howsoftworks.net +howtoing.com +howzhi.com +hoxing.com +hoxue.com +hoyakeji.com +hozin.com +hp-marathon.com +hp123.com +hp888.com +hpcanon.com +hpccake.com +hpcoo.com +hpoi.net +hpool.online +hprt.com +hprx.com +hpstore.cc +hpuoj.com +hpwu.com +hpwxc.com +hpx05.com +hpy93.com +hpyk.com +hq114.net +hq2011.com +hq52.com +hq88.com +hqart.net +hqbd.com +hqbnb.com +hqbpc.com +hqbsh.com +hqbuy.com +hqbuycdn.com +hqc-china.com +hqcanyin.com +hqchip.com +hqck.net +hqcr.com +hqdlsn.com +hqepay.com +hqew.com +hqew.net +hqewimg.com +hqgq.com +hqh5.com +hqhl.net +hqhot.com +hqidi.com +hqjy.com +hqpcb.com +hqps.com +hqresearch.org +hqwhw.com +hqwx.com +hqwy.com +hqyj.com +hqyjsuccess.com +hqys.net +hqytgyh.com +hqyun.com +hqyxjy.com +hqzbcn.com +hr-channel.com +hr-mp.com +hr-self.com +hr.cc +hr0715.com +hr1000.com +hr135.com +hr2003.com +hr2trainer.com +hr369.com +hr448.com +hr510.com +hr5156.com +hr668.com +hr9000.com +hr987.com +hran.me +hrayw.com +hrbaodian.com +hrbar.com +hrbciming.com +hrbeduy.com +hrbesd.com +hrbmama.com +hrbmilan.com +hrbrc.com +hrbslh.com +hrbswx.com +hrbzdty.com +hrcfc.com +hrchina.cc +hrday.com +href.lu +hrexam.com +hrfc.net +hrflc.com +hrfoods.com +hrgrobotics.com +hrhuiyi.com +hrhy365.com +hrintl.com.hk +hrloo.com +hrm100.com +hrmarket.net +hroot.co +hroot.com +hrpackage.com +hrrukou.com +hrs100.com +hrsalon.org +hrsay.com +hrsee.com +hrteachu.com +hrtechchina.com +hrtn.net +hrtx.com +hrxiongan.com +hrzy.cc +hs-fe.com +hs-outlets.com +hs.net +hs10000.com +hs13z.net +hs186.com +hs313.info +hs65.com +hs950.com +hsakyy.com +hsanhl.com +hsay.com +hsbdc.com +hsboss.com +hscbw.com +hsdatalab.com +hsdcw.com +hsddyy.com +hsdhw.com +hsdmall.com +hsehome.com +hsehome.org +hsez.net +hsf88.com +hsfund.com +hsgjj.com +hsgjysj.com +hsgsy.com +hshotel.com +hshs.com +hshton.com +hshuiyi.com +hshw.com +hshy.net +hshymanor.com +hsigus.com +hsiii.com +hsjingcheng.com +hsjk.com +hsjkaoyan.com +hsjss.com +hslj.net +hsmc.com +hsmdb.com +hsmob.com +hsmrt.com +hsoow.com +hspress.net +hsr2013.com +hssdg.com +hssdk.com +hssdtest.com +hssemi.com +hssenglish.com +hssjyj.com +hsslab.com +hssrc.com +hsstr.com +hssxhd.com +hssyxx.com +hsszfx.com +hsszkjg.com +hst.com +hst1966.net +hstechsz.com +hstong.com +hsutimes.com +hsw2013.com +hsweb.me +hswkzy.com +hswnjz.com +hsxiang.com +hsxxad.com +hsybyh.com +hsyfcenter.com +hsysupply.com +hsyuntai.com +hsyyf.me +hszhizhen.net +hszk.org +hszqxs.com +hszsfz.com +hsztbzx.com +hszy8.com +hszzsyzx.net +hszzzx.net +ht-cao.com +ht-saae.com +ht-sonic.com +ht001.com +ht88.com +ht9.com +htanwang.com +htbaba.com +htback.com +htbenet.net +htc-media.com +htcbbs.net +htcis.net +htciy.com +htcxfund.com +htd2000.com +htdata.com +hteacher.net +hteos.com +htexam.com +htexam.net +htfcn.com +htfoxit.com +htfutures.com +htgj.com +htgjjl.com +htguosheng.com +htgwf.com +hthl.net +htidc.com +htinfor.com +htinns.com +htinnsjm.com +htjs.net +htjsq.com +htkaoyan.com +htky365.com +html51.com +html5cn.org +html5code.net +html5dw.com +html5plus.org +html5train.com +html5tricks.com +htmleaf.com +htmlplusplus.com +htmlsucai.com +htnice.com +htqyy.com +htr-mold.com +htranslate.com +htsc.com +htsec.com +htsgh5.com +htstzm.com +htt5.com +httingshu.com +httpcn.com +hturl.cc +htuwenming.com +htvaas.com +htwed.com +htx.cc +htxxpx.com +htxyin.com +htyou.com +htys.cc +htyunwang.com +htzdj.com +htzyw.com +hu.com +hua-lan.com +hua-yong.com +hua.com +huaaiangel.com +huaaosoft.com +huaaotech.com +huaat.com +huabaike.com +huaban.com +huabanimg.com +huabanpro.com +huabeipay.com +huabian.com +huabo.net +huabokeji.com +huacaomu.com +huacaoshumu.net +huacemedia.com +huacenter.com +huachenit.com +huachenyuanyang.com +huaci.cc +huacnlee.com +huacolor.com +huada120.com +huadan.com +huadehyd.com +huadiandanbao.com +huadonghospital.com +huadongmedia.com +huadoo.com +huadream.com +huaduocai.net +huadx.com +huaease.net +huaer.cc +huafeiw.com +huafeng-food.com +huafeng.com +huafens.com +huafer.cc +huaguoshan.com +huahanart.com +huahua567.com +huahua777.com +huahuacaocao.com +huahuakon.com +huahuo.com +huaibaobei.com +huaibei.com +huaidan1.com +huaien.com +huaihai.tv +huaijiufu.com +huaimi.com +huain.com +huainanhai.com +huainanren.net +huainet.com +huaipu.net +huaisimida.com +huajia.cc +huajia2000.com +huajiakeji.com +huajialishe.com +huajianmed.com +huajiao.com +huajie8.com +huajifen.com +huajin100.com +huajing-inf.com +huajuan.net +huajuanyun.com +huajx.com +huakai.me +huake-weixin.com +huake360.com +huakebosi.com +huakeyun.com +hualady.com +hualala.com +hualet.org +hualiandressing.com +hualianxin.com +hualongxiang.com +hualu5.com +hualumedia.com +hualv.com +huamanlou.cc +huameiyuezi.com +huami.com +huamoe.com +huan-tai.com +huan.tv +huanbao-world.com +huanbao.com +huanbaoscx.com +huanbeiloan.com +huancaicp.com +huandie.com +huang-jerryc.com +huangbaoche.com +huangbowei.com +huangchun.net +huangdaojiri.org +huangdc.com +huangea.com +huanggao.net +huanggaofang.com +huangh.com +huanghaicollege.com +huanghanlian.com +huanghecaifu.com +huanghepiao.com +huanghouyz.com +huangjiemin.com +huangjunying.com +huanglei.me +huangli.com +huangliangbo.com +huangniu.in +huangpucn.com +huangqi1688.com +huangshaotian.com +huangsw.com +huangwei.me +huangwei.pro +huangxinwei.com +huangxubo.me +huangye88.com +huangye88.net +huangyixiaoshuo.com +huangyunkun.com +huangz.me +huangze.net +huanhaoba.com +huanhuanhuishou.com +huanhuba.com +huaniaoy.com +huanidc.com +huanjinghaojia.com +huanjutang.com +huanjuyun.com +huankkk.com +huanlang.com +huanle.com +huanle800.com +huanleap.com +huanlecdn.com +huanlefish.com +huanleguang.com +huanlejia.vip +huanletang.com +huanlingxiuxian.com +huanlj.com +huanmusic.com +huanpingge.com +huanqiu.com +huanqiuauto.com +huanqiukexue.com +huanqiumil.com +huanqiuw.com +huanqiuyimin.com +huanqu-tec.com +huanrong2010.com +huanshoulv.com +huante.com +huantest.com +huanwen.com +huanxi.com +huanxia.com +huanxiongdd.com +huanxiyl.com +huanyingzq.com +huanyou365.com +huanyouji.com +huanyudns.com +huanyutv.com +huaoe.com +huaon.com +huapiaoliang.com +huaqidigital.com +huaqin.com +huaqinchi.com +huaquandian.wang +huaraytech.com +huarenyizhan.com +huarong2006.com +huarongdao.com +huarongled.com +huaruicom.com +huas.co +huasehui.com +huash.com +huashangcf.com +huashangtop.com +huashen-edu.com +huasheng100.com +huashengdaili.com +huashengls.com +huashenll.com +huashi6.com +huashilm.com +huashitong.net +huashphoto.com +huashu-inc.com +huasyun.com +huatai-pb.com +huatengsci.com +huati365.com +huatian.net +huatu.com +huatugz.com +huatuo007.com +huatuowenda.com +huatuoyf.com +huaue.com +huawan.com +huawangzhixun.com +huawanyun.com +huawei-3com.com +huawei.com +huaweicloud-dns.com +huaweicloud-dns.net +huaweicloud-dns.org +huaweicloud.com +huaweicloudwaf.com +huaweidevice.com +huaweidun.com +huaweimall.com +huaweimarine.com +huaweimossel.com +huaweirom.com +huaweisafedns.com +huaweistatic.com +huaweisymantec.com +huaweiuniversity.com +huaweizdl.com +huawenfanyi.com +huawenonline.com +huawenwin.com +huaxi.net +huaxi100.com +huaxia.com +huaxia77.com +huaxiaci.com +huaxiaf.com +huaxiangdiao.com +huaxiazi.com +huaxincem.com +huaxing.com +huaxinnianhua.com +huaxirc.com +huaxiu.ink +huaxj.net +huaxuezoo.com +huayala.com +huayanghui.net +huayanxiu.com +huayanxiu.net +huayiauto.com +huayicn.com +huayidiaosu.com +huayilawyers.com +huayimedia.com +huayiming.com +huayinjapan.com +huayiwork.com +huayoumengze.com +huayoutianyu.com +huayuanlcd.com +huayuannongji.com +huayue119.com +huayuejob.com +huayun.com +huayunshuzi.com +huayunyy.com +huayushufang.com +huayuzj.com +huazhen2008.com +huazhen2008.net +huazhengcaiwu.com +huazhenjiaoyu.com +huazhongcar.com +huazhongcnc.com +huazhonghua.com +huazhongtimes.com +huazhu.com +huazhuanapp.com +huazhucorp.com +hubao.cc +hubcyts.com +hubei-design.com +hubei88.com +hubeibbs.net +hubeici.com +hubeidaily.net +hubeihome.net +hubeiip.com +hubeipbx.com +hubeisafety.org +hubeiwsd.com +hubeixuekao.com +hubeiyanjiusheng.com +hubeiyongtai.com +hubokan.com +hubpd.com +hubu.com +hububbs.com +hubulab.com +hubwiz.com +hubzs.com +hucdn.com +huceo.com +huchao.me +huchaowei.com +hucheng100.com +hudai.com +hudbbs.com +hudong.com +hudongad.com +hudongba.com +hudongcdn.com +hudongku.net +hudunsoft.com +huduntech.com +huelead.com +hufangyun.com +hugaoba.com +hugd.com +hugecdn168.com +hugeland.com +huhabao.com +huhanyong.com +huhoo.com +huhoo.net +huhua.net +huhuang.net +huhuguanjia.com +huhuhiiuio.com +huhuvr.com +hui-ben.com +hui-chao.com +hui.net +hui10.com +hui10.net +hui100.com +hui20.com +hui43.com +hui712.com +hui800.com +hui800.net +huians.com +huibo.com +huicaiba.com +huicaishui.net +huiche100.com +huicheimg.com +huichengip.com +huichewang.com +huichexiang.net +huicx7.com +huidang.com +huideyecai.com +huidu.com +huidu.net +huiemall.com +huieyes.com +huifachina.com +huifarm.com +huifenqi.com +huifudashi.com +huifusihai.com +huifutz.com +huifuyimin.com +huigao-magnetics.com +huigetv.com +huigezi.org +huihaicenter.com +huihaicn.com +huihedian.com +huihua365.com +huihua8.com +huihuaren.com +huihuarensheng.com +huihui.moe +huihuitech.net +huiian.com +huiji.wiki +huijiame.com +huijiaoyun.com +huijidata.com +huijiewei.com +huijimall.com +huijistatic.com +huijitrans.com +huijiwiki.com +huijucn.com +huila88.com +huilan.com +huilanyujia.com +huilianyi.com +huiliubao.com +huilm.com +huilog.com +huilongsen.com +huilv168.com +huilvwang.com +huilvwu.com +huim.com +huimaiche.com +huiman.net +huimaw.com +huimee.com +huimee.net +huimeisports.com +huimengya.com +huimin111.com +huimingcn.com +huinaimei.com +huing.net +huion.com +huiqiangkeji.com +huirendai.com +huiris.com +huiruanzhijia.com +huishangbao.com +huishangol.com +huishenghuo888888.com +huishengqianzhushou.com +huishoubao.com +huishoushang.com +huishuaka.com +huishuang.xyz +huisituo.com +huisky.com +huisou.com +huisouimg.com +huisuoping.com +huitao.net +huitaoba.com +huitaodang.com +huitaoyouhui.com +huitongqingsuan.com +huitoubj.com +huitouche.com +huitouyu.com +huitouzi.com +huitu.com +huitun.com +huiurl.com +huivo.com +huiwo.com +huiword.com +huixiang360.com +huixiangtiandi.com +huixiaoer.com +huixiaoer.net +huixing.hk +huixingsoft.com +huixinli.com +huixinyt.com +huixinyun.com +huixuanjiasu.com +huiyan315.com +huiyankan.com +huiyaohuyu.com +huiyep.com +huiyi8.com +huiyiabc.com +huiyinxun.com +huiyisheji.com +huiyizhuo.com +huiyou.com +huiyuandao.com +huiyuanyy.com +huiyumedia.com +huize.com +huizecdn.com +huizhan-inc.com +huizhaofang.com +huizhek.com +huizhekou.net +huizhijiaxun.com +huizhimob.com +huizhonghengxing.com +huizhouf.com +huiziyuan.net +huizuche.com +huizuoyuezi.com +hujia.org +hujiang.com +hujiuzhou.com +hujuntao.com +huke88.com +hukou021.com +hukoushanghai.com +hulai.com +hulamao.com +hulanap.com +huliangongyu.com +hulianmaibo.com +hulinhong.com +huliqun.com +huliyx.com +hulkdev.com +huluboshi.com +huluhour.com +huluip.tech +huluo.com +hulusaas.com +hulusi.com +huluwa365.com +huluwa8.com +huluxia.com +huluxia.net +huluzc.com +humanrights-china.org +humengyun.com +humensec.com +huming.com +hunancatv.com +hunanedu.net +hunanpta.com +hunantv.com +hunanwb.com +hunanzhibo.com +hunbei.com +hunbei1.com +hunbei4.com +hunbei5.com +hunbohui.info +hunbys.com +huncct.com +hunche.net +hunchelaila.com +hundredcent.com +hundsun.com +hundun.net +hundx.com +hunger-valley.com +hunjuwang.com +hunli100.com +hunlihu.com +hunlihunli.com +hunliji.com +hunlimao.com +hunmiao.com +hunshitong.net +hunt007.com +huntchance.com +huntic.com +huntkey.com +huntkeydiy.com +hunuo.com +hunyinxuetang.com +hunyinyiyuan.com +huo-cun.com +huo119.com +huoban.com +huobanjs.com +huobanmall.com +huobanxietong.com +huobaoyx.com +huobi.com.gi +huobi.io +huocai.com +huocc.com +huochai.mobi +huochaihe.cc +huoche.com +huoche.net +huoche.wiki +huochepiao.com +huochepiao.net +huodao.hk +huoding.com +huodong.org +huodonghezi.com +huodonghui.net +huodongjia.com +huodongju.com +huodongju.net +huodongquan.net +huodongshu.com +huodongwang.com +huodongxing.com +huoduan.com +huofar.com +huofutp.com +huoguopaihang.com +huogz.com +huohoo.com +huohu123.com +huohuo.com +huohuolife.com +huoji.com +huoju365.com +huojua.com +huojuli.com +huokebao.net +huokesoft.com +huolala.co +huolan.net +huolea.com +huoli.com +huolinhe.com +huolishaonianwang.com +huolug.com +huomao.com +huomao.tv +huomaotv.com +huomaow.com +huomaqun.com +huoming.com +huoqiuapp.com +huosdk.com +huoshan.cc +huoshan.club +huoshan.com +huoshanimg.com +huoshanstatic.com +huoshansxy.com +huoshanvod.com +huoshanzhibo.com +huoshen.com +huoshen.net +huosu.com +huosubtc.com +huotan.com +huowan.com +huoxiaoer.net +huoxing24.com +huoxingba.com +huoxingtan66.com +huoxingzi.com +huoxun.com +huoyan.com +huoyan.io +huoyanio.com +huoying666.com +huoyuandl.com +huozw.com +hupan.com +hupo.com +hupo.tv +hupu.com +hupu.tv +hupucdn.com +hurongclub.com +hurun.net +husenji.com +hushangcaifu.com +hust-laser.com +hust-snde.com +hust.cc +hust.online +hustcad.com +hustduyan.com +hustlife.com +hustlzp.com +hustnews.com +hustoj.com +hustonline.net +hustp.com +hustunique.com +hustwenhua.net +hustxb.com +husubao.com +hutaojie.com +hutaolinight.com +hutaow.com +hutong-school.com +hutoufeng.net +hutoulang.com +hutu.me +hutui9.com +hutuii.com +hutuoweb.com +hutusi.com +huuhoo.com +huwaibbs.com +huway.com +huweihuang.com +huweishen.com +huxiaofan.com +huxiaoshi.com +huxiu.com +huxiu.link +huxiucdn.com +huya.com +huyahaha.com +huyanapp.com +huyanbao.com +huyaohui.com +huyaruanwen.com +huyn.com +huynet.com +huyou78.com +huyouxiong.com +huyuncdn.com +huyuxx.com +huzhan.com +huzhao1.com +huzheng.org +huzhifeng.com +huzhongxin.com +huzhoumuseum.com +huzicaotang.com +huzs.net +huzu.com +hvac001.com +hvacstar.com +hvdiy.com +hvtong.com +hw-ai.com +hw-tm.com +hw100k.com +hw3static.com +hw555.com +hw99.com +hwactive.com +hwadmin.com +hwangda.com +hwanjia.com +hwasmart.com +hwbs.com +hwccpc.com +hwcloudlive.com +hwclouds-dns.com +hwclouds-dns.net +hwclouds.com +hwclouds.mobi +hwclouds.net +hwcrazy.com +hwehs.com +hweimall.com +hwfcw.com +hwgmthree.com +hwht.com +hwjyw.com +hwlantian.com +hwlpz.com +hwrecruit.com +hwsem.com +hwtelcloud.com +hwtrip.com +hwtxfilm.com +hwwt2.com +hwwt8.com +hwxda.com +hwxjp.com +hwxnet.com +hwxuanliuqi.com +hwzyjt.com +hx008.net +hx110.com +hx2car.com +hx2cars.com +hx3366.net +hx36.net +hx8886.com +hx99.net +hx9999.com +hxage.com +hxbdf120.com +hxbdxled.com +hxbsth.com +hxbxw.com +hxcdn.net +hxchem.net +hxct.com +hxdi.com +hxdkfp.com +hxdkj88.com +hxen.com +hxepawn.com +hxfilm.com +hxfjw.com +hxgame.net +hxgqw.com +hxgs.net +hxgwott.com +hxhost.com +hxinq.com +hxjbcdn.com +hxjbh.com +hxjiqi.com +hxjlhn.com +hxjwang.com +hxland.com +hxlsw.com +hxltad.com +hxmeishi.com +hxnews.com +hxppw.com +hxqc.com +hxqnj.org +hxqwx.com +hxrc.com +hxs168.com +hxsd.com +hxsd.tv +hxsec.com +hxshx.com +hxsme.org +hxt-semitech.com +hxthjy.com +hxtk.com +hxwglm.com +hxxdsb.com +hxxkw.org +hxxl6.com +hxyg.org +hxyjw.com +hxys.com +hxytea.com +hxytw.com +hxyxsj.com +hxzdhn.com +hy-cgp.com +hy-la.com +hy-zr.com +hy01888.com +hy05190134.com +hy123.com +hy2046.com +hy233.tv +hy628.com +hy8881.com +hyahm.com +hyb2b.com +hybbtree.com +hycdn.com +hycfw.com +hycgy.com +hyckjic.com +hydarts.com +hydbest.com +hydcd.com +hyds360.com +hydz999.com +hydzfp.com +hyedu.com +hyext.com +hyfutures.com +hyggfx.com +hygl.org +hygoldcup.com +hygy361.com +hyhcdn.com +hyhjbh.com +hyhl66.com +hyhro.com +hyhuo.com +hyhygame.com +hyimmi.com +hyipchina.com +hyj999.com +hyjesc.com +hyjgxx.com +hyjp.net +hykang.com +hykbl.com +hykcsoft.com +hylname.com +hym68.com +hymom.com +hynews.net +hynixic.com +hynpay.com +hyocr.com +hyouda.com +hypefolio.com +hyper.sh +hypergryph.com +hypersilicon.com +hypnos04.com +hyrainbow.com +hysdknb.com +hysec.com +hysseo.com +hysteeltube.com +hyt368.com +hytcshare.com +hytd.com +hytera.com +hytic.net +hyundai-hmtc.com +hyundaibeijing.com +hyuuhit.com +hywly.com +hyx1314.xyz +hyxrzs.com +hyyf.net +hyyoa.com +hyyyny.com +hyz86.com +hyzcservice.com +hyzm.cc +hyznjs.com +hyzqxsb.com +hz-etest.com +hz-gn.com +hz-hospital.com +hz-winone.com +hz-xin.com +hz100msh.com +hz1cm.com +hz5800.com +hz66.com +hzaee.com +hzairport.com +hzamcare.com +hzbenet.com +hzbh.com +hzbike.com +hzbluebutterfly.com +hzbook.com +hzbxm.com +hzc.com +hzccb.net +hzccnet.com +hzcekong.com +hzcnc.com +hzcopyright.com +hzcourse.com +hzcuizhai.com +hzdajiangdong.com +hzdauto.com +hzdjr.com +hzdledu.com +hzdx.com +hzecsemir.com +hzeg.com +hzfangwang.com +hzfc.cc +hzfucai.net +hzgh.org +hzgjj.com +hzgrow.com +hzguojiao.com +hzgxr.com +hzh1.com +hzhadx.com +hzhanbo.com +hzhfzx.com +hzhike.com +hzhltec.com +hzhr.com +hzhuangxiang.com +hzhuanqu.com +hzhuaxindianzishangwu.com +hzhx.com +hzins.com +hzins.net +hzjbzg.com +hzjingxian.com +hzjinsen.com +hzjizhun.com +hzjlxx.com +hzjmjl.com +hzjqhy.com +hzjs56.com +hzjunxing.com +hzjushan.com +hzkayo.com +hzljlyy.com +hzlug.org +hzmama.net +hzman.net +hzmantu.com +hzmba.com +hzmogo.com +hzmylike.com +hzncc.com +hznews.com +hznsh.com +hznzcn.com +hzou.net +hzpgc.com +hzpzs.net +hzqimiao.com +hzqiuxue.com +hzqz.net +hzr1.com +hzrc.com +hzredream.com +hzrobam.com +hzsaifang.com +hzsaso.com +hzsbz.com +hzsdfsyxx.com +hzsgjj.com +hzshudian.com +hzstad88.com +hzsxn.com +hzti.com +hztosz.com +hztraining.com +hzvillas.com +hzwer.com +hzwindpower.com +hzwmw.com +hzwsjyjt.com +hzwtech.com +hzwxq.com +hzwyh.com +hzxhymc.com +hzxiaobao.com +hzxiyuege.com +hzxsjgxx.com +hzxyns.com +hzy182.xyz +hzyestar.com +hzyhzp.com +hzylpco.com +hzymjx.com +hzyoka.com +hzypro.com +hzyqkb.com +hzyuanshan.com +hzyuedu.com +hzyuewan.com +hzyz.net +hzzhaobiao.com +hzzkj.net +hzzp.com +hzzqs.com +hzzsbbs.com +hzzsfs.com +i-27.name +i-520.net +i-ab.com +i-bei.com +i-bigdatas.net +i-calorie.com +i-click.com +i-element.org +i-ev.com +i-excellence.com +i-hifi.com +i-jim.com +i-kan.me +i-lewan.com +i-ll.cc +i-manji.com +i-matcher.com +i-md.com +i-meto.com +i-modec.com +i-mofang.com +i-morefun.com +i-nano2021.com +i-now.com +i-oranges.com +i-same.com +i-shu.com +i-size.com +i-study.net +i-tongfang.com +i-tv.com +i-xinnuo.com +i-xoron.com +i.dell.com +i0349.com +i0746.com +i075.com +i0898.org +i100e.com +i11r.com +i121.net +i1515.com +i1758.com +i1766.com +i2abc.com +i2ya.com +i360mall.com +i3abox.com +i3done.com +i3dpworld.com +i3geek.com +i3gt.com +i3smot.com +i3v.cc +i3youlun.com +i3yuan.com +i3zh.com +i4px.com +i4t.com +i51game.com +i52tt.com +i5399.com +i5738.com +i5i6.net +i5mai.com +i6879.com +i7aot4.com +i7box.com +i7fh.com +i7gg.com +i7play.com +i7wx.com +i8001.com +i8cn.com +i8gua.com +i8i8i8.com +i8tq.com +i9.org +i91pv.com +i9star.com +i9wang.com +ia-shenzhen.com +iacblog.com +iadmob.com +iadmore.com +iadsdk.apple.com +iaeac.org +iaikx.com +iakmai.com +ialicdn.com +ialloc.com +ialloc.org +iambanban.com +iambocai.com +iameduwork.com +iamfisher.net +iamhippo.com +iamjzs.com +iamle.com +iamlintao.com +iamshuaidi.com +iamsujie.com +iamtxt.com +iamue.com +iamverycute.com +iamwr.com +iamxiaoming.net +iamxk.com +ianvisa.com +iaoso.com +iaoyou.com +iapolo.com +iapp4me.com +iapple123.com +iappler.net +iapppay.com +iapps.im +iappstoday.com +iars-wuhan.com +iartmoney.com +iartsee.com +iask-media.com +iask.com +iask.in +iaskbus.com +iaskhot.com +iat-auto.com +iautodraw.com +iavira.com +iaviva.com +iaxure.com +iazhi.com +ib-china.com +ib07.com +ibaba88.com +ibadboy.net +ibailve.com +ibaizhu.com +ibanbu.com +ibangkf.com +ibangquan.com +ibanma.net +ibanquan.com +ibantang.com +ibanyu.com +ibaotu.com +ibaoxiu.net +ibaozou.com +ibayapp.com +ibbwhat.com +ibcar.net +ibcde.com +ibczy.com +ibeifeng.com +ibeiig.com +ibeiliao.com +ibeiou.com +ibenxi.com +ibestapp.com +ibestfanli.com +ibestservice.com +ibestv.com +ibeta.me +ibgbuy.com +ibianqu.com +ibiaozhi.com +ibicn.com +ibidian.com +ibiji.com +ibimawen.com +ibimuyu.com +ibingniao.com +ibiquge.net +ibiquke.com +ibireme.com +ibixiaxs.com +ibjq.wang +ibkcn.com +ibl520.com +iblimg.com +ibloger.net +iblue.com +iblue.me +ibluefrog.com +ibluesocial.com +ibmwclub.com +ibook8.com +ibooker.cc +ibookstar.com +ibornclinic.com +iboxpay.com +ibr.cc +ibrainproject.org +ibreader.com +ibroadlink.com +ibruce.info +ibscdn.com +ibtba.cc +ibtmao.com +ibtsat.com +ibtyun.com +ibuick.com +ibuscloud.com +ibuspan.com +ibuying.com +ibw.cc +ibytedapm.com +ic-ldo.com +ic-valley.com +ic2china.com +ic37.com +ic72.com +ic98.com +ic9cube.com +ica-alliance.org +icaeconf.com +icafe28.net +icafe8.com +icafe8.net +icaifu.com +icaile.com +ican-contest.org +ican365.net +icandata.com +icangshu111.com +icanzc.com +icaoye.com +icardfinancial.com +icaredbd.com +icasiso.com +icastlewar.com +icax.org +icbc-ltd.com +icbuy.com +icc.one +icc365.com +iccchina.com +iccessh.org +iccgame.com +iccgame.net +icchaoren.com +iccidchaxun.com +iccircle.com +iccsmart.com +iccsz.com +iccwi.net +icdn2.com +icdol.com +icdream.com +icdt-conf.com +ice.work +ice1000.org +iceasy.com +icebear.me +icebound.cc +iceflowsoft.com +icefoxgame.com +iceinto.com +icekr.com +icekylin.online +icemle.org +iceshi.org +icesimba.com +icevpn.org +icewingcc.com +icfans.com +icfcc.com +icfgblog.com +icfqs.com +icfusions.com +icgoo.net +icgu.com +icgvisa.com +ich8.com +ichacha.com +ichacha.net +ichang8.com +ichangbaishan.com +ichangtou.com +ichanyu.com +ichaoshangyue.com +ichaotu.com +icharm.me +ichat800.com +ichdata.com +ichehaopei.com +ichehome.com +ichenfei.com +ichengyun.net +ichennan.com +ichinaceo.com +ichinaenergy.com +ichishu.com +ichong123.com +ichuanglan.com +ichuangwei.com +ichuangye.com +ichuanyi.com +ichunqiu.com +ichunt.com +ichushang.com +ichzh.com +iciba.com +icicicic.com +icifit.com +icignacmb.com +icinfo.net +icirculation.com +icitymobile.com +icixun.com +iciyuan.com +icjiemi.com +ickeep.com +icketang.com +ickey.cc +ickimg.com +iclicash.com +iclickstatic.com +icloud-cdn.icloud.com.akadns.net +icloud.cdn-apple.com +icloudgslb.com +icloudnews.net +iclouds.work +icmade.com +icme14.org +icminer.com +icmsdev.com +icmyk.cc +icnjob.com +icnkr.com +icnote.com +icntv.tv +icoa.vip +icoat.cc +icoc.bz +icoc.cc +icoc.in +icoc.me +icocg.com +icode9.com +icodelogic.com +icoderobot.com +icofchina.com +icom5g.com +iconfans.com +iconfans.org +iconntech.com +icoolen.com +icoou.com +icoremail.net +icos8.com +icosky.com +icourse163.com +icourse163.org +icourt.cc +icp100.net +icp21.com +icpcdn.com +icpcw.com +icpdaili.com +icphu.com +icpisp.net +icrazyidea.com +icroom.com +icrosschina.com +icshanghai.com +icsisia.com +icslx.com +icsoc.net +icson.com +icss.me +icstreet.com +icswb.com +ict361.com +ictcsr.org +ictehi.com +ictest8.com +ictlce.com +ictown.com +ictpaas.com +ictun.com +ictuniv.com +icver.com +icvip.com +icxbk.com +icxinli.com +icy-capital.com +icyif.com +icyip.com +iczhiku.com +iczhiyu.com +iczoom.com +id-bear.com +id-linking.com +id6.me +idabai.com +idachu.com +idafen.com +idafoo.com +idaima.com +idangdai.com +idanpianji.com +idaocao.com +idatacube.com +idataway.com +idaxiang.org +idaybreak.com +idbhost.com +idc-icp.com +idc.moe +idc.sh +idc002.com +idc021.com +idc029.com +idc123.com +idc180.com +idc20.com +idc218.com +idc31.com +idc4.com +idc400.com +idc45.com +idc789.com +idc886.com +idc917.com +idc96.com +idc96.net +idcay.com +idcbest.com +idcbest.hk +idccenter.net +idccom.net +idccun.com +idceb.com +idcfengye.com +idchh.com +idchz.com +idcicp.com +idcicpdns.com +idcjf.com +idcjia.net +idckx.com +idcoffer.com +idcquan.com +idcsec.com +idcser.com +idcsh.com +idcsh.net +idcsped.com +idcspy.com +idcspy.net +idcss.com +idctq.com +idcug.com +idcum.net +idcun.com +idcuw.com +idcvendor.com +idcvip.net +idcwn.com +idcys.com +idcyunwei.org +idea-king.org +idea1986.com +ideacms.net +ideagou.com +idealeer.com +idealshanghai.com +ideanote.cc +ideaparfums.com +ideappt.com +ideasandroid.com +ideazhao.com +ideebank.com +ideepin.com +ideng.com +idesktopcal.com +idevz.org +idgvc.com +idianchou.com +idianfa.com +idianshijia.com +idig8.com +idigi.net +idkaiu.com +idler-et.com +idmchina.net +idmzj.com +idn100.com +idname.com +idnscloud.com +ido-love.com +ido114.com +ido512.com +idoacg.com +idocbank.com +idocv.com +idol001.com +idolranking.info +idolyx.com +idom.me +idomb.com +idong.ren +idongde.com +idongdong.com +idongniu.com +idongte.com +idosend.com +idotools.com +idoupiao.com +idourl.com +idouyinstatic.com +idouyinvod.com +idouzi.com +idoyun.com +idqqimg.com +idreamschool.com +idreamsky.com +idreamsoft.com +idrools.com +idrwl.com +idscn.com +idscn.net +idsky.net +idspub.net +idsuipai.com +idtcdn.com +idtechwh.com +idting.com +idu9.com +idudo.com +iduo8.com +iduochong.com +iduoha.com +iduokan.net +idushu.com +idwzx.com +idyjy.com +idyzs.com +idzcp.com +idzoom.com +ie027.com +ie3.cc +ie515.com +ie525.com +ie815.com +ie915.com +ie935.com +ie977.com +ieasn.com +ieasy123.com +ieatlu.xyz +ieayoio.com +iebyte.com +iecdn.com +iecidc.com +iecie.com +iecity.com +iecnews.com +iecnu.com +iecool.com +iedon.com +ieduchina.com +ieduw.com +ieechina.com +ieeewifi.com +ieeod0.com +ieepa.org +iefang.com +iegcom.com +iegee.net +iegourl.com +iejiu.com +ieliulanqi.com +ielts68.com +ieltschn.com +iemblog.com +ienjoys.com +ienjoys.mobi +ierhou.com +iermu.com +iershoushu.com +iesdouyin.com +ieshu.com +iessay100.com +ietdata.com +iewb.net +iewie.org +iewzx.com +iexx.com +iezuo.com +ifabao.com +ifabiao.com +ifaclub.com +ifahao.com +ifanbei.com +ifangarden.com +ifangka.com +ifanjian.net +ifanr.com +ifanr.in +ifanrusercontent.com +ifareast.com +ifatrabbit.com +ifavart.com +ifaxin.com +ifaxin.org +ifc58.com +ifchange.com +ifeimo.com +ifeng.com +ifeng.fm +ifengcdn.com +ifenghui.com +ifengimg.com +ifengli.com +ifenglian.com +ifengniao.net +ifengo.com +ifengpai.com +ifengtui.com +ifenguo.com +ifengweekly.com +ifengwoo.com +ifensi.com +ifenso.net +ifenxi.com +ifere.com +ifeve.com +ifindever.com +ifindhs.com +ifintechnews.com +ifiretech.com +ifitbox.com +ifjing.com +iflyhealth.com +iflying.com +iflyink.com +iflyos.vip +iflyread.com +iflyrec.com +iflyresearch.com +iflysec.com +iflytek.com +iflytektstd.com +ifma-china.org +ifmicro.com +ifmtech.com +ifmx.cc +ifonelab.net +iforce-media.com +iforl.com +ifoxfactory.com +ifreecdn.com +ifreecomm.com +ifreedom001.com +ifreepsd.com +ifreetalk.com +ifreeurl.com +ifreewallpaper.com +ifresh.mobi +ifromvr.com +ifseclabs.com +iftell.com +ifttl.com +ifukua.com +ifulelol.com +ifumanhua.net +ifundstore.com +ifunmac.com +ifunvip.com +ifutest.com +ifutureworks.com +ifval.com +ifxsb.com +ifxtx.com +ifzxs.cc +igame007.com +igame58.com +igamecj.com +igao7.com +igaoda.com +igarden365.com +igbox.net +igdmfg.com +igdzc.com +igea-un.org +igeak.com +igeekbar.com +igeidao.com +igelou.com +igenetech.com +igengmei.com +igerun.com +igeshui.com +igetget.com +igetui.com +igevin.info +igexin.com +igigo.net +igo180.com +igo998.com +igome.com +igomkt.com +igooma.com +igoyx.com +igreatdream.com +igslb.net +iguanyu.com +iguazutraffic.xyz +iguder.com +iguitar.me +igumo.cc +igunsd.xyz +iguoguo.net +iguopin.com +iguoplay.com +iguowan.com +iguxuan.com +igwfmc.com +ihacksoft.com +ihaier.co +ihaier.com +ihaima.com +ihaiu.com +ihalf.co +ihanghai.com +ihanhua.com +ihani.tv +ihanshi.com +ihaoge.net +ihaoxi.com +ihaozhuo.com +ihappy.vip +ihaveu.com +ihaveu.net +ihdt.tv +ihebi.info +ihecc.org +ihei5.com +iheima.com +iheima.net +ihengheng.com +ihenji.com +ihepa.com +ihetou.com +ihewro.com +ihggccampaign.com +ihhubei.com +ihint.me +ihisce.com +ihitui.com +ihjiu.com +ihktv.com +ihlnews.com +ihomefnt.com +ihomesoft.net +ihongma.com +ihongpan.com +ihongqiqu.com +ihongyou.com +ihonker.org +ihou.com +ihr360.com +ihref.com +ihrscloud.com +ihuaben.com +ihuajian.net +ihuan.me +ihuanling.com +ihuayou.net +ihuazhan.net +ihui.com +ihuidian.com +ihuigo.com +ihuikou.net +ihuipao.com +ihuiu.com +ihuman.com +ihumand.com +ihungyi.com +ihuochaihe.com +ihuoqiu.com +ihuoyan.com +ihuyi.com +ihuzuan.com +ihwrm.com +ihx.cc +ihxlife.com +ihykb.com +ihypo.net +ihzzy.com +ii.cc +ii010.com +ii090.com +ii74.com +ii77.com +iiad.com +iianews.com +iiaq.net +iibechina.com +iibq.com +iicp.net +iidns.com +iiedns.xyz +iiexe.com +iifab.com +iigs9.com +iii80.com +iiiff.com +iiiimg.com +iiijk.com +iiilab.com +iiiview.net +iiiyan.com +iikeji.com +iikuzhan.com +iikx.com +iincn.net +iiong.com +iireadiness.com +iirii.com +iis7.com +iischool.com +iisicp.com +iisp.com +iissbbs.com +iissnan.com +iitcp.com +iitoutiao.com +iivey.com +iiycy.com +iiyi.com +iiyibbs.com +ijac.net +ijh.cc +ijia360.com +ijiandao.com +ijiangyin.com +ijianji.com +ijiatv.com +ijie.com +ijiedian.com +ijiela.com +ijindun.com +ijingdi.com +ijinshan.com +ijinzhuan.com +ijishu.cc +ijita.com +ijiujiao.com +ijiwei.com +ijiwen.com +ijizhi.com +ijjnews.com +ijnqc.com +ijogame.com +ijq.tv +ijsp.net +ijuanshi.com +ijuer.com +ijuhepay.com +ijunhai.com +ijunxun.com +ijutou.net +ijuwu.com +ijzhang.com +ik123.com +ik3cloud.com +ikafan.com +ikaixun.com +ikaka.com +ikakuedu.com +ikanchai.com +ikandian.com +ikang.com +ikantu365.com +ikaoguo.com +ikaolaa.com +ikcd.net +ikcest.org +ikcrm.com +ikcw.com +ike-global.com +ikeguang.com +ikemeng.com +ikepu.com +ikjtao.com +ikjzd.com +ikmt.net +ikonfx.com +ikongjian.com +ikongjun.com +ikonke.com +ikoo8.com +ikozn.com +iksea.com +iku8.com +ikuai8-wifi.com +ikuai8.com +ikuailian.com +ikuaiy.net +ikuajing.com +ikuvn.com +ikx.me +il8r.com +ilab-x.com +ilaic.org +ilaisa.com +ilaitui.com +ilancai.com +ilanluo.com +ilanx.net +ilanx0.net +ilaw66.com +ilawpress.com +ilazycat.com +ileci.com +ileedarson.com +ileehoo.com +ilego.club +ilewan.com +iliangcang.com +ilibrand.com +ilidubj.net +ilife69.com +ilifesmart.com +ilingdai.com +ilinkee.com +ilinki.net +ilinkone.com +ilinux.xyz +ilinuxkernel.com +ilinyi.net +ilishi.com +ilishi.net +ilitu.com +iliuliu.com +ilixiangguo.com +iliyu.com +ilkeji.com +ilkwork.com +illumpaper.com +ilmgq.com +ilohas.com +iloli.bid +ilongre.com +ilongterm.com +iloveanan.com +ilovefishc.com +ilovelvxing.com +iloveyou14.com +iloveyouxi.com +ilovezuan.com +iloxp.com +ilqsh.com +ilsungf.com +ilucong.net +ilufan.com +iluoy.com +iluoyang.com +iluqi.com +ilustrepro.com +iluvatar.ai +ilv6.com +ilvping.com +ilxdh.com +im-cc.com +im170.com +im286.com +im286.net +im298.com +im2maker.com +im323.com +im520.com +im577.com +im5i.com +im87.net +imac.hk +imaccn.com +imaegoo.com +imageaccelerate.com +imageedu.com +imagefz.com +imagehub.cc +imagelol.com +imageoss.com +imagepy.org +images-cache.com +images.apple.com +images.apple.com.akadns.net +images.apple.com.edgekey.net.globalredir.akadns.net +images.benchmarkemail.com +images.samsung.com +imageter.com +imagetotxt.com +imaginde.com +imagineadtech.com +imags-google.com +imahui.com +imaibo.net +imaijia.com +imaitu.com +imalljoy.com +imandarin.net +imanhuaw.com +imanhuaw.net +imaojiang.com +imarketchina.com +imaschina.com +imasdk.googleapis.com +imatchic.com +imatlas.com +imaycon.com +imayitxt.com +imazingchina.com +imbackr.com +imbeer.com +imblog.in +imbtk.com +imbusy.me +imcaviare.com +imcec.org +imcn.me +imdac.org +imdadui.com +imdaike.com +imdo.co +imdou.net +imdst.com +imedao.com +imedicalai.com +imedp.com +imeete.com +imeete.net +imeibian.com +imeidb.com +imeihei.com +imeiju.cc +imeijutt.com +imeishike.com +imeitou.com +imekaku.com +imeme.tv +imesong.com +imever.me +imeyahair.com +imfirewall.com +img-space.com +img-sys.com +img.samsungapps.com +img005.com +img168.net +img16888.com +img4399.com +img898.com +imgcdc.com +imgcdn2.com +imgchr.com +imgeek.org +imgii.com +imglefeng.com +imglink.win +imgo.tv +imgscdn.com +imgsha.com +imgshangman.com +imgsina.com +imgtu.com +imgu.cc +imgurl.org +imhan.com +imhanjie.com +imhaowa.com +imhdr.com +imhuchao.com +imhunk.com +imiaobige.com +imibaby.net +imicang.com +imiker.com +imindmap.cc +iminho.me +imipy.com +imitui.com +imjiayin.com +imkerwin.com +imkevinyang.com +imkira.com +imlaidian.com +imlcl.com +imlgm.com +imlianai.com +imliuyi.com +immi520.com +immiexpo.com +immivip.com +immomo.com +immomogame.com +immusician.com +immusoul.com +immwall.com +imnerd.org +imnight.com +imobile-ent.com +imobon.com +imochen.com +imochy.com +imoduo.com +imoe.me +imoeer.com +imofan.com +imoffice.com +imok01.com +imolink.com +imomoe.ai +imomoe.com +imomoe.in +imomoe.io +imomoe.jp +imooc.com +imoocc.com +imoodou.com +imoonfm.com +imooo.com +imopan.com +imotao.com +imoxiu.com +imp3.net +imperfectionstudio.com +imperial-vision.com +impk.cc +impk113.com +impnails.com +impng.com +impopper.com +importnew.com +impta.com +imqq.com +imqueenapp.com +imququ.com +imquzan.com +imrfresh.com +imshell.com +imshusheng.com +imsilkroad.com +imsle.com +imspm.com +imsun.net +imsxm.com +imtmp.net +imtuan.com +imtvs.cc +imuke.com +imuo.com +imushan.com +imvictor.tech +imw.me +imwaco.com +imwallet.com +imweb.io +imwexpo.com +imwork.net +imxh.com +imxpan.com +imxyd.com +imycdn.com +imydl.com +imydl.tech +imydns.net +imyip.net +imys.net +imyshare.com +imyuedu.com +imzhongxin.com +imzhou.com +in-en.com +in001.com +in189.com +in66.com +in6way.com +in800.com +in955.com +inabr.com +inad.com +inanrenbang.com +inapian.com +inass.org +inbeijing.org +inbilin.com +inbooker.com +inc365.com +incake.net +incensechina.com +incloudexpo.com +incoto.com +incsg.com +ind-app-comp.com +ind9ed.com +indaboom.com +indexedu.com +indexedu.net +indexmob.com +indiancn.com +indics.com +indiehacker.im +indielight.net +indienova.com +indier.com +indmi.com +indongfang.com +induta.com +indvaan.com +ineice.com +inengyuan.com +inesa-it.com +inetgoes.com +inetnoc.com +inewhope.com +inewland.com +inewoffice.com +inewya.com +inezha.com +infarts.net +infertilitybridge.com +infineon-autoeco.com +infinitescript.com +infinitynewtab.com +info.cc +info10.com +info110.com +info35.com +infobidding.com +infobigdata.com +infocomm-journal.com +infoier.com +infoipwest.com +infong.net +infoobs.com +infoqstatic.com +inforbus.com +inforguard.net +informrack.com +inforsec.org +infosoft.cc +infovc.com +infowuxi.com +infoxa.com +infoxgame.com +infoxmation.com +infzm.com +ing10bbs.com +ing2ing.com +ingageapp.com +ingcore.com +ingdan.com +ingenic.com +ingkee.com +ingping.com +inhdd.com +inhe.net +inhi.kim +inhuawei.com +ini3e.com +inibiru.com +inicoapp.com +inidc.net +inimc.com +ininin.com +init-p01md-lb.push-apple.com.akadns.net +init-p01md.apple.com +init-p01st-lb.push-apple.com.akadns.net +init-p01st.push.apple.com +init-s01st-lb.push-apple.com.akadns.net +init-s01st.push.apple.com +initialview.com +initnil.com +inja.com +inkankan.com +inkanke.com +inkcn.com +inke.com +inke.tv +inkeygo.com +inkonote.com +inktok.com +inkuai.com +inlaylink.com +inlishui.com +inlovektv.com +inlsd.org +inmeng.net +inmuu.com +inneed.club +innjia.com +innlym.me +innocomn.com +innodealing.com +innojoy.com +innotechx.com +innotron.com +innovatedigital.com +innovidcn.com +innovisgroup.com +innsue.com +innvitor.com +inoherb.com +inoneh5.com +inoteexpress.com +inovance-automotive.com +inpla.net +inplayable.com +inputmore.com +inqan.com +inrice.com +inrugao.com +insarticle.com +inshiqi.com +insnail.com +inspur.com +inspuronline.com +inspurpower.com +insta360.com +instafogging.com +insun-china.com +insuns.com +inswindow.com +insxz.com +int-agri.com +int800.com +intaek.com +intcache.net +intdmp.com +intekey.com +intel-space.com +intelcupid.com +intelligentmanufactory.com +intelvisioncn.com +inter12.org +inter1908.net +interactivebrokers.hk +interbator.com +internationalbrand.net +internbird.com +internet-dns.com +internet7.vip +internetcaff.com +internetke.com +internettrademark.com +internetworld.cloud +intertid.com +interval.im +intiea.org +intio.org +intl-hzc.com +intlgame.com +intlscdn.com +intmedic.com +intmian.com +intohard.com +intopet.com +intovfx.com +intowz.com +intozgc.com +intple.com +intsavi.com +intsig.net +intsweet.com +intwho.com +intwk.com +inuobi.com +inuu6.com +inveno.com +inverter.so +invescogreatwall.com +investank.com +investguider.com +investoday.net +investorscn.com +investstkitts.org +inwaishe.com +inwatch.cc +inxedu.com +inyuapp.com +inzone-auto.com +inzotek.com +ioa365.com +ioage.com +iocrest.com +ioeyjsb.com +ioffershow.com +ioffice100.com +ioio.pw +ioiox.com +iok.la +iol8.com +iomsew.com +ioneball.com +ionewu.com +ionic.wang +ionichina.com +ionicliquid.org +iooeoo.com +iopenhec.com +ioqq.com +ios1234.com +iosapps.itunes.g.aaplimg.com +iosappx.com +iosask.com +iosfengwo.com +iosinit.com +iosmu.com +iosre.com +ioswift.org +iot-online.com +iot1001.com +iot101.com +iot688.com +iotachem.com +iotbay.com +iotexpo.org +iotfair.net +iotku.com +iotmag.com +iotpai.com +iotwrt.com +iotxing.com +iovweek.com +iowiki.com +ip-guard.net +ip.fm +ip008.com +ip138.com +ip168.com +ip192.com +ip33.com +ip3366.net +ip518.com +ip668o.com +ip669.com +ip87.com +ipadown.com +ipadview.com +ipagame.net +ipaiban.com +ipail.com +ipalfish.com +ipalmap.com +ipampas.com +ipanda.com +ipandao.com +ipandata.com +ipangcai.com +ipanshi.com +ipaomi.com +ipaotuan.com +ipason.com +ipay.so +ipcc.com +ipcchain.org +ipcfun.com +ipchaxun.com +ipchina.com +ipcmen.com +ipcorecatalog.com +ipcwifi.com +ipcxz.com +ipdaili.com +ipddz.com +ipdftool.com +ipdianhua.com +ipdsms.com +ipduoduo.cc +ipduoduo.com +ipease.net +ipeedu.com +ipehr.com +ipehua.com +ipengchen.com +ipengtai.com +iper2.com +ipethelp.com +ipexp.com +ipfeibiao.com +ipfen.com +ipfsbit.com +ipgoal.com +iph123.com +iphone-ld.apple.com +iphonediule.com +iphp8.com +ipin.com +ipinba.com +ipingyao.com +ipinyou.com +ipip.net +ipktv.com +ipku.cc +ipku.com +iplascloud.com +iplaypy.com +iplaysoft.com +ipmay.com +ipmph.com +ipo.hk +ipo.la +ipo3.com +ipoceo.com +iposeidongame.com +ipple.net +ipplus360.com +ippzone.com +ipr114.net +ipr123.com +ipr66.com +iprchn.com +iprdaily.com +ipresst.com +iprun.com +ips8.com +ipsir.net +ipssh.net +iptalent.com +iptrm.com +ipuu.net +ipuyuan.com +ipv4.host +ipv6.la +ipv6dp.com +ipyker.com +ipyy.com +iq123.com +iqalliance.org +iqcrj.com +iqdii.com +iqdnet.com +iqianbang.com +iqianggou.com +iqianjin.com +iqianyue.com +iqidian.com +iqihang.com +iqilu.com +iqilun.com +iqinbao.com +iqing.com +iqingdao.com +iqingren.com +iqingua.com +iqishu.la +iqiwx.com +iqiyi.com +iqiyih5.com +iqiyipic.com +iqshw.com +iquanba.com +iquanfen.com +iquanwai.com +iqucai.com +iqujing.com +iquncha.com +iqunix.com +iqunix.store +iqupdate.com +iquwang.com +iqxbf.com +iqxedu.com +iqycamp.com +iranshao.com +iraoping.com +iray.me +ircmnr.com +ireader.com +ireadercity.com +ireaderm.net +ireadweek.com +ireadyit.com +irealbest.com +irealtech.com +irecyclingtimes.com +iredwhale.com +irelxtech.com +iresearchad.com +iresearchchina.com +irest.tv +irising.me +irlianmeng.com +irockbunny.com +irockwill.com +iroing.com +ironfishchina.com +irongbei.com +ironghui.com +irootech.com +irpmgcmd.com +irs01.com +irs01.net +irs03.com +irskj.com +iruad.com +iruanmi.com +iruidian.com +iruixing.com +irukou.com +irunyan.com +is-programmer.com +is1-ssl.mzstatic.com +is1.mzstatic.com +is2-ssl.mzstatic.com +is2.mzstatic.com +is26.com +is3-ssl.mzstatic.com +is3.mzstatic.com +is36.com +is4-ssl.mzstatic.com +is4.mzstatic.com +is5-ssl.mzstatic.com +is5.mzstatic.com +isaced.com +isamanhua.com +isaonian.com +isay365.com +isbdai.org +iscrv.com +isdox.com +iseedog.com +isenruan.com +iseoku.com +isf.ink +isfashion.com +isfirst.net +ish168.com +ishaanxi.com +ishala.com +ishang.net +ishangman.com +ishangtong.com +ishangu.com +ishangzu.com +ishanshan.com +ishansong.com +ishaohuang.com +ishare20.net +isharebest.com +isharepc.com +isheely.com +isheet.net +isheji5.com +ishenbao.com +ishenping.com +ishenyou.com +ishhuo.com +ishici.com +ishipoffshore.com +ishoujizhuan.com +ishowchina.com +ishowx.com +ishubao.org +ishugui.com +ishuhui.com +ishuhui.net +ishuirong.com +ishuiyun.com +ishumei.com +ishuocha.com +ishuqi.com +ishuse.com +isigu.com +isilicontech.com +isinosig.com +isixue.com +iskcd.com +iskryou.com +isky000.com +iskylinem.com +iskysoft.com +iskytree.net +iskyworth.com +islide.cc +isluo.com +ismartgo.com +ismartware.com +ismdeep.com +isme.pub +isming.me +iso-est.com +iso-iso9000.com +isobar.tech +isoftstone.com +isoftwind.com +isoo.cc +isorange.com +isoshu.com +isoucai.com +isoyes.com +isoying.com +isoyu.com +isp.cx +ispeaken.com +ispecial.xyz +isport2008.com +ispservice.cc +isqhy.com +isrcb.com +isscloud.com +issconline.com +issedu365.com +isthnew.com +istpei.com +istrongcloud.com +istudyinchina.org +istylepdf.com +isudaji.com +isuike.com +isumiao.com +isummi.com +isun.org +isux.us +isuzhou.me +isvee.com +isvjcloud.com +isvjd.com +isw-ex.com +iswifting.com +it-api.com +it-bound.com +it-crazy.net +it-home.org +it-shit.com +it.link +it007.com +it086.net +it1069.com +it120.cc +it1352.com +it163.com +it165.net +it168.com +it2021.com +it3588.com +it376.com +it399.com +it525.com +it528.com +it578.com +it610.com +it666.com +it689.com +it69.net +it707.com +it7e.com +it7t.com +it918.com +it985.com +it9g.com +itaboola.com +itaic.org +itaiping.com +itakeeasy.com +italyclassico.com +italycn.com +itamt.com +itangbole.com +itangyuan.com +itanlian.com +itanzi.com +itao.com +itaoke.org +itaokecms.com +itaotuo.com +itavcn.com +itazhi.com +itbegin.com +itbeihe.com +itbiaoju.com +itbilu.com +itbkz.com +itblw.com +itbole.com +itbook5.com +itboth.com +itbour.com +itboy.net +itbulu.com +itbuy.com +itbyc.com +itbyte.net +itcacfo.com +itchaguan.com +itcodemonkey.com +itcpn.net +itczh.com +itdaan.com +itdabao.com +itdcw.com +itdhz.com +itdiffer.com +itdks.com +itdlc.com +itdoor.net +itdos.com +itdos.net +iteblog.com +itechate.com +itechol.com +itedou.com +iteedu.com +iteer.net +itek-training.com +itelly.net +itellyou.com +itensoft.com +iter168.com +itest.info +itetc.org +itexamprep.com +iteye.com +itfanr.cc +itfans.net +itfeed.com +itfenghui.com +itfly.net +itfw5.com +itgd.net +itgeeker.net +itgege.com +itgemini.net +itgo.me +itgochina.com +itgoodboy.com +ithaowai.com +ithard.com +itheat.com +itheima.com +ithelei.com +ithenticatecn.com +ithome.com +ithome.net +ithor.com +ithor.net +ithothub.com +ithov.com +itiankong.com +itiankong.net +itiexue.net +itiger.com +itigergrowth.com +itilxf.com +itilzj.com +itingwa.com +itit.io +itiyan.net +itiyun.com +itjk.me +itjoy.net +itjspx.com +itjuzi.com +itkeyword.com +itkoala.com +itkoudai.com +itlu.org +itluantan.com +itmamba.net +itmanbu.com +itmind.net +itmo.com +itmoocs.com +itmop.com +itmresources.com +itmsm.com +itmuch.com +itmyhome.com +itnan.net +itnb.cc +itnec.org +itnihao.com +itniwota.com +itnpc.com +itnpyfwshe.com +itnxs.com +itocp.com +itoec.org +itogame.com +itokit.com +itokoo.com +itonghui.com +itopbaby.com +itopers.com +itophis.com +itopic.org +itopplay.com +itopsdk.com +itotaku.net +itotii.com +itouchchina.com +itougu.com +itoumi.com +itoutiao.co +itoutiaoimg.com +itoutiaostatic.com +itouxian.com +itouzi.com +itpaidui.com +itpeo.net +itpon.com +itpow.com +itppi.org +itpub.net +itpux.com +itpux.net +itpwd.com +itrace.cc +itran.cc +itranslater.com +itren.org +itrid.com +itrip.com +itruelife.com +itruke.com +itry.com +its114.com +itscoder.com +itshai.com +itsiwei.com +itsk.com +itslaw.com +itsmephoto.net +itsogo.net +itsoku.com +itsun.com +itsvse.com +ittribalwo.com +ituad.com +ituba.cc +itugo.com +ituibar.com +ituite.com +itunes-apple.com.akadns.net +itunes.apple.com +itunesconnect.apple.com +itushuo.com +itutu.tv +ituu.net +itwanger.com +itwlw.com +itwork.club +itwulin.com +itxe.net +itxiao.com +itxinwen.com +itxm.net +itxst.com +itxuexi.com +itxueyuan.com +itxueyuan.org +itxuye.com +ityears.com +itying.com +ityouknow.com +itypen.com +ityuan.com +ityxb.com +itzcdn.com +itzh.org +itzhp.com +itziy.com +itzjj.com +itzm.com +itzmx.com +itzmx.net +iu18.com +iu25.com +iu95522.com +iuban.com +iucars.com +iucdn.com +iudodo.com +iueux.com +iufida.com +iuinns.com +iuni.com +iuniware.com +iuoooo.com +iuplus.com +iuynfg.com +ivali.com +ivan.xin +ivcheng.com +ivemusic.net +ivideostar.com +iviewui.com +ivixivi.com +ivmoe.com +ivocaloid.com +ivsky.com +ivu4e.com +ivvajob.com +ivwen.com +ivy-school.org +ivybaby.me +ivycoffee.com +ivydad.com +ivydom.com +ivypub.org +ivyschools.com +ivysun.net +ivywing.me +iwala.net +iwan0.com +iwan4399.com +iwanbei.com +iwanboy.com +iwangding.com +iwangnan.com +iwanoutdoor.com +iwanvr.com +iwanws.com +iwanyl.com +iwapan.com +iwasai.com +iwatch365.com +iwcoo.com +iwebad.com +iwebchoice.com +iwecan.net +iweeeb.com +iweek.ly +iweekapi.com +iweidu.net +iweizhijia.com +iweju.com +iwellen.com +iwencai.com +iwenson.com +iwgame.com +iwhgao.com +iwhr.com +iwin10.cc +iwin10.com +iwin10.net +iwingchina.com +iwiscloud.com +iwjw.com +iwncomm.com +iwordnet.com +iworm.net +iwpai.com +iwshang.com +iwucha.com +iwwwwwi.com +iwxapi.com +iwyv.com +iwyvi.com +iwzwy.com +ixb.cc +ixbd.net +ixbren.net +ixcv.com +ixdc.org +ixfc.net +ixiangche.com +ixiangyu.com +ixianlai.com +ixianzong.com +ixiao9.com +ixiaochengxu.cc +ixiaolu.com +ixiaowai.com +ixiatxt.com +ixibeiren.com +ixieme.com +ixigua.com +ixiguan.com +ixiguavideo.com +iximo.com +ixinglu.com +ixingpan.com +ixinmanzhishe.com +ixinqing.com +ixintui.com +ixinwei.com +ixiqi.com +ixiqin.com +ixiumei.com +ixiupet.com +ixixili.com +ixizang.com +ixmu.net +ixniang.com +ixpub.net +ixs.la +ixsch.com +ixu.me +ixueshu.com +ixueyi.com +iy51.com +iyakuhin-mall.com +iyangcong.com +iyaou.com +iyaxi.com +iyaxin.com +iyaya.com +iyaya.info +iyazhu.com +iyb.tm +iycdm.com +iycsky.com +iycwl.com +iyd.wang +iydsj.com +iydu.net +iyeeda.com +iyeele.com +iyenei.com +iyingdi.com +iyingji.com +iyiou.com +iyiqi.com +iyishengyuan.com +iyiyun.com +iyizhai.com +iyocloud.com +iyong.com +iyooread.com +iyoowi.com +iyoucai.com +iyoudui.com +iyouguoo.com +iyouhun.com +iyoujia.com +iyoujiao.net +iyoule.com +iyouman.com +iyouqian.com +iyouxia.com +iyouxun.com +iytc.net +iythf.com +iyuedan.com +iyuedian.com +iyunbao.com +iyunbiao.com +iyunmai.com +iyunshu.com +iyuntian.com +iyunv.com +iyunyue.com +iyunzk.com +iyuxy.com +iyx668.com +iyxku.com +iyyin.com +iyz168.com +iz55.com +izacholsm.com +izaodao.com +izazamall.com +izestchina.com +izhangchu.com +izhangheng.com +izhaohe.com +izhaoo.com +izhaowo.com +izhenxin.com +izheteng.com +izhihuicheng.net +izhihuo.com +izhikang.com +izhiliao.com +izhiqun.com +izhishi.com +izhongxia.com +izhuanfa.com +izhuce.com +izihun.com +iziyo.com +izjj.com +izmm.me +izmzg.com +izshare.net +izt6.com +izt8.com +iztwp.com +iztyy.com +izuche.com +izuchecdn.com +izuiyou.com +izumicn.com +j-h-k.com +j-smu.com +j1.com +j1health.com +j1sc.com +j3pz.com +j66.net +j7994.com +j888s.xyz +j9p.com +jaadee.com +jaadee.net +jabizb.com +jacklm2.com +jacklm3.com +jackon.me +jackslab.org +jackxiang.com +jacky-blog.com +jackyang.me +jackyyf.com +jackzhu.com +jadetowerccrc.com +jae.sh +jaeapp.com +jaeosc.com +jafeney.com +jajqj.com +jakegame.com +jakehu.me +jakting.com +jalan.space +jalorsoft.com +jamidol.com +jammyfm.com +jamoxi.com +jampotgames.com +jamxio.com +janbao.net +jandan.com +jandan.net +jane7.com +janezt.com +janmeng.com +janpn.com +janrain.biz +jappstore.com +jarencai.com +jarhu.com +jartto.wang +jarvisw.com +jasolar.com +jason-z.com +jasongj.com +jasperxu.com +jasve.com +jatd.org +java-er.com +java1234.com +java2000.net +java2008.com +java2class.net +javaapk.com +javaboy.org +javacui.com +javadoop.com +javaear.com +javaer.xyz +javaeye.com +javafxchina.net +javanav.com +javashuo.com +javatang.com +javaweb.shop +javawind.net +javaxxz.com +javazhiyin.com +javazx.com +javbuy.xyz +javier.io +javitamedical.com +jaxcx.com +jaycn.com +jayfc.com +jayfu.tk +jayjw.com +jayme.net +jaytrn.com +jazzyear.com +jb-hacker.com +jb1000.com +jb51.cc +jb51.net +jbaier023.com +jbaobao.com +jbb.one +jbcz.tv +jbdown.com +jbedu.org +jbelf.com +jbfoundry.com +jbhdq.com +jbpbox.com +jbqipa.com +jbryun.com +jbxy.com +jbzj.com +jbzwread.com +jbzyk.com +jbzyw.com +jc-ai.com +jc-dl.net +jc-saas.com +jc-space.com +jc0531.com +jc170.com +jc315.com +jc35.com +jc56.com +jc85.com +jccsoc.com +jccug.com +jcedu.org +jcf94.com +jcgcn.com +jchelec.com +jchl.com +jchla.com +jchxmc.com +jcjpt.com +jcku.com +jcloud-cache.com +jcloud-cdn.com +jcloud.com +jcloudcache.com +jcloudcache.net +jcloudcs.com +jcloudec.com +jcloudedge.com +jcloudgslb.com +jcloudimg.com +jcloudlb.com +jcloudstatic.com +jclps.com +jcmob.net +jcmtxs.com +jcnano.com +jcnk120.com +jcodecraeer.com +jcpeixun.com +jcqczb.com +jcqzw.com +jcrb.com +jcsb.com +jcsfs.com +jcsjt.com +jcssyxh.com +jctmj.net +jctrans.com +jctuku.com +jcu.cc +jcwcn.com +jcwgk.com +jcwxiao.com +jcyes.com +jcyipong.com +jcyx2019.com +jczhijia.com +jczhiyao.com +jd-88.com +jd-app.com +jd-bbs.com +jd-df.com +jd-ex.com +jd-fm.com +jd-tv.com +jd.co +jd.com +jd.hk +jd100.com +jd2img.com +jd360.hk +jd5.com +jdair.net +jdajf.com +jdallianz.com +jdapi.com +jdb100.com +jdbbs.com +jdbbx.com +jdbpcb.com +jdbusiness.com +jdcache.com +jdcapital.com +jdccie.com +jdcdn.com +jdcf88.com +jdcjsr.com +jdcloud-oss.com +jdcloud-scdn.net +jdcloud.com +jdcloudcache.com +jdcloudcache.net +jdcloudedge.com +jdcloudnaming.net +jdcloudstatic.net +jdcloudstatus.net +jdcloudwaf.com +jdcq.net +jdctky.com +jdd-hub.com +jdd.com +jddaw.com +jddb.net +jdddata.com +jddebug.com +jddglobal.com +jddj.com +jddmoto.com +jdedu.net +jdfcloud.com +jdfhq.com +jdfschool.com +jdgslb.com +jdgwdq.com +jdhhmd.com +jdhonline.com +jdhyplay.com +jdiy.club +jdjingmai.com +jdjob88.com +jdjrdns.com +jdjygold.com +jdjys.com +jdkcb.com +jdl.com +jdluosi.com +jdlxzx.com +jdnettv.com +jdnews.net +jdon.com +jdpay.com +jdpaydns.com +jdplay.com +jdsinspection.com +jdtjy.com +jdvisa.com +jdw001.com +jdwan.com +jdwgame.com +jdwl.com +jdworldwide.com +jdwx.cc +jdwx.info +jdwxmagazine.com +jdwxs.com +jdwxwz.com +jdxc.net +jdxcw.com +jdxfw.com +jdxlt.com +jdxs5200.net +jdxzz.com +jdy.com +jdy8848.com +jdycdn.com +jdyou.com +jdypf.com +jdzbth.com +jdzdeyy.com +jdzeduyun.com +jdzj.com +jdzjdz.com +jdzmc.com +jdzol.com +jdzol.net +jeacar.com +jeagine.com +jeanphy.online +jeanssalon.com +jeasyui.net +jedi-games.com +jedoo.com +jeebei.com +jeecg.com +jeecg.org +jeecms.com +jeee.ltd +jeejen.com +jeekun.com +jeeplus.org +jeepshoe.net +jeepxie.net +jeesci.com +jeesite.com +jeeyaa.com +jefang.com +jeffdesign.net +jeffjade.com +jeffstudio.net +jegotrip.com +jehudf.com +jelleybrown.com +jellow.club +jellow.site +jellymoo.com +jellythink.com +jenglishj.com +jeongen.com +jeoshi.com +jerehedu.com +jerei.com +jerryzou.com +jescard.com +jesgoo.com +jesselauristonlivermore.com +jesselivermore.com +jestq.com +jethoo.com +jetmobo.com +jetneed.com +jetsum.com +jetsum.net +jevictek.com +jewellworld.com +jewelryseeds.com +jexus.org +jeyi.com +jf2688.com +jf9p.com +jfbcb.com +jfbuilding.com +jfcaifu.com +jfcdns.com +jfcgf.com +jfdaily.com +jfdown.com +jfduoduo.com +jfdwy.com +jfedu.net +jfenz.com +jfewle.com +jfffabc.com +jfh.com +jfinal.com +jfinfo.com +jfocus.net +jfq.com +jfrogchina.com +jfscd.com +jfshare.com +jfsky.com +jfstatic.com +jfuwu.com +jfxqczl.com +jfydgame.com +jfyiyao.com +jfz.com +jfzhiyao.com +jgaoxiao.com +jgcqgf.com +jgdq.org +jgdun.com +jgew3d.com +jgg09.com +jggame.net +jggjj.com +jgjh.com +jgscct.com +jgsdaily.com +jgshwx.com +jgtc315.com +jguo.com +jgvnews.com +jgwsoft.com +jgxlzd.com +jgy.com +jgyflqc.com +jgyljt.com +jgzx.org +jgzyw.com +jh3j.com +jh8k.com +jhbst.com +jhcb.net +jhcms.com +jhctbank.com +jhdqz.com +jhdxjk.com +jhfcuav.com +jhfgg.com +jhfl.com +jhforever.com +jhgtgb.com +jhgzn.net +jhlengku.com +jhm2012.com +jhnsh.com +jhnsyh.com +jhonge.net +jhonse.com +jhqshfly.com +jhrcbank.com +jhsbggw.com +jhsctv.com +jhsdai.com +jhsfojiao.com +jhsjtxx.com +jhssapp.com +jht868.com +jhtcgroup.com +jhua168.com +jhwaimai.com +jhwl444.com +jhwrsq.com +jhxabj.com +jhxms.com +jhyongyou.com +ji-qi.com +ji36.net +ji7.com +jia-he-jia.com +jia.com +jia360.com +jia400.com +jiaads.com +jiaapps.com +jiabangcnc.com +jiabasha.com +jiacai001.com +jiachong.com +jiadezhixin.com +jiadingqiang.com +jiadounet.com +jiaduijiaoyou.com +jiae.com +jiafang168.com +jiafenqi.com +jiagedan.com +jiageip.vip +jiagle.com +jiagou1216.com +jiagouyun.com +jiaguhome.com +jiagulun.com +jiaheu.com +jiahongjingmao.com +jiahuacinema.com +jiahuaming.com +jiahuism.com +jiain.net +jiaji.com +jiaji28.net +jiajia.tv +jiajiakt.com +jiajianhudong.com +jiajiao114.com +jiajiaoban.com +jiaju-hy.com +jiaju.cc +jiaju.com +jiaju100.com +jiajucj.com +jiajuketang.com +jiajumi.com +jiajuol.com +jiakaobaodian.com +jiakaodashi.com +jiakeshuma.com +jialaxin.cc +jialebao.cc +jialez.com +jialiangad.com +jialidun.com +jialingmm.net +jiameng.com +jiameng001.com +jiamengdp.com +jiamengfei.com +jiamengwoba.com +jiamiantech.com +jiaming.pro +jiaminghi.com +jiamisoft.com +jiamofang.net +jian.net +jianada-qianzheng.com +jianai360.com +jianan5.com +jianbaizhan.com +jianbaolife.com +jianbh.com +jianbihua.org +jianbihua360.com +jianbihuadq.com +jianbing.com +jiancai.com +jianchacha.com +jianchajingmk.net +jianchihu.net +jiandaima.com +jiandan.net +jiandana.com +jiandansousuo.com +jiandanxinli.com +jiandaopay.com +jiandaoyun.com +jiandati.com +jiandiao.com +jiando.com +jiandudu.com +jiane86.com +jianeryi.com +jianfei.com +jianfei.net +jianfeiba.com +jianfeibaike.com +jianfeidaren.com +jianfengstudio.com +jiangbeishuicheng.com +jiangchaochina.com +jiangcp.com +jiangduoduo.com +jianghaihao.com +jianghao.wang +jianghehuagong.com +jianghui.xyz +jiangjiaolong.com +jiangkk.com +jiangmin.com +jiangpaipinpai.com +jiangqx.com +jiangroom.com +jiangruyi.com +jiangshanlihong.com +jiangshi.org +jiangshi99.com +jiangsugqt.org +jiangsugwy.org +jianguo.tv +jianguoyun.com +jiangwang.net +jiangweishan.com +jiangxianli.com +jiangxindaojia.com +jiangxindc.com +jiangxinlingdu.com +jiangxiol.com +jiangxipiaoliu.com +jiangzi.com +jianhaobao.com +jianhen.net +jianhui.org +jianhui666.com +jianianle.com +jianick.com +jianjian.tv +jianjiaobuluo.com +jianjie8.com +jiankang.com +jiankanghebei.com +jiankangju.com +jiankangkuaile99.com +jianke.cc +jianke.com +jianke.net +jiankeba.com +jiankong.com +jiankong58.com +jiankongbao.com +jianlaixiaoshuo.com +jianlc.com +jianlc.net +jianli-sky.com +jianli9.com +jianliao.com +jianliben.com +jianlika.com +jianliw.com +jianlixiu.com +jianloubao.com +jianluote.net +jianmu.run +jianniang.com +jianpage.com +jianpaimeiye.com +jianpu8.com +jianpu99.net +jianq.com +jianqiaochina.com +jianshe99.com +jianshen8.com +jianshenmi.com +jianshiapp.com +jianshiduo.com +jianshu.com +jianshu.io +jianshu.tech +jianshuapi.com +jianshukeji.com +jiantizi.com +jiantuku.com +jianwang360.com +jianweitv.com +jianxin-tech.com +jianxinyun.com +jianxun.io +jianyi.net +jianyu360.com +jianyuebg.com +jianyujiasu.com +jianyuweb.com +jianyv.com +jianzhanapp.com +jianzhanbao.net +jianzhangongsi.com +jianzhi.net +jianzhi8.com +jianzhiba.net +jianzhijiaoyu.com +jianzhikeji.com +jianzhila.net +jianzhimao.com +jianzhiwang.com +jianzhiwangzhan.com +jianzhiweike.net +jianzhiyixin.com +jianzhu2008.com +jiao4.com +jiaoben.net +jiaobuser.com +jiaochengzhijia.com +jiaodafu.net +jiaodian.pub +jiaodong.net +jiaofei123.com +jiaohuilian.com +jiaoliuqu.com +jiaomai.com +jiaoman.cc +jiaonan.net +jiaonizuocai.com +jiaoping.com +jiaoran.net +jiaoshouhuayuan.com +jiaoshouwang.com +jiaosm.com +jiaotou.org +jiaoyimao.com +jiaoyin.com +jiaoyitu.com +jiaoyixia.com +jiaoyizhu.com +jiaoyudao.com +jiaoyuwo.com +jiapin.com +jiapu.tv +jiapujidi.com +jiapuvip.com +jiaren.org +jiarenvip.com +jiarui.cc +jiasale.com +jiasao.net +jiashuangkuaizi.com +jiashule.com +jiaston.com +jiasuba.com +jiasubook.com +jiasudu666.com +jiasule.com +jiasule.net +jiasule.org +jiataoyuan.com +jiathis.com +jiatui.com +jiatx.com +jiawei.xin +jiawentrans.com +jiawin.com +jiaxiaozhijia.com +jiaxichina.net +jiaxin-industry.com +jiaxincloud.com +jiaxingren.com +jiaxiweb.com +jiaxuejiyin.com +jiayans.net +jiayi56.com +jiayin618.com +jiayinleasing.com +jiayiss.com +jiayongluyou.com +jiayouhaoche.com +jiayouxueba.com +jiayu0x.com +jiayuan-law.com +jiayuan.com +jiayuguanhotel.com +jiazhao.com +jiazhongkeji.com +jiazhoulvke.com +jiazhua.com +jiazhuang.com +jiazhuang6.com +jiazijun.com +jiazile.com +jiazuo.cc +jibai.com +jibencaozuo.com +jibing57.com +jibite.fun +jicaifund.com +jice.io +jichangbus.com +jichangdaba.com +jiche.com +jicheng.net +jichibang2019.com +jicholding.com +jichuangke.com +jiclip.com +jidacheng.com +jidaihome.com +jidao.ren +jidaola.com +jide.com +jidekan.com +jideos.com +jidi.com +jidujiao.com +jiduu.com +jie0.com +jie518.com +jiebaodz.com +jiecao.com +jiecaojingxuan.com +jiechupm.com +jiedaibao.com +jiediankeji.com +jiedianqian.com +jiefadg.com +jiefuku.com +jiegames.com +jiegeng.com +jiehuisoft.com +jiehun021.com +jiehun027.com +jiehunmishu.com +jiejing.fun +jiejingku.net +jiekenmould.com +jiekon.com +jiekou.com +jielibj.com +jieligo.net +jielong-printing.com +jielongguanjia.com +jiemeng.tw +jiemeng8.com +jiemian.com +jiemo.net +jiemo8.com +jiemodui.com +jiemoselect.com +jiepaids.com +jiepang.com +jiepei.com +jiepeng023.com +jieqi.com +jieqinwang.com +jieseba.org +jieshimt8.com +jieshu.me +jieshui8.com +jieshuwang.com +jieti5.com +jietu365.com +jietuosh.com +jietusoft.com +jiexi.la +jiexiyouxuan.com +jieyou.com +jieyoujob.com +jieyue.net +jiez238.com +jiezhu123.com +jifang360.com +jifang365.com +jifangcheng.com +jifenapp.com +jifenfu.net +jifengba.com +jifengdm.com +jifenh.com +jifenzhong.com +jigao616.com +jiguangcdn.com +jiguangdaili.com +jiguangdanci.com +jiguangkejigongsi.com +jiguo.com +jihai8.com +jihaoba.com +jiheyun.com +jihone.com +jihot.com +jihuachina.com +jihuanshe.com +jihulab.com +jihuoma.com +jijia.com +jijiagames.com +jijidown.com +jijigugu.club +jijikb.com +jijing.site +jijinhao.com +jijuduo.com +jikabao.com +jikaicai.com +jike.city +jike.info +jikedaohang.com +jikedata.com +jikefan.com +jikejiazhuang.com +jikejidi.com +jikemac.com +jikewan.com +jikexiu.com +jikexueyuan.com +jikipedia.com +jilailawyer.com +jileniao.net +jiliguala.com +jiliguara.xyz +jilingban.com +jilingwy.org +jilinpujiyiyuan.com +jilinwula.com +jiliyun.com +jillbanging.com +jimeng.mobi +jimi168.com +jimicn.com +jimifashion.com +jimilier.com +jimiru-bj.com +jimistore.com +jimonet.cc +jimu.com +jimubox.com +jimuc.com +jimucake.com +jimucc.com +jimufund.com +jimujiazx.com +jin10.com +jin10x.com +jin24k.com +jinanguanggao.com +jinantxw.com +jinanxww.com +jinbaiteng.com +jinbaobeiqiming.com +jinbaoidc.com +jinbaonet.com +jinbei.com +jinbiaohui.com +jinbifun.com +jinbikan.com +jinbilianmeng.com +jinbitou.net +jinbuguo.com +jincaicaiwu.com +jinchuan2014.com +jinchuang.org +jinchutou.com +jincin.com +jincon.com +jindanlicai.com +jindaodao.com +jindian120.com +jindianweb.com +jindingfm.com +jindun007.net +jindunfan.com +jinduoduo.net +jinenrunze.com +jinfangka.com +jinfantongyici.com +jinfengkou.com +jinfengpaint.com +jinfengwine.com +jinfuzi.com +jing-xian.com +jingbotech.com +jingc.com +jingcai360.net +jingchang.tv +jingchengcb.com +jingchengwl.com +jingchurc.com +jingdaka.com +jingdata.com +jingdian230.com +jingdianjiu.com +jingdianju.com +jingdianlaoge.com +jingdianxitong.com +jingdiao.com +jingdigital.com +jingdong.com +jingdongdaili.com +jingdongyouxuan.com +jingdw.com +jingfentui.com +jingguan.ai +jinghaishop.com +jinghangapps.com +jinghua.com +jinghujiaoyu.com +jingjia.org +jingjiamicro.com +jingjiang.com +jingjiawang.com +jingjie360.com +jingjiezhileng.com +jingjiu.com +jingkan.net +jingkids.com +jinglawyer.com +jinglingbiaozhu.com +jinglong0769.com +jinglongyu.link +jingmaoyuanxin.com +jingme.net +jingmeiti.com +jingniukeji.com +jingoal.com +jingos.com +jingp.com +jingpai.com +jingpaidang.com +jingpinke.com +jingpinwenku.com +jingpt.com +jingrongshuan.com +jingruigroup.com +jingsh.com +jingshibianhuren.com +jingshuiqicai.com +jingsocial.com +jingsoo.com +jingtanggame.com +jingtuitui.com +jingtum.com +jingua168.com +jingujie.com +jingutrust.com +jingwei.com +jingwei.link +jingwuhui.com +jingxi.com +jingxianglawfirm.com +jingxinad.com +jingxingseo.com +jingxuanwang.com +jingy8.com +jingyakt.com +jingyan8.cc +jingyanben.com +jingyanbus.com +jingyanshu.com +jingyanzhinan.com +jingyeqian.com +jingyi186.com +jingying.com +jingyougz.com +jingytech.com +jingyu.com +jingyuan.com +jingyuelaw.com +jingyuxiaoban.com +jingyuyun.com +jingzhe.me +jingzhengu.com +jingzhiyuanyi.com +jingzong.org +jinhaidai.com +jinhe-energy.com +jinhengjgj.com +jinher.com +jinheshiye.com +jinhuatv.com +jinhuazhe.com +jinhuicorp.com +jinhuizhibo.com +jinhusns.com +jinianbi.com +jiniance8.com +jinjiang.com +jinjianginns.com +jinjingquan.com +jinju8.com +jinjunmei.net +jinkagou.com +jinkan.org +jinke3d.com +jinkejoy.com +jinkongjianshe.com +jinkosolar.com +jinku.com +jinlaiba.com +jinlanqihua.com +jinlianchu.com +jinligou.com +jinlila.com +jinlinghotel.com +jinlinghotels.com +jinliniuan.com +jinlishenghuo.com +jinliyu.cc +jinlong-jiaxiao.com +jinmaojie.com +jinmaopartners.com +jinmenrc.com +jinmi.com +jinmogame.com +jinmuinfo.com +jinnianduoda.com +jinnong.cc +jinpengeye.com +jinphui.com +jinqiexia.com +jinqunla.com +jinridandong.com +jinriguanzhu.cc +jinrishici.com +jinritemai.com +jinrong-online.com +jinrongbaguanv.com +jinrongren.net +jinrongwang.net +jinrui-tech.com +jinruimedia.com +jins-cn.com +jins365.com +jinsdk.com +jinse.com +jinsebook.com +jinsedihao.com +jinsehuaqin.com +jinshakemei.com +jinshangcaijing.com +jinshangdai.cc +jinshangdai.com +jinshanju.com +jinshare.com +jinshisoft.com +jinshuju.co +jinshuju.com +jinshuju.net +jinshuju.org +jinshujuapp.com +jinshujucdn.com +jinshujufiles.com +jinshun.com +jinsiwei.com +jintaimall.com +jintajituan.com +jintang114.org +jinti.com +jintiango.com +jintianjihao.com +jintiankansha.me +jintianpaper1.com +jintonghua.com +jintoushou.com +jintoutiao.com +jinwaimai.com +jinwin.net +jinxianglian.net +jinxidao.com +jinxinqh.com +jinxiu8.com +jinxiuzhilv.com +jinxuliang.com +jinxun.cc +jinyaco.com +jinyindao.com +jinying.com +jinyongwang.com +jinyoukai.com +jinyueya.com +jinyunfood.com +jinyunweb.com +jinyuzd.cc +jinzhandaily.com +jinzheled.com +jinzhidagl.com +jinzhoubank.com +jinzhouwp.com +jinzhucaifu.com +jinzhuguo.com +jinzjy.com +jinzunjy.com +jioluo.com +jiongcun.com +jiongdm.com +jiongji.com +jiongyaya.com +jiou.me +jiouyun.com +jipays.com +jipingacg.com +jipinwww.com +jipukeji.com +jiqid.com +jiqie.com +jiqike.com +jiqimao.com +jiqirenku.com +jiqizhixin.com +jirengu.com +jirou.com +jirou.org +jirry.me +jisapower.com +jisec.com +jishi3.com +jishicn.com +jishida.vip +jishuchi.com +jishukong.com +jishuqq.com +jishutuan.com +jishux.com +jisi17.com +jisilu.com +jisu-cnd.com +jisuacg.com +jisuan.mobi +jisuanke.com +jisuanqinet.com +jisuanzt.com +jisuapi.com +jisuchaxun.com +jisuchou.com +jisuclouds.com +jisucn.com +jisufeifei.com +jisuim.com +jisuimg.com +jisujie.com +jisukandian.com +jisuoffice.com +jisupdf.com +jisupdfeditor.com +jisupdftoword.com +jisupe.com +jisuqianbao.com +jisutodo.com +jisutp.com +jisutui.vip +jisuwebapp.com +jisuxia.com +jisuye.com +jisuyilaixingpiyan.com +jita.fun +jita.im +jita5.com +jitadaren.com +jitailian.com +jitaqupu.com +jitashe.org +jitavip.com +jiterzzzz.com +jitiku.com +jitongtianxia.com +jitu5.com +jitucdn.com +jituofuture.com +jituwang.com +jiubuhua.com +jiucaicaijing.com +jiucaigongshe.com +jiuchet.shop +jiuchutong.com +jiucool.org +jiuday.com +jiudianjiu.com +jiudianyuedu.com +jiudingcapital.com +jiudingdalv.com +jiugang.com +jiugangbid.com +jiuguanfm.com +jiuhetx.com +jiuhuang.com +jiuhuar.com +jiuhuashan.cc +jiujiange.com +jiujiui.com +jiujiunn.com +jiujiups.com +jiujiuwan.com +jiujiuwj.com +jiujiuyingshi.com +jiujiuyunhui.com +jiuku.com +jiulesy.com +jiulingwan.com +jiulishi.com +jiumaojiu.com +jiumaster.com +jiumei.com +jiumei8.com +jiunile.com +jiupaicn.com +jiupaicom.com +jiupin8.com +jiuq.com +jiurong.com +jiuse.cloud +jiushiadx.com +jiushikou.com +jiushixing.com +jiushu.net +jiushui.tv +jiusi.net +jiusihengyuan.com +jiusitm.com +jiusongjiankang.com +jiutu.net +jiututa.com +jiuwa.net +jiuwan.com +jiuwei.net +jiuxian.com +jiuxianfeng.com +jiuxihuan.net +jiuxinban.com +jiuxing.com +jiuyan.info +jiuyao666.com +jiuyi2005.com +jiuyiliebian.com +jiuyingnet.com +jiuyingwangluo.com +jiuys.com +jiuyuehuyu.com +jiuyuu.com +jiuzhaigou-china.com +jiuzheng.com +jiuzhilan.com +jiuzhinews.com +jiuzhu999.com +jiuzungame.com +jiwa123.com +jiwanjiwan.com +jiweichengzhu.com +jiwu.com +jiwudai.com +jixiangbaiwei.com +jixiangjili.com +jixiangyou.com +jixianku.com +jixie100.net +jixie5.com +jixiewz.com +jixingzs168.com +jixuanw.com +jixunjsq.com +jixunlyq.com +jiyifa.com +jiyili.net +jiyin-tech.com +jiyin2020.com +jiyixcx.com +jiyiyq.com +jiyou-tech.com +jiyoujia.com +jiyouwang.com +jiyuncn.com +jiyuqiao.com +jizhan.com +jizhangapp.com +jizhangzhuce.com +jizhiba.com +jizhidsp.com +jizhiyingxiao.net +jizhiyouke.com +jizhuba.com +jizhuomi.com +jizhutaoke.com +jiziyy.com +jizunnet.com +jj-inn.com +jj-tv.com +jj20.com +jj3721.com +jj55.com +jj59.com +jj831.com +jjapk.com +jjb-static.com +jjbang.com +jjbangbang.com +jjbank.net +jjbbs.com +jjbhn.com +jjbisai.com +jjblove.com +jjbnews.xyz +jjccb.com +jjcdn.com +jjcoffetel.cc +jjcoffetels.com +jjcpchina.com +jjcto.com +jjdc.net +jjdede.com +jjdiaoyu.com +jjdzc.com +jjecn.com +jjfinder.com +jjg630.com +jjgsxc.com +jjhgamedns.com +jjhh.com +jjhsd.com +jjhuifu.com +jjhuigou.com +jjhuoyan.com +jjhyxh.com +jjidc.com +jjiehao.com +jjinfo.com +jjisp.com +jjj.ee +jjjaaa.com +jjjg.co +jjjoystudios.com +jjjsgczbtb.com +jjjtimes.com +jjkeq.com +jjkk.org +jjkucunxie.com +jjldbk.com +jjlsd.com +jjmatch.com +jjmh.com +jjmj.tv +jjmkids.com +jjmmw.com +jjnz.com +jjonline.org +jjplane.com +jjppt.com +jjqj.net +jjsedu.org +jjshang.com +jjsip.com +jjtfyjy.com +jjtianshangi.com +jjtonline.com +jjtqnews.com +jjtravel.com +jjttjx.com +jjvod.tv +jjw.com +jjword.com +jjwxc.com +jjwxc.net +jjwxc.org +jjx88.net +jjxj.org +jjxsw.la +jjxwzk.org +jjxyls.com +jjy118.com +jjygym.com +jjyl12349.com +jjyx.com +jjyy.me +jjzdm.com +jjzfgjj.com +jjzl800.com +jk-px.com +jk126.com +jk130.com +jk2h.com +jk37du.com +jk3a.com +jk51.com +jk520.net +jk724.com +jk8090.com +jkangbao.com +jkbexp.com +jkc8.com +jkcorkpads.com +jkcsjd.com +jkdsz.com +jkeabc.com +jkgood.com +jkidc.com +jkimg.net +jkjzt.com +jkpan.cc +jkpj.com +jktcom.com +jktong.com +jkx.cc +jkxds.net +jkydt.com +jkyeo.com +jkys5.com +jkzhilu.com +jkzl.com +jl0435.com +jl54.org +jladi.com +jlakes.org +jlbtrip.com +jlc-gw.com +jlc.com +jlccpit.com +jlcerp.com +jlforging.com +jlfzb.com +jlg86.com +jlgyjj.com +jljbbs.com +jljgdj.org +jlkj.cc +jllihua.com +jlmhw.com +jlonline.com +jlpay.com +jlpzj.net +jlq.com +jlr360.com +jlsdzgckcy.com +jlsemi.com +jlspr.com +jltyjxzz.com +jlwlyx.com +jlwubi.com +jlxfw.com +jlytjx.com +jlzkb.com +jlzsoft.com +jlzyz.com +jm1ph.com +jm2046.com +jm3q.com +jm678.com +jmads.net +jmbbs.com +jmd-china.com +jmdedu.com +jmeii.com +jmeishe.com +jmf6.com +jmfans.com +jmgle.com +jmgo.com +jmhapp.com +jmhd8.com +jmicd.com +jmjc.tech +jmjiuchang.com +jmjxc.com +jmkjmob2.xyz +jmkjmob5.xyz +jmkx.com +jmlk.co +jmmuseum.com +jmonline.org +jmqy.com +jmrsksj.org +jmsqw.com +jmstatic.com +jmtd0531.com +jmtsg.com +jmxw.net +jmykw.com +jmyna.net +jmzcgs.com +jmzns.com +jn-bank.com +jn001.com +jn123456.com +jn1535.com +jnaoliyuan.com +jnbbbyy.com +jnbnzk.com +jncarw.com +jncgzl.com +jncjqgs.com +jncqj.com +jncyx.com +jndajj.com +jndasjjx.com +jndssd.com +jndwyy.com +jnesc.com +jnhouse.com +jnjbrother.com +jnjj.com +jnjjyq.com +jnjylh.com +jnkason.com +jnky.com +jnlab.com +jnlc.com +jnliyu.com +jnlou.net +jnltgm.com +jnltwy.com +jnmama.com +jnmami.com +jnnc.com +jnnews.tv +jnqccw.com +jnrain.com +jnsdgz.com +jnshu.com +jnsino.com +jnstdc.com +jntianjin.club +jntinchina.com +jntyhl.com +jnw.cc +jnwb.net +jnxiuchuan.com +jnxmycnc.com +jnyestar.com +jnzcsyj.com +jnzfwz.com +jnzhonglidjc.com +jnzixun.com +jnzycw.com +joaquinchou.com +job0768.com +job10000.com +job1001.com +job120.com +job168.com +job256.com +job263.com +job36.com +job4ee.com +job510.com +job5156.com +job592.com +job910.com +job9151.com +job98.com +job992.com +job9981.com +jobbole.com +jobcdp.com +jobcn.com +jobdeer.com +jobdogame.com +jobeast.com +jobgojob.com +jobguangfu.com +jobhb.com +jobi5.com +jobkoo.com +jobksd.com +jobpin.com +jobreading.net +jobsalon.net +jobsdigg.com +jobsitechina.com +jobsun.com +jobtong.com +jobui.com +jobuy.com +jobvvv.com +jobyp.com +jocat.com +jocelynlaura.com +joe92.com +joenchen.com +johhan.com +johnardo.com +johnwatsondev.com +joiest.com +joindata.net +joinf.com +joiningss.com +joinkchem.com +joinquant.com +joinsen.com +joint-harvest.com +jointforce.com +joinusad.com +joinwaylawfirm.com +joinwee.com +jojju.com +jojoin.com +jojoreading.com +joker.li +jolimark.com +jomodns.com +jomoxc.com +jonahome.net +jone.wang +jonllen.com +jonny.vip +jonsbo.com +joobot.com +joojcc.com +joojtech.com +joojzz.com +joomob.com +joooz.com +joouoo.com +joowhee.com +joox.com +jooyoo.net +jooyuu.com +joozone.com +joqoo.com +josephcz.xyz +joshreso.com +joshuais.me +josncdn.com +jotop.net +jotrin.com +jouav.com +joudou.com +jourlib.org +journalmc.com +journeyui.com +jourserv.com +jouypub.com +jovcloud.com +jovetech.com +jowto.com +joy9178.com +joyact.com +joyami.com +joyany.com +joyapi.com +joycbd.com +joydin.com +joyes.com +joyfire.net +joyglue.com +joying.com +joyj.com +joyk.com +joylife.hk +joymeng.com +joynb.net +joyncleon.com +joyocean.org +joyohub.com +joyoung.com +joyowo.com +joyque.com +joyshebao.com +joysight.com +joyslink.com +joysung.com +joytrav.com +joytraveller.com +joyu.com +joyulf.com +joyuyx.com +joywii.net +joywok.com +joyyang.com +joyzlan.com +jp-moco.com +jp.com +jp14.com +jpanj.com +jpbeta.net +jpeen.com +jpegonline.com +jperation.com +jpg.cm +jphot.net +jpjc315.com +jpjww.com +jpkcnet.com +jpkix.com +jpmsg.com +jppeony.com +jpqp888.com +jpshuntong.com +jpsmile.com +jptaiyo.com +jpthome.com +jpush.io +jpushoa.com +jpuyy.com +jpwb.cc +jpwb.net +jpwind.com +jpwindow.com +jpwxapp.com +jpxzm.com +jpyoo.com +jpyssc.com +jpzyfx.com +jq-school.com +jq22.com +jqbyby.com +jqcool.net +jqdto.com +jqdzw.com +jqfax.com +jqgc.com +jqgcw.com +jqhtml.com +jqingdashi.xyz +jqpress.com +jqr.com +jqr5.com +jqrkc.com +jqrzhijia.com +jqsite.com +jqskygame.com +jquee.com +jquery123.com +jqueryfuns.com +jquerywidget.com +jqw.com +jqw0099.com +jqwater.com +jqzhu.com +jqzhuangshi.com +jqzjop.com +jqzw.com +jr-soft.com +jr123.com +jr18.com +jrecchina.com +jrexam.com +jrgang.com +jrhdg.com +jrj.com +jrjhg.com +jrjingshan.com +jrjr.com +jrkantv.com +jrlady.com +jrmf360.com +jrpxw.com +jrqiwen.com +jrqzw.net +jrsmw.com +jrszw.com +jrteck.com +jrtj120.com +jrwenku.com +jrxjnet.com +jrxzj.com +jryghq.com +jrysdq.com +jryzt.com +jrzj.com +jrzp.com +js-aerfa.com +js-ceo.com +js-code.com +js-screen.com +js-weilong.com +js.design +js04999.com +js0573.com +js11183.com +js118114.com +js165.com +js178.com +js3.org +js3n.com +js53777.com +js66649.com +js7xc.com +js8.in +js811.com +js96008.com +jsahj.com +jsbc.com +jsbexam.com +jsbgj.com +jsceou.com +jsche.net +jschengta.com +jschunxing.com +jscj.com +jsckjqr.com +jsclearing.com +jscmjt.com +jscnc.net +jscqt.com +jscssimg.com +jscts.com +jsd.cc +jsdaima.com +jsddlzz.com +jsdthx.com +jsdujuan.com +jseepub.com +jseie.org +jseoptics.com +jser.com +jser.io +jsfengchao.com +jsfof.com +jsform.com +jsform3.com +jsfw8.com +jsfycdn3.com +jsgbds.com +jsgc168.com +jsgcbank.com +jsgh.org +jsgho.net +jsgjksl.com +jsgrb.com +jsguolv.com +jsgyrcb.com +jshaman.com +jsharer.com +jshasl.com +jshbank.com +jshmrcb.com +jshnh.com +jshqjt.com +jshrconsult.com +jshsoft.com +jshuabo.com +jshuachen.com +jshy.com +jshylm.com +jsimg.cc +jsinfo.net +jsiteec.org +jsjclykz.com +jsjdrcb.com +jsjdzf.com +jsjinfu.com +jsjjy.com +jsjkx.com +jsjlzxw.com +jsjs.cc +jsjs.org +jsjyrcb.com +jskaiborui.com +jskpcg.org +jskwt.com +jsldweb.com +jslegal.com +jslottery.com +jsls1.com +jslwzk.com +jslxs.com +jsly001.com +jsmaochang.com +jsmian.com +jsmjys.com +jsmo.xin +jsmsg.com +jsmxw.com +jsncke.com +jsningyi.com +jsnx.net +jsnxs.com +jsocr.com +json-json.com +jsonin.com +jsonnode.com +jsososo.com +jsp51.com +jspang.com +jspatch.com +jspcn.net +jspeople.com +jspxcms.com +jsq001.com +jsq886.com +jsqlawer.com +jsqq.net +jsqt.com +jsr9.com +jsrcu.com +jsrrcb.com +jsrsrc.com +jsrtzx.com +jsruiyin.com +jsrun.net +jsrun.pro +jsrxjt.com +jss580.org +jssalt.com +jssdk.net +jssfx.com +jssgw.com +jsshow.net +jssjys.com +jssnrcb.com +jsswordshop.com +jssytc.com +jstdtncj.com +jstfdz.com +jstoo.com +jstour.com +jstoys.net +jstucdn.com +jstv.com +jstxdm.com +jstxrcb.net +jstycn.com +jstzjy.net +jstzrcb.com +jsw988.com +jswebcall.com +jswku.com +jswmw.com +jswspocapi.com +jsxat788.com +jsxcra.com +jsxfedu.com +jsxhrb.com +jsxhrcb.com +jsxhw.org +jsxiaoguo.com +jsycsy.com +jsyd10086.net +jsyfkj.com +jsyihaotong.com +jsyks.com +jsypin.com +jsypj.com +jsyun.cc +jsyxrcb.com +jszb123.com +jszbtb.com +jszbug.com +jszbw.com +jszg.org +jszgjt.net +jszhaobiao.com +jszks.com +jszks.net +jszygs.com +jt-yun.com +jt62.com +jt996.com +jtamc.com +jtbole.com +jtggame.com +jtgzfw.com +jthailang.com +jthcsx.com +jthl.net +jtimg.com +jtjr99.com +jtlw.com +jtm.pub +jtnsh.com +jtnxs.com +jtstudy.com +jttv.net +jtv123.com +jtyjy.com +jtyy.com +ju33.com +ju51.com +ju81.cc +juandou.com +juangua.com +juanlaoda.com +juanpi.com +juanpimao.com +juanshangwang.com +juanyunkeji.com +juapp5.com +juaq.com +jubaopay.com +jubaopeng5555.com +jubaozang.com +juben68.com +juben98.com +juc365.com +jucanw.com +jucelin.com +jucheng01.net +juchuangbio.com +jucong.com +judouapp.com +juduo.cc +juduoping.com +jue.so +jue1.com +juecan.com +juedui100.com +jueduilingyu.com +juehuo.com +juejin.im +juejinchain.com +juejinqifu.com +juemei.com +juemuren4449.com +jueok.com +juesheng.com +jueshitangmen.info +juewei.com +juexiang.com +juezhao123.com +jufaanli.com +jufengshang.com +jufidc.com +jufoinfo.com +jufxf.com +juhangye.com +juhaof.com +juhaokan.org +juhe.com +juhemulu.com +juheweb.com +juheying.com +juhome.net +juhuasuan.com +juhuisuan.com +jui.org +juicefs.com +juimg.com +juiuns.com +jujayoupin.com +juji.tv +jujiangkk.com +jujiaobaby.com +jujiaonet.com +jujiaonet1.com +jujias.com +jujienet.com +jujin8.com +jujiu8.com +jujoy.com +jujuanpi.com +jujumao.com +jujusky.com +jujuwan.com +jukandiannews.com +jukebao.com +jukebao123.com +jukejia.com +juketool.com +jukuu.com +julaibao.com +julanhp.com +julecn.com +julefun.com +juliacn.com +juliang8.com +juliangyinqing.com +julianhd.net +julihun.com +julive.com +julur.com +julyapp.com +julyclyde.org +julydate.com +julyedu.com +julysong.com +jumanhua.com +jumei.com +jumeiglobal.com +jumeinet.com +jumengren.com +jumi-cdn.com +jumi.com +jumi18.com +jumin.cc +juming-xz.com +juming.com +jumore.com +jumorenews.com +jump2006.com +jumpjumpcat.com +jumple.com +jumppo.com +jumpserver.org +jumpstar-tech.com +jumpw.com +jumpwgame.com +jumpwo.com +jun360.com +jun4.com +junankeji.com +jundacheng.com +jundui.net +jundushan.com +junews.net +juneyao.com +juneyaoair.com +juneyaoairlines.com +jungebb.com +junhe.com +junhongjc.com +junhuisoft.com +juniu.tv +junjiahao.com +junjichu.net +junjing.net +junjunfudao.com +junka.com +junlee.net +junlongtech.com +junmidao.com +junmin.org +junmoseo.com +junnanhao.com +junph.com +junpin.com +junpin360.com +junpinhui.com +junpinzhi.com +junqing.ren +junqing360.com +junren.net +junrongdai.com +junsangs.com +junsaozg.com +junshencm.com +junshi.com +junshi81.com +junshi881.com +junshidao.com +junshier.com +junshifuxin.com +junshijia.com +junshis.com +junshishu.com +junshitx.com +junsw.com +junsz.com +juntongtian.com +junwei1000.com +junwu262.com +junxilinux.com +junyao.tech +junying.com +junyougame.com +junyudns.com +junyuewl.com +junzhuan.com +junziboxue.com +junzimen.com +junziqian.com +juooo.com +jupup.com +juqi.com +juqingjuqing.com +juqiwang.net +juren.com +jurenqi.com +jurongfangchan.com +jurongrencai.com +juseey.com +jusfoun.com +jusha.com +jushewang.com +jushigj.com +jushike.net +jushikk.com +jushiwangedu.com +jushuo.com +jussevent.com +jusstickets.com +just4coding.com +just4fun.ml +just4fun.site +just998.com +justalkcloud.com +justbilt.com +justbon.com +justdo.tv +justdojava.com +justep.com +justering.com +justjavac.com +justpodmedia.com +justsy.com +justwe.site +justyle.cc +justylepro.com +jutao.com +jutean.com +jutingshop.com +jutoudang.com +jutoula.com +jutuilian.com +juturn.com +juvefans.com +juwa.net +juwan.com +juwangmedia.com +juwanshe.com +juweixin.com +juxia.com +juxin.tv +juxinfu.com +juxing-edu.com +juxingyi.com +juxinhuizhi.com +juyanbao.com +juyouqu.com +juyouquan.net +juyoutv.cc +juyouxuan.vip +juzhen.com +juzhen.io +juzhiyuan.com +juzhongjoy.com +juzicy.com +juzifenqi.com +juzilab.com +juzilicai.com +juzimi.com +juzioo.com +juziseo.com +juzisy.com +juzivr.com +juzix.io +juziyinyue.com +juzizhoutou.net +jv-bao.com +jvcxp.com +jvmai.com +jvrong.com +jvshi.net +jvyou.net +jw100.net +jwappgc.com +jwbl.com +jwdedu.com +jwdili.com +jwdns.com +jwetech.com +jwfun.com +jwipc.com +jwks123.com +jwl100.com +jwnote.com +jwshy.com +jwview.com +jwwey.com +jwx365.com +jwxlschool.com +jwyun.net +jx-bank.com +jx-nc.com +jx.la +jx09.com +jx188.com +jx3mogu.com +jx3pve.com +jx3tong.com +jx3yymj.com +jxage.com +jxal.net +jxbin.com +jxc4.com +jxcaipu.com +jxcb.net +jxccb.com +jxcf.org +jxcsedu.com +jxcua.com +jxdiguo.com +jxdkzz.net +jxdown.com +jxdyf.com +jxedt.com +jxedu.net +jxeduyun.com +jxetv.com +jxexpressway.com +jxf57.com +jxf75.com +jxfcls.com +jxg1.com +jxgdw.com +jxggcm.com +jxgxbd.com +jxhyshiye.com +jxiaolan.com +jxicloud.com +jxidc.net +jximage.com +jxjdgy.com +jxjee.com +jxjhkq.com +jxjia.net +jxjob.net +jxjyzy.com +jxkjzb.com +jxkp.com +jxlgjd.com +jxlhz.com +jxlwgame.com +jxmlkd.com +jxndxuebao.com +jxnxs.com +jxold.com +jxorg.com +jxpta.com +jxpz888.com +jxqcw.com +jxqgpx.com +jxrencai.com +jxrjzx.com +jxrsrc.com +jxrtv.com +jxrtvu.com +jxscct.com +jxsd-sz.com +jxsgfzx.com +jxshangyou.com +jxslsyy.com +jxsqw.com +jxsrfdc.com +jxsthgz.com +jxsxdp.com +jxtech.net +jxtobo.com +jxtvshop.com +jxtyzx.org +jxtzw.com +jxunicom.com +jxw123.com +jxwmanage.com +jxwz.net +jxxdf.com +jxxfzx.com +jxxhdn.com +jxxhsd.com +jxxyqm.com +jxylb.com +jxyrzdh.com +jxysg.net +jxysyz.com +jxyworld.com +jxzyx.com +jy0604.com +jy0832.com +jy1.me +jy135.com +jy1991.com +jyacht.com +jyaochi.com +jyb8.com +jybase.net +jyblife.com +jyc99.com +jycbank.com +jycinema.com +jycloudgslb.com +jycloudgslb.net +jydc.com +jydoc.com +jyeoo.com +jyeoo.net +jyepc.com +jyfscl.com +jyfund.com +jyg-lighting.com +jygame.net +jyguagua.com +jygz.com +jyh007.com +jyhlo0.com +jyhmz.com +jyhyfintax.com +jyimg.com +jyip.net +jyjjc.com +jyjxlt2009.net +jyltx.com +jylw.com +jymys.com +jynews.net +jyoptical.com +jypc.org +jypecdn3.com +jyqkx.com +jyqxz2015.com +jyrd.com +jyrlzy.com +jysd.com +jysld.com +jysq.net +jyss.net +jysyzk.com +jyteasy.com +jyuvip.com +jyxdyzx.com +jyyun.com +jyz99.com +jyzysp.com +jyzzx.com +jz-cert.com +jz-job.com +jz.com +jz0045.com +jz0574.com +jz08.com +jz100.com +jz177.com +jz182.com +jz2005.com +jz51598.com +jz5u.com +jz5u.net +jz6.com +jz68888.com +jzant.com +jzb.com +jzbar.net +jzbdc.com +jzcbank.com +jzchou.com +jzclassroom.com +jzcxptm.com +jzcyrl.com +jzdhyl.com +jzedu24.com +jzerp.com +jzgcjsysjzz.com +jzgcjszz.com +jzgwind.com +jzhfz.com +jzhxgg.com +jzic.com +jzita.com +jzjtop.com +jzke.com +jzkjjt.com +jzkuaiji.com +jzmob.com +jzmsmj.com +jzmt.net +jznqp.net +jznyjt.com +jzongguan.com +jzrb.com +jzrc.net +jzrsrc.com +jzsc.net +jzsc8.com +jzsgzmhjyxgs.com +jzshequ.com +jzsjyksy.com +jzsxinyudianqi.com +jzsyishu.com +jztdc.com +jztdj.com +jztey.com +jztggs.com +jztmgy.com +jztoo.com +jztsjx.com +jztsoft.com +jztvxmt.com +jztylxx.com +jztzw.net +jzwcom.com +jzxs.com +jzxue.com +jzyx.com +jzzhw.com +jzzx.com +jzzxlm.com +jzzy666.com +k-day.com +k-kbox.com +k-res.net +k-xian.com +k0898.com +k0rz3n.com +k11kuriosity.com +k12.vip +k125.com +k12zx.com +k165.com +k18.com +k18882.com +k1u.com +k259.com +k2938.com +k2ma.com +k345.cc +k366.com +k369.com +k3851.com +k3887.com +k4nz.com +k518.com +k6271.com +k666.com +k6uk.com +k73.com +k780.com +k7kf.com +k8008.com +k8ba.com +k8bd.com +k8dream.com +k8jdw.com +k8sj.com +k8smeetup.com +k8stech.net +k8w.wang +k913.com +ka20.com +ka5188.com +ka58.net +kaadas.com +kaayou.com +kaayun.com +kaba365.com +kabasiji.com +kabitu.com +kaboy.net +kada.com +kadang.com +kadingding.com +kaesoon.com +kafangtech.com +kafka.cc +kagirl.net +kai-ying.com +kaiba315.com +kaibo5888.com +kaiboda.org +kaiboer.com +kaichengschool.com +kaidanbao.com +kaidianbang.com +kaieconblog.net +kaifabang.com +kaifae.com +kaifage.com +kaifakuai.com +kaifamei.com +kaifangkecheng.com +kaifapiao.com +kaifaxueyuan.com +kaifenghenan.com +kaifu.com +kaifuzq.com +kaige68.com +kaihei.co +kaihuia.com +kaijia.com +kaijia.me +kaikeba.com +kailing.pub +kaimanhua.com +kaimg.com +kaimigou.com +kaimulu.com +kaipan88.com +kaipanla.com +kaiqiancq.com +kaishigo.com +kaishikan.com +kaishilou.com +kaishuhezi.com +kaishustory.com +kaitianad.com +kaivps.com +kaiwind.com +kaixin.com +kaixin00.com +kaixin001.com +kaixin5.net +kaixinbao.com +kaixindou.net +kaixinguopiao.com +kaixinguopiaowu.net +kaixinhui.com +kaixinhui.net +kaixinlu.com +kaixinly.com +kaixinpaopao.com +kaixintang.com +kaixue.io +kaiyanapp.com +kaiyiluye.com +kaiyuan.com +kaiyuan.me +kaiyuangroup.cc +kaiyuanhi.com +kaiyuanhotels.com +kaiyuanzg.com +kajicam.com +kaka.com +kaka3.com +kakadm.com +kakalili.com +kakamobi.com +kakatv1.com +kakazy-yun.com +kalading.com +kalazan.com +kalcaddle.com +kalegou.com +kalingling.com +kaluli.com +kameng.com +kamenwang.com +kamidm.com +kamidox.com +kamopos.com +kan.cc +kan0512.com +kan300.com +kan84.net +kan98.com +kanbaobei.com +kanbardata.com +kanbing.net +kanbox.com +kanchao.com +kandian.com +kandian.net +kandianshi.com +kandzww.com +kanfangapp.com +kanfangjilu.com +kanfaxing.com +kanfeidie.com +kanfou.net +kangaiweishi.com +kangame.tv +kangbaifoundation.com +kangbatv.com +kangbidz.com +kangchun.com +kangdajiuzhou.com +kangdaoai.com +kangepian.com +kanggou.com +kanggui.com +kanghao123.com +kanghu.net +kanghuayun.com +kanghui.com +kanghuwang.com +kangkang.work +kanglaohui.com +kangle.net +kanglingjiu.com +kanglu.com +kangqite.com +kangre.com +kanguo.com +kanguowai.com +kangxi55wlsf.com +kangxin.com +kangyueshi.com +kangze.com +kangzhi.com +kanhaiwai.com +kanimg.com +kaniuquan.com +kanjia.com +kanjian.com +kanjianlishi.com +kanjianxinli.com +kanjuqing.com +kanjuwo.com +kankan365.cc +kankancity.com +kankanews.com +kankanmi.com +kankannews.com +kankanzhijian.com +kanketv.com +kankun-smartplug.com +kanluzhe.com +kanman.com +kanmeinv.com +kanmx.com +kannb.com +kanqibao.com +kanqiye.com +kanqq.com +kanqu.com +kansdk.com +kansea.com +kanseen.com +kanshaa.com +kanshangji.com +kanshangjie.com +kanshu.com +kanshu.la +kanshu5.la +kanshu8.net +kanshuapp.com +kanshuge.com +kanshuhai.com +kanshula.com +kanshuwangzhan.com +kansp.com +kantao.net +kantiantang.com +kantsuu.com +kantu.com +kanwby.com +kanxiqu.com +kanxsw.com +kanxue.com +kanzhen666.com +kanzhun.com +kao8.cc +kaobeitu.com +kaocat.com +kaochong.com +kaoder.com +kaodianer.com +kaogua.com +kaojionline.com +kaola.com +kaola.com.hk +kaola100.com +kaolacdn.com +kaolafm.com +kaolafm.net +kaolayy.com +kaolazhengxin.com +kaopu001.com +kaopubao.com +kaopubao.net +kaopuj.com +kaopuwangzhuan.com +kaopuyun.com +kaopuyun.net +kaoqin.com +kaoqintong.net +kaoqinyi.com +kaoruo.com +kaoshi110.net +kaoshi365.com +kaoshib.com +kaoshibaike.com +kaoshibao.com +kaoshibb.com +kaoshidian.com +kaoshishenqi.net +kaoshizixun.com +kaowana.com +kaowang.com +kaoyan.com +kaoyan.org +kaoyan001.com +kaoyan1v1.com +kaoyanbox.net +kaoyancas.com +kaoyancas.net +kaoyango.com +kaoyanjun.com +kaoyanzhijia.org +kaoyaya.com +kaozhiye.com +kapai8.com +kaquanbao.com +kargocard.com +karlzhou.com +karrytech.com +kartlover.com +karuimall.com +kascend.com +kashen.com +kashen8.com +kasora.moe +kasscloud.com +kasumi.club +katongji.com +katvr.com +katyusha.net +kaven.xyz +kawahdinosaur.com +kayege.info +kayoudi.com +kaytrip.com +kaytune.com +kazakcnr.com +kazhifu.com +kb.cc +kb9.com +kbdfans.com +kbdyw.com +kbengine.org +kbgogo.com +kbgok.com +kbiao.me +kbiquge.com +kblcdn.com +kbrightlaw.com +kbscloud.com +kbw2018.com +kbyun.com +kcdns.net +kcdnvip.com +kchance.com +kchuhai.com +kcjl365.com +kcjyyjzzs.com +kcjzsc.com +kcloudidc.com +kcrcb.com +kcwiki.org +kcyuri.com +kczhaosheng.com +kd028.com +kd120.com +kd128.com +kd185.com +kd9000.com +kdatacenter.com +kdbbx.com +kdd.cc +kddushu.com +kdebell.com +kdfax.com +kdige.com +kdmobi.com +kdniao.com +kdpt.net +kdroid.club +kdroid.org +kdslife.com +kdt.im +kdued.com +kdweibo.com +kdx.mobi +kdzwy.com +kdzxedu.com +ke.com +ke01.com +ke6.com +ke86.com +ke8u.com +keaidian.com +keaiq.com +kean1688.com +kebango.com +kebingzao.com +kechenggezi.com +kechuang.org +kechuangfu.com +keda-digital.com +keda-u.com +keda.com +kedang.net +keddoo.com +kede.com +kede.com.hk +kedi.cc +kedou.com +keede.com +keen8.com +keenonrobot.com +keensky.com +keenwon.com +keep.city +keep.com +keepc.com +keepcdn.com +keepyoga.com +keerdapower.com +keerworld.com +keewin.com +kefeng.wang +kefusoft.com +kefutoutiao.com +kefuzu.com +kege.com +kegood.com +kehanedu.com +kehou.com +kehu51.com +kehuda.com +keinsci.com +kejet.com +kejet.net +keji100.net +kejiabj.com +kejian.design +kejianyi.com +kejietextile.com +kejihai.com +kejijie.net +kejik.com +kejilie.com +kejimeixue.com +kejimt.com +kejingyuan.com +kejiqi.com +kejitai.com +kejiwang.cc +kejiwanjia.com +kejixun.com +kejudati.com +kekaku.com +kekaoxing.com +kekaoyun.com +keke289.com +kekebaby.com +kekejp.com +kekenet.com +kekepx.com +kekeshici.com +kekexueba.com +kekiss.com +kekoku.com +kele8.com +kelepi.com +keleqiu.com +keleyi.com +kelibiao.com +kellen.wang +kelon.com +kelphome.com +kelu.org +kema66.com +kemaicrm.com +keman.com +kemanyun.com +kemasheying.com +kemov.com +ken.io +ken74.com +kename.com +kendocn.com +kendryte.com +kenfor.com +kenfor.net +kengatoki.com +kengdie.com +kengso.com +kengwan.com +keniu.com +keniub.com +kenkapacking.com +kenshin.wang +kenshu.cc +kentepa.com +kentier.com +kenuonet.com +kenweini.com +kenwen.com +kenxn.com +kenxv.com +kepingtong.com +kepuchina.org +kepusky.com +kepuyanxue.com +ker58.com +kerlala.com +kermitym.com +kernel.cc +kernelgo.org +kernelnote.com +kerneltravel.net +keruibell.com +kerunzh-edu.com +keruotv.com +kerust.com +keruyun.com +keruyun.net +kesci.com +kescoode.com +kesense.com +keshizhongguo.com +kesion.com +keslb.com +kesucorp.com +kesum.com +ketangpai.com +ketuimage.com +kevincc.xyz +kevinems.com +kevinhewu.com +kevinjiang.info +kevinlq.com +kewail.com +kexianggroup.com +kexin001.com +kexing100.com +kexinguoji.com +kexinyun.org +kexu.com +kexue.com +kexue.fm +kexuezixunzzs.com +keyan.life +keyboardancer.com +keycom-ip.com +keydatas.com +keydot.net +keygotech.com +keyigroup.com +keyingwb.com +keylol.com +keymoe.com +keyoou.com +keyray-hk.com +keyshot.cc +keyuhome.com +keyunsoft.com +keyyou.net +kezhaozhao.com +kezool.com +kf.ai +kf25.com +kf3msfm.com +kf4137.com +kf5.com +kf911.com +kfadx.tech +kfang.xin +kfc28.com +kfcdn.com +kfcha.com +kfcms.com +kfd3sm2c.com +kfd9999.com +kfdcc.com +kfhmyy.com +kfj.cc +kfjd.com +kfqrc.com +kfw001.com +kfyao.com +kfzimg.com +kg-gold.com +kg.com +kgdt.work +kgfanr.com +kgimg.com +kgogame.com +kgula.com +kguowai.com +khdatasolutions.com +khdmw.com +khesport.com +khews.com +khlysc.com +khotyn.com +khqihuo.com +khs1994.com +khysct.com +ki-pa.com +kiaic.com +kibey.com +kibinggroup.com +kibo.tech +kid17.com +kidscoding8.com +kidsdown.com +kidseq.net +kidsyun.com +kidulte.com +kidulty.com +kiees.com +kihgwe.com +kiiik.com +kiijoy.com +kiimg.com +kikicici.com +kikitamap.com +kikoplay.fun +kikyoar.com +kililife.com +killdb.com +kilvn.com +kimiss.com +kimiss.net +kimiter.com +kimleo.net +kimnote.com +kimqi.net +kimsom.com +kina.cc +kinboy.wang +kindeditor.net +kindle-china.org +kindle114.com +kindlehub.mobi +kindlelib.com +kindleport.com +kindlepush.com +kinefinity.com +king-capital.com +kingandwood.com +kingball.net +kingborn.org +kingbos.com +kingbrother.com +kingcheergame.com +kingclouddns.com +kingdee-soft.com +kingdee.com +kingdee.com.tw +kingdee.org +kingdeemall.com +kingdeestar.com +kingdeeyun.com +kingdeezx.com +kingdelgc.com +kingdomfishing.com +kingdun.net +kingexplorer.com +kinggoo.com +kinggrid.com +kingidc.net +kingkaid.com +kingland119.com +kinglandtech.net +kinglassquartz.com +kingnare.com +kingnet.com +kingnetdc.com +kingnettech.com +kingoit.com +kingosoft.com +kingreader.com +kingrein.com +kingroot.net +kings3d.com +kingsemi.com +kingsoft-office-service.com +kingsoft.com +kingsoft.net +kingsoftstore.com +kingst.org +kingstarfintech.com +kingstarmedical.com +kingwam.com +kingwisoft.com +kingyon.com +kingysu.com +kinhom.com +kinpan.com +kinqee.com +kintiger.com +kinval.com +kinzoncap.com +kirgen.com +kirikira.com +kirimasharo.com +kirin-tech.com +kirincloud.net +kirinmach.com +kirinvm.com +kischess.com +kisdee.com +kiss688.com +kisskisso.com +kissyui.com +kiswo.com +kit-lee.me +kiteshow.com +kitstown.com +kiujq.com +kiwa-tech.com +kiwenlau.com +kiwisec.com +kj-hospital.com +kj-pcb.com +kj1555.com +kj1d.com +kj3.com +kj5544.com +kjb2c.com +kjbnm.xyz +kjcad.net +kjcdn.com +kjcgzh.com +kjchina.com +kjcity.com +kjcxpp.com +kjdb.org +kjeport.com +kjiuye.com +kjj.com +kjkd.com +kjkp.com +kjks.net +kjkxun.com +kjltxn.com +kjnkj.club +kjr365.com +kjsng.com +kjson.com +kjsv.com +kjt.com +kjw.cc +kjwlxt.com +kjycx.com +kjyicdn.com +kjzxtk.com +kk.com +kk.net +kk169.com +kk2w.cc +kk30.com +kk3g.net +kk7b.com +kkapp.com +kkbuyu8.com +kkcache.com +kkcache.net +kkcaicai.com +kkcapture.com +kkcdn.net +kkcha.com +kkcodes.com +kkcoo.com +kkdict.com +kkdownload.com +kkeye.com +kkfor.com +kkguan.com +kkh-global.com +kkid.vip +kkidc.com +kkk5.com +kkkd.com +kkkkba.com +kkkmh.com +kkkwww.com +kklishi.com +kklxj.com +kkmaoyi.com +kkmh.com +kkminer.com +kkmop.com +kknn.com +kkqb.net +kkr5.com +kkredian.com +kks.me +kksmg.com +kksofts.com +kkt.com +kktijian.com +kktv1.com +kktv5.com +kktv8.com +kkuu.com +kkvv77.com +kkx.net +kkyoo.com +kkyuedu.com +kkzj.com +kl1l5.com +kl321.com +kl688.com +kl800.com +klandk.com +klchemicals.com +kldjy.com +kldm.ru +klhuyan.com +klianfa.com +klicen.com +klinlee.com +kljiyou.com +kllife.com +klmh5.com +klmhw.com +klmnf.com +klmybbs.com +klmygjj.com +klmyssn.com +klniu.com +klqian.com +klshou.com +kltdo.com +kltong.com +klub11.com +klunf.com +klvtu.com +klxuexi.com +km.com +km169.net +km18.net +km1818.com +kmaa40.com +kmail.com +kmapp.net +kmcaishui.com +kmcenter.org +kmcha.com +kmcits.com +kmcits0655.com +kmcxedu.com +kmdgpark.com +kmdn.net +kmdns.net +kmeecc.com +kmeitu.com +kmf.com +kmfangxun.com +kmg-jd.com +kmguolv.com +kmhgold.com +kmipo.net +kmlcl.com +kmlhh.com +kmmama.com +kmplayercn.com +kmtarena.net +kmw.com +kmway.com +kmxg.net +kmxkh.com +kmxyj.com +kmyestar.com +kmzx.org +kn120.com +kneng.net +knewbi.com +knewhy.com +knewone.com +knewsmart.com +knotesapp.com +know88.com +knowgive.com +knowhow-china.com +knowncoin.com +knownpcb.com +knownsec.com +knowsafe.com +knowsurface.com +knowyourself.cc +knoya.com +knsheng.com +knsyxw.com +kny999.com +knzlcq.com +koal.com +koalacam.net +koaladoit.com +koalareading.com +kobold1855.com +koboldgame.com +kobox.tv +kocla.com +kodcloud.com +kodmp.com +koduo.com +koeicn.com +kofficemart.com +kofuf.com +kofunion.net +koiclub.net +koikreative.com +koinocn.com +koippt.com +kokojia.com +kole8.com +kolrank.com +kolstore.com +komect.com +kometo.com +koncoo.com +konekomoe.com +konfan.net +kongapi.com +kongdao.com +kongdi.net +kongduan.com +kongfou.net +kongfz.com +kongge.com +konggu.net +kongjianjia.com +kongjie.com +kongjun.com +konglei.com +kongming-inc.com +kongnar.com +kongqingquan.com +kongquecheng.com +kongqueyuzd.cc +kongrong.com +kongsun-hldgs.com +kongtiao365.com +kongyixueyuan.com +kongzhi.net +kongzhong.com +konka.com +konkamobile.com +konkek2.com +konotaku.com +konshan.com +kooaoo.com +koocdn.com +koodudu.com +koofang.com +koofun.com +kookong.com +koolbao.com +koolcenter.com +kooldns.com +koolearn.com +koolproxy.com +koolyun.com +koopass.com +koorun.com +kooshui.com +kooteam.com +koouoo.com +koovin.com +koovoo.com +koowo.com +kooxoo.com +kooyx.com +koplayer.com +koreabt.com +koreaxing.com +korimscdn.com +korirl.com +kotei-info.com +kotex-km.com +koto.com +kotoo.com +koubei.com +koubeiblog.com +koubeikc.com +koucai365.com +koudai.com +koudai8.com +koudaibaobao.com +koudaigou.net +koudailc.com +koudaili.com +koudaionline.com +koudaionline.net +koudaipe.com +koudaitiku.com +koudaitong.com +koudashijie.com +koudin.com +kouer.com +kouer.net +kouke5.com +koukousky.com +koukuko.com +koumakan.cc +kouqiang1.com +kouqing.com +koushare.com +kousou.cc +kouss.com +kouyu100.com +kouzi.com +kowa-dental.com +kowa103.com +koyuki.cc +kpbgw.com +kpblw.com +kpjushi.com +kpkpw.com +kplanet.vip +kpqtw.com +kprepublic.com +kpzip.com +kpzip.net +kpzs.com +kq36.com +kq39.com +kq520.net +kq81.com +kq88.com +kqcfcw.com +kqgeo.com +kqidong.com +kqiwen.com +kqiwen.net +kqj123.com +kqqy.com +kqzjw.com +kqzlzx.com +kr-cell.com +kr.com +kr126.com +krahag.com +krbamboo.com +krdlw.com +krdrama.com +kriszhang.com +krjkkj.com +krpano.tech +krshadow.com +krszf.com +krwz.com +krxo588peycx.com +krzer.com +krzzjn.com +ks-cdn.com +ks-cdn1.com +ks-live.com +ks-lxjy.com +ks-spring.com +ks1688.com +ks321.com +ks365.org +ks51.com +ks5u.com +ksair.com.tw +ksapisrv.com +ksaxx.com +ksbao.cc +ksbao.com +kscac.com +kscdns.com +ksdkcks.com +ksdlp.com +ksdown.com +ksdq0514.com +ksense.com +ksfang.com +ksgnr.com +kshitachi.com +kshot.com +ksjgs.com +kskino.com +ksks001.com +kskwai.com +ksldg.com +ksmobile.com +ksmom.com +ksnows.com +ksops.com +ksord.com +ksosoft.com +kspkg.com +ksqdq.com +ksren.com +ksria.com +ksrong.com +kstao.com +kstz1.com +ksudi.com +ksupdate.com +ksydx.com +ksyiqiwan.com +ksyna.com +ksyuki.com +ksyun.com +ksyunad.com +ksyuncdn-k1.com +ksyuncdn.com +ksyuncs.com +ksyungslb.com +ksyunv5.com +ksyunwaf.com +kszhuanjia.com +kt007.com +kt250.com +kt286.com +kt40.com +kt5u.com +ktanx.com +ktbiao.com +ktfdsb.com +kting.info +ktjd.net +ktkj.com +ktkt.com +ktlshu.vip +ktlstbg.com +ktmap.com +ktpf.cc +ktplay.com +ktsee.com +kttpdq.com +ktvc8.com +ktvdaren.com +ktvme.com +ktvsky.com +ktvxg.com +ktxuexi.com +ku2048.net +ku25.com +ku3721.com +ku6.com +ku6.net +ku6cdn.com +ku6img.com +ku82.com +ku86.com +ku8ku8.com +ku90.com +ku9377.com +kuabaobao.com +kuacg.com +kuafugame.com +kuai-fei.com +kuai-ying.com +kuai.ma +kuai65.com +kuai7.com +kuai8.com +kuaibbs.com +kuaibiancheng.com +kuaibiao2000.com +kuaibowang.net +kuaibuw.com +kuaicad.com +kuaichale.com +kuaidadi.com +kuaidaili.com +kuaidajian.com +kuaidi.com +kuaidi100.com +kuaidihelp.com +kuaidil.com +kuaidizs.com +kuaiduwen.com +kuaiex.com +kuaifa.mobi +kuaifaka.com +kuaifawu.com +kuaifeng.com +kuaigames.com +kuaigeng.com +kuaihaodai.com +kuaihou.com +kuaihz.com +kuaiji.cm +kuaiji.com +kuaiji.so +kuaiji66.com +kuaijilunwen.com +kuaijinniu.com +kuaijiren.com +kuaijishizi.com +kuaijisishu.com +kuaijitong.com +kuaijizheng365.com +kuaikanad.com +kuaikanmanhua.com +kuaikq.com +kuaikuaicloud.com +kuaikuaidai.com +kuaikuaihuoche.com +kuaikuaiyu.com +kuaila.com +kuaile-u.com +kuaile800.com +kuailelunwen.com +kuailesh.com +kuailetongyao.com +kuaileworld.com +kuailexinli.com +kuailexs.com +kuailezu.com +kuailiyu.com +kuailiyu.net +kuaimi.com +kuaimi.net +kuaipandata.com +kuaipao8.com +kuaipeilian.com +kuaipng.com +kuaiqin.com +kuaiqin.net +kuaiqun.org +kuaishebao.com +kuaishou.com +kuaishouapp.com +kuaishouba.com +kuaishoupay.com +kuaishouzt.com +kuaishubao.com +kuaisujiasu.net +kuaisushu-cnd.com +kuaitijian.com +kuaitu666.com +kuaiwan.com +kuaixiazai.com +kuaiyan.com +kuaiyiad.com +kuaiyilicai.com +kuaiyingxiao88.com +kuaiyingyong.vip +kuaiyong.com +kuaiyoujia.com +kuaiyouxi.com +kuaiyu.com +kuaiyunbd.com +kuaiyunds.com +kuaizhan.com +kuaizhang.com +kuaizhe.com +kuaizhihui.com +kuaizi.co +kuaizip.com +kuaizitech.com +kuaizitech.net +kuaizy.com +kuajing.com +kuajing.hk +kuajingyan.com +kuakao.com +kuakao.net +kuaming.com +kuang-chi.com +kuang-chi.org +kuangchan.biz +kuangjijia.com +kuangjiwan.com +kuangming.com +kuangren.cc +kuangrendao.com +kuangwan.tv +kuangxiangit.com +kuangyi.com +kuanye.net +kuark.com +kuashou.com +kubey.cc +kubicode.me +kubikeji.com +kubo-360-tudou.com +kubozy-cdn-baidu.com +kuche.com +kuchuan.com +kudasuye.com +kudiannao.com +kudianqi.com +kudiaoyu.com +kudingyu.com +kuface.com +kufangwuyou.com +kufaxian.com +kuge.cc +kugou.com +kugou.la +kugou.net +kuguopush.com +kugz.net +kuhii.com +kuhua.net +kuicc.com +kuihuo.com +kuiniuca.com +kuishiba.com +kuishuling.com +kujiale.com +kujiang.com +kujingling.com +kuk8.com +kukahome.com +kukasofa.com +kuke.com +kuke99.com +kukecloud.com +kukseo.com +kuku9.com +kukuchuangxiang1.com +kukuchuangxiang4.com +kukud.net +kukudesk.com +kukumai.com +kukupig.com +kukuplay.com +kukushouyou.com +kukushow.com +kukuspeak.com +kukuw.com +kukuxiu.com +kuleiman.com +kulemi.com +kulengvps.com +kuletco.com +kuli.ren +kuliqiang.com +kuliwang.net +kuman.com +kuman56.com +kumankeji.net +kumaoyun.com +kumifeng.com +kungfucloud.com +kungfuenglish.com +kungge.com +kunguankeji.com +kunkkawu.com +kunleen.com +kunlun-cdn.com +kunlunaq.com +kunlunar.com +kunlunca.com +kunluncan.com +kunlunce.com +kunlunea.com +kunlungem.com +kunlungr.com +kunlunhuf.com +kunlunjue.com +kunlunle.com +kunlunli.com +kunlunno.com +kunlunpi.com +kunlunra.com +kunlunsa.com +kunlunsc.com +kunlunsl.com +kunlunso.com +kunlunta.com +kunlunvi.com +kunlunwe.com +kunmingbc.com +kunmingkanghui.com +kunnisser.com +kunpo.cc +kunshanidc.com +kuntaihotel.com +kunx.org +kunyueyun.com +kuo-yi.com +kuodie.com +kuoo8.com +kuoruan.com +kuosanyun.com +kuosheng.net +kuotu.com +kuozhan.net +kupao.com +kuparts.com +kupoo.com +kuqin.com +kurogame.com +kurokingdom.com +kurukurumi.com +kusdk.com +kushenchina.net +kushou.com +kushuzw.com +kusouji.com +kutianxia.com +kutj.com +kutongji.com +kutoo8.com +kutsg.com +kutu66.com +kutuan.com +kuuhuu.com +kuuke.com +kuwan8.com +kuwanapp.com +kuwanbang.com +kuwen.net +kuwew.com +kuwuu.com +kuxiaoji.com +kuxuexi.com +kuyh.com +kuyibu.com +kuyin123.com +kuyinyun.com +kuyiso.com +kuyoo.com +kuyubox.com +kuyumall.com +kuyun.com +kuyun1.com +kuzhengame.com +kvemm.com +kvenjoy.com +kviso.com +kvkft.com +kvogues.com +kvov.com +kvov.org +kwaicdn.com +kwaisczway7r4tz7m8.com +kwaishop.com +kwaixiaodian.com +kwaiying.com +kwaizt.com +kwenku.com +kwimgs.com +kwin.wang +kwin.xyz +kwkf.com +kwtzn.com +kwudor.com +kwx.gd +kwxjh.net +kx001.com +kx1d.com +kx516.com +kx7p.com +kxapp.com +kxapps.com +kxbaidu.com +kxbld.com +kxbox.com +kxceping.com +kxdaili.com +kxdao.com +kxdpm.com +kxdw.com +kxewpz.com +kxfsw.com +kxgcw.com +kxgdyw.com +kxiaoshuo77.com +kxinyk.com +kxji.com +kxjlt.org +kxnboat.com +kxpay.net +kxt.com +kxting.com +kxtoo.com +kxtry.com +kxtui.com +kxtwz.com +kxvuv.com +kxwan.com +kxxsc.com +kxxxl.com +kxyike.com +kxzmw.com +ky-express.com +ky5yx.com +ky958.com +kybapp.com +kybapp.net +kybimg.com +kyboye.com +kydev.net +kye-erp.com +kyemall.com +kyhere.com +kyhs.me +kyimg.com +kyjxy.com +kylc.com +kyleduo.com +kyleslight.net +kylienet.com +kyligence.io +kylin-os.com +kylinlot.com +kylinmobi.com +kylinos.com +kylinpet.com +kymjs.com +kynix.com +kyoceraconnect.com +kyp565.com +kyppt.com +kyqcfj.com +kytijian.com +kyw4y0s.com +kyxdloan.com +kyy6.com +kyyj.net +kyzf.net +kyzyj.com +kz8yx.com +kza.cc +kzj365.com +kzlgd.com +kzore.com +kzt.cc +kztpms.com +kzwr.com +l2h.site +l36h.com +l5550.com +l68.net +l77777777.com +l7audiolab.com +l99.com +la-mo.com +lab-z.com +labagd.com +labahao.com +labbang.com +labbase.net +labfan.com +labgogo.com +laborlawtime.com +labtoday.net +labview.help +labxing.com +lacesar.com +lache.me +lactec.net +ladiyoga.com +ladjzs.com +ladouban.com +lady177.com +lady361.com +lady8844.com +lady98.com +ladybirdedu.com +ladydaily.com +ladymetro.com +ladystr.com +ladywu.net +lafaso.com +lafhzx.com +lagou.com +lagouevents.com +lagoujobs.com +lagowang.com +lahm2018.com +lahuashanbx.com +lai-ai.com +laiba.shop +laibokeji.com +laichou.com +laichuanfeng.com +laidacai.com +laidianba.net +laidingba.com +laidou.wang +laidudu.com +laifeng.com +laifu.net +laifudao.com +laigame7.net +laihema.com +laihua.com +laijiawen.com +laijiudu.com +laijiuye.com +laikan.com +laikanxing.com +laikanxs.com +laiketui.com +lailaihui.com +lailook.net +laily.net +laima-tech.com +laimaidi.com +laimaika.net +laiqi.net +laiqukankan.com +laird-tek.com +laishuge.com +laishui.info +laisj.com +laituia.com +laituijian.net +laiwang.com +laiwo.com +laiwu.net +laiwumedia.com +laixiukeji.com +laixueedu.com +laixuexi.cc +laiyetxt.com +laiyexs.com +laiyifen.com +laiyikeji.net +laiyinpai.com +laiyoushu.com +laiyouxi.com +laizee.com +laizhouba.net +laizhuan.com +laizi.net +lajixs.com +lakala.com +lakecn.com +lakwdian.com +lalala.lol +lalashuwu.com +lalkk.com +lalunalove.com +lamabang.com +lamahui.com +lamaison-arting.com +lamajie.com +lamall.com +lamaqun.com +lamaying.com +lambda.hk +lamiu.com +lamost.org +lampchina.net +lampouomo.com +lamyu.com +lan-bridge.com +lan-lin.com +lan1001.com +lanbozb.com +lanbts.com +lanbu.net +lancdn.com +lancn.net +lanconvey.com +landa-solenoid.com +landai.com +landchina.com +landed.cc +landi.com +landian.la +landian.vip +landiannews.com +landing-med.com +landingbj.com +landizs.com +landjs.com +landraco.com +landray.com +landscapecn.com +landtu.com +landui.com +landzestate.com +lanecn.com +lanfanapp.com +lanfeicastle.com +lanfeitech.com +lanfeiwine.com +lanfeng.net +lanfw.com +lang8.net +langao.com +langchao.com +langchengzhixin.com +langda.cc +langfang.com +langfangfc.com +langfly.com +langke.com +langke.tv +langlang.cc +langlangchinese.com +langlangjiajiao.com +langlib.com +langlinking.com +langlive.com +langlvseo.com +langmanzg.com +langmanzw.com +langmeijy.net +langongju.com +langren001.com +langren8.com +langrencard.com +langrenclub.com +langrensha.net +langtaojin.com +langtze.com +languangdy.com +langya.org +langya3.com +langyabang.com +langyuseo.com +langzi.fun +lanhaicaijing.com +lanhaijiye.com +lanhaiweb.net +lanhaizhi.com +lanhii.com +lanhu.com +lanhuapp.com +lanhuhu.com +lanhusoft.com +lanindex.com +lanjie520.com +lanjing5.com +lanjinger.com +lanjingfm.com +lanjingtmt.com +lanketd.com +lanlanlife.com +lanlicai.com +lanlv.com +lanmao.com +lanmaos.com +lanmit.com +lanou3g.com +lanqb.com +lanqi.com +lanqiao.org +lanqibing.com +lanqiu.tv +lanqiudi.com +lanqiuzu.com +lanreelh.com +lanren9.com +lanrenbijia.com +lanrenclub.com +lanrenexcel.com +lanrenkaifa.com +lanrenmb.com +lanrentingshu.cc +lanrentuku.com +lanrenzhaofang.com +lanrenzhijia.com +lanrenzhoumo.com +lansedongli.com +lanseyujie.com +lansha.tv +lanshanweb.com +lanshenniao.com +lanshizi.com +lantaoyu.com +lantian-hotel.com +lantian.tv +lantinglou.com +lantingmingjia.com +lantunyouxi.com +lanuss.com +lanvige.com +lanxicy.com +lanxinbase.com +lanxiniu.com +lanxiongsports.com +lanxum.com +lanyg.com +lanyingwang.com +lanyuanxiaoyao.com +lanyunbrand.com +lanyus.com +lanyusf.com +lanzhisky.com +lanzhouunicom.com +lanzhuwh.com +lanzou.com +lanzoug.com +lanzoui.com +lanzoum.com +lanzoup.com +lanzouq.com +lanzoux.com +lanzun.net +lao9123.com +laob.me +laobaigan-hs.com +laobandq.com +laobanfa.com +laobangban.com +laobanmail.com +laobingmi.com +laobuluo.com +laobuxie.com +laocen.com +laod.wang +laodao.cc +laodong.me +laodong66.com +laodongfa.com +laoduo.net +laofu.online +laofuxi.com +laoge.xyz +laogongshuo.com +laogu.cc +laogu.com +laogu.wang +laogumincj.com +laohanzong.com +laohanzong1.com +laohu.com +laohu8.com +laohuabao.com +laohuangli.net +laohucaijing.com +laohutao.com +laohuyun.com +laojilu.com +laojiuxitong.com +laoke.com +laolai.com +laolaosi.com +laoliang.net +laoliboke.com +laolieren.shop +laolinow.com +laoluoshouji.net +laomaotao.net +laomaotao.org +laomaotaopan.com +laomn.com +laomoo.net +laomudong.cc +laonanren.cc +laoniushuju.com +laoqiange.club +laoqianzhuang.com +laoqu123.net +laoren.com +laosiji.com +laosunit.com +laotiaomao.com +laowangappxy.xyz +laowangshengge.com +laowuxx.com +laoxiezi.com +laoxuehost.com +laoxuehost.net +laoxuezhuji.com +laoy.net +laoyaoba.com +laoyoujiaju.com +laoyouzhibo.com +laoyuanji.com +laoyuegou.com +laoyuge.com +laoyuji.com +laozizhu.com +laozongyi.com +laozu.com +laozuo.org +lapin365.com +lapland.name +laqiangu.com +laravel-admin.org +laravelacademy.org +larenla.com +large.net +larkapp.com +larksuite.com +larmb.com +laruence.com +laryoo.com +las1001boda.com +lascn.net +laserfair.com +lashou.com +lashouimg.com +lastdream.net +lasy.site +lategege.com +latexstudio.net +latiaozixun.com +latiaozixun.net +latin100.com +lativ.com +latoooo.com +lattebank.com +lattecake.com +lavago.com +lavandehotels.com +lavapm.com +lavaradio.com +law-lib.com +law-star.com +lawbridge.org +lawbus.net +lawinfochina.com +lawlingyun.com +lawnewscn.com +laws5.com +lawschina.com +lawtimeimg.com +lawxin.com +lawxp.com +lawyee.com +lawyee.net +lawyee.org +lawyer027.com +lawyerbridge.com +lawyermr.com +lawyershanghai.net +lawyersuperman.com +layabox.com +layui-inc.com +layui.com +layuicdn.com +lazada.co.id +lazada.co.th +lazada.com +lazada.com.my +lazada.com.ph +lazada.sg +lazada.vn +lazybios.com +lazylorna.com +lbagan.com +lbal168.com +lbbniu.com +lbd99.com +lbddd.com +lbdyzj.com +lbdz.cc +lbesec.com +lbgoo.com +lbinin.com +lbkrs.com +lbl520.com +lboyue.com +lbwbw.com +lbx.cc +lbx777.com +lbxcn.com +lbxdrugs.com +lbxueyuan.com +lbyczf.com +lbzuo.com +lc-cn-e1-shared.com +lc-cn-n1-npxfk.com +lc-cn-n1-shared.com +lc-cn-n1-thovg.com +lc-news.com +lc123.net +lc787.com +lcbdf.net +lcbtv.com +lccareer.com +lccdn.net +lcchn.com +lccmw.com +lccz.com +lcddjm.com +lcdhome.net +lcdushi.com +lcdwiki.com +lcfby.com +lcfile.com +lcfw.co +lcgod.com +lchot.com +lcjfz.com +lcjh.com +lckeshun.com +lckiss.com +lcloc.com +lcofjp.com +lcouncil.com +lcrcbank.com +lcread.com +lcshzgy.com +lcsrmyy.com +lcux.net +lcxwfc.com +lcyp.net +lczm.com +lczyy.com +ld0766.com +ld12366.com +ldcache.net +ldcang.com +ldd.me +lddengine.com +lddgo.net +ldeng.com +ldjx.cc +ldmap.net +ldmnq.com +ldnovel.com +ldplayer.net +ldqxn.com +ldshj.com +ldsink.com +ldtui.com +ldxsfw.com +ldycdn.com +ldygo.com +ldyh666.com +le-feng.com +le.com +le5le.com +le890.com +leachchen.com +leacol.com +lead-expo.com +leadal.com +leadal.net +leadbbs.com +leadcoretech.com +leader-tech.net +leadercf.com +leaderhero.com +leadermall.com +leadge.com +leadong.com +leaforbook.com +leafword.com +leagcard.com +leagsoft.com +leangoo.com +leankun.com +leanote.com +leanote.org +leansoftx.com +leanwind.com +leap-pc.com +leapahead.vip +leapfive.com +leapmie.com +leapmotor.com +learn-quantum.com +learndiary.com +learnfans.com +learnfk.com +learnfuture.com +learning-archive.org +learnku.com +learsun.com +leb-china.com +lebang.com +lebang.net +lebogame.net +leboweb.com +lecai.com +lecake.com +lechain.com +lechange.com +leche.com +lechebang.com +lechinepay.com +lecloud.com +lecoinfrancais.org +leconginfo.com +lecoo.com +lecoo8.com +lecuntao.com +leda13.com +ledaiyu.com +ledanji.com +ledao.so +ledboke.com +ledcax.com +ledchina-sh.com +ledctl.com +lede.com +ledhxgc.com +ledianduo.com +lediaocha.com +ledo.com +ledsdk.com +ledth.com +ledu.com +ledu365.com +leduimg.com +leduotv.com +lee130.com +leeco.com +leefanmr.com +leehon.com +leeif.me +leeiio.me +leenzhu.com +leeon.me +leepoint.net +leesou.com +leetcode-cn.com +leetcodechina.com +leevy.net +leewiart.com +leeyegy.com +leeyuoxs.com +lefeng.com +lefengmoving.com +lefengtuku.com +lefinance.com +leftfm.com +leftlady.com +leftso.com +legend-go.com +legendh5.com +legendsec.com +legendtkl.com +legoflow.com +legou456.com +legowechat.com +legu.cc +legu168.com +leguyu.com +leha.com +lehaitv.com +lehe.com +lehecai.com +lehihi.com +leho.com +lehu.host +lehuadisplay.com +lehuipay.com +lehuiso.com +lei001.com +leibei.cc +leida310.com +leidian.com +leidianip.com +leiduhuaya.com +leifengshi120.com +leigod.com +leihuo.net +leikeji.com +leikw.com +leileiluoluo.com +leilong158.com +leimi.com +leimingtech.com +leimingtelab.com +leimudata.com +leiniao.com +leiniao365.com +leining-shield.com +leiouxiong.com +leipengkai.com +leiphone.com +leiqunjs.com +leirenw.com +leishen-lidar.com +leisoon.com +leisu.com +leisu123.com +leisurelypanda.com +leiting.com +leitingcn.com +leitingjunshi.com +leiue.com +leiyunge.com +leiyunge.net +lejiachao.com +lejian.com +lejianweike.com +lejiaolexue.com +lejj.com +lejlb.com +lejlc.com +leju.com +lejucaifu.com +lejuliang.com +lejunwl.com +lekannews.com +lekevr.com +lekoukou.com +lekpass.com +lelai.com +leleda.com +leledp.com +leleketang.com +lelelala.net +lelepyq.com +leleren.com +leletv.com +leletv.net +lelevod.com +lelewl.com +lelittlesaigon.com +lemai.com +lemaker.com +lemall.com +lemedu.com +lemeitu.com +lemfix.com +lemiwan.com +lemo360.com +lemobar.com +lemonyd.com +lemonyule.com +lemote.com +lempstack.com +lenget.com +lenggirl.com +lengqing.org +lengxiaohua.com +lengziyuan.com +lengzzz.com +lening100.com +leniugame.com +leniy.org +lenizhu.com +lenosoft.net +lenovator.com +lenovogame.com +lenovohci.com +lenovohit.com +lenovohuishang.com +lenovoimage.com +lenovomm.com +lenovomobile.com +lenovonetapp.com +lenovonowgo.com +lenovots.com +lenovouat.com +lenovowap.com +lenovows.com +lensuo.com +lenwoo.com +lenzhao.com +leo96.com +leoao-inc.com +leoao.com +leobian.com +leoboard.com +leocode.net +leonblog.net +leonshadow.com +leosirius.fun +leozwang.com +lepaiok.com +lepaowang.com +leqian.com +lequ.com +lequ7.com +lequgo.com +lequxs.com +lequyuanyi.com +lequz.com +leqv.online +lerengu.com +lergao.com +lers123.com +lers168.com +lers168.net +lerye.com +leshanvc.com +leshi123.cc +leshou.com +leshow.com +leshu.com +leshuazf.com +leshuwu.com +leslie-cheung.com +lesofaka.com +lesoncooking.com +lesports.com +lesscss.net +lessisbetter.site +lesun.org +letabc.com +letaikeji.com +letao.com +letfind.com +letinet.com +leting.io +letoom.com +letou8.com +lets-study.com +letsebuy.com +letsfilm.org +letsgaga.com +lettercloud.net +letuinet.com +letuknowit.com +letushu.com +letv-cdn.com +letv.com +letv8.com +letv8.net +letvapp.net +letvcdn.com +letvcloud.com +letvimg.com +letvlb.com +letvps.com +letwind.com +letwx.com +letyo.com +leuok.com +levect.com +leviding.com +levy.work +lewaila.com +lewaimai.com +lewanduo.com +lewang.ltd +leweicn.com +lewen.la +lewen55.com +lewen88.com +lewenba.cc +lewenn.com +lewenxsw.com +lewifi.com +lewode.com +lexapro-web.com +lexar.com +lexiang-asset.com +lexiangjian.com +lexiangla.com +lexin.com +lexinchina.com +lexue.com +lexue8.com +lexueying.com +lexun.com +lexun365.com +lexzr.com +leyantech.com +leyaoyao.com +leyaoyao.org +leyard.com +leybc.com +leyifan.com +leying.com +leying.org +leying365.com +leyingtt.com +leyishandong.com +leyixue.com +leyohotel.com +leyoucp.com +leyoujia.com +leyouquan.com +leyuanbaby.com +leyubox.com +leyue100.com +leyun001.com +leyungame.com +leyunge.com +leyuz.com +leyvo.com +lezai.com +lezhi.com +lezhi99.com +lezhibo.com +lezhieducation.com +lezhiot.com +lezhiyun.com +lezhuan.com +lezhuan168.com +lezhuan365.com +lezi.com +lezyo.com +lf-tools.net +lf127.net +lfan.net +lfang.com +lfbxw.com +lfcmw.com +lfex.com +lfhacks.com +lfhygl.com +lfidc.net +lfkjgh.com +lfksqzj.com +lflucky.com +lfppt.com +lftdzd.com +lfungame.com +lfwin.com +lfwtc.com +lfx20.com +lfyzjck.com +lg1024.com +lg199.com +lg473.com +lg5.com +lgctshanghai.com +lgdisplayproduct.com +lgdlife.com +lgexam.com +lghsrh.com +lgmjg.com +lgo100.com +lgole.com +lgpic.com +lgstatic.com +lguohe.com +lh-lx.com +lh168.net +lh310.com +lh75.com +lhao88.com +lhave.com +lhdxz.com +lhdyfc.com +lhflh.com +lhggjd.org +lhh.la +lhlqw.com +lhm8.com +lhrbszb.com +lhs-arts.org +lhs11.com +lhsdad.com +lhsoso.com +lhsz.xyz +lhtjyy.com +lhtyyt.com +lhwill.com +lhwytj.com +lhy1.xyz +lhy2.xyz +lhy4.xyz +lhzq.com +li-ca.com +li-ning.com +li63.com +li91.com +liageren.com +lialip.com +lialiu.com +lianaibashi.com +lianaibiji.com +lianbijr.com +lianchuang.com +liancsoft.com +liandaomobi.com +liandaquan.com +liang.com +liangchan.net +liangchanba.com +liangduiban.com +liangjan.com +liangjian.com +liangjianghu.com +liangka.vip +liangkun.net +liangle.com +lianglong.org +liangongshequ.com +liangpinriyu.com +liangqikeji.com +liangshangou.com +liangshuang.name +liangshunet.com +liangxinyao.com +liangxu.wang +liangyadong.com +liangyi.com +liangyunchang.com +liangzhishu.com +liangziseo.com +liangzl.com +lianhaikeji.com +lianhanghao.com +lianhecang.com +lianjia.com +lianjixia.com +liankaa.com +liankebio.com +liankexing.com +lianle.com +lianlianlvyou.com +lianlianpay.com +lianliantaoshop.com +lianlife.com +lianmeng.la +lianmeng.link +lianmenhu.com +lianmishu.com +lianpingd.com +lianpuie.com +lianqi.net +lianshangbing.com +lianshijie.com +liansuo.com +liantai.cc +liantianhong.com +liantu.com +liantuobank.com +lianty.com +lianwangtech.com +lianwen.com +lianwifi.com +lianwo8.com +lianxiangcloud.com +lianxianjia.com +lianxinapp.com +lianxueqiu.com +lianyezy.com +lianyi.com +lianyu.com +lianzhong.com +lianzhongmingyuan.com +lianzhongyun.com +lianzhuli.com +liao98.com +liaocao.com +liaocheng.cc +liaochuo.com +liaocy.net +liaodanqi.me +liaogu.com +liaogx.com +liaohuqiu.net +liaoing.com +liaojieju.com +liaokeyu.com +liaokong.com +liaoliao.com +liaosam.com +liaoshenrc.com +liaotiangou.com +liaotuo.org +liaowei.info +liaoxuefeng.com +liaozhai.tv +lib4d.com +lib520.com +liba.com +libaclub.com +libai.com +liball.me +libaopay.com +libaoyun.com +libinx.com +libisky.com +libomarathon.com +libreofficechina.org +libsou.com +libtop.com +libvideo.com +lic-bcbc.com +licai.com +licai18.com +licaie.com +licaifan.com +licaigc.com +licaike.com +licaiker.com +licaimofang.com +licat.com +lichangtai.com +lichangtao.com +lichengdai.com +lichengwu.net +lichenjy.com +lichensafe.com +licomsh.com +licqi.com +licstar.net +lid1688.com +lidakang.com +lidaoliang.com +lidazhuang.com +lidecloud.com +lidepower.com +lidetc.com +lidewen.com +liding.me +lidodo.com +lidoooo.com +liebao.live +liebaoidc.com +liebiao.com +liebrother.com +liechan.com +liefangzhe.com +liegou.org +lieguo.com +lieguozhi.com +liehu.tv +liehunwang.com +liehuo.net +liejin99.com +lieju.com +lielb.com +lielema.com +lieluobo.com +liemingwang.com +lienew.com +liepin.com +liepincc.com +liepinoverseas.com +lieqi.com +liesauer.net +lietou-edm.com +lietou-static.com +lietou.com +lietou007.com +lietuwang.com +liewen.cc +liewen.la +liexing-ai.com +liexing.com +lieyou.com +lieyuncapital.com +lieyuncj.com +lieyunwang.com +lif8.com +lifan.com +life365.com +lifeall.com +lifeeu.com +lifegatemedicine.com +lifeibo.com +lifeng.in +lifeng.net +lifeofguangzhou.com +lifesense.com +lifetm.com +lifetmt.com +lifevc.com +lifevccdn.com +lifeweeker.com +lifeweekly.cc +lifeyk.com +lifox.net +lifushop.com +ligerui.com +lighos.com +light3moon.com +lightalk.com +lightcss.com +lightgx.com +lightingchina.com +lightinit.com +lightky.com +lightlygame.com +lightonus.com +lightpassport.com +lightplan.cc +lighttp.com +lightyy.com +liguda.com +liguhd.com +liguosong.com +lihaihong.com +lihaoquan.me +lihaoshuyuan.com +lihtao.com +lihua.com +lihuia.com +lihun66.com +lijiateng.com +lijiejie.com +lijigang.com +lijingquan.net +lijishi.com +lijizhong.com +liju123.com +likamao.com +likangwei.com +likeacg.com +likecha.com +likechuxing.com +likecs.com +likeface.com +likefar.com +likefont.com +likeji.net +likejianzhan.com +likeshare-tech.com +likeshuo.com +liketm.com +liketry.com +likewed.com +liking.site +likingfit.com +likuli.com +likuso.com +lilifenxiang1.com +lilinwei.com +lilishare.com +lilisi.com +lilithgame.com +lilithgames.com +liliyago.com +lilosrv.com +liluotech.com +lilvb.com +lily-collection.com +lilyenglish.com +lilysamericandiner.com +lilysgame.com +limax.com +limboy.com +limei.com +limian.com +limikeji.com +liminglight.com +liminjie714.com +liminwang.com +limless.com +limoer.cc +limufang.com +linakesi.com +linban.com +lincoc.com +lindiankanshu.com +linduwang.com +line0.com +linecg.com +linecg.net +linekong.com +linelayout.com +linewell.com +linewow.com +linezing.com +linfan.com +linfeicloud.com +lingaoren.com +lingb.net +lingbao-e.com +lingcaixinyuan.com +lingd.cc +lingd.com +lingdai.name +lingdi.net +lingdiankanshu.co +lingdianksw.com +lingdonghuyu.com +lingdunwang.com +lingduohome.com +lingduwk.com +lingdz.com +lingfei.wang +lingfengyun.com +lingganjia.com +linghit.com +lingji666.com +lingjiaocheng.com +lingjing.com +lingjiptai.com +lingjoin.com +lingkaba.com +lingki.net +lingkou.com +lingla.com +linglingkaimen.com +linglongart.com +linglongtech.com +linglu666.com +lingmovie.com +lingnanpass.com +lingocn.com +lingosail.com +lingphone.net +lingquanb.com +lingqujz.com +lingrengame.com +lingrn.com +lingshangkaihua.com +lingshi.com +lingsky.com +lingtaoke.com +lingtiao.com +lingtool.com +lingtu.com +lingtuan.com +lingw.net +lingwu66.com +lingxi360.com +lingxianmulu.com +lingxicloud.com +lingxiu580.com +lingxmall.com +lingxunyun.com +lingyi.org +lingyiliebian.com +lingyinsi.com +lingyue-digital.com +lingyuecloud.com +lingyuewx.com +lingyun.net +lingyun5.com +lingyunip.com +lingyutxt.com +lingzhanwenhua.com +lingzhilab.com +lingzhitech.com +lingzhtech.com +linhao99.com +linhere.com +linhuiba.com +lining.com +lining0806.com +linjia.me +linjie.org +linjin.net +linjunet.com +linjunlong.com +link27.com +link2lib.com +link2shops.com +linkadsapi.com +linkbroad.com +linkbux.com +linkchant.com +linkchic.com +linked-f.com +linkedbyx.com +linkedhope.com +linkedin-event.com +linkedkeeper.com +linkedme.cc +linkedsee.com +linker.cc +linkernetworks.com +linkfinancier.com +linkfun.org +linkh5.com +linkh5.xyz +linkhaitao.com +linkheer.com +linkingme.com +linkist.net +linknewideas.com +linkpro.tech +linkrall-trk.com +linkresearcher.com +linkscue.com +linksfin.com +linksgood.com +linkshop.com +linksoon.net +linkstars.com +linktech.hk +linktom.com +linktom.net +linktt.com +linkunbin.com +linkvans.com +linkwebll.com +linlin.com +linlizone.com +linlongyun.com +linlongyx.com +linmi.cc +linni.com +linnsea.com +linnyou.com +linovel.co +linovel.net +linovelib.com +linpx.com +linqu.tv +linquan.info +linquan.name +linqujob.com +linroid.com +linruanwangluo.com +linshang.com +linshigong.com +linstitute.net +lintey.com +lintongrc.com +linuo-paradigma.com +linuser.com +linux-code.com +linux-ren.org +linux.zone +linux178.com +linux265.com +linux5.net +linux6.com +linuxba.com +linuxbaike.com +linuxbaodian.com +linuxboy.net +linuxcool.com +linuxdaxue.com +linuxde.net +linuxdiyf.com +linuxdot.net +linuxdown.net +linuxea.com +linuxeden.com +linuxeye.com +linuxfly.org +linuxgogo.com +linuxidc.com +linuxidc.net +linuxkiss.com +linuxmi.com +linuxpanda.tech +linuxpk.com +linuxplus.org +linuxprobe.com +linuxrumen.com +linuxsight.com +linuxsir.com +linuxso.com +linuxsong.org +linuxtone.org +linuxyan.com +linuxyunwei.com +linuxyw.com +linweiyuan.com +linwenfa.com +linx-info.com +linxingyang.net +linyezhandidi.com +linyi.com +linyi.net +linyilongyuan.com +linyiren.com +linzhuotech.com +linzhuxin.com +linzl.com +lion1ou.tech +lionaka.com +lionelliu.com +lionmobo.com +lionmobo.net +lipai365.com +lipf.tech +lipian.com +lipiji.com +lipilianghang.com +lipin.com +lipin010.com +lipinduihuan.com +lippt.com +liqihuoke.com +liqijt.com +liqile.com +liqinyi.com +liqu.com +liquidnetwork.com +liqunshop.com +liqwei.com +lirenling.com +liriansu.com +liroi.com +lirui.name +lis99.com +lisa33xiaoq.net +lisdn.com +lisen.me +lishi.com +lishi6.com +lishibu.com +lishichunqiu.com +lishiip.com +lishiming.net +lishiren.com +lishixinzhi.com +lishizhishi.com +lishouhong.com +lishuhang.me +lishui.com +lisinit.com +lisizhang.com +lisp123.com +listarypro.com +listeneer.com +listenerri.com +listentide.com +listentoworld.com +listenvod.com +litaow.com +litecoin.ink +litecoin.ren +litefeel.com +liticool.club +litilala.site +litilala.xyz +litipumps.com +lititop.group +litpo.com +litten.me +little-sun.com +littleboy.net +littleee.com +littlehero.xyz +littlekid.online +littleroost.net +littlesheep.com +littleswan.com +liu-kevin.com +liubaiapp.com +liubangapp.com +liubiji.com +liubo.live +liucaijiu.com +liuchengtu.com +liuchengtu.net +liuchuo.net +liudanking.com +liudatxt.com +liudon.org +liudu.com +liudu9.com +liugejava.com +liugezhou.online +liugj.com +liugm.com +liuguofeng.com +liuhaipeng.com +liuhaolin.com +liuhu.net +liujiajia.me +liujiangblog.com +liujiasj.com +liujijun.com +liujto.com +liujunworld.com +liujy.com +liukebao.com +liulan7.net +liulanmi.com +liulanqi.com +liulanqi.net +liulantao.com +liulian.com +liuliangcanmou.com +liuliangdada.com +liulianggo.com +liuliangjie.com +liulianglf.com +liuliangzu.com +liulianqi123.com +liulianyu.com +liuliguo.com +liulin.cc +liulinblog.com +liulishuo.com +liulishuo.work +liulv.net +liumapp.com +liumeinet.com +liumh.com +liumwei.org +liumx.com +liunews.com +liunian.info +liunianbanxia.com +liushidong.com +liushuba.com +liusuping.com +liut.xyz +liuts.com +liuxianan.com +liuxiaofan.com +liuxiaolingtong.com +liuxing.com +liuxinzhou.com +liuxiting.com +liuxuchao.com +liuxue.com +liuxue114.com +liuxue360.com +liuxue51.net +liuxue86.com +liuxuegang.site +liuxuehksg.com +liuxuehr.com +liuxuekw.com +liuxuesmd.com +liuxuetown.com +liuxueyun.com +liuxx.com +liuyanbaike.com +liuyang.com +liuyangfcw.com +liuyanzhao.com +liuyifei.cc +liuyingqiang.com +liuzhichao.com +liuzhixiang.com +liuzk.com +liuzongyang.com +liuzuo.com +liuzy88.com +live-era.com +live800.com +liveapp.ink +livechina.com +livecourse.com +liveinau.com +liveincy.com +liveme.com +livemediav.com +livemook.com +lives.one +livesone.net +livesupport24x7.com +liveuc.net +liveupdate01.asus.com +livevideostack.com +livinglabs.cc +livku.com +livotre.com +liwai.com +liwei.red +liweijia.com +liweiliang.com +liwenxin.com +liwenzhou.com +liwinon.com +liwngad.com +liwuhy.com +liwumaoapp.com +liwushuo.com +lixcx.com +lixiang.com +lixiangshu.net +lixianhezi.com +lixianhua.com +lixiaocrm.com +lixiaolai.com +lixiaomeng.net +lixiaoskb.com +lixiaoyun.com +lixiaozhe.com +lixin.co +lixinapp.com +lixingguang.com +lixiphp.com +lixuan360.com +liyangbit.com +liyanggroup.com +liyangliang.me +liyangtuopan.com +liyangweb.com +liyanmobi.com +liyaochao.com +liyingfei.com +liyongseo.com +liyu8.com +liyuanheng.com +liyuanhospital.com +liyue.name +liyujn.com +lizaike.com +lizhaoblog.com +lizhaoxiang.com +lizhehaozhongyi.com +lizhenwang.com +lizhi.com +lizhi.fm +lizhi.io +lizhi110.com +lizhi77.com +lizhidaren.com +lizhifilm.com +lizhifm.com +lizhijitang.com +lizhiqiang.name +lizhiweike.com +lizhixia.com +lizhongyi.com +lizi.com +lizi.tw +liziqiche.com +lj-bank.com +lj168.com +ljbao.net +ljcdn.com +ljcoop.com +ljemail.org +ljhis.com +ljhks.net +ljia.com +ljia.net +ljimg.com +ljjgdj.org +ljjhfc.com +ljlcd.com +ljmeng.site +ljsdk.com +ljt365.com +ljtx.com +ljwit.com +ljxww.com +ljzfin.com +lkcgyl.com +lkcoffee.com +lkcsgo.com +lkgame.com +lkgshq.com +lkjl.com +lkjujm.com +lkkcdn.com +lkker.com +lkkued.com +lkmcdk.com +lkme.cc +lkong.com +lkong.net +lkxianglong.net +lkyou.com +ll-hao123.com +ll11.com +llbetter.com +llcat.tech +llever.com +llewan.com +llgjx.com +llgkm.com +llgo.work +llidc.com +lljgame.com +lljgxx.com +llku.com +llqdh.com +lls.moe +llsapp.com +llscdn.com +llsops.com +llsserver.com +llssite.com +llsstaging.com +lltaohuaxiang.com +lltllt.com +lltoken.com +llwin.com +llwt.ink +llycloud.com +llzg.com +llzw888.com +lm213.com +lm284.com +lm335.com +lm343.com +lm685.com +lm811.com +lm832.com +lm865.com +lm995.com +lm9999.com +lmacc.com +lmanmo.com +lmbang.com +lmbest.com +lmbld.com +lmbus.com +lmdk01.com +lmdouble.com +lmf9.com +lmgouwu.com +lmjtgs.com +lmjx.net +lmlc.com +lmlym.com +lmm8.com +lmsail.com +lmth2013.com +lmtw.com +lmtxz1.com +lmubbs.com +lmview.com +lmwgame.com +lmwlhh.com +lmwljz.com +lmxxxz.com +lmyd5.com +lmyjsq.com +lnamphp.com +lncldapi.com +lncnw.com +lndao.com +lndhdx.com +lndzxy.com +lnemci.com +lnest.com +lnfw.net +lnfzb.com +lngqt.com +lngwyw.com +lnicc-dl.com +lnicp.com +lninfo.com +lnitec.com +lnjzxy.com +lnk0.com +lnkdata.com +lnlotto.com +lnmp.org +lnok.net +lnpjw.com +lnrcu.com +lnrsks.com +lnsgczb.com +lnslymy.com +lntenghui.com +lntvu.com +lntycp.com +lnvsystem.com +lnyhrlzy.com +lnyyzyxy.com +lnzikao.com +lnzsks.com +lo97.com +locatran.com +locez.com +lockfans.com +lockscreenimg.com +lockty.com +locnavi.com +locojoy.com +locoso.com +locoy.com +locoyposter.com +locren.com +loctek.com +locvps.com +lodashjs.com +loesspie.com +loexu.com +lofficielchina.net +loftcn.com +lofter.com +loftshine.com +log4d.com +log4geek.cc +logacg.com +logclub.com +logdu.com +loghao.com +logi-inno.com +logicdsp.com +login.cdnetworks.com +logo-emblem.com +logo123.net +logo33.com +logo520.com +logo888.com +logoaa.com +logobiaozhi.com +logodao.com +logodashi.com +logohhh.com +logoly.pro +logonc.com +logopay.com +logoquan.com +logoshe.com +logosheji.com +logosj.com +logowu.com +logozhan.com +logozhizuowang.com +logphp.com +logwing.com +lohaa.com +lohalink.com +lohaslady.com +loho88.com +loj.ac +loji.com +lokyi.name +lol123.net +lol99.com +loldan.com +loldk.com +loldytt.com +loldytt.org +loldytt.tv +lolgo.net +lolhd.com +loli.cd +loli.ee +loli.my +loliloli.moe +loliloli.net +lolip.net +lolitaf.com +lolitawardrobe.com +loliyun.vip +loljy.com +lolkeng.com +lolmanhua.com +lolmax.com +lolmf.com +lolmz.com +loltmall.com +lolyculture.net +lomoment.com +lomu.me +lon3d.com +loncent.com +loncin.com +loncinindustries.com +london9999.com +londonermacao.com +lonelystar.org +lonery.com +lonfu.org +long5.com +long7.com +longaa.com +longanlaw.com +longau.com +longcai.com +longcheer.com +longchen80.com +longchengtg.com +longcity.net +longclouds.com +longcore.com +longdai.com +longdear.com +longdezhu.com +longdian.com +longdoer.com +longfor.com +longfu360.com +longger.net +longguanjia.so +longhoo.net +longhu.net +longhua.net +longhuiren.com +longhuvip.com +longigroup.com +longjcun.com +longjiazuo.com +longk.com +longmaosoft.com +longmaotianxia.com +longmarchspace.com +longmeng.com +longmenmingche.com +longmiao.wang +longmushengwu.com +longqikeji.com +longquan-baojian.com +longquecdn.com +longre.com +longren.com +longruo.com +longsan.com +longseek.com +longshangrc.com +longsheng.com +longsheng.org +longsheng988.com +longshine.com +longsok.com +longsto.com +longsunhenges.com +longsys.com +longtaifoods.com +longtaitouxiaoshuo.com +longtaiwj.com +longtanshuw.net +longtask.com +longtengwang.com +longtugame.com +longtuohy.com +longu.com +longwang.cc +longwanshijia.com +longwenedu.com +longwiki.org +longwin.org +longwisepr.com +longxi-tech.net +longxianwen.net +longxuan.ren +longygo.com +longyin.net +longyu.cc +longyucq.com +longyuedu.com +longyusheng.org +longzhongtv.com +longzhu.com +longzhu.tv +longzhulive.com +longzu.com +lonlife.org +lontiumsemi.com +loocall.com +loodd.com +looeen.com +looeo.com +looeoo.com +loogfa.com +loohuo.com +look8.com +lookao.com +lookbaby.com +lookbc.com +lookbravo.com +lookchem.com +lookcss.com +lookdiv.com +lookgame.com +looking-car.com +lookr.cc +looktm.com +looktmt.com +lookvin.com +loome.net +loonapp.com +loongnix.com +loongnix.org +loongshine.com +loongsin.com +loongson.org +loongsonclub.com +looooker.com +loopjump.com +looquan.com +loorain.com +loosun.com +looyu.com +looyuoms.com +looyush.com +lopetech.net +lophoctienganh.org +lopkino.com +lopopoo.com +lorefree.com +losala.com +losking.com +lossyou.com +lostali.com +lostphp.com +lostsakura.com +lotevision.com +lotlab.org +lotour.com +lotour.net +lotpc.com +lotpen.com +lotsmv.com +lotusair.net +lotusdata.com +lotuseed.com +lotut.com +loubobooo.com +louding.com +louishan.com +louislivi.com +louisvv.com +loukee.com +loukky.com +loulansheji.com +loulanwang.com +loupan.com +louqun.com +loushao.net +loushi12.com +lousj.com +lousw.com +louyue.com +lovcuty.com +love.tv +love1992.com +love21cn.com +love3721.com +love616.com +love778.com +love85g.com +lovean.com +loveapp.com +lovebizhi.com +lovecia.com +loveforvenus.com +lovehaimi.com +lovehhy.net +lovehifi.com +loveineurope.com +loveinhere.com +lovejavascript.com +lovejia.win +lovelacelee.com +loveliao.com +lovelive.tools +lovelixiang.com +lovemojito.com +loveniwed.com +lovenovelapp.com +loveota.com +lovepd.com +loveqindy.com +loverili.com +lovesec.com +lovesoo.org +lovestu.com +loveteemo.com +loveuav.com +loveunix.net +lovev.com +lovewith.me +lovewj.info +lovewusun.com +lovezhangjunning.com +lovezhuoyou.com +lovfp.com +lovgiin.com +lovology.com +lovstone.com +lowpew.com +lowsfish.com +lowucity.com +loxpo.com +loxue.com +loyaltychina.com +loyar.com +loyo.cc +lpcheng.com +lpllol.com +lply.net +lppz.com +lprcx.com +lpswz.com +lptiyu.com +lpxin.com +lpxinjuhui.com +lpxt.com +lq-bm.com +lq328.com +lq5u.com +lqabr.com +lqalm.com +lqbj.com +lqbj66.com +lqbld.com +lqbyj.com +lqgcb.com +lqgrdj.com +lqhigo.com +lqhualang.com +lqjob88.com +lqpsj.com +lqqm.com +lqrcb.com +lqxshop.com +lqyaopin.com +lqzh.me +lqzwdj.com +lr-amm.com +lr-link.com +lrc99.com +lrcb.net +lrcgc.com +lrcku.com +lrdzt.com +lread.net +lrenwang.com +lrhold.net +lrist.com +lrkdzx.com +lrs001.com +lrscloud2.com +lrscloud3.com +lrswl.com +lrts.me +lrwoman.com +ls-17.com +ls-gb.com +ls-marathon.com +ls.link +ls0513.com +ls1018.com +ls12.me +ls666.com +lsbankchina.com +lsbchina.com +lsbin.com +lsccb.com +lsfyw.net +lsg3.com +lsgrandtheatre.com +lsgsgs.com +lsgw.com +lsgzn.com +lshou.com +lsij3km.com +lsj.ac +lsjacg.com +lsjczj.com +lsjgcx.com +lsjlp8.com +lsjrcdn.com +lsjsm.com +lsjvps.com +lsjxck.com +lsjyy3800.com +lskejisoft.com +lskyf.com +lslkkyj.com +lsnetlib.com +lsoos.com +lspjy.com +lsq6.com +lsqifu.com +lsqpay.com +lssen.com +lssggzy.com +lstazl.com +lstest.com +lsttapp.com +lsttnews.com +lsun.net +lsuoled.com +lsup.net +lsw315.com +lswld.com +lswlsw.com +lsxz.org +lsywtc.com +lszj.com +lszjyj.com +lszp.cc +lt-tree.com +lt-uv.com +lt3c.com +ltaaa.com +ltaaa.net +ltd.com +ltesting.net +ltfwzs.com +lthack.com +ltimg.net +ltkdj.com +ltlovezh.com +ltmei.com +ltmp.cc +ltnic.com +ltp-cloud.com +ltp.ai +ltplayer.com +ltsf.com +ltswxy.com +lttconn.com +ltteach.com +lttvip.com +ltwkw.com +ltxjob.com +lty.fun +ltzsjt.com +lu.com +lu18.com +lu35.com +lu4n.com +lua.ren +luaninfo.com +luanren.com +luastudio.net +lubandata.com +lubanjianye.com +lubanpm.com +lubanshop.com +lubanso.com +lubansoft.com +lubanu.com +lubanway.com +lubiao.com +lubotv.com +luchinfo2.com +luciaz.me +luck4ever.net +luckeeinc.com +luckfriend.com +luckincoffee.co +luckincoffee.com +luckincoffeecdn.com +lucklnk.com +luckyair.net +luckycoffee.com +luckyjia.com +luckyxp.net +lucode.net +lucoder.com +lucy365.com +lucydraw.com +ludake.com +ludashi.com +ludeqi.com +ludiban.com +ludou.org +luduzww.com +luedian.com +luexiao.com +luexpo.com +luezhi.com +lufangjia.com +lufax.com +lufaxcdn.com +luffycity.com +luftweb.com +lufunds.com +lugir.com +lugutown521.com +luhao198.com +luhehospital.com +luhongfu.com +luics.com +lujiang56.com +lujianxin.com +lujingtao.com +lujq.me +lujun9972.win +lukachen.com +lukaplayer.com +lukeer.com +lukiya.com +lukou.com +lukuanart.com +lul8.com +lulala.com +lulaohan.com +lulu77.com +lulufind.com +lum114.com +lumai.net +lumajia.com +lumanman1688.com +lumi258.com +lumiai.com +lumiaxu.com +lumingtec.com +lumit.org +lumiunited.com +lumyhouse.com +lunar2013.com +lunchong.com +lunkuokeji.com +lunlishi.com +lunwenchachong.org +lunwendj.com +lunwenschool.com +lunwenstudy.com +lunwentianxia.com +lunwentong.com +lunwenxiazai.com +lunxia.com +lunzima.net +luo8.com +luobo020.com +luobo360.com +luobocai.com +luobotou.org +luobowin10.com +luobowin8.com +luoboxia.com +luochen.com +luochenyl.com +luochenzhimu.com +luochunhui.com +luocs.cc +luodaoyi.com +luodian.com +luodw.cc +luody.info +luofan.net +luogu.org +luohanyu.cc +luohuedu.net +luointo.com +luojiji.com +luojilab.com +luojituili.com +luokuang.com +luolai.com +luolai.tech +luolei.org +luomapan.com +luomi.com +luoohu.com +luooqi.com +luoqiu.com +luoqiu.info +luoqiuxs.com +luoqiuzw.com +luoqiuzww.com +luosi.com +luosimao.com +luotiannews.com +luotianyi.org +luowave.com +luoxiang.com +luoxudong.com +luoxue.com +luoyechenfei.com +luoying66.com +luoyuanhang.com +luozhongxu.com +luozongle.com +lup2p.com +lupaworld.com +lupeng88.com +luqidong.com +lure123.com +lurefans.com +lurelogs.com +lurenshuwx.com +lusen.com +lushaojun.com +lushu.com +lusongsong.com +lussac.net +luster3ds.com +lustervision.com +lutao.com +luv66.com +luways.com +luwei.me +luweitech.com +lux88.com +luxe.co +luxee.com +luxemon.com +luxianpo.com +luxiao.com +luxiwang.com +luxiyun.com +luxst.com +luxtarget.com +luxuqing.com +luxury-theme.com +luyanghui.com +luyewooden.com +luyinla.com +luyouqi.biz +luyouqi.com +luyouxia.com +luyuanqj.com +luzexi.com +lv74.com +lv96.com +lvanol.com +lvbaishun.com +lvbuo.com +lvchanghuanbao.com +lvchayun.com +lvchazhiboapp.com +lvchehui.com +lvcheng.com +lvchicar.com +lvcrown.com +lvdoutang.com +lvfang.cc +lvfl.net +lvgaud.ga +lvgou.com +lvguang.net +lvhezi.com +lvhuadai.com +lvjinsuo.com +lvkun.site +lvlian5.com +lvluowang.com +lvlvlvyou.com +lvmae.com +lvmama.com +lvmama.ink +lvmotou.com +lvnanbao.com +lvpai114.com +lvping.com +lvren.com +lvruan.com +lvrui.io +lvsanxia.com +lvse.com +lvsetxt.com +lvshedesign.com +lvshi567.com +lvshicixi.com +lvshiminglu.com +lvshou.com +lvshouwe.com +lvshunfang.com +lvshunmuseum.org +lvsongguo.com +lvtao.net +lvtu-vision.com +lvtu.com +lvtu8.com +lvtudiandian.com +lvwan365.com +lvwang.com +lvwenhan.com +lvwo.com +lvxing.net +lvya.com +lvye.com +lvye.org +lvyestudy.com +lvyetong.com +lvyidoor.com +lvyou114.com +lvyou5.net +lvyou521.com +lvyoubaotech.com +lvyoubei.com +lvyougl.com +lvyouw.net +lvyuanpam.com +lvyuetravel.com +lvzheng.com +lw0591.com +lw208.com +lw23.com +lw54.com +lwcj.com +lwd3699.com +lwdjc.com +lweasy.com +lwedu.com +lwen.org +lwfengji.net +lwfjmj.com +lwgsw.com +lwguitar.com +lwhouse.com +lwinl.com +lwinst.com +lwkz.cc +lwlm.com +lwons.com +lwork.com +lwrcb.com +lwsay.com +lwswxs.com +lwtxt.cc +lwxgds.com +lwxiaoshuo.com +lwxs.org +lwxs9.com +lwxs99.com +lwxstxt.com +lx-led.com +lx.cok.elexapp.com +lx.pub +lx138.com +lx167.com +lx3.cok.elexapp.com +lx598.com +lxbbt.com +lxckj.com +lxcvc.com +lxdms.com +lxdns.com +lxdns.info +lxdns.net +lxdns.org +lxf.me +lxi.me +lxiaoxin.com +lxin007.com +lxjep.com +lxjk999.com +lxlggo.com +lxly168.com +lxs123.com +lxsales.com +lxsjm.com +lxw1234.com +lxway.com +lxway.net +lxws.net +lxxh.cc +lxxh1.com +lxxm.com +lxy.me +lxybaike.com +lxyes.com +lxyl539.com +ly-sky.com +ly.com +ly200-cdn.com +ly200.com +ly39zx.com +ly522.com +ly6080.com +lyancafe.com +lyancoffee.com +lyangchuanbo.com +lyaudio.com +lyblog.net +lybol.com +lybus.com +lycgs.com +lycheer.net +lychevy.com +lycndq.com +lyd6688.com +lydct.com +lydezx.net +lydhb888.com +lydsy.com +lyecs.com +lyfff.com +lyg.live +lyg001.com +lyg01.net +lyg321.com +lyg800.com +lygdfrcb.com +lygfdc.com +lyghi.com +lygmedia.com +lygnews.com +lygou.cc +lygrffw.com +lygsyyijia.com +lyhanda.com +lyhero.com +lyhuadu.com +lyjiayi.com +lyjunshi.com +lyjxwl.com +lylddz2021.com +lylryy.com +lymil.com +lymlgj.com +lynkco.com +lynlzqy.com +lynr.com +lyobs.com +lypd.com +lypdl.com +lyps.net +lypyxx.com +lyqugee.com +lyragosa.com +lyrc.cc +lyric-robot.com +lyricsv.app +lyshgk.com +lysk.net +lysqdx.com +lysqzs.com +lysteel.com +lysy360.com +lythw.com +lytning.xyz +lytoufang.com +lytpw.com +lyun.me +lyunweb.com +lyvnee.com +lywenlv.com +lywf.me +lywww.com +lywxww.com +lyxyxx.com +lyy99.com +lyyapp.com +lyyourc.com +lyyzfx.net +lyz810.com +lyzfgjj.com +lyzhujia.com +lyzp100.com +lz160.net +lz310.com +lz520.net +lzabcd.com +lzafny.com +lzane.com +lzbank.com +lzc369.com +lzcbnews.com +lzccb.com +lzcqt.com +lzdxeuck.com +lzeweb.com +lzfcjys.com +lzfjq.com +lzhongdian.com +lzhpo.com +lzhygame.com +lzjdbjc.com +lzjoy.com +lzlbdm.com +lzlj.com +lzmoyin.com +lzmy123.com +lzqsyxx.com +lzsmedia.com +lzsq.net +lztv.tv +lztvnet.com +lztx123.com +lzvw.com +lzw.me +lzwifi.com +lzxdly.com +lzxgo.com +lzyun.vip +lzzyad.com +lzzzf.com +m-finder.com +m-rainbow.com +m.biz +m.dji.com +m.sohu +m.travelzoo.com +m0.hk +m0816.com +m096.com +m1315.com +m176.net +m18.com +m1905.com +m1910.com +m1938.com +m1ok.com +m1page.com +m1world.com +m2ez.com +m2mzy.com +m3guo.com +m3u8.tv +m448.com +m4yy.com +m598.com +m5bn.com +m5stack.com +m6go.com +m78.co +m818.com +m8cool.com +m90cc.com +m937.com +ma-china.com +ma3office.com +mabangerp.com +mabibook.com +mabiji.com +mabotech.com +mac189.com +mac69.com +macabc.com +macaihong.net +macapp.so +macapp8.com +macappbox.com +macappx.com +macauinternationalclubbingshow.com +macaumonthly.net +maccura.com +macdaxue.com +macflow.net +mach4s.com +machaojin.com +machenike.com +machine-information.com +machine-visions.com +machine35.com +machine365.com +machunjie.com +macidea.com +macjb.com +mackentan.com +mackext.com +macno1.com +macocn.com +macosgame.com +macoshome.com +macpeers.com +macrocheng.com +macrosan.com +macrosilicon.com +macrounion.com +macrowing.com +macrr.com +macsc.com +macshuo.com +macsky.net +macv.com +macw.com +macwk.com +macxf.com +macxin.com +macz.com +maczd.com +maczhi.com +maczj.com +madaicaifu.com +madailicai.com +made-in-china.com +madefuns.com +madeqr.com +madio.net +madisonboom.com +madku.com +madmalls.com +madouer.com +madouka.com +madown.com +madserving.com +maemo.cc +mafangwo.com +mafenggo.com +mafengs.com +mafengvwo.com +mafengwo.com +mafengwo.ink +mafengwo.net +mafenword.com +maff.com +mafutian.net +mag10000.com +mag998.com +magcloud.net +magecorn.com +magedu.com +magentochina.org +magewell.com +magi.com +magicboxgame.com +magicdata.io +magicleaders.com +magicnetmall.com +magicwatchface.com +magicwinmail.com +magicyourlife101.com +magook.com +magsci.org +maguang.net +magvision.com +mahetao.org +mahoupao.com +mahoupao.net +mahua.com +mahuadns.com +mahuarili.com +mahuatalk.com +mai.com +maianhao.com +maibasa.com +maibw.net +maicha365.com +maichawang.com +maiche.com +maiche168.com +maichuang.net +maicuole.com +maidangao.com +maidengju.net +maidi.me +maidige.com +maidixun.com +maidoc.com +maidou.com +maiduo.com +maienguoji.com +maifjb.com +maigevoice.com +maigoo.com +maihanji.com +maihaoche.com +maihehd.com +maihenghb.com +maijia.com +maijiaba.com +maijiabashi.com +maijiakan.com +maijichuang.net +maikenu.com +mail-qq.com +mail163.com +maila88.com +mailbusinfo.com +mailehudong.com +mailejifen.com +mailpanda.com +mailshanguo.com +maimaimaiw.com +maimemo.com +maimemostatus.com +maimengjun.com +maimiaotech.com +maimn.com +maimowang.com +maimuban.com +mainaer.com +maine1688.com +mainlandip.com +mainone.com +maintao.com +mainvyou.com +mainwww.com +maipu.com +mairoot.com +mairuan.com +maiscrm.com +maishashop.com +maishebei.com +maishitv.com +maishou88.com +maishoudang.com +maishoumm.com +maisifenqi.com +maisorn.com +maisry.net +maisu.vip +maisucai.com +maitao.com +maitaods.com +maitaowang.com +maitianqinzi.com +maitianquan.com +maitix.com +maitix.net +maitoufa.org +maitu.cc +maituan.com +maitube.com +maiwe.com +maiweikj.com +maixhub.com +maixiaba.com +maixj.net +maixuewen.com +maixunlei.com +maiya91.com +maiyaole.com +maiymai.com +maizhi.com +maiziedu.com +maizim.com +maizipo.com +maizitime.com +maizuo.com +majia99.com +majiamen.com +majianwei.com +majing.io +majorsec.com +majorserving.com +majsoul.com +maka.im +maka.mobi +makaevent.com +makaidong.com +makaiqian.com +make8.com +makeapp.co +makecn.net +makedie.me +makeding.com +makefang.com +makefont.com +makejinrong.com +makelove.la +makepic.net +makepolo.com +makepolo.net +maker8.com +makerbio.com +makerfun.org +maketion.com +makeweiyuan.com +makezixun.com +makingvfx.com +makuwang.com +malabeibei.com +malagis.com +malait.com +maldiveszh.com +maldun.com +males120.com +maliapi.com +maliquankai.com +mall-builder.com +mall.com +mallchina.net +mallcoo.net +mallhaha.com +mallocfree.com +mallshow.net +mallstaroa.com +mallzhe.com +mallzto.com +malmam.com +malong.com +maltm.com +malu.me +mama100.com +mamacn.com +mamahao.com +mamahuo.com +mamcharge.com +mamecn.com +mamicode.com +mamilist.com +mamioo.com +mamipush.com +mamsh.org +managershare.com +manben.com +manboker.com +mandao-tech.com +mandaodm.com +mandarincapital.net +mandarinedu.org +mandarinhouse.com +mandian.com +mandudu.com +manduhu.com +manduwu.com +manew.com +manewvr.com +manfen.net +manfen5.com +mangafuna.xyz +mangafunc.fun +mangake.com +mangege.com +mangg.com +mangg.net +mangguo.com +mangguo.org +mangguo168.com +mangocity.com +mangoebike.com +mangogame.com +mangrovetreesanya.com +mangtuhuyu.com +manguo42.com +mangxia.com +mangxuewang.com +mangzitian.com +manhua1.com +manhua123.net +manhua365.com +manhua456.com +manhuaba.cc +manhuacheng.com +manhuadao.com +manhuadaohang.com +manhuadb.com +manhuafen.com +manhualang.com +manhuama.net +manhuang.org +manhuaniu.com +manhuapi.com +manhuaren.com +manhuatai.com +manhuayang.com +manibnb.com +maninmusic.com +manjiwang.com +manlinggame.com +manlongye.com +manluoni.com +manluotuo.com +manmanapp.com +manmanbuy.com +manmango.com +manmankan.com +manmu.net +mannkit.com +manogk.com +manong.io +manongdao.com +manonggu.com +manongjc.com +manongs.com +manongzj.com +manosp.com +manpianyi.com +manrong.win +manshitea.com +mantouji.net +mantusy.com +manwuxian123.com +manxiu-law.com +many88.com +manyanu.com +manyjs.com +manylaw.com +manyoo.net +manyou.com +manyoujing.net +manzhan.com +manzhan8.com +manzj.net +manzuo.com +mao-shen.com +mao.bz +mao.li +mao999.com +maobotv.com +maobugames.com +maodou.com +maodouapp.com +maoerduo2018.com +maoflag.net +maofly.com +maogx.win +maoha.com +maohaha.com +maohuashiye.com +maoken.com +maokz.com +maoln.com +maomaoche.com +maomaojie.com +maomaow.com +maomaoxue.com +maopuyouxi.com +maoqitian.com +maoshimei.com +maotaizuichen.com +maotuying.com +maowow.com +maoxinhang.com +maoxun.net +maoyan.com +maoyi.biz +maoyia.com +maoyidi.com +maoyiw.com +maoyiwang.com +maoyouhui.cc +maoyuncloud.com +maoyundns.com +maozhuar.com +maozhuashow.com +mapabc.com +mapbar.com +mapeng.net +mapgis.com +mapgun.com +mapks.com +maple-game.com +maplebeats.com +maplef.net +mappn.com +maqingxi.com +maqinnews.com +marakaro.com +mararun.com +marcores.com +marioall.com +marioin.com +markdown.xyz +markdream.com +marketiva-platform.com +marketreportchina.com +markhoo.com +markjour.com +markmall.com +markmiao.com +marknum.com +markonreview.com +markorchem.com +marksmile.com +marmot-cloud.com +maro6.com +maroon91.com +marry5.com +marry80.com +marsfancy.com +marstor.com +marstv.com +martech365.com +martincl2.me +marveldental.net +maryek.net +mas-omkj.com +mas10010.com +mas300275.com +masadora.jp +masadora.net +masamaso.com +mascaw.com +masdiy.com +masdjy.com +masej.com +mashangmai.com +mashangshijie.com +mass-evo.com +massclouds.com +masscrunch.com +mastergo.com +masterlab.vip +mastersay.com +mastersim123.com +mastertimes.net +mastodonhub.com +mastudio.org +masyi.com +mat-test.com +matao.com +matchvs.com +math168.com +mathchina.net +mathfan.com +mathoe.com +mathpretty.com +mati.hk +maticsoft.com +matlabsky.com +matocloud.com +matongwu.com +matongxue.com +matools.com +matouwang.com +matpool.com +matt33.com +mattge.com +mattressmachinery.net +mauu.me +mavuz.com +mawei.live +mawen.co +mawentao.com +max-c.com +max232.net +maxent-inc.com +maxgj.net +maxhub.com +maxhub.vip +maxiang.info +maxiang.io +maxitas.com +maxjia.com +maxket.com +maxlicheng.com +maxok.com +maxpda.com +maxreader.net +maxscend.com +maxstv.com +maxthon.com +maxthonimg.com +maxuscloud.com +maxvinch.com +maxwealthfund.com +maxwi.com +maxxipoint.com +may.ltd +maya-r.com +maya09.com +mayahuashi.com +mayatu.com +maybe2016.com +maybeiwill.me +maycur.com +maydayfans.com +maydeal.com +mayi.com +mayiangel.com +mayicms.com +mayidui.net +mayihot.com +mayihr.com +mayijieqian.com +mayima.net +mayinews.com +mayishebao.com +mayishoubei.com +mayitek.com +mayitxt.com +mayiw.com +mayiwenku.com +mayiyx.com +mayizhuanlan.com +mayou18.com +maysunmedia.com +mayswind.net +maywant.com +maywonenergy.com +mazakii.com +mazey.net +mazhan.com +mazida.com +maziyou.com +mb-go.com +mb5u.com +mbabao.com +mbabycare.com +mbachina.com +mbajyz.com +mbalib.com +mbalunwen.net +mbanggo.com +mbaobao.com +mbaoxian.net +mbazl.com +mbb0760.com +mbcjapan.net +mbcloud.com +mbgo.com +mbinary.xyz +mbokee.com +mboxone.com +mbsky.com +mbtsg.com +mbxt.net +mc-ccpit.com +mc-test.com +mc-xborder.com +mc.fyi +mc123.cc +mc26.com +mc361.com +mc91.com +mcake.com +mcarding.com +mcbbs.net +mccaee.com +mcchcdn.com +mcchina.com +mcchou.com +mccuu.com +mcdchina.net +mcdsusan.com +mcdusiv.com +mcdvisa.com +mcearnmore.com +mcfun.tv +mcfuzhu.net +mch5k.com +mchat.com +mchifi.com +mcjcjx.com +mcjd.net +mcmssc.com +mcnqipdujs.com +mcooks.com +mcool.com +mcpemaster.com +mcpmaid.com +mcqyy.com +mcsafebox.com +mcsjtz.com +mcu-home.com +mcufan.com +mcuisp.com +mcujl.com +mcusky.com +mcuzone.com +mcuzx.net +mcwshop.com +mcx666.com +mcyhfl.com +mcyo.pw +mczyz.com +mdaxue.com +mdbig.com +mdbimg.com +mdckj.com +mdcui.com +mdddy.com +mdeasydiagnosis.com +mdeditor.com +mdeer.com +mdfull.com +mdhjs.com +mdinjn.com +mditie.com +mdj2y.com +mdjhxgjyc.com +mdjyadi.com +mdjyouth.com +mdmmm.com +mdnice.com +mdo52.com +mdouyin.com +mdpda.com +mdsyzx.com +mdtu.com +mduckstudio.com +mdvdns.com +mdvoo.com +mdy-edu.com +mdybk.com +me-city.com +me361.com +me4399.com +meadin.com +meaninggame.com +meazhi.com +meb.com +meban.cc +mec027.com +mechatim.com +mechr.com +mechrevo.com +mecoxlane.com +med-water.com +med126.com +med66.com +meda.cc +medai360.com +medeming.com +mediafq.com +mediatek.com +mediav.com +mediawords.org +mediaxinan.com +mediecogroup.com +medimg.org +meditic.com +meditrusthealth.com +mediumin.net +medlinker.com +medlinker.net +medme.net +medmeeting.org +medsci-tech.com +medstarcorp.com +medtion.com +meechao.com +meefon.com +meegoe.com +meeket.com +meet99.com +meetfave.com +meethall.com +meetlawyer.com +meetsite.com +meetwhale.com +meetzoom.net +meeuapp.net +mefeng.net +megaemoji.com +megajoy.com +megoal.org +megobike.com +megomap.com +megou8.com +meguo.com +megvii.com +mei-shu.com +mei.com +mei1.info +meia.me +meianjuwang.com +meiaoju.com +meibai14.com +meibaninc.com +meibanlu.com +meibaolicarpet.com +meibg.com +meibo.tv +meican.com +meicanstatic.com +meichibao.com +meichuanmei.com +meichubang.com +meidaojia.com +meidebi.com +meideng.net +meierbei.com +meifajie.com +meifang8.com +meifazu.com +meigeinc.com +meigongla.com +meigongyun.com +meiguanjia.net +meiguiwxw.com +meiguo-qianzheng.com +meiguoxiaoxue.com +meiguozhuji.com +meigushe.com +meih5.com +meih5.net +meihaotoutiao.com +meihaoxiangwang.com +meihaoxueyuan.com +meiheups.com +meihom.com +meihouyun.com +meihu99.com +meihua.info +meihuainfo.com +meihuappt.com +meihuboyue.com +meihudong.com +meihutong.com +meijia66.com +meijiacun.com +meijiaedu.com +meijiahuanxin.com +meijialove.com +meijiecao.net +meijiedaka.com +meijiehang.com +meijiehezi.com +meijieu.com +meijiexia.com +meijiezaixian.com +meijiezaixian.net +meijingjie.com +meijiu.com +meijuba.com +meijucenter.com +meijufans.com +meijuniao.com +meijuniao.net +meijuq.com +meijutt.com +meijutt.tv +meijuxia.com +meijuxq.com +meijuzhan.com +meijuzj.com +meikankeji.com +meike-shoes.com +meike15.com +meikeda.net +meiku123.com +meilanfangdajuyuan.org +meilecui.com +meili-inc.com +meilibaobao.com +meilijia.com +meiling.com +meiling360.com +meiliqueen.com +meilishuo.com +meilishuo.net +meilisite.com +meiliwan.com +meiliworks.com +meiliwu.com +meilunmeijia.com +meilvtong.com +meimeidu.com +meimeio.com +meimi.cc +meimingteng.com +meingrace.com +meinv.com +meip0.me +meip4.me +meipai.com +meipian.me +meipian2.com +meipuapp.com +meiqia.com +meiqiantu.com +meiqiausercontent.com +meiqinedu.com +meiqiu.me +meiquankejib.com +meiquankejih.com +meirenshang.com +meiridazhe.com +meirids.com +meirishentie.com +meiritv.net +meiriyiwen.com +meirong.net +meirongshanghai.com +meisaitu.com +meisfuture.com +meishai.com +meishanren.com +meishe-app.com +meisheapp.com +meishesdk.com +meishi.cc +meishi13.com +meishichina.com +meishij.net +meishijr.com +meishilife.com +meishiqin.com +meishiwangluo.com +meishow.com +meishubao.com +meishui.com +meishuquan.net +meishuwenxian.com +meisubq.com +meisupic.com +meitaixianlan.com +meitangdehulu.com +meitegou.com +meitianhui.com +meitibijia.com +meitu.com +meitu.store +meituan.com +meituan.net +meituba.com +meitubase.com +meitudata.com +meitumobile.com +meitun.com +meituncdn.com +meitushop.com +meitustat.com +meituyun.com +meituyunji.com +meiwai.net +meiweis.com +meiweishudan.com +meiwenfen.com +meiwenting.com +meixie.com +meixincdn.com +meixiong5.com +meixueyuan.com +meiyaapp.com +meiyan.com +meiyedana.com +meiyen.com +meiyi.ai +meiyinji.vip +meiyixia.com +meiyixinrui.com +meiyou.com +meiyue.com +meiyuxiuxiu.com +meizhanggui.cc +meizhejie.com +meizhou.com +meizhou.net +meizitu.net +meizu.com +meizu.com.hk +meizu.net +mejoybaby.com +meke-shanghai.com +meke8.com +meldingcloud.com +melodyhome.com +melon.cdnetworks.com +melote.com +melove.net +memacx.com +memagames.com +memewan.com +memeyule.com +memorieslab.com +memorycarddeal.com +memoryhere.com +mems.me +memsconsulting.com +memseminar.com +memsensor.com +memuu.com +men.ci +menchuang.biz +meng2u.com +meng3.com +meng800.com +mengat.com +mengchenghui.com +mengdian.com +mengdie.com +mengdodo.com +menggang.com +menghunli.com +mengjiagames.com +mengjianjiemeng.com +mengjiayouxi.com +mengkang.net +menglan.com +menglangroup.com +menglechong.com +menglegame.com +menglei.info +menglong.me +mengma.com +mengma021.com +mengniang.tv +mengniu99.com +mengqianxun.net +mengqiuju.com +mengsang.com +mengshihm.com +mengso.com +mengtian.com +mengtu.cc +mengtuchuang.xyz +mengtuiapp.com +mengwuji.net +mengxi.com +mengxiangeka.com +mengyoo.com +mengyou.org +mengyuzhe.com +mengzhan.me +mengzhou.com +mengzhuangxiu.com +mengzhuboke.com +mengzone.com +menhood.wang +menksoft.com +menle.com +menpiao.com +menqiu.com +menubarx.app +menwee.com +menww.com +menwww.com +menxue.com +menyuannews.com +meovse.com +meowcat.org +mepai.me +mepcec.com +meplayplay.com +mequn.com +mercedes-benzarena.com +mergeek.com +merklechina.com +mescroll.com +meshang.net +meshiot.com +mesince.com +mesresearch.com +mesu-cdn.apple.com.akadns.net +mesu-china.apple.com.akadns.net +mesu.apple.com +mesule.com +met.red +met169.com +metacd.com +metajs.info +metal-min.com +metalchina.com +meten.com +meteni.com +metenk12.com +metersbonwe.com +metersbonwe.net +metin520.com +metlifezeng.com +metnews.net +metro-3d.com +metroer.com +metrofastpass.com +metrolife.mobi +metstr.com +mew.fun +mewhoo.com +mexue.com +mexxum.com +meyet.net +mezw.com +mezzp.com +mf-y.com +mf8.biz +mf927.com +mf999.com +mfbgz.com +mfbuluo.com +mfcad.com +mfcad.net +mfcpx.com +mfcteda.com +mfexcel.com +mfisp.com +mfjmedia.com +mfk.com +mfpad.com +mfpjrj.com +mfqqx.com +mfqyw.com +mftianshanam.com +mftvideo.com +mfzdb.com +mfzxcs.com +mg-cdn.com +mg-pen.com +mg21.com +mg3721.com +mg67.com +mgc-games.com +mgd5.com +mgdzz.com +mgenware.com +mgff.com +mgl9.com +mglip.com +mgogo.com +mgous.com +mgplay.com.tw +mgpyh.com +mgsdk.com +mgslb.com +mgtv.com +mgtvzy2.com +mgw999.com +mgwxw.com +mgwyx.com +mgxzsy.com +mgyapp.com +mgyxw.net +mgyyw.com +mgzf.com +mgzgmyzz.com +mgzhibo.com +mgzxzs.com +mh1234.com +mh160.com +mh456.com +mh51.com +mh868.com +mhacn.com +mhaoma.com +mhbras.com +mhdns.com +mhealth100.com +mhecy.com +mhg001.cc +mhhf.net +mhi-ac.com +mhimg.com +mhpdf.com +mhsf.com +mht.la +mhtclub.com +mhtml5.com +mhv2.net +mhwck.com +mhwmm.com +mhwy2.com +mhxk.com +mhxqiu.com +mhxzhkl.com +mhyun.net +mhzd.cc +mhzd.net +mi-ae.net +mi-dun.com +mi-fds.net +mi-idc.com +mi-img.com +mi.com +mi1.cc +mi6fx.com +mia.com +mian4.net +mianbao.com +mianbaodianying.com +mianbaoduo.com +mianbaoimg.com +mianbaotou.com +miandanbx.com +mianfeidianhua.net +mianfeiic.com +mianfeiwendang.com +mianhuatang.cc +mianhuatang.la +mianjue.com +mianjuvip.com +mianshi365.com +mianshui365.com +miantiao.me +mianwai.com +mianxiangxue.com +miao-lang.com +miao.su +miaobe.com +miaoche.com +miaodiyun.com +miaofaxian.com +miaogao.net +miaogu.com +miaohealth.net +miaokaiyun.com +miaole1024.com +miaomaicar.com +miaomiaoxue.com +miaomiaoz.com +miaomiaozhe.com +miaomore.com +miaopai.com +miaopin8.com +miaoquantuan.com +miaoshou.com +miaoshou.net +miaoshoucdn.com +miaoshuwu.com +miaoshuzhai.com +miaoshuzhai.net +miaostreet.com +miaov.com +miaoweijianfei.com +miaowugo.com +miaowutech.com +miaoxiakuan.com +miaoxiazai.com +miaozao.com +miaozhen.com +miaozhun.com +miaxis.net +miazhiyou.com +mibaoge.com +mibaostore.com +mibaoxian.com +mibimibi.com +mibokids.com +mibugs.com +mic-s.com +micai.com +micaiying.com +micblo.com +michael-j.net +michaelapp.com +micheal.wang +michelam.com +michong.com +michplay.com +miclle.com +mico.io +micro-bee.com +micro-servs.com +microad-cn.com +microad-z.com +microbell.com +microbt.com +microcai.org +microcardio.com +microdiag.com +microdreams.com +microfotos.com +microland-design.com +microlensyh.com +microlz.com +micromouse.tech +microrui.net +microvcard.com +microvirt.com +microvoip.com +microwu.com +microyan.com +micstatic.com +micw.com +midaapi.com +midadata.com +midaijihua.com +midainc.com +midasbuy.com +midea.com +midea.com.tr +midicn.com +midifan.com +midifan.org +midiyinyue.com +midlele.com +midonline.net +midsummer.cc +miduiedu.com +midukanshu.com +miduoke.net +midureader.com +midway.run +midwayjs.org +miecod.com +miejw.com +miemie.la +miensi.com +mier123.com +miercn.com +mierhuo.com +mieseng.com +mieyisi.com +mifangba.com +mifanli.com +mifanlicdn.com +mifei.com +mifen517.com +mifengv.com +mifengvv.com +mifengxiuchang.com +mifengzhibo.com +mifispark.com +mifwl.com +migame.vip +mige.tv +migelab.com +migroom.com +migucloud.com +migufun.com +migutv.com +miguvideo.com +miguyu.com +mihan.cc +mihayo.com +mihayou.com +mihoyo.com +mihtool.com +mihua.net +mihuashi.com +mihuguan.com +mihui365.com +mihuwa.com +miicp.com +miidc.com +miidi.net +miidii.tech +miidol.com +miiee.com +miinaa.com +miit-icdc.org +miitip.org +mij.cc +miji8.com +mijiadns.com +mijiannet.com +mijiayoupin.com +mijishe.com +mijisou.com +mijwed.com +mika123.com +mika18.com +mikannovel.com +mikechen.cc +mikecrm.com +mikemiao111.com +mikesent-awareness-02.com +mikesent.net +mikewootc.com +mikoshu.me +miku.ink +miku4567.com +mikuac.com +mikublog.com +mikucdn.com +mikuclub.fun +milan-bride.com +milanvip.com +mileage.vip +milejia.com +miletu.com +milfuns.com +miliantech.com +miliao.com +milido.vip +milihua.com +milike.com +miliol.com +miliol.org +milipictures.com +miliyo.com +milkjpg.com +milkplayer.com +milliway-ic.com +millnovel.com +milnews.com +milo-star.com +miloktv.com +miloli.info +milu.com +milvzn.com +mima.club +mimgame.com +mimi456.com +mimi518.com +mimidi.com +mimiteng.com +mimixiaoke.com +mimo51.com +mimoe.cc +mimoprint.com +mimouse.net +mimvp.com +minapp.com +mincache.com +mincdn.com +mincoder.com +mindai.com +mindcherish.com +mindhave.com +mindmanager.cc +mindmanagerchina.com +mindmapper.cc +mindmeters.com +mindmm.com +mindopu.com +mindpin.com +mindray.com +mindstore.io +minecraftxz.com +mineplugin.org +miner.tools +minerfun.com +minerhome.com +minesage.com +minewtech.com +ming80.com +mingbaoxinwen.com +mingbianji.com +mingcalc.com +mingchaoonline.com +mingchaoyouxi.com +mingcloud.net +mingczh.com +mingda.net +mingdanwang.com +mingdao.com +mingdao.net +mingdao8.com +mingdaocloud.com +mingdongman.com +mingin.com +mingjian.com +mingjinglu.com +minglian.com +mingliu8.com +mingliwenhua.com +mingmen-tech.com +mingpian.biz +mingqizhongyi.com +mingren888.com +mingrenteahouse.com +mingrenxiang.com +mingricctv.com +mingritouban.com +mingshiedu.com +mingshijt.com +mingsoft.net +mingtaokeji.com +mingtian.com +mingtian6.com +mingtrip.com +mingxiaodai.com +mingxing.com +mingxingku.com +mingxinglai.com +mingyannet.com +mingyantong.com +mingyaohui.com +mingyaweb.com +mingyi.com +mingyihui.net +mingyuanfund.com +mingyuanyun.com +mingyueqingfengshe.com +mingyuezw.com +mingzhuxiaoshuo.com +mingzihui.com +mingzw.net +minhang.cc +minhangshi.com +minhow.com +mini-audio.com +mini-program.net +mini5cn-1.opera-mini.net +mini5cn.opera-mini.net +miniadx.com +miniaixue.com +miniblink.net +minidaxue.com +minidso.com +minieye.cc +minieye.tech +minigui.com +minigui.org +minihaowan.com +miniluck.com +miningconf.org +mininglamp.com +miniso.com +minisoyo.com +ministudy.com +minitiao.com +minitos.com +miniui.com +miniwangdai.com +minixiazai.com +minniansoft.com +minor-tech.com +minqingguancha.com +minra.com +minrank.com +minretail.com +minshengec.com +mintaibank.com +mintaylor.com +mintmuse.com +mints-id.com +minunix.com +minxindai.com +minxing365.com +minxue.net +minzu56.net +miot-spec.org +mipacc.com +mipang.com +mipangwang.com +mipay.com +mipcdn.com +mipengine.org +miplus.cloud +mipujia.com +miquapp.com +mir2world.com +mir4399.com +miraclevision.net +mirari.cc +mirgaga.net +mirmzhy.com +misaka.center +misall.com +miscd.com +misclogic.com +mishangkeji.com +misiiyoo.com +miskcoo.com +mispos.cc +missevan.com +missfresh.net +missku.com +missquq.com +misstar.com +missyuan.net +misuland.com +mitang.com +mitangbao.com +mitaozhibo.org +miteno.com +miteo.net +mitiplus.com +mittrchina.com +miui.com +miutour.com +miutrip.com +miwifi.com +mix.moe +mixbao.com +mixcapp.com +mixdo.net +mixgslb.com +mixian88.com +miximixi.net +mixin.cc +mixiong.tv +mixrnb.com +mixunds.com +mixvvideo.com +mixwing.com +miy.cc +miyabaobei.com +miyabaobei.hk +miyaboke.com +miyanlife.com +miyapay.com +miyouu.com +miyuangz.com +miyupu.com +miyushu.com +mizhe.com +mizhenhao.com +mizhimedia.com +mizholdings.com +mizhuanba.com +mizuiren.com +mj85.com +mjasoft.com +mjceo.com +mjh5.com +mjia.cc +mjjcn.com +mjjq.com +mjju.net +mjjxkj.com +mjlong.com +mjmj8.net +mjmjm.com +mjmobi.com +mjoys.com +mjrui.com +mjtom.com +mjyun.com +mjyx.com +mjzj.com +mjzymh.com +mk-yiliao.com +mk2048.com +mkaliez.com +mkaq.org +mkb0898.com +mkbld.com +mkf.com +mkjump.com +mklimg.com +mknn.net +mkshell.com +mkszxh.com +mktcreator.com +mktdatatech.com +mktzr.com +mkuai.net +mkvcn.com +mkwhat.com +mkzcdn.com +mkzhan.com +mkzhou.com +mkzoo.com +ml-cg.com +ml-kq.com +mlairport.com +mlbuy.com +mlgame.wang +mlgj.com +mlibaba.com +mlinks.cc +mlito.com +mlj130.com +mlj194.com +mlj36.com +mlj55.com +mljixie.com +mljr.com +mlkmba.com +mlkxshop.com +mlmcms.com +mlmfcn.com +mlnk.me +mlnrz.com +mlnsoft.net +mlocso.com +mlog.club +mlogcn.com +mlrzsj.com +mlsub.net +mlt01.com +mlwanwan.com +mlwed.com +mlwu.net +mlxks.com +mlycdn.com +mlyfc.net +mlyfcyy.com +mlzcn.com +mm.com +mm111.net +mm12581.com +mm131.kim +mm138.com +mm2hservices.com +mm2uu.com +mm52.com +mm8mm8.com +mm957.com +mmall.com +mmaqa.com +mmarket.com +mmb.to +mmbang.com +mmbang.info +mmbang.net +mmbao.com +mmbest.com +mmbjq.com +mmbread.com +mmc-data.com +mmcxu.com +mmfad.com +mmfang.cc +mmfbm.com +mmfi.net +mmfj.com +mmgl.net +mmgogo.com +mmhktv.com +mmi-shanghai.com +mmia.com +mmim8.com +mmimm.com +mmiyue.com +mmkkiivv.com +mmloo.com +mmm.io +mmmiao.com +mmmmmmm.com +mmmtea.net +mmonly.cc +mmosite.com +mmscoo.com +mmsfw.com +mmsk.com +mmstat.com +mmtcw.com +mmtrix.com +mmtrixcnc.com +mmtrixcnet.com +mmtrixopt.com +mmtsg.com +mmuaa.com +mmwan.cc +mmww.com +mmxiaowu.com +mmy.la +mmybt.com +mmycdn.com +mmyfilm.com +mmzh.com +mn-soft.com +mn21.com +mnancheng.com +mnbvtgv.com +mndsoft.com +mng0303.com +mng044.com +mnihyc.com +mnjj.group +mnkan.com +mnlscz.com +mnoswqa.com +mnpz8.com +mnwww.com +mnxz8.com +mo-yu.com +mo298.com +mo2g.com +mo9.com +moage.com +mob.com +mob55.com +mobaders.com +moban.com +mobanhao.com +mobanjing.com +mobanku.com +mobanlane.com +mobanma.com +mobanpai.com +mobantiankong.com +mobantianxia.com +mobantianxia.net +mobantu.com +mobanwang.com +mobartsgame.com +mobawan.com +mobayke.com +mobayx.com +mobcastlead.com +mobcent.com +mobdatas.com +mobeehome.com +mobeiwenhua.com +mobgi.com +mobibao.com +mobibrw.com +mobike.com +mobile-ease.com +mobileanjian.com +mobilebone.org +mobiledissector.com +mobilegamebase.com +mobilegamecdn.com +mobilelegends.com +mobileppp.com +mobiletrain.org +mobileztgame.com +mobiw.com +mobjz.com +mobkeeper.com +mobking.biz +mobo168.com +moboage.com +moboplayer.com +moborobo.com +mobotap.com +mobring.co +mobrtb.com +mobstarry.com +mobtou.com +mobvoi.com +mocache.com +mocartoon.com +mockingbot.com +mockjs.com +mockplus.com +mockuai.com +mocn.cc +mocuz.com +modao.cc +modao.com +modao.io +modb.pro +modeng178.com +modernsky.com +modernweekly.com +modian.com +modooplay.com +modulesocean.com +moduovr.com +moduseo.com +modusnb.com +modxz.com +moe.im +moe123.com +moe123.net +moe123.org +moe321.com +moeamv.com +moeblog.vip +moeclub.org +moecoder.com +moeelf.com +moefactory.com +moefantasy.com +moefou.org +moehu.org +moehui.com +moeid.com +moejam.com +moejj.com +moejp.com +moemiao.net +moenis.com +moeover.com +moerail.ml +moerkeji.net +moerlong.com +moesola.com +moetu.org +moetuji.com +moew.xyz +moeyue.com +moezu.com +moezx.cc +mofa.com +mofanbaby.com +mofang.com +mofang.jp +mofangge.com +mofanghr.com +mofangshe.com +mofangyu.com +mofavideo.com +mofazhu.com +mofenglife.com +mofile.com +mofishgames.com +mofoun.com +mofunenglish.com +mogoedit.com +mogohd.com +mogoroom.com +mogu.com +mogu.io +mogubill.com +mogucdn.com +moguf.com +mogujia.com +mogujie.com +mogujie.org +mogumiao.com +moguproxy.com +mogustore.com +mogutong.com +moguupd5.com +moguv.com +moguvet.com +moguyun.com +moh.cc +moh7.com +moh8.com +moheqq.com +mohou.com +mohu.org +mohuanhua.com +moihu.com +moimg.net +moioi.com +moith.com +moji.com +moji001.com +moji002.com +mojicb.com +mojicdn.com +mojichina.com +mojidong.com +mojieai.com +mojitest.com +mojocube.com +mojuedu.com +mokahr.com +mokalady.com +mokaoba.com +mokatyper.com +mokayuedu.com +mokezhan.com +mokiee.com +moko.cc +moks.cc +molbase.com +molbase.net +molegu.com +molei.net +molerose.com +molibaike.com +molibiancheng.com +molie.com +molihe.cc +molinsoft.com +moliplayer.com +moliqiji.com +molixiangce.com +molizm.com +molloc.com +moltentec.com +momdm.com +momentcdn.net +momhui.com +momishi.com +momo9.me +momobako.com +momocdn.com +momochufang.com +momooyo.com +momoshifu.com +momotn.com +momoyoyo.com +momzs.com +moneydai.com +moneydata.hk +moneygz.com +moneyslow.com +mongochina.com +monhun.fun +monidai.com +monizl.com +monknow.com +monph.com +monseng.com +monsooncvs.com +monsterlin.com +montage-tech.com +monteamor.com +monternet.com +monthdate.com +montnets.com +monv.com +monxin.com +moocollege.com +moodmoon.com +moodoon.com +moogos.com +moojing.com +moojnn.com +moomcherry.com +moomoo.com +moonbasa.com +moonbook.com +mooncell.wiki +moonfly.net +mooninbox.com +moonjer.com +moonlian.com +moonsec.com +moontc.com +moonx.ai +moooc.cc +mooooc.com +moootooo.com +moore.live +moore.ren +moore8.com +moorecat.com +mooreelite.com +mooreiot.com +mooreren.com +moowo.com +mop.com +mopaas.com +mopaasapp.com +mopair-erm.net +mopcn.com +mopei8.com +moper.me +mopiaoyao.com +mopicer.com +mopoint.com +mopsky.com +moqifei.com +moqikaka.com +moqilin.net +moqing.com +moqipobing.com +moqu8.com +moquu.com +morancoo.com +morechinese.cc +moreck.com +morefood.com +morequick.net +moresing.com +moretickets.com +morevfx.com +morewis.com +morewiscloud.com +morigames.com +morihei.net +moring.pw +morketing.com +morning.work +morningcore.com +morninghan.com +morningwhistle.com +morstar.net +moseacg.com +moseeker.com +mosesenglish.com +mosgcj.com +mosheng520.com +moshou.com +moshuanghua.com +moshuqiqiu.com +mosifel.com +mosoga.net +mossle.com +mostch.com +mostsd.com +motanku.com +motherchildren.com +motie.com +motieimg.com +motilive.com +motimaster.com +motionhubtuto.com +motisky.com +moto-one.com.hk +moto8.com +motrix.app +mottoin.com +motuo2.com +motuowei.com +mouldbbs.com +mouldnews.com +moulem.com +moumi.com +mounriver.com +mounstar.com +mountor.net +mounui.com +mousycoder.com +mout.me +moutaichina.com +movcam.com +movcms.com +movesee.com +movesky.net +moviemore.com +movit-tech.com +mowan123.com +mowowo.com +mowuhe.com +mox.moe +moxdao.com +moxfive.xyz +moxiai.com +moxian.com +moxiaofei.com +moxiaoqihuoguo.com +moxing.net +moxingyun.com +moxiu.com +moxiu.net +moxiwh4.com +moyangmoyang.com +moyann.com +moyazhenzhu.com +moye.me +moyimusic.com +moyoutang.com +moyoyo.com +moyuba.com +moyublog.com +moyugroup.com +moyumedia.com +moyunso.com +moz8.com +mozhan.com +mozheanquan.com +mozhedun.com +mozhenhau.com +mozhes.com +mozichina.com +mozigu.net +mozillaonline.com +mozillazg.com +mp4ba.com +mp4cn.com +mp4er.cc +mp4ju.com +mp4so.com +mpaascloud.com +mpacc.net +mpaidata.com +mpdaogou.com +mpdsj.com +mpfmall.com +mphdx.com +mpiano.com +mplife.com +mplus.tech +mpopkart.com +mpos.ren +mpweixin.net +mpxiaomi.net +mpxiaoshuo.com +mpxx.net +mqant.com +mqcoffee.com +mqego.com +mquanquan.com +mqwds.cc +mqxww.com +mr-ping.com +mr77.com +mr91.com +mrabit.com +mrbanana.com +mrbluyee.com +mrcjcn.com +mrcrm.com +mrcywang.com +mrdede.com +mrentea.com +mrevisa.com +mrhallacg.com +mrjiang.com +mrjjxw.com +mrkevin.net +mro9.com +mrpyq.com +mrqf.com +mrshuhua.net +mrsta.com +mrsu.me +mrtbc.com +mrw.so +mrwfbk.bar +mrwish.net +mrzhenggang.com +mrzl.com +mrzs.net +ms211.com +ms315.com +ms6666111.com +mscbsc.com +mschcdn.com +mscto.com +msddp.com +msdelectron.com +msfpay.com +msfxt.com +msgcarry.com +msgr.dlservice.microsoft.com +msgruser.dlservice.microsoft.com +msgtjj.com +mshandong.com +mshc2018.com +mshengb.com +mshot.com +mshouyou.com +mshxw.com +msits.com +msjcqm.com +msjxxz.com +mskjf.com +msl.la +mslzz.com +msmartlife.com +msmbjp.com +msoso.com +mspharm.com +mspring.org +msrtvu.net +msstatic.com +mstarsemi.com +mstchina.com +msudz.com +msunland.com +msvod.cc +msweekly.com +msxf.com +msxf.net +msxfmall.com +msxh.com +msxiaobing.com +msymjz.com +msyos.com +mszmapp.com +mszq.com +mszsx.com +mszxyh.com +mt-bbs.com +mt-spirit.com +mt-wire.com +mtasia.net +mtavip.com +mtblj.com +mtchome.com +mtcm006.com +mtcnsoft.com +mtcop.com +mtcsys.com +mtcx99.com +mtdpgame.com +mtdx.net +mtedu.com +mtestin.com +mtgchina.com +mti100.com +mtiancity.com +mtianshitong.com +mtide.net +mtime.com +mtimeimg.com +mting.info +mtizt.com +mtk.com.tw +mtkan.net +mtkdy.com +mtketang.com +mtksj.com +mtktk.com +mtm.mo +mtmos.com +mtmss.com +mtmssdn.com +mtmssdn0.com +mtnets.com +mtnets.net +mtoilet.com +mtoou.info +mtr8.com +mtrendgroup.com +mtscj.com +mtty.com +mtu46.com +mtunique.com +mtv123.com +mtw.so +mtwine.com +mtwl.net +mtxgx.com +mtxyx.com +mtyee.com +mtyun.com +mtzbs.com +mtzc100.com +mtzcjy.com +mtzmyjf.com +mtzuichen.com +mtzxgf.com +mu8.cc +mubanjianli.com +mubie.net +mubu.com +mubu.io +mubucm.com +mucaipin.com +mucf.cc +mucfc.com +muchangqing.com +muchlab.com +muchong.com +muchrank.com +mudiao360.com +mudongguang.com +mudoudou.net +mudu.tv +mufengyue.com +muftc.com +mugeda.com +muguaddy.com +muhai.net +muhoujiemi.com +muimg.com +mujj.us +mukewang.com +mukool.com +mulazim.com +mulinf99.com +mum.cc +mumayi.com +mumu01.com +mumumoo.com +muniao.com +mupceet.com +murdermysterypa.com +murl.tv +muryi.net +muse-ui.org +mushafa.net +mushapi.com +mushroomchina.com +music.apple.com +music163.com +music4x.com +musicbody.net +musicchina-expo.com +musicdu.com +musiceol.com +musicsky.org +musikid.com +musiness.vip +muslimwww.com +mustups.net +musyder.com +mutouxb.com +mutualhunter.com +mutuoluo.com +muwai.com +mux5.com +muxin.fun +muxiulin.com +muxufang.com +muyangkuaibao.com +muyee.com +muyewx.com +muying.com +muyingjie.com +muyingzhijia.com +muyishu.com +muyuanfoods.com +muzhi.us +muzhigame.com +muzhiwan.com +muzi999.com +muzijie.com +muzili.xyz +muzisoft.com +mvben.com +mvc188.com +mvhere.com +mvmpg.com +mvnas.com +mvnjar.com +mvoicer.com +mvote.net +mvpdj.com +mvpsky.com +mvyxws.com +mw.com +mw1950.com +mwadx.com +mwave.tech +mwcloudcdn.com +mwcloudcdn.info +mwcname.com +mweda.com +mwjournalchina.com +mwjx.com +mwrf.net +mwrfchina.org +mwrftech.com +mwyzhcdn.com +mx175.com +mx3g.com +mxarts.com +mxchip.com +mxddp.com +mxde.com +mxguan.com +mxhaitao.com +mxhichina.com +mxifund.com +mxingkong.net +mxjinchao.com +mxjtedu.com +mxjyxx.com +mxk.cc +mxlvniao.com +mxnavi.com +mxnfq.com +mxnxs.com +mxomo.com +mxqe.com +mxria.com +mxs.com +mxslly.com +mxsyzen.com +mxtcn.com +mxtrk.com +mxtronics.com +mxw3.com +mxyn.com +mxzsjt.com +mxzx123.net +mxzzzs.com +my-3dcad.com +my-host.cc +my-ndns.com +my-summit.com +my.st.com +my0511.com +my0513.com +my0538.com +my0551.com +my0792.com +my0832.com +my089.com +my120.org +my1616.net +my1688.shop +my253537.com +my285.com +my2852.com +my2space.com +my2w.com +my399.com +my3w.com +my419.com +my4399.com +my51a.com +my5m.com +my5v.com +my607.com +my68.com +my7475.com +my7v.com +my88316666.com +my9166.com +my9527.com +my97.net +myagric.com +myaijarvis.com +myalert.info +myalicdn.com +myanjian.com +myanmarembassy.com +myantu.com +myapks.com +myapp.com +myarowanas.com +myauth.us +mybank.cc +mybdqn.com +mybjx.net +mybosc.com +myboyan.com +mybwallet.com +mybxg.com +mycaigou.com +mycaijing.com +mycaixun.com +mycar168.com +mycaraok.com +mycardgame.net +mycat.io +mychemy.com +mychery.com +mychery.net +mychinaevent.com +mychunyan.net +mycleanmymac.com +myclub2.com +mycnc.org +mycodes.net +mycollect.net +mycolorway.com +mycoov.com +mycos.cc +mycos.com +mycos.net +mycos.org +mycospxk.com +mycoss.com +mycoss.net +mycoss.org +mycrtb.com +mydadao.com +mydao.net +mydbfx.com +mydcyj.com +mydebook.com +mydeershow.com +mydf.net +mydianshijia.com +mydical.com +mydict.org +mydigi.net +mydigit.net +mydiyclub.com +mydnns.com +mydns8.com +mydnser.com +mydnspod.net +mydnsw.com +mydoc.io +mydown.com +mydown168.com +mydreamplus.com +mydrivers.com +myeclipsecn.com +myekp.net +myezdns.com +myf6.com +myfans.cc +myfcomic.com +myfirstwon.com +myfrfr.com +myfun.com +myfun7.com +myfund.com +mygame66.com +mygame82.com +mygame88.com +mygjp.com +mygobatv.com +mygolbs.com +myguancha.com +mygx.net +mygzb.com +myhack58.com +myhaowai.com +myhard.com +myhayo.com +myhexin.com +myhithink.com +myhongzuan.com +myhostadmin.net +myhuahuo.com +myhuaweicloud.com +myhuilv.com +myhwclouds.com +myicloud.vip +myie.me +myie9.com +myip.la +myiplay.com +myir-tech.com +myirtech.com +myitit.com +myjhxl.com +myjianzhu.com +myjishu.com +myjob.com +myjob500.com +myjoit.com +myjoy777.com +myk3.com +mykqyy.com +mylbabao.com +mylegist.com +mylguoji.com +mylhospital.com +mylhz.com +mylibs.org +mylike.cc +mylike.com +mylikechat.com +mylikesz.com +mylikeyk.com +mylink.ink +mylitboy.com +mylmad.com +mylotushealth.com +mylovehome.com +mym001.com +mymaitian.com +mymanhua.com +mymetal.net +mymhotel.com +myminapp.com +mymofun.com +mymoive.com +mymova.com +mynb8.com +mynee.com +myoas.com +myodatech.com +myoldtime.com +myonlystar.com +myopenwrt.org +myoppo.com +myoschain.com +myottad.com +myouth.net +myp2pch.net +mypal.wang +mypcera.com +mypcrun.com +mypethome.com +mypian.com +mypiao.com +mypitaya.com +mypity.com +mypm.net +myprad.com +mypscloud.com +mypsy365.com +myptpt.com +myqcloud.com +myqcloud.net +myqee.com +myqiantu.com +myqqjd.com +myra2.com +myrb.net +myreadme.com +myrice.com +myriptide.com +myrtb.net +myrunners.com +myruru.com +mysanco.com +myscore.org +mysemlife.com +myshow800.com +myshown.com +myshu.org +myshxz.com +mysinablog.com +mysinamail.com +mysipo.com +mysixue.com +mysmth.net +mysodao.com +mysongktv.com +mysore-yoga.com +myspain.org +mysqlab.net +mysqlops.com +mysqlpub.com +myssl.com +mystao.com +mysteel.com +mysteel.net +mysteelcdn.com +mysteelcms.com +mystudyerte.com +mysubmail.com +mysupa.com +mysuperbest.com +mysuperdns.com +mysvw.com +myt126.com +mytanwan.com +mythbird.com +mythcall.com +mythcare.com +mythidea.com +mythroad.net +mythsman.com +mythware.com +mythware.net +mytijian.com +mytju.com +mytokenpocket.vip +mytrix.me +mytv365.com +mytvbt.com +mytvgame.com +myuall.com +myubbs.com +myuclass.com +myujob.com +myun.tv +myunke.com +myunying.com +myushan.com +mywakao.com +mywang.net +mywayboo.net +myweimai.com +mywh.com +mywll.com +mywood.cc +myxypt.com +myyishu.com +myyj.net +myyoudao.com +myyx618.com +myyx915.com +myyzd.com +myzaker.com +myzebravip.com +myzhiniu.com +myzhongjin.com +myznh.com +myzte.com +mz-oneacg.com +mz-sys.com +mzbei.com +mzboss.com +mzeyes.com +mzfile.com +mzfxw.com +mzgtuan.com +mzh.ren +mzhb.com +mzhfm.com +mzhujia.com +mzi8.com +mzjmedia.com +mzmjapp.com +mzone.site +mzread.com +mzres.com +mzsky.cc +mzsmn.com +mztgame.com +mztzzx.com +mzuan.com +mzwu.com +mzxwz.com +mzyfz.com +mzyun.ren +mzzjw.com +n-bros.net +n-mobile.com +n0808.com +n12345.com +n12xar123.xyz +n21.cc +n3ko.co +n3sd.com +n423.com +n459.com +n77777777.com +n802.com +n9cn.net +n9z.net +naadou.com +nadianshi.com +nafanlong.com +nagain.com +nagcloudcs.com +nagekuai.com +nahan.org +nahuayuan.com +nahuo.com +nahuo9.com +nai.la +nai.si +nai8.me +naibabiji.com +naibago.com +naicha99.com +naichabiao.com +naichagang.com +naifei.pro +naigirl.com +naikanxs.com +naimei.com +nainiuapp.com +naiping.net +naitang.com +naiveblue.com +naiyou.cc +najiaoluo.com +nakedhub.com +nakedsail.com +nakevip.com +nalanxi.com +nalichi.com +name1688.com +name2012.com +name5566.com +namedq.com +nameidi.com +namepre.com +namesilopro.com +namibox.com +namipan.com +namitiyu.com +namoc.org +nanadao.com +nanapro.org +nanbeiyou.com +nanbushenghuo.com +nandagang.cc +nandasoft.com +nandu.com +nanerjia.com +nanerlee.me +nanfu.com +nanguache.com +nangualin.com +nanhaitoday.com +nanhe111.com +nanhua.net +nanhufund.com +nanhuhr.com +nanhutravel.com +nani.online +nanjiaosuo.com +nanjingchenxi.com +nanjinghuojia.net +nanjingkaishan.com +nanjingtianqi114.com +nanjingui.com +nanjixiong.com +nankaimba.org +nanlebbs.com +nanlive.com +nanningjie.com +nanoer.net +nanopi.org +nanputuo.com +nanqi.org +nanrenbang.in +nanrenge.net +nanrentu.cc +nanrenvip2021.xyz +nanrenwa.com +nanrenwo.net +nanshan.biz +nanshanski.com +nanshifaxing.com +nantaihu.com +nantongbike.com +nantonghua.net +nantongle.com +nanxueqx.com +nanxunjob.com +nanyangcable.com +nanyuanyinfong.com +nanyuetong.com +nanzhao1.com +naobiao.com +naoda.net +naoffer.com +naonaola.com +naozhong.net +napiantian.com +naquan.com +narkii.com +narrowad.com +naruto.red +naruto4u.com +narutom.com +nas66.com +nasgetinfo.com +nashwork.com +nasimobi.com +nasiosoft.com +nasyun.com +nat123.com +natamoo.com +natappfree.cc +natbbs.com +natertech.com +nationalchip.com +nationsky.com +nationstech.com +naturali.io +nature-museum.net +naturesvariety-china.com +natywish.com +nauac.com +navchina.com +navimentum.com +navinfo.com +naxcx.com +naxide.com +nayao.com +nayatec.com +nayei.com +nazo.fun +nb-medicalsystem.com +nb301.xyz +nb591.com +nb888888.com +nba008.com +nbabm.com +nbahero.com +nbahi.com +nbahjx.com +nbaqmq.com +nbayaobasketballclub.com +nbazww.com +nbbeer.com +nbbiao.com +nbchao.com +nbcsgo.com +nbcyl.com +nbdeli.com +nbdeli.net +nbdig.com +nbdisco.com +nbegame.com +nbegame.net +nbenl.com +nbfox.com +nbgdjt.com +nbhao.org +nbhky.com +nbimer.com +nbimg.com +nbjhawl.com +nbjlw.com +nbjnw.com +nbjzjn.com +nbkc-rp.com +nbmai.com +nbmao.com +nbmedicalsystem.com +nboxnas.com +nbpolytheatre.com +nbrj.com +nbsason.com +nbshuoxue.com +nbsqbank.com +nbt.ren +nbtarena.com +nbudp.com +nbunicom.com +nbwaf.net +nbwan.net +nbwb.net +nbwbw.com +nbweekly.com +nbyang.com +nbyeda.com +nbz4jc2j.com +ncacg.org +ncartfoundation.org +ncdxbbs.com +ncfcsa.org +ncfcw.net +ncfgroup.com +ncfstatic.com +ncfwx.com +ncfxwhjjh.com +ncfz.com +nchq.cc +nciku.com +nciyuan.com +ncjld.com +ncmem.com +ncnynl.com +ncpa-classic.com +ncpqh.com +ncpssd.org +ncq8.com +ncrica.org +ncu.me +ncvtinfo.com +ncvtmi.com +ncwyxh.com +ncxb.com +ncyinghuochong.net +ncyunqi.com +nczfgjj.com +nczfj.com +nd090.com +nd15.com +nd56.com +nddaily.com +nddnrm.com +ndfsl.com +ndh21.com +ndhys.com +ndmh.com +ndnslab.com +ndoo.net +ndscsoft.com +ndser.net +ndtinfo.net +nduoa.com +nduotuan.com +ndvs87d.com +ndzsx.com +ne21.com +neaechina.com +nearcharge.com +nearsnet.com +nease.net +neat-reader.com +neavo.me +nebulogy.com +nedaex.com +nedigitals.com +needexam.com +needma.com +needyouknow.com +neegle.net +neeq.cc +neets.cc +neeu.com +negroupedu.org +neigou.com +neihan8.com +neihanshequ.com +neimengguyongli.com +neitui.com +neituixiaowangzi.com +nelkshuhe.com +nellit.net +nengapp.com +nenggeimall.com +nengshida.com +nengyongma.com +nengzuo.com +nenup.com +neo.org +neoap.com +neobiochina.com +neoease.com +neoease.org +neofussvr.sslcs.cdngc.net +neojos.com +neokylinschool.com +neolee.com +neolix.net +neoremind.com +nepconchina.com +nepian.com +neptcn.com +ner98.com +nercel.com +nerocn.com +nesbbs.com +nestgene.com +nestlechinese.com +nesxc.com +net-add.com +net-swift.com +net0516.com +net111.info +net114.com +net130.com +net199.com +net2345.net +net263.com +net3q.com +net767.com +net9.org +netac.com +netat.net +netbarcn.net +netbian.com +netcnnet.net +netcoc.com +netcolor.com +netconst.com +netcoretec.com +netded.com +netdzb.com +netease.com +netease.im +neteasegames.com +netentsec.com +netesee.com +netgamecar.com +netiler.com +netinbag.com +netinfi.com +netinfi.net +netitest.com +netkao.com +netnoease.com +netok.cc +netpi.me +netposa.com +netqd.com +netqon.com +netsmell.com +netsoz.com +netspreading.com +netstatic.net +netsun.com +nettsz.com +nettvl.com +nettvl.net +networkbench.com +networkbrand.com +netzonesoft.com +neu-reality.com +neucrack.com +neuedu.com +neuhm.com +neunn.com +neupeer.com +neusncp.com +neusoft.com +neutrontek.com +neuwill.com +neuzs.com +nev-battery.org +new-mobi.com +new-more.com +new-thread.com +new1cloud.com +newacademic.net +newadblock.com +newadx.com +newaircloud.com +newapi.com +newasp.net +newayz.com +newbandeng.com +newbanker.com +newbd.com +newbe.pro +newbeebook.com +newbiefly.com +newbmiao.com +newbolunesport.com +newcapec.net +newcger.com +newchainbase.com +newchieve.com +newchinalife.com +newclasses.org +newclouddenfender.com +newcosemi.com +newdao.net +newday.me +newdefend.com +newdiediao.com +newdon.net +newdruginfo.com +newdu.com +newdun.com +newdun.net +newdur.com +newer2001.com +newfavor.net +newgamer.com +newhopeagri.com +newhopegroup.com +newhtml.net +newhua.com +newistock.com +newjson.com +newlandaidc.com +newlifex.com +newmaker.com +newman.mobi +newmargin.com +newnanbao.com +newnewle.com +newoasis.cc +newoer.com +newoo.com +neworiental.org +nework360.com +neworld.org +neworldedu.org +neworldjp.com +newperiod.net +news18a.com +news606.com +newsafe.xyz +newsccn.com +newscctv.net +newsdao.com +newseasoft.com +newsgd.com +newsgu.com +newsing.com +newskj.com +newskj.org +newsmth.com +newsmy-car.com +newsmy.com +newsmyshop.com +newsn.net +newspluse.com +newssc.net +newssc.org +newstarpress.com +newstartsoft.com +newstjk.com +newsv5.com +newsxc.com +newsyc.com +newtalentaward.com +newtonghua.com +newtop100.com +newtouch-elec.com +newtrip.com +newume.com +newvfx.com +newxing.com +newxitong.com +newxue.com +newyx.net +newzgc.com +newzhizao.com +nexmoe.com +nexon.to +next-union.com +nextday.im +nextjoy.com +nexto2o.com +nextpcb.com +nextrt.com +nextsee.com +nexttao.com +nexttix.net +nextyu.com +nexus.dell.com +nfa5.com +nfc315.com +nfcic.com +nfcmag.com +nffund.com +nflchina.com +nfmedia.com +nfmrtfv.com +nfpeople.com +nfs-china.com +nfs-wuxi.com +nfschina.com +nfwin.com +nfyk.com +nfzhouyi.com +nfzmbrand.com +ng-alain.com +nga.wiki +ngabbs.com +ngacn.cc +ngacn.com +ngarihealth.com +ngbbs.com +ngcgears.com +ngctransmission.com +ngfans.net +ngh6.com +nginstar.net +ngjjtg.com +ngloom.me +ngnice.com +ngocn.net +ngoos.org +ngportal.cdnetworks.com +ngrok.wang +ngui.cc +ngxfence.net +ngxfence.org +nh.com +nhaidu.net +nhbhpx.club +nhdmd.com +nhganggeban.com +nhnexpo.com +nhnsc.com +nhnst.com +nhooo.com +nhstu.com +nhxz.com +nhygkj.com +nhzedu.com +nhzj.com +nhzs.com +ni8.com +nianbin.com +nianhuiba.com +nianw.com +nianzhi.cc +niaobee.com +niaobulashi.com +niaocms.com +niaogebiji.com +niaola.com +niaoyun.com +niba.com +nibaguai.com +nibaku.com +nibiye.com +nic.de +nic.ren +nic.wang +nicaifu.com +nice-app.com +nice1688.com +nicebing.com +nicecdn.com +nicefilm.com +niceimg.net +niceisp.com +nicekid.com +nicelabel.cc +nicelinks.site +niceloo.com +niceonegame.com +nicetuan.net +nicky1605.com +nicolaszhao.com +niconiconi.cc +nidong.com +nie.io +nielsenccdata.tv +nies.org +niexiaotao.com +nieyou.com +nifengz.com +nightwishcn.com +nihao.net +nihaotw.com +nihaowang.com +nihaowua.com +nihontu-cn.com +nihuwo.net +niiceda.com +niiwoo.com +nikanpian.com +nikefree-run.net +nikest.com +nikkisoft.com +nikkiup2u2.com +nilai.com +nilegu.com +niliu.me +nilmap.com +nima.wang +nimzx.com +ninebot.com +ninecoign.com +ninepart.com +nineroad.com +ninesix.cc +ninestargroup.com +ningbo-airport.com +ningbocat.com +ningbofy.com +ningbotm.net +ningdo.com +ninghao.net +ningidc.com +ningkangyuan.com +ningkekeji.com +ningmengdou.com +ningmengyun.com +ningmoe.com +ningoo.net +ningto.com +nington.com +ningxingxing.com +ningxinm1.com +ninjacn.com +ninjadq.com +ninjamustdie.com +ninze.com +nio.com +nioapis.com +nipei.com +nipic.com +nishuoa.com +nitaitag.com +nitianxieshen.com +nitutu.com +niu-ba.com +niu.com +niua.com +niuacc.com +niuap.com +niubb.com +niubb.net +niubi114.com +niubilai.com +niubilety.com +niubiquan.com +niubixia.com +niuboli.com +niucache.com +niucdn.com +niuche.com +niucodata.com +niudai120.com +niug8.com +niugame.net +niugp.com +niuguwang.com +niuhudong.com +niujinniu.com +niukk.com +niuliangyun.com +niuniufund.com +niuniutui.com +niuniuwan.com +niupinhui.com +niupu.com +niuqia.com +niurenqushi.com +niuschools.com +niushe.com +niutoushe.com +niutrans.com +niutrip.com +niutuku.com +niuwap2p.com +niuwk.com +niuxgame77.com +niuxiao.net +niuxiaoq.com +niuxyun.com +niuxz.com +niuyan.com +niuyou5.com +niuyuan.com +niuza.com +niuzhu.com +niuzhuan-test.com +nivtc.com +niwodai.com +niwodai.net +niwoning.com +niwota.com +niwoxuexi.com +nixiba.com +nixwang.com +nizhan888.com +nizhanw.com +nizi88.com +nizkeyboard.com +nizuixing.com +nj-bl.com +nj-fst.com +nj-marathon.org +njaeqjx.com +njbaisou.com +njc100.com +njcdata.com +njcedu.com +njcgs.com +njcitygas.com +njctkj.com +njcw.com +njd1.com +njdapaidang.com +njdewo.com +njdfwb.com +njgb.com +njgep.com +njgjj.com +njhaiwai.com +njhengyou.com +njhgame.com +njhszoo.com +njhwsk.com +njibhu.com +njjn.com +njjsyy.com +njjuntong.com +njkefayuan.com +njl114.com +njliaohua.com +njlike.com +njlingyun.com +njljjy.com +njlzsx.net +njmama.com +njmuseum.com +njnutz.com +njqxrc.com +njrc365.com +njrx.cc +njsd-china.org +njshengyuanli.com +njsjz.com +njskps.com +njsxbw.com +njsyue.com +njuaplusplus.com +njuftp.org +njupt-sacc.com +njw88.com +njwfgs.com +njwww.net +njxsmaofa.com +njxsmfyh.com +njxsmz.com +njxzwh.com +njyayishipin.net +njycwy.com +njyingtaoya.com +njyongji.com +njyydl.com +njzb.net +njzc025.com +njzdsp.com +njzhzx.net +njzztyl.com +nk84.com +nkp969.com +nkscdn.com +nktaba.com +nktxv.com +nky556.com +nkyp.com +nlark.com +nlinkline.com +nljb.net +nlpjob.com +nlscan.com +nlv2.com +nlxn.com +nly6.com +nlypx.com +nlzpy.com +nm8yx.com +nmbgjx.com +nmet168.com +nmgd.com +nmgdw.com +nmgfood.net +nmgfrank.com +nmggyy.com +nmgjzjn.com +nmgkjzx.com +nmglawyer.com +nmgwyw.org +nmgyjszx.com +nmgyljs.com +nmhfw.com +nmhrjy.com +nmimi.com +nmkjxy.com +nmmwz.com +nmszjy.com +nmtyxy.com +nmvps.com +nmweidian.com +nmysyey.com +nmyygs.com +nmzc02.com +nmzh.net +nmzol.com +nmzzlhwlkj.com +nn.ci +nn.com +nn12333.com +nn92.com +nncc626.com +nncgs.com +nncj.com +nndims.com +nnduyi.com +nngdjt.com +nngjjx.com +nnit30.com +nnjioko.com +nnjt.com +nnlib.com +nnmama.com +nnmutong.com +nnn666.com +nnnews.net +nnsbbs.com +nnsc6.com +nnsky.com +nnszwl.com +nnt0.net +nntlj.com +nntskq.com +nnudream.com +nnwb.com +nnweding.com +nnylf168.com +nnynrc.com +nnzsxblaw.com +noah-dream.com +noahedu.com +noahsnail.com +noahteck.com +nobanus.com +nobmoo.com +nocang.com +nocare.com +noclyt.com +nocode-tech.com +nocode.com +noddl.me +node.beer +nodeasy.com +nodeclass.com +nodeedge.com +nodeing.com +nodejs999.com +nodekey.com +nodepacific.com +noeic.com +nohken-sdy.com +nohup.cc +nokia-sbell.com +nokia88.com +nolanchou.com +nolovr.com +nomax.vip +nome.com +nonganxian.com +nongcun5.com +nongfen.com +nongfuspring.com +nongji1688.com +nongji360.com +nongjiaba.com +nongjitong.com +nongjx.com +nongli.com +nongli.net +nongli114.com +nonglirili.net +nongmintv.com +nongnet.com +nongplay.com +nongquan.net +nongshang.com +nongshijie.com +nongxinyin.com +nonobank.com +nonozone.net +noobcoder.club +noobyard.com +noobyy.com +noodba.com +noogel.xyz +noontec.com +noops.me +nooshen.com +nopis.org +noposion.com +nopph.website +noq.cc +nor-land.com +nordfxs.com +nordicways.com +nordikr.com +nordritools.com +norinco.com +norincogroup-ebuy.com +norlinked.com +normcore.com +normstar.net +northdm.com +northdy.com +northgun.com +northidc.net +northtimes.com +nosec.org +nosuchfield.com +not3.com +notadd.com +note52.com +notedeep.com +noteniu.com +notetech.org +notrisk.com +novaicare.com +novalide.com +novapps.com +novastargame.net +novel-supertv.com +novemideas.com +novotimes.com +novtium.com +now-cn.net +nowapi.com +nowbeta.com +nowchip.com +nowcoder.com +nowcoder.net +nowec.com +nowo.com +nowodds.com +nowre.com +nows.fun +nowscore.com +nowshipin.com +nowxz.com +nowyingshi.com +noxgroup.com +noxue.com +noxxxx.com +noyes88.com +npbdp.com +npc233.com +npcgo.com +npcka.com +nphoto.net +nplusgroup.com +nplusgroup.net +npmmirror.com +npodevelopment.org +npoll.net +npp.cc +npxsw.com +npy858.com +npyun.com +npz.com +nq6.com +nr-esc.com +nrdzqwd.com +nrec.com +nren8.com +nrsfh.com +nrsg.net +nruan.com +nrzsjk.com +ns1.ge +ns1.hk +ns168.net +ns2.ge +ns203.com +ns365.net +ns5n.com +ns8d.com +ns96.com +nsbeta.info +nscloudwaf.com +nscscc.com +nscscc.org +nseac.com +nsecsoft.com +nsfocus.com +nsfocus.net +nsforce.net +nshen.net +nshzpks.com +nsini.com +nsisfans.com +nsnodes.com +nsoad.com +nsoft.vip +nsrfww.com +nsrjlb.com +nss.im +nssd.org +nsshare.com +nsstream.com +nstom.net +nstooll.com +nsw88.com +nsw99.com +nswyun.com +nsydt.com +nszmz.com +nt.cc +ntalker.com +ntaow.com +ntce.com +ntcfy.com +ntdvf.com +ntechw.com +ntefyxq.com +ntejiazheng.com +ntes53.com +ntfabu.com +ntfsformac.cc +nthfw.com +nthysp.com +ntjoy.com +ntjrchina.com +ntjymall.com +ntneuro.org +ntp.felixc.at +ntpcb.com +ntqcct.com +ntrcb.com +ntryjd.net +nttui.com +ntuiw.cc +ntuiw.com +ntwikis.com +ntwzy.com +ntzhoas.com +nu1l.com +nuan.io +nuandao.com +nuanjiayuan.com +nuanmaoer.com +nuanshi100.com +nuanyuehanxing.com +nubb.com +nubee.cc +nubia.cc +nubia.com +nucc.com +nucleisys.com +nuecidc.com +nuedcchina.com +nufans.net +nullice.com +nullno.com +num1dns.com +numseed.com +nunu8.com +nuobeiliao.com +nuodefund.com +nuoder.com +nuoha.vip +nuoji.com +nuojiugo.com +nuokui.com +nuomi.com +nuomicikoi.com +nuomiphp.com +nuonuo.com +nuozhan.com +nuozhensh.com +nuqk.com +nutjs.com +nutriease.com +nutsbp.com +nutspace.com +nutz.io +nutzam.com +nuvoltatech.com +nuvoton-m0.com +nuvoton-mcu.com +nuxue.com +nv2118.com +nvcam.net +nvcong.com +nvdiao.com +nvidia-china.com +nvliren.com +nvloo.com +nvren55.com +nvsay.com +nvsheng.com +nvshengjie.com +nvshuyun.com +nvtnet.com +nvude3.com +nvwu.com +nvzhanshen.com +nvzhubo.cc +nvziwu.com +nw-host.com +nwbbs.com +nwct.me +nwdlink.com +nweon.com +nwtongcheng.com +nx.cm +nx5.com +nxadmin.com +nxcells.com +nxdns.net +nxecaiji.com +nxengine.com +nxez.com +nxflcp.com +nxflv.com +nxggzyjy.org +nxgjbyy.com +nxgqt.org +nxgtjt.com +nxhscxkj.com +nxin.com +nxit.us +nxly766.com +nxnet.net +nxnews.net +nxnresearch.com +nxol.net +nxpic.org +nxrrvmy.com +nxsks.com +nxtianshangb.com +nxty88.com +nxwly.com +nxyoute.com +nxyqs.com +nxyuanjing.com +ny-yy.com +ny83.com +ny8z.net +ny913.com +nyaa.io +nyaacat.com +nyasama.com +nyato.com +nybai.com +nybaidu.net +nyckidsclub.com +nyk688.com +nync.com +nypd520.com +nyrsksw.com +nyshszh.com +nysmfc.com +nyyzjg.com +nyzydz.com +nz86.com +nzbdw.com +nzchina.com +nzsiteres.com +nzw-china.com +nzwgs.com +o--o.win +o-netcom.com +o-sky.com +o-star.cc +o136.com +o2123.com +o2ee.com +o2mania.com +o2moment.com +o2o4.com +o2obill.com +o2oevent.com +o2oexpo.com +o2osd.com +o2ting.com +o2yhq.com +o37o.net +o3ndix.com +o4on.vip +o7h.net +o8ak.com +o8tv.com +oa025.com +oa0351.com +oa169.com +oa25.org +oa5588.com +oa8000.com +oabg.net +oabus.net +oacn.org +oact.net +oadz.com +oahelp.com +oahelp.net +oameibang.com +oaqi.com +oatos.com +oauto.com +oawhy.com +ob-park.com +obagame.com +obesu.com +obins.net +obj6.com +objccn.io +objcer.com +objcoding.com +obkoro1.com +obkprint.com +obohe.com +obolee.com +oborad.com +oborr.com +obowin.com +obsapp.net +obyee.com +ocar.tv +ocd120.com +oceanbase.com +oceanbot-steam.com +oceancnc.com +oceanengine.com +oceanlau.com +oceanol.com +oceanplayable.com +oceeq.com +ocimg.com +oclkj.com +ocooca.com +ocpan.org +ocri-genomics.org +ocrmaker.com +ocsp-lb.apple.com.akadns.net +ocsp.apple.com +ocsp.globalsign.com +ocsp.pki.goog +ocsp.us.cdnetworks.com +ocsp2.globalsign.com +oct-asia.com +oct-cts.com +oct-sh.com +octbay.com +octeast.com +octeshow.com +octholding.com +octhotels.com +octinn.com +octlink.com +octmami.com +octo.fm +octoparse.com +octopgo.com +octopusgame.com +octre.com +octscc.com +octwuhan.com +oculist.net +oculusss.pro +odaily.news +odao.com +odict.net +odinichina.com +odinjc.com +odinliu.com +oealy.com +oeasy.org +oecr.com +oeebee.com +oeeee.com +oejournal.org +oelove.com +oemol.com +oemresource.com +oemsnavi.com +oeob.net +oesell.com +oetsi.com +ofcard.com +offcn.com +offer-wow.com +offerstrack.net +office-cn.net +office-peixun.com +office26.com +office68.com +officecdn.microsoft.com +officectrl.com +officedoyen.com +officeedit.com +officejc.net +officese.com +officesoftcn.com +officeweb365.com +officewj.com +officexr.com +officezhushou.com +officezu.com +offodd.com +offshoremedia.net +ofgame.net +ofidc.com +ofmonkey.com +ofo.com +ofo.so +ofpay.com +ofuns.com +ofweek.com +ofyoo.com +ogaoxiao.com +ogccdn.com +oh.sb +oh100.com +ohaotian.com +ohipic.com +ohoohh.com +ohqly.com +ohtly.com +ohtpc.com +ohtvu.com +ohwit.com +ohwyaa.com +ohyee.cc +oi-wiki.org +oiaqye7985.com +oicat.com +oicq88.com +oicqzone.com +oicto.com +oidchina.org +oigps.com +oilchem.net +oilepay.com +oilhr.com +oiuwe.com +oj03.com +ok-meeting.com +ok06.com +ok1616.com +ok165.com +ok206.com +ok22.org +ok365.com +ok3w.net +ok5188.net +ok86.com +ok8809.com +ok9624.com +ok9803.com +oka-vip.com +okad.com +okaoyan.com +okayapi.com +okbao.com +okbase.net +okbike.net +okbmf.com +okbuy.com +okbuycdn.com +okcard.com +okchang.com +okchexian.com +okdai.com +okdd.net +okemu.com +okex.vip +okex.win +okeycar.com +okfri.com +okgj.com +okhimalayanzi.com +okhqb.com +okidc.com +okidc.net +okideaad.com +okii.com +okinfo.org +okjike.com +okjk.co +okjoys.com +okjx.cc +okki.com +okkkk.com +oklink.com +oklx.com +okmart.com +okmeeting.com +okmeike.com +okmyapp.com +okng.com +okoer.com +okooe.com +okooo.com +okoooimg.com +okpush.com +okrecovery.com +okskills.com +oksmk.com +oksun.com +oksvn.com +oktools.net +oktools.xyz +oktranslation.com +okuer.com +okweb.info +okwuyou.com +okxr.com +okz.com +okz.ltd +okzuowenxs.com +ol-cdn.com +ol-img.com +ol3vs.com +olabo.net +olacio.com +olami.ai +olcdn.com +oldboyedu.com +oldcat.me +oldcp.com +oldding.net +olddriver.website +oldking.net +oldpan.me +oleony.com +olinone.com +oliver.ren +oliveryang.net +oliyi.com +ollomall.com +olloop.com +olmy8.com +olymtech.com +omacloud.com +omayse.com +omchain.com +omdnchina.com +omegatravel.net +omegaxyz.com +ometal.com +omiaozu.com +omicsclass.com +omicshare.net +omifanyi.com +omlzx.com +omlzz.com +ommoo.com +omni-pharma.com +omooo.net +omos88.com +omowork.com +ompchina.net +omsheji.com +omuying.com +on-sun.com +onaliyun.com +oncanyin.com +onccc.com +once.im +onceai.com +onceoa.com +onche.net +oncity.cc +one-all.com +one-lab.net +one918.com +onealert.com +oneapm.com +oneasp.com +onebiji.com +onecoder.site +oneconnectft.com +onedi.net +onedict.com +onedns.net +onefoot365.com +onegreen.net +onehang.com +onehome.me +onein.com +oneinstack.com +oneiwff.com +onekey.cc +onekeyghost.com +onekeyrom.com +onemex.com +onemob.mobi +onemovie.com +onemsdn.com +oneniceapp.com +onenoter.com +onephper.com +onepiecevip.com +oneplus.com +oneplusbbs.com +oneplusmobile.com +ones.ai +onescorpion.com +oneshao.com +onesight.com +onespace.cc +onethingcloud.com +onethingpcs.com +onetog.com +onetwo.ren +oneuos.com +onev.cat +onevcat.com +oneway.mobi +onewedesign.com +onewo.com +onewrt.com +onewsimg.com +onewsvod.com +onex.im +onexinli.com +onexmail.com +oneyac.com +onezapp.com +onezh.com +onijiang.com +onjobedu.com +online-edu.org +onlinecn.com +onlinedown.net +onlinekr.com +onlinenic.net +onlinesjtu.com +onlinexijiang.com +onlinknews.com +only4.work +onlycatch.com +onlyedu.com +onlyeduit.com +onlyidc.com +onlyjiehun.com +onlylady.com +onlyling.com +onlyliuxue.com +onlyou.com +onlyred.net +onlyrubberparts.com +onlystem.com +onlywem.com +onlyyou.com +onmpw.com +ono-bbb.com +ononw.com +onqc.com +ontheroadstore.com +onthink.com +ontvb.com +onyealink.com +oo14.com +oobao.net +oocct.com +ooclab.com +ooe.la +oogcw.com +oohdear.com +oolap.com +oollttqq.com +oomake.com +ooniu.com +ooogo.com +ooopic.com +ooopn.com +ooppoo.com +oouee.com +ooxx.me +ooxxc.com +op86.net +opahnet.com +opark.com +opatseg.com +opcns.net +opcool.com +opd2c.com +opdown.com +open-falcon.com +open-falcon.org +open-open.com +open189.net +openanolis.org +openasic.org +openbayes.com +opencas.org +opencourt.vip +opendrivers.com +openeda.com +openedv.com +openerp.hk +openeuler.org +opengcc.org +opengslb.com +openinstall.io +openke.net +openlab.cc +openlab.co +openlanguage.com +openlink.cc +openloong.org +openloongson.org +openluat.com +openlyenter.com +openos.org +openpcba.com +openqa.com +openredcloud.com +openresty.com +openresty.org +openrice.com +opensc.co +openset.wang +opensoce.com +openthos.com +openthos.org +openv.com +openwbs.com +openwrt.pro +openxiaoniu.com +openxinfo.com +operachina.com +opfibre.com +opjmw1.ren +oplay.net +opmaterial.com +opp2.com +oppein.com +opplestore.com +oppo.com +oppo518.net +oppoer.me +oppofind.com +oppomobile.com +oppopay.com +opposhop.in +opposhore.com +opqnext.com +oprtb.com +ops.ci +opsapp.com +opskb.com +opskumu.com +opslinux.com +opsnote.com +opstool.com +optaim.com +optbbs.com +opticsjournal.net +optimix.asia +optimized-ai.com +optinetchina.com +optol.net +opvip.com +opwill.com +opxincai.com +opython.com +opzoon.com +oq78.com +oqss.com +or-sun.com +oracledatabase12g.com +oradbca.com +oraev.com +oralpractice.com +orange2h.com +orangeapk.com +orangelive.tv +orangepi.org +orangetech.ltd +orangevip.com +orasos.com +oray.com +oray.net +oraybox.com +oraycn.com +orayer.com +orayimg.com +orbitmes.com +orcadt.com +orchome.com +orcode.com +ordosbank.com +orgcc.com +orgleaf.com +orgnitu.net +orient-fund.com +orient-safety.com +orientalgame.com.tw +orientalhorse.com +orientalpatek.com +orientalpearltower.com +orientalwisdom.com +orientcasa.com +orientfoods.net +orientgolf.com +orientpc.com +orienttumor.com +orientwalt.com +originalkindergarten.com +origincn.com +originlee.com +originoo.com +orihard.com +oritive.com +orleto.com +ornglad.com +orpheus.ink +orsoon.com +orspr.com +orsun.cc +orvibo.com +orz.asia +orz.moe +orz123.com +orz520.com +orzice.com +orzjoy.com +os-easy.com +os-v.com +os7blue.com +osall.com +osbccdn.com +osbean.com +osbzr.com +oscarma.com +oscartutor.com +oscarzhoud.com +oscdn.apple.com +oscdn.origin-apple.com.akadns.net +oschina.com +oschina.io +oschina.net +osechina.com +osedu.net +oseminfo.com +oserror.com +oseye.net +osfipin.com +osg.so +osgchina.org +oshadan.com +oshoplive.com +oshwhub.com +osjiaju.com +osk-clean.com +osmsg.com +osmy.net +osnt.wang +oso6.com +ososn.com +osp.io +ospp.com +oss-cn-beijing-aliyuncs.com +oss.link +oss.so +osschina.com +ossrs.net +ossxp.com +ostools.net +osvlabs.com +oswdj.com +oswhy.com +osx.cx +osyum.com +osyunwei.com +otcgd.com +otcms.com +otkglass.com +otms.com +otome.me +otomedream.com +otosaas.com +otovc.com +otp-express.com +otpub.com +ott4china.com +ottcn.com +ottcn.help +ottshopping.net +otype.com +ou99.com +ouapi.com +oubk.com +ouchgzee.com +oudapay.com +oudeqi.com +oudiscover.com +ouerrepair.com +oufa-travel.com +oufengblog.com +oufusoft.com +ougannike.com +ougei.com +ougepiano.com +ouhua.info +ouj.com +oujistore.com +oukan.online +ouklqd.com +oulvnet.com +oumakspt.com +oumengke.com +ounh.org +ouo.us +ouoou.com +ouou.com +ouou.icu +ouougo.com +oupeng.com +oupengcloud.net +oupuzw.com +our-sky.com +our100.net +our360vr.com +ourail.com +ourats.com +ouravr.com +ourcdns.com +ourcm.net +ourcoders.com +ourdomains.com +ourdvs.com +ourdvs.info +ourdvs.net +ourdvsss.com +oureman.com +ourgame.com +ourglb0.com +ourglb0.info +ourglb0.net +ourglb0.org +ourhlb.com +ourhlb.info +ourhlb.org +ourhy.net +ourjay.com +ourjg.com +ourjiangsu.com +ourjs.com +ourjz.com +ourku.com +ourl.co +ourlife365.com +ourlinc.com +ourpalm.com +ourplay.net +ourren.com +oursakura.com +oursec1.com +oursec2.com +ourselec.com +ourseo.net +oursketch.com +oursmc.com +ourtour.com +ourtxt.net +ourwebat.com +ourwebcdn.com +ourwebcdn.info +ourwebcdn.net +ourwebcdn.org +ourwebhttps.com +ourwebpic.com +ourwebpic.info +ourwebpic.org +ourwebpicvip.com +oushangstyle.com +oushinet.com +oushivoyages.com +ousns.net +outbrai.com +outlets365.com +ouvps.com +ouxutong.com +ouyabosi.com +ouyada.com +ouyaoxiazai.com +ouyeel.com +ouyingyimin.com +ouzhougoufang.com +ovalechina.com +ovbook.com +ovcreative.com +ovdream.com +ovear.info +oversearecruit.com +overtrue.me +overturechina.com +ovicnet.com +ovital.com +ovital.net +ovoawh.com +ovopark.com +ovopic.com +ovscdns.com +ovscdns.net +ovuems.com +ovupre.com +ovuwork.com +ovwin.com +owecn.com +owendswang.com +owllook.net +owmy.ga +owner-api.teslamotors.com +owomoe.net +owspace.com +owulia.com +ox11.com +oxbridgedu.org +oxerr.net +oxiaohua.com +oxrm.com +oxygenos.com +oxyry.com +oycode.com +oyeahgame.com +oyekeji.com +oyohyee.com +oyonyou.com +oyoozo.com +oyoumo.com +oywine.com +oyyj-oys.org +oz138.com +ozm.net +ozrot.com +ozzyad.com +p-dragon.com +p-e-china.com +p.cdn.persaas.dell.com +p1.com +p12345.com +p138.com +p2220.com +p2cdn.com +p2hp.com +p2p.com +p2p001.com +p2p178.com +p2pbbs.net +p2pchina.com +p2pcq.com +p2peye.com +p2peye.net +p2pguancha.com +p2phx.com +p2pjd.com +p2pjj.com +p2psearcher.org +p2psearchers.com +p2ptouhang.com +p2pxing.com +p2pxsj.com +p31.net +p3k3.com +p491gt.com +p4pp.com +p512.com +p5w.net +p8games.com +p99998888.com +pa18.com +pa1pa.com +paahu.com +paascloud.net +paat.com +pabulika.com +pacdn.com +paceroom.net +pacgatelaw.com +package-design.net +packtom.com +packty.com +pactera.com +padasuo.net +padding.me +paddlepaddle.org +paddlewaver.com +pagead-googlehosted.l.google.com +pageadmin.net +pagechoice.com +pagechoice.net +pagurian.com +pahaoche.com +pahou.com +pahx.com +pahys.com +pai-hang-bang.com +paibanxia.com +paichen.net +paidai.org +paidanzi.com +paidui.com +paiduidai.com +paihang114.com +paihang360.com +paihb.com +paihotels.cc +paiky.net +pailixiang.com +paimaprint.com +paiming.net +paimingchakan.com +paintinghere.org +paipai.com +paipai123.com +paipaibang.com +paipaiimg.com +paipaitxt.com +paipianbang.com +paiqy.com +pairmb.com +paisen.site +paishanglai.net +paishi.com +paiwo.co +paixie.net +paixin.com +paiyiws.com +paizhe.com +paizi.com +pajkb.com +palace-international.com +palanceli.com +palm-h.com +palmestore.com +palmjoys.com +palmtrends.com +palmyou.com +pamau.com +pamss.net +pan131.com +pan58.com +pan8.net +panabit.com +panbaidu.com +pancake.apple.com +pancake.cdn-apple.com.akadns.net +panchuang.net +pancishe.com +panda-home.com +panda321.com +panda98.com +pandadastudio.com +pandafoundation.org +pandahelp.vip +pandaimg.com +pandainc.cc +pandaminer.com +pandara.xyz +pandateacher.com +pandatv.com +pandoe.com +pandolia.net +pandownload.com +pandoxie.com +panduoduo.net +panduoduo.online +panfn.com +pangbu.com +pangcheng.com +pangci.cc +pangdly.com +pangdo.com +panggugu.com +panghuasheng.com +pangku.com +pangmao56.com +pangmaovc.com +pangoing.com +pangolin-dsp-toutiao.com +pangolin-sdk-toutiao-b.com +pangolin-sdk-toutiao.com +pangomicro.com +pangong88.com +pangqiu.com +pangshu.com +pangukj.com +panguso.com +pangxieke.com +pangzhan.net +panjindamibest.com +panjunwen.com +panku.cc +panmeme.com +pannacloud.com +panoeade.com +panoramastock.com +panpanr.com +panpay.com +panqibao.com +panshi101.com +panshianquan.com +panshixk.com +panshiyun.com +panshizz.com +panshy.com +pansino-solutions.com +pansj.cc +pansoso.com +pansou.com +pantrysbest.com +pantum.com +panweizeng.com +panyun.com +paoao.net +paobuqu.com +paochefang.com +paodoo.com +paofugroup.com +paojiao.com +paolanhuanbao.com +paomo.com +paomou.com +paopao.com +paopaoche.net +paopaohd.com +paopaox.com +paoshuba.cc +paoxq.com +paoxue.com +papa21.com +papa91.com +papaao.com +papaao1.com +papaao2.com +papaao3.com +papaao4.com +papaao5.com +papaao6.com +papaao7.com +papaao8.com +papajohnshanghai.com +papapoi.com +papaquan.com +paparecipe.net +papegames.com +paper.tv +paper211.com +paperask.com +paperbert.com +paperbus.com +paperbye.com +paperccb.com +paperclipclub.net +papercool.com +papereasy.com +papergod.com +paperisok.com +paperok.com +paperonce.org +paperopen.com +paperpass.com +paperpi.com +paperrater.net +paperright.com +papersay.com +papersee.com +papertime.cc +papertime.shop +papertime.vip +paperweekly.site +paperword.com +paperwrite.net +paperyy.com +papocket.com +paquapp.com +parallelsras.com +paratera.com +parawikis.com +parduscycle.com +parentshk.com +paris-bride.com +paris-sengfu.net +parkbees.com +parkchina.net +parkdaily.com +parkingjet.com +parkingquickly.com +parkmecn.com +parkviewgreen.com +parnassusdata.com +parsein.com +partinchina.com +partner.cdnetworks.com +partner.globalsign.com +parwix.com +pass7.cc +passby.me +passdesign.net +passer-by.com +passport.lenovo.com +passwordkeyboard.com +pat-edu.org +patachina.org +patchallin.com +patchew.org +patent9.com +patexplorer.com +patindex.com +patmm.com +patsev.com +patsnapglobal.com +paul.pub +paxdn.com +paxgl.com +paydxm.com +payeco.com +paylf.com +paymax.cc +paympay.com +payrao.com +paysapi.com +paytend.com +payxinyi.com +pb89.com +pbbpp4u.com +pbcan.com +pbcdn.com +pbhz.com +pblie.com +pbootcms.com +pbsidc.com +pbsvpn.com +pbtdl.com +pbtxt.com +pc-daily.com +pc02.com +pc120.com +pc120tv.com +pc18.net +pc34.com +pc51.com +pc521.net +pc5210.com +pc6.com +pc6a.com +pc70.com +pc811.com +pc840.com +pc841.com +pc9.com +pcaposter.com +pcapqz.com +pcb-hl.com +pcb-si.com +pcb3.com +pcb818.com +pcbask.com +pcbba.com +pcbbar.com +pcbbbs.com +pcbdoor.com +pcbeta.com +pcbhunt.com +pcbiot.com +pcbjob.com +pcbookcn.com +pcbres.com +pcbserve.com +pcbsheji.com +pcbtech.net +pcbtime.com +pccpa.hk +pccppc.com +pcdog.com +pcdrv.com +pceggs.com +pceva.net +pcfreetime.com +pcfuns.com +pcgeshi.com +pcgogo.com +pcgta.cc +pchome.com +pchome.net +pchpic.net +pciiss.com +pcitc.com +pcme.info +pcmgr-global.com +pcmoe.net +pcnsh.com +pcoic.com +pcp-china.com +pcpop.com +pcsee.org +pct86.com +pctowap.com +pctu.net +pctutu.com +pctutu.net +pctvx.com +pcviva.com +pcw365.com +pcwenti.com +pcwl.com +pcyangguangban.com +pd-sts.com +pd120.com +pd17.com +pd521.com +pdazw.com +pdbeta.com +pdcuo.com +pdd.net +pddcdn.com +pddeu.com +pddpic.com +pddugc.com +pdf-lib.org +pdf-tech.com +pdf.la +pdf00.com +pdf100.net +pdf1122.com +pdf5.net +pdfac.com +pdfbianji.com +pdfdo.com +pdfdowell.com +pdfexpert.cc +pdffsy.com +pdffx.com +pdfjia.com +pdflibr.com +pdfwang.com +pdfxd.com +pdfzj.com +pdgzf.com +pdidc.com +pdim.gs +pdm.so +pdosgk.com +pdown.org +pdrcfw.com +pdreading.com +pdryx.com +pdscb.com +pdsggzy.com +pdsgjj.com +pdskgb.com +pdsxww.com +pdszhtl.com +pdty123.com +pdvisa.com +pdxx.net +pe.vc +pe62.com +pe8.com +pe898.com +pea3nut.com +pea3nut.info +pea3nut.org +peace-read.com +peaceticket.com +peak-labs.com +pear.hk +pearlinpalm.com +pearvideo.com +peasrch.com +pec365.com +pechoin.com +pediy.com +pedli.com +peento.com +peepic.com +peersafe.com.sg +peidu.com +peihao.space +peikua.com +peilian.com +peilian365.com +peilili.com +peiluyou.com +peiqiang.net +peise.net +peixun.net +peixun5.com +peixune.com +peixunmatou.com +peixunxue.com +peiyake.com +peiyin.net +peiyinge.com +peiyou.com +peiyouwang.com +peizi.com +peizi0371.com +peizizhishu.com +pemap.com +pending-renewal-domain.com +pendoapp.com +pengchengenergy.com +pengfu.com +penging.com +pengjuan.com +pengke.com +penglaiu.com +penglei.name +pengpeng.com +pengpeng.la +pengqi.club +pengqian.win +pengrl.com +pengshengcaishui.com +pengxun1.com +pengyaou.com +pengyou.com +pengyoufx.com +pengyoujia.me +pengyoukan.com +pengyuwei.net +penhuijiqi.com +pentalaser.com +pentaq.com +penxiangge.com +peonyta.com +people-squared.com +peopleapp.com +peopleart.tv +peopledailypress.com +peoplenews.eu +peoplerail.com +peopleyuqing.com +pepcn.com +pepresource.com +perfect-input.com +perfect-is-shit.com +perfect99.com +perfectdiary.com +peropero.net +personpsy.org +perspectivar.com +pes-china.com +pesiv.com +pesyun.com +pet82.com +pet86.com +peter-zhou.com +petersonlian.com +petkit.com +petkoo.com +petmrs.com +petnakanojo.com +petpcb.com +petroren.com +petrvet.com +pets12345.com +pettime.info +pettwo.com +pewld.com +pewsc.com +pexue.com +pf110.com +pf168.com +pf178.com +pf999.net +pfan123.com +pfchai.com +pfhoo.com +pfwx.com +pg-leak.com +pg114.net +pg9997.com +pgbee.com +pgc.tv +pgcog.com +pgjcqm.com +pgl-world.com +pglstatp-toutiao-b.com +pglstatp-toutiao.com +pgsql.tech +pgsqldb.com +pgsqldb.org +pgyer.com +pgygho.com +pgyidc.com +pgysoft.com +pgzs.com +pgzx.net +phalapi.net +pharmcube.com +phaser-china.com +phb123.com +phdwu.com +phedu.net +phenixos.com +phezzan.com +phicomm.com +phida.net +philipswechat.com +philm.cc +phlexing.com +phnamedns.com +phnixpool.com +pho.so +phobos.apple.com +phodal.com +phoemix.net +phoenixos.com +phoenixtea.org +phoenixtv.com +phoent.com +phoer.net +phome.net +phone580.com +phonecoolgame.com +phonegap.me +phonegap100.com +phonekr.com +phopic.com +photo0086.com +photo3050.com +photoartiz.com +photocnc.com +photocome.com +photohn.com +photoint.net +photoneray.com +photopai.com +photops.com +photosanxia.com +photowoo.com +photoyunnan.com +photozoomchina.com +phouses.com +php-note.com +php-oa.com +php-z.com +php168.com +php2.cc +php318.com +php7.site +phpbbchina.com +phpbloger.com +phpchina.com +phpcj.org +phpcom.net +phpcomposer.com +phpconchina.com +phpcoo.com +phpcto.org +phpddt.com +phpdr.net +phpe.net +phpernote.com +phperxuqin.com +phperz.com +phpfans.net +phpfdc.com +phpfs.com +phpha.com +phphub.org +phpjiami.com +phpjiayuan.com +phpkaiyuancms.com +phpkhbd.com +phpkoo.com +phpok.com +phpor.net +phprpc.org +phpsong.com +phpspider.org +phpstat.net +phpstudy.net +phpstudyimg.com +phpv.net +phpvar.com +phpvod.com +phpweb.net +phpweblog.net +phpwind.com +phpwind.net +phpxs.com +phpxy.com +phpyuan.com +phpyun.com +phys.net +physicalchina.vip +phyt88.com +phyy.com +phyy1.com +pi7.com +piadu.com +pianhd.com +pianke.me +pianohl.com +pianona.com +pianoun.com +piantou.net +pianwan.com +pianyim.com +pianyit.com +pianyiwan.com +pianyuan.net +pianziweb.com +piao.com +piao88.com +piao88.net +piao95.com +piaobuy.com +piaochong.com +piaodaren.com +piaode.ren +piaodown.com +piaohua.com +piaohuafl.com +piaojubao.com +piaoliang.com +piaoniu.com +piaoquantv.com +piaoshen.com +piaotian.org +piaotian5.com +piaotongyun.com +piaowutong.cc +piaoxian.net +piaoxingqiu.com +piaoyi.org +piaoyun.net +piaoyunwu.com +piaozhilan.com +piaozone.com +piasy.com +pic138.com +pic16.com +pic21.com +pic3733.com +pic720.com +picatown.com +picc.com +piccamc.com +picchealth.com +piccjs.com +picooc.com +picosmos.net +picp.io +picp.net +pictureknow.com +picup.shop +picxiaobai.com +picyq.com +pidcn.com +pieeco.com +piekee.com +piekee.net +pieshua.com +pifa333.com +pifukezaixian.com +pig.ai +pig4cloud.com +pig66.com +pigai.org +pigcms.com +pigjian.com +pigqq.com +pigx.vip +pigxv.com +pigzz.com +pihitech.com +piikee.net +piimg.com +piios.com +piis.pw +pikacn.com +pikatao.com +pilaipiwang.com +pili-zz.net +pilibaba.com +pilidns.com +pilifu.com +pilifx.com +pimei.com +pin-color.net +pin-qu.com +pin18pin.com +pin5i.com +pinbaitai.com +pinbang.com +pinbayun.com +pincai.com +pincai360.com +pinchain.com +pinduoduo.com +pinduoduo.net +pineprint.com +ping-jia.net +ping-qu.com +ping.ubnt.com +pingan.com +pingan.com.hk +pingancdn.com +pinganfang.com +pinganwj.com +pinganyun.com +pingapple.com +pingcap.com +pingcoo.com +pingfangx.com +pingfenbang.com +pinggu.com +pinggu.org +pingguobaoxiu.com +pingguodj.com +pingguolv.com +pinghe.com +pinghu.tech +pinghui-cn.com +pingjiata.com +pingnanlearning.com +pingnuosoft.com +pingpang.info +pingpangwang.com +pingpingw.com +pingpingze.com +pingplusplus.com +pingpongx.com +pingshu8.com +pingshuku.com +pingshuocoal.com +pingstart.com +pingtan6.com +pingtandao.com +pinguangapp.com +pinguo.us +pingwest.com +pingxiaow.com +pingxonline.com +pingxuan123.com +pingxx.com +pingyin.cc +pingyou.cc +pinhaohuo.com +pinhecha.com +pinhuba.com +pinhui001.com +pinidea.co +pinjiaolian.com +pinjie.cc +pinkecity.com +pinkertech.com +pinkobaby.com +pinkoichina.com +pinla.com +pinlian.net +pinmanduo.com +pinmie.com +pinmuch.com +pinpai1.com +pinpaidadao.com +pinpailiu.com +pinpailun.com +pinpaiv.com +pinshan.com +pinshiwen.com +pinshu.cc +pinshu.com +pinsilianzu1.com +pintour.com +pintu360.com +pintuan.com +pintuer.com +pintuxiu.net +pinuc.com +pinwenba.com +pinyuan.cc +pinyuew.com +pinyuncloud.com +pinzhikeji.net +pinzs.com +pioneerlinux.com +pioneersci.com +pioneertimes.net +pipa.com +pipacdn.com +pipacoding.com +pipahealth.com +pipapai.com +pipaw.com +pipaw.net +pipedetect.com +pipikou.com +pipimp3.com +pipipan.com +pipipifa.com +pipiti.com +pipix.com +pipiyys.com +pipsemi.com +piqs.com +pisx.com +pites.cc +pitess.cc +piworker.com +pix2code.net +pixelauth.com +pixhey.com +pixivacg.com +pixivic.com +pixivic.net +piyingke.com +piyipiba.com +pj-road.com +pj.com +pj00001.com +pj155.com +pjbest.com +pjf.name +pjhome.net +pjhubs.com +pjialin.com +pjjyzx.com +pjnoi.com +pjob.net +pjrcn.com +pjtime.com +pjtx.net +pk052.com +pk106.com +pk10fh.com +pk1352.com +pk1xia.com +pk2234.com +pk361.com +pk532.com +pk571.com +pk995.com +pkbeta.com +pkbff.com +pkbigdata.com +pkbkok.com +pkdyplayer.com +pkfj.xyz +pkgklk.com +pki-goog.l.google.com +pkm360.com +pkmmo.com +pko123.com +pkoplink.com +pkpk.com +pkpky.com +pkpmsoft.com +pkq2016.com +pksfc.com +pksky.com +pku-hit.com +pku-lvxin.com +pku666.com +pkubr.com +pkucat.com +pkufh.com +pkulaw.com +pkulaws.com +pkurc.com +pkusky.com +pkusp.com +pkuszh.com +pkvs.com +pkzx.com +plaidc.com +plalzhang.com +planckled.com +planetmeican.com +planoi.com +plantextra.com +plantname.xyz +plantower.com +plateno.cc +plateno.com +platenogroup.com +platinum-traveller.com +platinumchina.com +play-analytics.com +play68.com +play700.com +play86.com +play910.com +playbeta.net +playcomet.jp +playcrab.com +playcvn.com +playfifa.com +playlu.com +playnail.com +playpangu.com +playpi.org +playsm.com +playstudy.com +playtai.com +playtai.net +playuav.com +playwonderful.com +playwx.com +playyx.com +plcdn.net +plcent.com +plcloud.com +plcsq.com +plesk-cn.com +plexjiasuqi.com +plob.org +plotcup.com +plqdf.com +plsmspx.com +plsub.com +pluosi.com +plures.net +plusgantt.com +plusplustu.com +plutuspay.com +pluvet.com +plycd.com +plyz.net +pm-summit.org +pm222.com +pm25.com +pm25.in +pm265.com +pm28.com +pm360.com +pm360.net +pmacasia.com +pmcaff.com +pmdak.com +pmdaniu.com +pmec.net +pmichina.org +pmish-tech.com +pmkiki.com +pmovie.com +pmparkchina.com +pmppcc.net +pmptuan.com +pmquanzi.com +pmr66.com +pmsra.com +pmtalk.club +pmtoo.com +pmtown.com +pmway.com +pmxprecision.com +pmxsd.com +pmyes.com +pmyuanxing.com +pn66.com +pnetp.org +pngbag.com +pngui.com +pnlyy.com +pnol.net +pnp8.com +pnwww.com +pnxs.com +pnzpw.com +pobaby.net +pobasoft.com +pobiji001.com +poboo.com +pocc.cc +pocketdigi.com +pocketuni.net +pocomagnetic.com +pocosite.com +pocsuite.org +podinns.com +poem88.com +poemaster.com +poemlife.com +pohaier.com +pohover.com +poikm.com +poizon.com +poj.org +pojaa.com +pojd700.cc +pokemmc.com +pokemon-unitepgame.com +pokemon.name +pokermate.net +poketec.com +pokooo.com +polaris-vc.com +polarws.moe +polarxiong.com +polaxiong.com +polayoutu.com +polebrief.com +polingba.com +poluoluo.com +polycent.com +polycn.com +polycom-china.com +polycom-jl.com +polyhotel.com +polyhz.com +polytheatre.com +polytheatresz.com +polyv.net +polywuye.com +pomears.com +pomoho.com +ponley.com +ponycool.com +ponytest.com +ponytestqd.com +ponytestsh.com +ponytestsz.com +poo1.club +pooban.com +poobbs.com +poocg.com +poocg.me +pooioo.com +pook.com +pooluo.com +poorren.com +pooy.net +pop-bags.com +pop-fashion.com +pop-shoe.com +pop136.com +pop800.com +popasp.com +popdg.com +popgo.org +popiano.org +popkart.tv +popkx.com +popmart.com +popmsg.com +popoho.com +popoxiu.com +poppace.com +poppur.com +popqiu.com +popsoft.com +popu.org +popumed.com +poputar.com +popziti.com +poqsoft.com +porlockz.com +porschesky.com +portablesoft.org +portalcdn.cdnetworks.com +ports-intl.com +pos.gold +posbar.com +poseidon.dl.playstation.net +poseidong.com +posfree.com +positivisten.com +posn.net +post183.net +posterlabs.com +postgres.fun +postgresqlchina.com +postjson.com +postpony.com +posuiji168.com +potevio.com +potianji.net +potplayer.org +potplayercn.com +pouchcontainer.io +poukao.com +poweizu.com +power-bd.com +power-sensor.com +powerbibbs.com +powercdn.com +powerde.com +powereasy.net +poweric-china.com +powerlaw.ai +powerleadercdn.com +powerleaderidc.com +powerskystudio.com +powervision.me +powerxene.com +powzamedia.com +poxiaotv.com +pozou.com +pp-xxgd.com +pp.cc +pp00.com +pp100.com +pp130.com +pp1o.com +pp25.com +pp250.com +pp51.com +pp6.cc +pp63.com +pp66.cc +pp70.com +pp8.com +pp9570.com +pp9l.com +ppaikd.com +ppbizon.com +ppcall.com +ppchuguan.com +ppcn.net +ppcode.com +ppcost.com +ppdai.com +ppdaicdn.com +ppdd.com +ppdesk.com +ppdqk.com +ppduck.com +ppfeng.com +ppfw.org +ppgame.com +pphimalayanrt.com +ppio.cloud +ppj.io +ppkankan01.com +ppkanshu.com +ppkao.com +pplib.net +pplive.com +ppliwu.com +pplock.com +ppm2.com +ppmake.com +ppmm.org +ppmoney.com +ppmoney.net +ppnames.com +pppet.net +pppie.com +pppoevps.com +pppoo.com +ppppgps.com +ppppic.com +ppqq.net +pps.tv +ppsao.com +ppsimg.com +ppslsa.com +ppsoftw.com +ppspain.com +ppsport.com +ppstream.com +ppstream.net +ppstv.com +ppswan.com +ppt118.com +ppt123.net +ppt360.com +ppt920.com +pptair.com +pptake.com +pptbest.com +pptboss.com +pptbz.com +pptelf.com +ppthi-hoo.com +pptjia.com +pptmall.net +pptmao.com +pptmind.com +pptok.com +pptschool.com +pptshop.com +pptstore.net +pptv.com +pptvyun.com +pptxy.com +ppurl.com +ppvi.net +ppvod.net +ppwan.com +ppwwyyxx.com +ppxclub.com +ppxhw.com +ppxs.net +ppxwo.com +ppys.net +ppys5.com +ppzhan.com +ppzhilian.com +ppzuche.com +ppzuowen.com +pqdtcn.com +pqpo.me +pqt-bearing.com +pqyhigh.com +pqylow.com +pqymiddle.com +pqzhichan.com +prcedu.com +prcee.org +pre-sence.com +precise-test.com +precision-biz.com +prefer-tyl.site +prefershare.com +preludeid.com +premedglobal.com +press-sci.com +prestolite-bj.com +prfc-cn.com +prfog.com +prfuxl.xyz +pricl.com +primegoalgroup.com +primerachina.com +primeton.com +princeuk.org +print86.com +printer-china.com +printerwhy.net +printhome.com +printlake.com +prior24.com +prismcdn.com +privateadx.com +privatess.win +privspace.net +prjdrj.com +pro6e.com +procar.cc +process-safety-lab.com +processon.com +prod-support.apple-support.akadns.net +product1.djicdn.com +productivity.wiki +proginn.com +programfan.com +programmer.group +programschool.com +progressingeography.com +prohui.com +project-oa.com +projectaker.com +projector-window.com +projky.com +prolto.com +promisingedu.com +promoadx.com +propsad.com +proresearch.org +protect-file.com +prototype.im +providence-chemicals.com +prowritingteam.com +proxyipa.com +proya-group.com +proya.com +proyy.com +prts.wiki +przhushou.com +przwt.com +ps123.net +ps265.com +ps314.com +psbc.com +psc4d.com +psd.net +psd8.com +psdiv.com +pse-meti.com +psgui.com +psing.tech +psjay.com +psjxty.com +psnine.com +psoneart.com +psongyou.com +pssclub.com +pstatp.com +pstips.net +pstxg.com +psy-1.com +psyapp.com +psychcn.com +psychspace.com +psysh.com +psyzg.com +pszx.com +pszxw.com +pszyzxh.org +pt-bus.com +pt-link.com +pt80.com +pt80.net +ptalking.com +ptausercontent.com +ptbus.com +ptc-asia.com +ptcloud.info +ptcxmy.com +ptd100.com +ptd99.com +ptdsh.com +ptfdc.com +ptfish.com +pthc1.com +pthc8.com +pthxuexi.com +ptimg.org +ptkill.com +ptleju.com +ptmind.com +ptorch.com +ptotour.com +ptpcp.com +ptshare.org +ptteng.com +ptweixin.com +ptxz.com +ptyg.com +ptyly.com +ptyqm.com +pua.hk +pua001.com +puaas.com +puahome.com +puaihospital.net +puasu.com +puata.info +pubchn.com +pubg8x.com +publiccms.com +pubmed007.com +pubone.cc +pubsage.com +pubukeji.com +pubuo.com +pubyun.com +puchake.com +pucms.com +pudaquan.com +pudn.com +pudongwater.com +puduzhai.com +puem.org +puercha.cc +puercn.com +puertea.com +pufa5.org +pufei.net +pufei.org +pufei8.com +puhuacapital.com +puhuahui.com +puiedu.com +puji114.com +pujia8.com +pujiaba.com +pujiahh.com +pukinte.com +pulisi.com +pullwave.com +pullword.com +pullywood.com +pulsigame.com +pumpvip.com +punaide.com +punakong.com +punchbox.info +punchbox.org +puoke.com +pupuapi.com +pupugo.com +pupumall.com +pupumall.net +pupurazzi.com +pupuwang.com +purcotton.com +purcow.com +pureage.info +pureasme.com +purecpp.org +pureh2b.com +purenyy.com +puronglong.com +puroyal.com +pusa123.com +push2u.com +pushauction.com +pushenbbs.com +pushgrid.net +pushjoy.com +pushthink.com +pushtime.net +puss7.com +putao.so +putaoa.com +putaocdn.com +putaogame.com +putaojiu.com +putclub.com +putdb.com +putian508.com +putiandai.com +putitt.com +putonsoft.com +putop.net +puusa.net +puwenlong.com +puworld.com +puyuecs.com +puyuehui.com +puyurumen.com +puzeyf.com +pv001.net +pv265.com +pv4b.com +pvc123.com +pvkj.com +pvmama.com +pvpin.com +pw1999.com +pw88.com +pwmis.com +pwmqr.com +pwp.ink +pwrd.com +pwsannong.com +px0571.com +px5a.com +pxb7.com +pxcn168.com +pxdsm.com +pxemba.com +pxr0.com +pxsky.net +pxtsc.com +pxtu.com +pxtx.com +pxx.io +py-axa.com +py1314.com +py168.com +py3study.com +py40.com +py6.com +py94.com +pyadx.com +pyasfunds.com +pychina.org +pycxjj.com +pyddd.com +pyer.site +pygdzhcs.com +pyguanf.com +pyhead.com +pyjia.com +pyjsh.com +pyk868.com +pyker.com +pylhotel.com +pylist.com +pyneo.com +pyou.com +pysmei.com +pystarter.com +pytgo.com +python-china.com +python88.com +pythonav.com +pythonclub.org +pythondoc.com +pythoner.com +pythonheidong.com +pythonpub.com +pythontab.com +pythontip.com +pytorchtutorial.com +pyxjiang.com +pyxk.com +pyxww.com +pyynsm.com +pyyx.com +pz6.com +pz6682.com +pzds.com +pzhccb.com +pzhht.com +pzjdimg.com +pzjiadian.com +pzlink.com +pznews.com +pznrfsy.com +pznsh.com +pzoom.com +pztuan.com +q-dazzle.com +q-supreme.com +q1.com +q1qfc323.com +q1qq2.com +q2ak.com +q2d.com +q2zy.com +q3060.com +q5.com +q578.com +q6haqi.com +q6u.com +q77777777.com +qacn.net +qalex.com +qaqgame.com +qast.com +qaxanyu.com +qaxcloudwaf.com +qaxwzws.com +qazxsdc.com +qb5.tw +qb5200.co +qb5200.tw +qbangmang.com +qbao.com +qbaobei.com +qbaoting.com +qbb6.com +qbdcc.com +qbdgame.com +qbeenslee.com +qbitai.com +qbj8.com +qbjrxs.com +qbox.me +qbox.net +qbtlk.com +qbview.com +qbxs5.com +qbxz.com +qc-dds.net +qc-hr.com +qc178.com +qc188.com +qc56.org +qc6.com +qcc.com +qccip.com +qccost.com +qccr.com +qccrm.com +qcds.com +qcenglish.com +qcgcj.com +qchem.pw +qches.com +qchouses.com +qcjkjg.com +qcjslm.com +qckuaizhi.com +qcloud.com +qcloud.la +qcloudcdn.com +qcloudcjgj.com +qcloudimg.com +qcloudmail.com +qcloudwzgj.com +qcloudzygj.com +qcmoke.site +qcmrjx.com +qcmuzhi.com +qcoco.com +qconbeijing.com +qconshanghai.com +qcplay.com +qcq3.com +qcql.com +qcr.cc +qcr365.com +qcrlapp.com +qcsdn.com +qcsj.com +qcstudy.com +qctsw.com +qcwan.com +qcwdpt.com +qcwhw.com +qcwlpay.com +qcwlseo.com +qcwxjs.com +qcwyxx.com +qcy.com +qcymall.com +qcyoung.com +qd-metro.com +qd256.com +qd315.net +qdac.cc +qdaeon.com +qdaiduo.com +qdaily.com +qdairlines.com +qdbdsk.com +qdcaijing.com +qdccb.com +qdccdl.com +qdcdn.com +qdcdpjw.com +qdcent.com +qdcu.com +qdcypf.com +qdcz.com +qddown.com +qdds.net +qdfuns.com +qdgege.com +qdgw.com +qdgxqrc.com +qdgxzg.com +qdhantang.com +qdhmsoft.com +qdhsty.com +qdingnet.com +qdjiejie.com +qdjimo.com +qdjjwsjf.com +qdjnbgjj.com +qdjxhz.com +qdkebang.com +qdkingst.com +qdkongtiao.com +qdlanrun.com +qdliye.com +qdlongre.com +qdmama.net +qdmcxh.com +qdmm.com +qdnsyh.com +qdooc.com +qdpdjx.com +qdppc.com +qdpr.com +qdqihang.com +qdqunweite.com +qdsay.com +qdsbx.com +qdsdds.com +qdshitangchengbao.com +qdsntsg.com +qdsysj.com +qdtgood.com +qdthgs.com +qdtongxinedu.net +qdtvu.com +qdtz.com +qdwenxue.com +qdwght.com +qdwsb.com +qdxfgy.com +qdxtcw.com +qdyijiamei.com +qdymjy.com +qdyudie.com +qdyxbyy.com +qdzhengkang.com +qdzmm.com +qdznjt.com +qdzxyy.com +qdzz.com +qechu.com +qeebike.com +qeefee.com +qeegee.com +qeejoo.com +qeeka.com +qeeniao.com +qeerd.com +qefee.com +qefeng.com +qeto.com +qf.rs +qf027.com +qfang.com +qfangimg.com +qfcm.net +qfedu.com +qfeiche.com +qfgolang.com +qfihdr.com +qfpay.com +qfq.me +qfrxyl.com +qfsxjf.com +qfsyj.com +qftouch.com +qfun.com +qg.net +qg108.com +qgbzyzl.com +qgcyjq.org +qgdyc.net +qgdz222.com +qgenius.com +qgpx.com +qgren.com +qgsydw.com +qgtql.com +qguiyang.com +qgvps.com +qgw.tm +qgwsp.com +qgxl.org +qgysj.org +qgzzz.com +qh-cdn.com +qh-lb.com +qh.dlservice.microsoft.com +qh.la +qh0534.net +qh24.com +qh5800.com +qhass.org +qhbtv.com +qhcdn.com +qhchcb.com +qhclass.com +qhd.net +qhdatongnews.com +qhdczzs.com +qhdfxkj.com +qhdgjj.com +qhdjcbj.com +qhdnews.com +qhdok.com +qhdren.com +qhdymdc.com +qhea.com +qhee-ma.com +qhee.com +qhfax.com +qhfx.net +qhgxq.com +qhgy.net +qhimg.com +qhimgs0.com +qhimgs1.com +qhimgs3.com +qhimgs4.com +qhimi.com +qhjyks.com +qhkyfund.com +qhlhfund.com +qhlingwang.com +qhlly.com +qhm123.com +qhmed.com +qhmsg.com +qhnews.com +qhnode.com +qhong.net +qhpcc.com +qhpk.net +qhpta.com +qhrcsc.com +qhres.com +qhres2.com +qhscw.net +qhserver.com +qhsetup.com +qhsklw.com +qhstatic.com +qhstv.com +qhsxf.net +qhtibetan.com +qhtycp.com +qhupdate.com +qhwh.com +qhwmw.com +qhxiaoshuo.com +qhxmlyts.com +qhxyms.com +qhxz.com +qhyccd.com +qhyedu.com +qhyzzzs.com +qi-che.com +qi-ju.com +qi-wen.com +qi58.com +qiachu.com +qiaiou.com +qiak.com +qiakr.com +qialol.com +qian-gua.com +qian10.net +qianba.com +qianbao.com +qianbao666.com +qianbaocard.com +qianbaohr.com +qiancheng.me +qianchengriben.com +qiandaqian.com +qiandd.com +qianduan.com +qianduanblog.com +qianduanfan.com +qiandw.com +qianfan123.com +qianfan365.com +qianfangzy.com +qianfanyun.com +qiang100.com +qiangchezu.com +qiangchuan.com +qianggen.com +qianggongzhang.com +qianggou5.com +qiangidc.vip +qiangka.com +qianglihuifu.com +qiangmi.com +qiangqiang5.com +qianhai12315.com +qianhaiaiaitie.com +qianhaibs.com +qianhuanhulian.com +qianhuaweb.com +qianhujz.com +qianinfo.com +qianjia.com +qianjiayue.com +qianjin5.com +qianjing.com +qianjins.com +qianju.org +qianka.com +qiankun.su +qianliao.net +qianliao.tv +qianliaowang.com +qianlima.com +qianlimafile.com +qianlinkj.com +qianlong.com +qianlongnews.com +qianluxiaoshuo.com +qianmaiapp.com +qianmaidao.com +qianmi.com +qianmingyun.com +qianmo.info +qianmoqi.com +qianmu.org +qianniu.com +qianpailive.com +qianpen.com +qianpin.com +qianqi.net +qianqian.com +qianqiankeji.xyz +qianqiantao.com +qianqianxs.com +qianqu.cc +qianquduo.com +qianrenge.cc +qianrihong.net +qianrong.me +qiansw.com +qiantucdn.com +qianvisa.com +qianw.com +qianwa.com +qianwee.com +qianxiangbank.com +qianxibj.net +qianxin.com +qianxinet.com +qianxs.com +qianxun.com +qianyan.biz +qianyan001.com +qianyu56.com +qianyuangx.com +qianyue999.com +qianyuwang.com +qianzhan.com +qianzhan123.com +qianzhengbanliliucheng.com +qianzhengdaiban.com +qianzhu8.com +qiao024.com +qiao88.com +qiaobo.net +qiaobutang.com +qiaochucn.com +qiaodan.com +qiaofangyun.com +qiaofanxin.com +qiaohu.com +qiaohuapp.com +qiaohuisland.com +qiaohumall.com +qiaojiang.tv +qiaomi.com +qiaomukeji.com +qiaoshenghuo.com +qiaotu.com +qiaoxuanhong.com +qiaoyi.org +qiaoyou020.com +qiaqa.com +qiaqiafood.com +qiawei.com +qibingdaojia.com +qibo168.com +qibookw.com +qibosoft.com +qibuluo.com +qibuzw.com +qicaispace.com +qicaitechan.com +qicaixianhua.com +qicaizz.com +qichacha.co +qichacha.com +qichacha.net +qichamao.com +qichecailiao.com +qichechaoren.com +qichegeyin.com +qichehot.com +qichetansuo.com +qichetong.com +qichexin.com +qichezhan.net +qichuang.com +qichuangidc.com +qicn.net +qicolor.com +qicp.net +qicp.vip +qida100.com +qidasoft.com +qidewang.com +qidian.com +qidiandasheng.com +qidianjob.com +qidianla.com +qidiantu.com +qidic.com +qidisheng.com +qidisheng.net +qidiwang.com +qidong.co +qidong.name +qidongyx.com +qidou.com +qiduowei.com +qiecdn.com +qieerxi.com +qieman.com +qiepai.com +qieseo.com +qieta.com +qietu6.com +qieying.com +qieyou.com +qieyuedu.com +qiezip.com +qifake.com +qifangw.com +qifeiye.com +qifub.com +qifuedu.com +qifun.com +qifuwang.com +qigongworld.net +qiguo.com +qiguoread.com +qihaoip.com +qihaxiaoshuo.com +qihihi.com +qihoo.com +qihoo.net +qihu.com +qihuayao.com +qihucdn.com +qihuiwang.com +qihuorumen.com +qii404.me +qiigame.com +qiiii.net +qijee.com +qiji.tech +qijiadianzi.com +qijianzs.com +qijiapay.com +qijiarui-test.com +qijilvxing.com +qijishow.com +qijizuopin.com +qijoe.com +qijuan.com +qijuib.com +qik339.com +qikan.com +qikanol.com +qikanw.com +qikegu.com +qikoo.com +qikqiak.com +qiku-cloud.com +qiku.com +qikuailianwang.com +qikucdn.com +qikula.com +qilang.net +qilanxiaozhu.co +qilanxiaozhu.net +qilecms.com +qilinchess.com +qilindao.com +qiling.org +qilingames.com +qilinxuan.net +qilong.com +qilongtan.com +qiluhospital.com +qiluhua.com +qiluivf.com +qiluyidian.mobi +qiluyidian.net +qima-inc.com +qiman5.com +qiman6.com +qimaren.com +qimengshangwu.com +qimi.com +qiming.info +qiming868.com +qimingcx.com +qimingdao.com +qimingpian.com +qimingvc.com +qimingventures.com +qimingwang123.com +qimingzi.net +qimo.biz +qimodesign.com +qimser.com +qin.com +qin08.com +qiname.net +qinbei.com +qinbing.com +qinbing114.com +qinblog.net +qincai.com +qincaigame.com +qinchacha.com +qinchu123.com +qinco.net +qineasy.com +qinfan.xyz +qing-shan.com +qing.su +qing5.com +qingbh.com +qingcache.com +qingcdn.com +qingchifan.com +qingchu.com +qingchunbank.com +qingcigame.com +qingclass.cc +qingclass.com +qingclasscdn.com +qingcloud.com +qingdaochina.org +qingdaograndtheatre.com +qingdaogxt.com +qingdaomaidige.com +qingdaomedia.com +qingdaomuseum.com +qingdaonews.com +qingdaoren.com +qingdaoticai.com +qingdou.net +qingfanqie.com +qingflow.com +qingfo.com +qingfuyun.com +qingfuzaixian.com +qingge100.com +qinggl.com +qingguo.com +qinghe.tv +qingheluo.com +qinghua.cc +qinghua2017.com +qinghua5.com +qinghuaonline.com +qinghuaxuezi.com +qinghuo.net +qingjiaocloud.com +qingju.com +qingkan.tw +qingkeji.com +qingkuaipdf.com +qinglanji.com +qingliange.com +qinglin.net +qingliulan.com +qinglm.com +qinglue.net +qingman5.com +qingmang.mobi +qingmayun.com +qingmei.me +qingmo.com +qingmob.com +qingnianlvxing.com +qingnianwang.com +qingpanduola.com +qingpinji.com +qingqikeji.com +qingqin.com +qingquwu.net +qingrenw.com +qingruanit.net +qingshow.net +qingsj.com +qingsong123.com +qingsongchou.com +qingstor.com +qingsuancn.com +qingsucai.com +qingsword.com +qingtaoke.com +qingtengzhilian.com +qingtian16265.com +qingtiancms.net +qingtin.com +qingting.fm +qingting123.com +qingtingfm.com +qingtingip.com +qinguanjia.com +qingwawa.com +qingwk.com +qingxiaoyun.com +qingxuetang.com +qingxun.com +qingyougames.com +qingyungou.com +qingzhanshi.com +qingzhiwenku.com +qingzhouaote.com +qingzhu.co +qiniao.com +qiniu.com +qiniu.in +qiniu.io +qiniuapi.com +qiniucdn.com +qiniudn.com +qiniudns.com +qiniukodo.com +qiniup.com +qiniupkg.com +qiniutek.com +qiniuts.com +qinlake.com +qinms.com +qinpu.com +qinqiang.org +qinqin.com +qinqinxiaobao.com +qinsmoon.com +qinto.com +qinwanghui.com +qinxue.com +qinxue100.com +qinxue365.com +qinxuye.me +qinyi.net +qinzc.me +qinzhe.com +qinzhou8.com +qinzi7.com +qinzidna.com +qinziheng.com +qiongdy.com +qionghaif.com +qiongming.com +qiongri.com +qipacao.com +qipaifan.com +qipamaijia.com +qipeiren.com +qipeisyj.com +qipeng.com +qiqici.com +qiqids.com +qiqilm.com +qiqipu.com +qiqipu.tv +qiqiuyu.com +qiqiuyun.net +qiqivv.com +qiqiww.com +qiqu.la +qiquhudong.com +qire123.com +qiredy.com +qiremanhua.com +qirexiaoshuo.com +qirui.com +qisbook.com +qishenga.com +qishixitong.com +qishixunmei.com +qishu.cc +qishu.co +qishu.tw +qishunbao.com +qisool.com +qisuu.la +qita.love +qitete.com +qiti88.com +qitian.biz +qitiancom.com +qitoon.com +qiu-ai.com +qiubiaoqing.com +qiucinews.com +qiudao.net +qiudian.net +qiue21.com +qiufaqf.com +qiufengblog.com +qiugonglue.com +qiugouxinxi.net +qiujiaoyou.net +qiujieyl.com +qiujuer.net +qiujunya.com +qiukuixinxi.com +qiumei100.com +qiumeiapp.com +qiumibao.com +qiumijia.com +qiuquan.cc +qiushi.com +qiushibaike.com +qiushibang.com +qiushile.com +qiushiwl.com +qiushu.cc +qiushuge.net +qiushuzw.com +qiusuoge.com +qiutianaimeili.com +qiuweili.com +qiuwu.net +qiuxue360.com +qiuyexitong.com +qiuyueban.com +qiuyuewenxue.com +qiuyumi.com +qiuzhang.com +qiuzhijiangtang.com +qiuziti.com +qiuziyuan.net +qivsod.com +qiwen001.com +qiwen007.com +qiwen8.com +qiwendi.com +qiwenhui.com +qixia.ltd +qixiandoc.com +qixifuren.com +qixin.com +qixin007.com +qixin18.com +qixincha.com +qixing123.com +qixing318.com +qixingcdn.com +qixingcr.com +qixingquan.com +qixingtang.com +qixoo.com +qixuan520.com +qiyabi.vip +qiye.la +qiye.net +qiye163.com +qiye8848.com +qiyegongqiu.com +qiyegongqiu.net +qiyegu.com +qiyeku.com +qiyenet.net +qiyeshangpu.com +qiyeshangpu.net +qiyetuozhan.com +qiyeweixin.com +qiyewenhua.net +qiyexinyong.org +qiyexun.com +qiyexxw.com +qiyeyouxiang.net +qiyi.com +qiyicc.com +qiyimusic.com +qiyipic.com +qiyou.com +qiyouji.com +qiyoujiage.com +qiyouwang.com +qiyouworld.com +qiyouyuan.com +qiytech.com +qiyuange.com +qiyucloud.com +qiyue.com +qiyuebio.com +qiyuesuo.com +qiyujiasu.com +qiyukf.com +qiyukf.net +qiyukid.com +qiyunbook.com +qiyuntong.com +qiyunworld.com +qiyutianxia.com +qizhanming.com +qizheplay.com +qizhihaotian.com +qizhuyun.com +qizi.la +qizuang.com +qj023.com +qj258.com +qj26.com +qjbian.com +qjcz.com +qjdywhyq.com +qjfy.com +qjherb.com +qjhlw.com +qjhm.net +qji.cc +qjimage.com +qjishu.com +qjkc.net +qjmotor.com +qjrc.com +qjren.com +qjsb88.com +qjshe.com +qjsmartech.com +qjtrip.com +qjwhzs.com +qjxgold.com +qjy168.com +qjystang.com +qk365.com +qkagame.com +qkan.com +qkang.com +qkblh.com +qkcdn.com +qkeke.com +qkhtml.com +qkkjd.com +qkl123.com +qknown.com +qksw.com +qktoutiao.com +qktsw.vip +qkvop.com +qkzj.com +ql-cellbank.com +ql18.mobi +ql1d.com +ql47.com +ql789.com +qlbchina.com +qlchat.com +qlcoder.com +qldzj.com +qlgpy.com +qlidc.com +qljgw.com +qll-times.com +qlmoney.com +qlotc.net +qlpe8.com +qlpw.net +qlrc.com +qls.fun +qlteacher.com +qluu.com +qlwmw.com +qlxiaozhan.com +qlxol.com +qm000.com +qm120.com +qm989.com +qmacro.com +qmail.com +qmango.com +qmcaifu.com +qmconfig.com +qmei.me +qmei.vip +qmengyun.com +qmht.com +qmht.mobi +qmqm.net +qmrobot.com +qmsjmfb.com +qmtj.net +qmtk.com +qmtv.com +qmwtp.com +qmz5.com +qmzs.com +qnbar.com +qnche.com +qncye.net +qncyw.com +qndb.net +qnfuli.com +qngslb.com +qnhuifu.com +qnjslm.com +qnl1.com +qnmlgb.tech +qnqcdn.com +qnqcdn.net +qnsb.com +qnsdk.com +qnssl.com +qntz.cc +qnvod.net +qnydns.com +qnydns.net +qooboo.com +qoocc.com +qooic.com +qookar.com +qosq.com +qp110.com +qp46.com +qp832.com +qp8u.com +qpb187.com +qpdiy.com +qpgame.com +qplus.com +qpoc.com +qpstar.com +qpxiaoshuo.com +qpzq.net +qq-xmail.com +qq.cc +qq.ci +qq.com +qq.do +qq.net +qq.tc +qq123.xin +qq163.cc +qq163.com +qq163.tv +qq190.com +qq2009.com +qq214.com +qq387.com +qq5.com +qq52o.me +qq545.com +qq5818.com +qq717.com +qq7c.com +qq8868.com +qq933.com +qqahz.net +qqaiqin.com +qqan.com +qqapk.com +qqba.com +qqbaobao.com +qqbiaoqing.com +qqbiaoqing8.com +qqbibile.com +qqbite.com +qqcedsrc.com +qqcf.com +qqcg.com +qqcjw.com +qqdcw.com +qqdeveloper.com +qqdiannao.com +qqdiannaoguanjiadl.com +qqdna.com +qqdswl.com +qqe2.com +qqenglish.com +qqeo.com +qqfangke.com +qqgb.com +qqgd.com +qqgexing.com +qqgx.com +qqgyhk.com +qqhao123.com +qqhbx.com +qqhelper.net +qqhot.com +qqhuhu.com +qqixk.com +qqjay.com +qqje.com +qqjia.com +qqjishuwang.com +qqjjsj.com +qqju.com +qqjyo.com +qqkqw.com +qqkrmotors.com +qqku.com +qqkuyou.com +qqkw.net +qqleju.com +qqlin.net +qqlyjt.com +qqm98.com +qqma.com +qqmail.com +qqmcc.org +qqmofasi.com +qqmtc.com +qqmusic.com +qqnn.net +qqodjn.com +qqokk.com +qqopenapp.com +qqpao.com +qqpifu.com +qqppt.com +qqq.tv +qqqiyemail.com +qqqnm.com +qqqq.com +qqqqqqqqqqqqq.com +qqread.com +qqride.com +qqrizhi.com +qqro.com +qqshark.com +qqshidao.com +qqshuoshuo.com +qqsk.com +qqsm.com +qqsort.com +qqssly.com +qqstudent.com +qqsurvey.net +qqt6.com +qqteacher.com +qqtest.com +qqtf.com +qqtlr.com +qqtn.com +qqtouxiangzq.com +qqtss.net +qqttxx.com +qqtu8.com +qqtz.com +qqu.cc +qqumall.com +qqurl.com +qquu8.com +qqvv88.com +qqwaw.com +qqwechat.com +qqwmly.com +qqwmx.com +qqwtb.com +qqwwr.com +qqwxmail.com +qqwys.net +qqxmail.com +qqxs.cc +qqxs.la +qqxs5200.com +qqxsnew.com +qqxsnew.net +qqxsw.co +qqxsw.info +qqxsw.la +qqxww.com +qqxy100.com +qqxzb-img.com +qqxzb.com +qqy189.com +qqyewu.com +qqymail.com +qqyou.com +qqyouju.com +qqywf.com +qqyy.com +qqyyx.com +qqzby.net +qqzhi.com +qqzi.net +qqzl.cc +qqzonecn.com +qqzong.com +qqzsh.com +qqzshc.com +qqzuankuo.com +qqzzz.net +qr25.com +qrcdn.com +qrcpu.com +qrmanhua.com +qrtest.com +qrx.cc +qs12315.com +qs7ly.com +qs921.com +qsacg.vip +qsbank.cc +qsbbs.net +qsbdc.com +qsboy.com +qschou.com +qsebao.com +qseeking.com +qsfcw.com +qshang.com +qsmyhsg.vip +qspfw.com +qspfwadmin.com +qss-lb.com +qssec.com +qstatic.com +qstbg.com +qstsking.com +qsw.la +qsw521.com +qswhcb.com +qswzayy.com +qsxi.com +qszs.com +qszt.com +qszt.net +qt-ly.com +qt56yun.com +qt6.com +qt86.com +qtadb.com +qtav.org +qtbcw.com +qtbig.com +qtccolor.com +qtcn.org +qtconcerthall.com +qtdebug.com +qtdream.com +qter.org +qtfy30.com +qthmedia.com +qthnews.com +qtj5.com +qtlcdn.com +qtlcdncn.info +qtlcn.com +qtlglb.com +qtlglb.info +qtlgslbcn.info +qtluyuan.com +qtlxjy.com +qtmojo.com +qtonghua.com +qtrun.com +qtshe.com +qtshu.com +qtshu.la +qttc.net +qtulou.com +qtumist.com +qtx.com +qtyd.com +qu.la +qu02.com +qu114.com +qu247.com +qu99.com +qua.com +qualisports.cc +quan.mx +quan007.com +quan365.com +quan99.net +quanbailing.com +quanben.com +quandangdang.net +quandashi.com +quanduoduo.com +quanfangtongvip.com +quanfeng.tech +quanguoban.com +quanji.com +quanji.la +quanji.net +quanji55.com +quanjiao.net +quanjing.com +quanjingke.com +quankan.tv +quanke8.com +quanlaoda.com +quanlaodaonline.com +quanlego.com +quanmaihuyu.com +quanmama.com +quanmamaimg.com +quanmeipai.com +quanmin.la +quanmin.tv +quanmin110.com +quanminbagua.com +quanminbb.com +quanmingjiexi.com +quanminyanxuan.com +quanqiuwa.com +quanquanapp.net +quanr.com +quanriai.com +quansheng-group.com +quanshi.com +quanshishequ.com +quanshu.net +quanshuge.com +quanshuwan.com +quansucloud.com +quantacn.com +quantao100.com +quantaoyougou.com +quantiku.org +quantil.com +quantone.com +quantuantuan.com +quantum-info.com +quanwai.wang +quanweili.com +quanxi.cc +quanxiangyun.com +quanxiaoshuo.com +quanyin.xyz +quanzhanketang.com +quanzhi.com +quanzhifu.net +quanzhoudaqin.com +quanziapp.com +quarkbook.com +quarkers.com +quasarchs.com +quazero.com +quba360.com +qubaike.com +qubaishu.com +qucai.com +qucaiad.com +qucaidd.com +qucaigg.com +quce001.com +quceaiqing.com +quchao.net +quchaogu.com +quchew.com +quclouds.com +qudao.com +qudao.info +qudao168.com +qudaowuyou.com +qudaowuyou04.com +qudingshui.com +qudong.com +qudong51.net +qududu.net +qudushu.com +quduwu.com +quduzixun.com +quegame.com +quegoo.com +queji.tw +queqiaoba.com +querylist.cc +queshao.com +queshu.com +questyle.com +questyleaudio.com +queyang.com +qufair.com +qufaya.com +qufeisoft.com +qufengo.com +qufenqi.com +qugongdi.com +quhaidiao.com +quhua.com +quhuaxue.com +quhubei.com +quhuichang.net +quick-x.com +quickapi.net +quickbass.com +quickcan.com +quickddns.com +quickjoy.com +quicksdk.com +quicksdk.net +quickswan.com +quilimen.com +quimg.com +quji.com +qujianpan.com +qujinhuo.com +qujishu.com +qujunde.com +qukaa.com +qukan.cc +qukanshu.com +qukantoutiao.net +qukantx.com +quklive.com +qukuai.com +qukuaila.com +qukuailiant.com +qukuba.com +qulishi.com +qulv.com +qumaishu.com +qumaiyao.com +qumifeng.com +quming66.com +qumingdashi.com +qumingxing.com +qumitech.com +qun.hk +quna.com +qunaer.com +qunale888.com +qunar.com +qunar.ink +qunarcdn.com +qunarzz.com +qunba.com +quncrm.com +qunfenxiang.net +qungame.com +qungong.com +qunhai.net +qunhei.com +qunhequnhe.com +qunjielong.com +qunkeng.com +qunliao.info +qunmi.vip +qunniao.com +qunqun.mobi +qunsou.co +quntuishou.com +qunxingvc.com +qunyingkeji.com +qunzh.com +qunzou.com +quora123.com +qupaibei.com +qupaicloud.com +qupeiyin.com +qupf.com +qupuji.com +quqi.com +quqiaoqiao.com +quqike.com +quqiuhun.com +ququabc.com +ququyou.com +ququzhu.com +qusanxia.com +qusem.com +qushimeiti.com +qushiw.com +qushixi.net +qutaiwan.com +qutanme.com +qutaojiao.com +qutaovip.com +qutego.com +quthing.com +qutoutiao.net +qutouwang.com +qutu.com +qutuiwa.com +quumii.com +quunion.com +quvisa.com +quw1234.icu +quwan.com +quwan.fun +quwangming.com +quweikm.com +quweiting.com +quweiwu.com +quwenqing.com +quwenqushi.com +quwentxw.com +quwj.com +quwm.com +quword.com +quwuxian.com +quxds.com +quxia.com +quxianchang.com +quxiangtou.com +quxianzhuan.com +quxiaoyuan.com +quxingdong.com +quxiu.com +quxuan.com +quxuetang.net +quyaoya.com +quyinginc.com +quyiyuan.com +quyouhui.net +quyu.net +quyuansu.com +quyundong.com +quzhuanpan.com +quzhuanxiang.com +quzz88.com +quzzgames.com +qvip.net +qvkanwen.com +qvlz.com +qvpublish.com +qvxo.com +qw.cc +qwdacy.com +qweather.com +qweather.net +qwertali.pw +qwertdd.pw +qwertgg.pw +qwgt.com +qwimm.com +qwolf.com +qwomcrm.com +qwpeo.net +qwpo2018.com +qwpr3.com +qwpr38.com +qwq.moe +qwqk.net +qwqoffice.com +qwspcz.com +qwsy.com +qwupoq.com +qwxcs.com +qwxsw.com +qx1000.com +qx10086.net +qx100years.com +qx121.com +qx162.com +qxbnkj.com +qxbx.com +qxcdn.cc +qxcu.com +qxghost.com +qxiu.com +qxka.com +qxkp.net +qxlib.com +qxnav.com +qxnecn.com +qxnic.com +qxnzx.com +qxrisk.com +qxs.la +qxslyfjq.com +qxswk.com +qxueyou.com +qxw.cc +qxwl21.com +qxwz.com +qxxsjk.com +qxyaoc.com +qxzc.net +qxzxp.com +qy-office.com +qy-qq.com +qy.net +qy01.com +qy266.com +qy6.com +qy6.net +qyaaaa.com +qybeiyong.com +qybook.net +qyc2008.com +qycn.com +qycn.net +qycn.org +qydaili.com +qydimg.com +qydmz.com +qydns1.com +qyec.com +qyer.com +qyerstatic.com +qyfwc.com +qyglzz.com +qygzbxpt.com +qyham.com +qyhl.net +qyi.io +qyiliao.com +qyjpzx.com +qykh2009.com +qyle1.com +qyled.xyz +qymgc.com +qyous.com +qyrb.com +qysd.net +qysfl.com +qyt1902.com +qyt321.com +qytdesign.com +qytxhy.com +qyule.org +qyvqg.com +qywl777.com +qyxxpd.com +qyyqyj.com +qyzba.club +qyzc.net +qyzjc.com +qz100.com +qz123.com +qz828.com +qz930.com +qz96811.com +qzbbs.com +qzbigstone.com +qzbonline.com +qzbuxi.com +qzccbank.com +qzchkj.com +qzcklm.com +qzdigg.com +qzdwz.com +qzfxyy.com +qzhlkj.net +qzhmzx.com +qzjcd.com +qzjkw.net +qzjlw.com +qzkey.com +qzlo.com +qznews360.com +qzobao.com +qzone.cc +qzone.com +qzoneapp.com +qzqstudio.com +qzrbx.com +qzrc.com +qzrx.net +qzshangwu.com +qzwb.com +qzxx.com +qzyb.com +qzze.com +qzzn.com +qzzres.com +qzzsbx.com +r-bride.com +r-s-services.com +r-tms.net +r12345.com +r147emh.com +r18moeimages.xyz +r1x1.com +r1y.com +r220.cc +r2coding.com +r2g.net +r2yx.com +r337iz6.com +r51.net +r5k.com +r5tao.com +r77777777.com +r9q6.vip +rabbitpre.com +rabbitpre.me +race604.com +racing-china.com +racktom.com +radicalmail.net +radida.com +radio1964.com +radiotj.com +radiowar.org +radius-america.com +raeblog.com +ragbear.com +raidc.com +rail-transit.com +railcn.net +rails365.net +railwayfan.net +rain8.com +rainasmoon.com +rainbond.com +rainbow.one +rainbowcn.com +rainbowred.com +rainbowsoft.org +raindi.net +raineggplant.com +rainersu.club +rainhz.com +rainlain.com +rainmanfloor.com +rainyun.com +raisecom.com +raisinsta.com +raiyi.com +rajax.me +rajjzs.com +rakinda-xm.com +ralf.ren +ramadaplaza-ovwh.com +ramboplay.com +ramostear.com +ran-wen.com +ran10.com +rangercd.com +rangnihaokan.com +ranhou.com +rankaiyx.com +ranknowcn.com +ranling.com +rantu.com +ranwen.la +ranwen.tw +ranwena.com +ranwenxs.com +ranwenzw.com +ranyi.net +ranzhi.net +ranzhi.org +raoke.net +raonie.com +raorao.com +rap8.com +rapidppt.com +rapoo.com +rapospectre.com +rarcbank.com +rarelit.net +rashost.com +raspigeek.com +rastargame.com +rata-catering.com +ratina.org +rationmcu.com +ratodo.com +ratoo.net +ratuo.com +ray-joy.com +ray8.cc +raychien.site +raycom-inv.com +raycuslaser.com +raydonet.com +raygame3.com +raygame4.com +rayjoy.com +raymx-micro.com +rayoptek.com +rayps.com +rayrjx.com +raysilicon.com +raythonsoft.com +raytoon.net +rayu.me +rayuu.com +rayyo.com +rayyzx.com +razonyang.com +razrlele.com +raztb.com +rb400.com +rbcty.com +rbischina.org +rbqq.com +rbyair.com +rbz1672.com +rbzygs.com +rc0792.com +rc114.com +rc3cr.com +rccchina.com +rccoder.net +rcdang.com +rcdn.fun +rcfans.com +rcgus.com +rchhps.com +rchudong.com +rclbbs.com +rcpx.cc +rcss88.com +rcuts.com +rcw0375.com +rcwl.net +rcyd.net +rczfang.com +rczp.org +rd-game.com +rd351.com +rdamicro.com +rdbom.com +rdbuy.com +rddoc.com +rdezbie.com +rdgz.org +rdidc.com +rdnsdb.com +rdplat.com +rdsdk.com +rdsvsh.com +rdtuijian.com +rdwork.com +rdxmt.com +rdyhly.net +rdyjs.com +rdzhijia.com +rdzjw.com +rdzs.com +rdzx.net +reachace.com +react-china.org +react.mobi +read678.com +read8.net +read8.org +readboy.com +readceo.com +readdsp.com +readend.net +readers365.com +readfree.net +readgps.com +readhb.com +readhr360.com +readhub.me +readm.tech +readmeok.com +readmorejoy.com +readnos.com +readnovel.com +readpaper.com +readpaul.com +readten.net +readu.net +readwithu.com +ready4go.com +reaer.com +reai120.com +reaicomic.com +realdatamed.com +realforcechina.com +realjf.com +reallct.com +really100.net +reallylife.com +realmebbs.com +realmedy.com +realor.net +realsee.com +realshark.com +realsun.com +realtorforce.ca +realxen.com +reasonclub.com +rebatesme.com +rebcenter.com +rebo5566.com +rebooo.com +reborncodinglife.com +recaptcha.net +recgo.com +rechaos.com +rechuandao.com +recolighting.com +recordjapan.net +recovery-transfer.com +recoye.com +recuvachina.com +recycle366.com +red54.com +redatoms.com +redbaby.com +redcome.com +redcross-hx.com +redcross-sha.org +redefine.ltd +redflag-linux.com +redhai.com +redhome.cc +redhongan.com +redianduanzi.com +redianmao.com +redianyule.com +redianzixun.com +rediao.com +redicecn.com +redidc.com +redirector.gvt1.com +redisbook.com +redisdoc.com +redisfans.com +redisguide.com +redisinaction.com +redjun.com +rednetdns.com +redocn.com +redoop.com +redpact.com +redphon.com +redream.com +redrock.team +redsh.com +redshu.com +redstaraward.org +redsun-rp.com +redyue.com +redyue.org +reedii.com +reedoun.com +reeidc.com +reeiss.com +reeji.com +reekly.com +reenoo.com +reenoo.net +reeoo.com +refeng.net +refined-x.com +reformdata.org +refractorywin.com +reg007.com +regioninfo-pa.googleapis.com +regishome.com +reglogo.net +regtm.com +rehtt.com +rehuwang.com +rejoiceblog.com +rejushe.com +rekonquer.com +rekoo.com +rekoo.net +rela.me +relangba.com +relianfit.com +reloadbuzz.com +relxtech.com +remaijie.net +remapcity.com +remark.dance +remax-bj.com +remehealth.com +rememtek.com +remen88.com +remoteaps.com +remotedu.com +renaren.com +rencaiaaa.com +rencaijob.com +rendajingjiluntan.com +rendease.com +rendefpc.com +renderbus.com +renderincloud.com +rendna.com +renhence.com +renji.com +renjian.com +renjiaoshe.com +renjiyiyuan.com +renlijia.com +renliwo.com +renlong1688.com +renmaiku.com +renmaitong.com +renminkaiguan.com +renniaofei.com +renping.cc +renqibaohe.com +renren-inc.com +renren.com +renren.io +renren3d.com +renrenbang.com +renrenbeidiao.com +renrenche.com +renrencou.com +renrendai.com +renrendoc.com +renrenfinance.com +renrenhuigo.com +renrening.com +renrenmoney.com +renrenso.com +renrensousuo.com +renrenstudy.com +renrentou.com +renrentrack.com +renrentui.com +renrenyee.com +renrk.com +renrzx.com +rensheng123.com +rensheng2.com +rensheng5.com +rent.work +rentiantech.com +rentixuewei.com +renwen.com +renwole.com +renwuyi.com +renxingwang.com +renyaohua.com +renyufei.com +renzha.net +reocar.com +repai.com +repaiapp.com +repanso.com +repian.com +repianimg.com +replays.net +res0w.com +resclassaction.com +reserve-prime.apple.com +resheji.com +resistor.today +resouxs.com +resowolf.com +respect-lab.com +respondaudio.com +respusher.com +resuly.me +retalltech.com +retey.net +retiehe.com +retouchpics.com +retow.com +return.net +returnc.com +reverselove.com +rew65.com +rewb7mf.xyz +reworlder.com +rewuwang.com +rexcdn.com +rexdf.org +rexinyisheng.com +rexsee.com +rexuedongman.com +rexueqingchun.com +reyinapp.com +reyoo.com +reyun.com +rezhishi.net +rf-gsm.com +rf.hk +rf.tm +rfaexpo.com +rfchina.com +rfchost.com +rfcreader.com +rfctyy.com +rfdl88.com +rfdy.hk +rfeyao.com +rffan.info +rffanlab.com +rfhhzx.com +rfidcardcube.com +rfidchina.org +rfidtech.cc +rfk.com +rfmwave.com +rfsister.com +rfthunder.com +rg950.com +rgb128.com +rgdhgdf.com +rgfc.net +rgoo.com +rgrcb.com +rgslb.com +rgyun.com +rgznworld.com +rh98.com +rhce.cc +rhhz.net +rhjyw.com +rhkj.com +rhsj520.com +rhusen03.com +rhyme.cc +ri-china.com +riaway.com +ribaoapi.com +ribaow.com +ribenbang.com +ribencun.com +ribenshi.com +riboseyim.com +ricebook.com +ricefish.io +ricequant.com +rich-chang.com +rich-futures.com +rich-healthcare.com +richeninfo.com +richiecn.com +richinfer.net +richkays.com +richong.com +richtj.com +ricklj.com +rickyfabrics.com +rickyid.com +rickysu.com +ricterz.me +rightknights.com +rightpaddle.com +rigol.com +rigouwang.com +riitao.com +riji001.com +rijigu.com +rijiwang.com +riju.tv +rijutv.co +rijutv.com +rikka.app +rilvtong.com +rilzob.com +rimiedu.com +ringdoll.com +rinlink.com +ripic.xyz +rippleos.com +risc-v1.com +riscv-mcu.com +riscv.club +risecd.net +risecenter.com +risechina.org +riselinkedu.com +risenb.com +risencn.com +risesoft.net +risfond.com +rishao.com +rishiqing.com +rishuncn.com +riskivy.com +risunsolar.com +riswing.com +ritaomeng.com +ritarpower.com +ritering.com +rivergame.net +riyuanma.com +riyuba.com +riyuexing.org +riyuezhuan.com +riyugo.com +riyujob.com +riyurumen.com +rizhao9.com +rizhaochuanqi.com +rizhaociming.com +rizhi.xyz +rizhiyi.com +rizhuji.com +rj-bai.com +rj889.net +rjchangan.com +rjdk.org +rjghome.com +rjh0.com +rjhcsoft.com +rjoy.com +rjreducer.com +rjres.com +rjs.com +rjsjmbwx.com +rjsos.com +rjty.com +rjypay.com +rjzxw.com +rkanr.com +rkdatabase.com +rkeji.com +rkgaming.com +rksec.com +rkvir.com +rl-consult.com +rlair.net +rlbl888.com +rlhn.xyz +rlkj.com +rlsofa.net +rlwyjf.com +rlydw.com +rlyl.net +rm-static.djicdn.com +rm96.com +rmb.sh +rmcteam.org +rmhospital.com +rmjtxw.com +rmlxx.com +rmryun.com +rmsznet.com +rmttjkw.com +rmxiongan.com +rmylsc.com +rmzs.net +rmzt.com +rmzxb.com +rn-hswh.com +rnfengwo.com +rngtest.com +roadjava.com +roadlady.com +roadoor.com +roadsigngroup.com +robam.com +robei.com +robook.com +robot-china.com +robotedu.org +robotplaces.com +rock-chips.com +rockbrain.net +rockemb.com +rockerfm.com +rockjitui.com +rockmanlab.net +rockru.com +rocky.hk +rockyaero.com +rockyenglish.com +roclee.com +roddypy.com +roffar.com +rohm-chip.com +roidmi.com +rojewel.com +rokid.com +rokidcdn.com +rokub.com +roland-china.com +rollingstone.net +rollupjs.com +rom100.com +romeng.men +romhui.com +romjd.com +romleyuan.com +romphone.net +romzhijia.net +romzhushou.com +romzj.com +roncoo.com +rong.io +rong24.com +rong360.com +ronganjx.com +rongba.com +rongbiz.com +rongbiz.net +rongbst.com +rongcfg.com +rongchain.com +rongchenjx.com +rongdewang.com +rongechain.com +ronghope.com +ronghub.com +ronghuiad.com +ronghuisign.com +rongji.com +rongjinsuo.com +rongledz.com +ronglianmeng.net +rongmayisheng.com +rongnav.com +rongroad.com +rongshiedu.com +rongshu.com +rongshuxia.com +rongstone.com +rongtai-china.com +rongyao666.com +rongyi.com +rongyiju.com +rongyitou.com +rongzhitong.com +rongzhongleasing.com +rongzhongloan.com +rongzi.com +ronnylove.com +rontgens.com +roobo.com +roodoo.net +roof325.com +roogames.com +room365.com +roomse.com +roosur.com +root-servers.world +root1111.com +rootcloud.com +rootguide.org +rootk.com +rootop.org +rootopen.com +rootzhushou.com +roouoo.com +roov.org +ror-game.com +rorotoo.com +ros-lab.com +rosabc.com +rosaryshelties.com +rosecmsc.com +rosedata.com +rosefinchfund.com +roshanca.com +rosi.me +rosinson.com +rossoarts.com +rossoarts.net +rossroma.com +roswiki.com +roszj.com +rotom-x.com +rouding.com +rouju.org +roukabz.com +round-in.com +roundexpo.com +roundyule.com +roushidongwu.com +rousin.com +router.fun +router.tw +routeryun.com +routewize.com +rouwen.net +rouzip.com +rowcan.com +royalpay.com.au +royole.com +royotech.com +rp-pet.com +rpfieldcdn.com +rpg99.com +rpgmoba.com +rpjrb.com +rpo5156.com +rqi17.com +rqjrb.com +rqshbp.net +rqz1.com +rr-sc.com +rr.tv +rr365.com +rrb365.com +rrbay.com +rrbts.org +rrbus.com +rrcimg.com +rrcp.com +rrd.me +rrdaj.com +rree.com +rrfed.com +rrfmn.com +rrhuodong.com +rrimg.com +rritcn.com +rrjc.com +rrjump.com +rrkf.com +rrkvip.com +rrky.com +rrkyw.com +rrl360.com +rrliuxue.com +rrmeiju.com +rrmj.tv +rrppt.com +rrr.me +rrrdai.com +rrrhteam.com +rrrrdaimao.com +rrs.com +rrscdn.com +rrsub.com +rrsub.net +rrswl.com +rrting.net +rrtsangel.com +rrty.tv +rruu.com +rruu.net +rrxh5.cc +rrxiu.cc +rrxiu.me +rrxiu.net +rrys.tv +rrzuji.com +rrzxw.net +rs05.com +rs485.net +rscala.com +rscloudmart.com +rsdgd.com +rsdwg.com +rsdyy.com +rsk26.com +rsng.net +rso.wang +rsp.ink +rss.ink +rsscc.com +rssmeet.com +rssmv.com +rsty77.com +rsw163.com +rsxc01.com +rszfg.com +rt-blend.com +rt-thread.io +rt-thread.org +rtb5.com +rtbasia.com +rtcdeveloper.com +rtfcode.com +rtfcpa.com +rtfund.com +rthpc.com +rtjxssj.com +rtmap.com +rtrrx.com +rtsac.org +rtsoup.com +rtxapp.com +rtxplugins.com +rtxuc.com +ru4.com +ruaimi.com +ruandy.com +ruanfujia.com +ruanhaiqin.com +ruanjiandown.com +ruanjianwuxian.com +ruankao.com +ruanko.com +ruanman.net +ruanmei.com +ruanmou.net +ruanno1.com +ruantiku.com +ruanwen.la +ruanwenclass.com +ruanwenkezhan.com +ruanwenlala.com +ruanyuan.net +rubaoo.com +ruby-china.com +rubybrides.com +rubyconfchina.org +rubyer.me +ruchee.com +rueinet.com +rufei.ren +rufengda.com +rufengso.net +ruffood.com +rufida.com +rugao35.com +ruguoapp.com +ruhnn.com +rui2.net +ruian.com +ruibai.com +ruibaixiang.com +ruichuangfagao.com +ruicitijian.com +ruidaedu.com +ruideppt.com +ruideppt.net +ruidongcloud.com +ruidroid.xyz +ruiguandental.com +ruiguanrobot.com +ruihaimeifeng.com +ruihuo.com +ruiii.com +ruijienetworks.com +ruijiery.com +ruijinintl.com +ruikesearch.com +ruiqicanyin.com +ruiruigeblog.com +ruiscz.com +ruisizt.com +ruisky.com +ruitairt.com +ruitiancapital.com +ruiwant.com +ruiwen.com +ruixing.cc +ruixuesoft.com +ruixueys.com +ruixunidc.com +ruixunidc.net +ruiyang-ra.com +ruiyunit.com +ruizhiy.com +ruizong-gz.com +rujiazg.com +ruketang.com +rulejianzhan.com +rulesofsurvivalgame.com +rum8.perf.linkedin.com +runcmd.com +runcome.com +runde666.net +rundejy.com +rundongex.com +runexception.com +runfox.com +runhe.org +runhuayou.biz +runidc.com +runjf.com +runker.net +runker.online +runmang.com +runnar.com +runnerbar.com +runningcheese.com +runningls.com +runnoob.com +runoob.com +runpho.com +runsisi.com +runsky.com +runtimeedu.com +runtimewh.com +runtonggroup.com +runtronic.com +runwith.cc +runzhize.com +runzi.cc +ruochu.com +ruodian360.com +ruofan.me +ruokuai.com +ruoren.com +ruoshui.com +ruoxia.com +ruoyi.vip +ruozedata.com +ruqimobility.com +rushb.net +rushivr.com +rushmail.com +rusinge.com +russellluo.com +rustdesk.com +ruthus.com +ruubypay.com +ruvar.com +ruvisas.com +ruyahui.com +ruyig.com +ruyile.com +ruyimjg.com +ruyiqiming.com +ruyishi.com +ruyo.net +ruyu.com +ruyuexs.com +ruzw.com +rv2go.com +rvfdp.com +rvmcu.com +rwtext.com +rwxqfbj.com +rwxwl.com +rxbj.com +rxdsj.com +rxgl.net +rxhui.com +rxian.com +rxjhbaby.com +rxjt.co +rxjy.com +rxshc.com +rxys.com +ryanbencapital.com +ryanc.cc +ryanyuanao.xyz +rybbaby.com +ryc360.com +rydth5.com +ryeex.com +ryjiaoyu.com +rylinkworld.com +rymooc.com +rypeixun.com +rysdline.com +rytad.com +rytx.com +ryweike.com +rywsem.com +ryxxff.com +ryyyx.com +rz.com +rzcdc.com +rzcdz2.com +rzfanyi.com +rzhuaqiangu.com +rzjslm.com +rzline.com +rzok.net +rzszp.com +rzx.me +rzyjyl.com +s-02.com +s-dom.net +s-ns.com +s-reader.com +s-sgames.com +s-ts.net +s.mzstatic.com +s06661.com +s135.com +s163.com +s1979.com +s1craft.com +s2cinc.com +s4g5.com +s4yd.com +s5217.net +s575.com +s5tx.com +s60sky.com +s72c.com +s8dj.com +s8j.com +s8x1.com +s8xs.com +s936.com +s9523.com +s955s.com +s95r.com +s98s2.com +s9jk.com +s9yun.com +sa-ec.com +sa-log.com +sa20.com +saas88.com +saasddos.com +saasruanjian.com +saasv.com +saaswaf.com +saayaa.com +sablog.net +sac-china.com +sacdr.net +sact-digital.com +sae-china.org +saebbs.com +safebrowsing.googleapis.com +safecenter.com +safehoo.com +safejmp.com +safenext.com +safestdns.com +safewiki.org +sagetrc.com +sagocloud.com +sahcqmu.com +saibeiip.com +saibeinews.com +saibo.com +saic-audi.mobi +saic-gm.com +saicdt.com +saicgmac.com +saicgroup.com +saicjg.com +saicmaxus.com +saicmobility.com +saicmotor.com +saicyun.com +saidawang.com +saiday.com +saifou.com +saifutong.com +saigao.fun +saihuahong.com +saihuitong.com +saike.com +saikr.com +sail.name +sail2world.com +saili.science +sailingyun.com +saimogroup.com +sainacoffee.com +saintcos.hk +saintic.com +saipujianshen.com +saipujiaoyu.com +sairaicc.com +sairui020.com +saite-xdc.com +saitjr.com +saiyouedu.net +saiyunyx.com +sakway.com +saladns.com +salasolo.com +saleoilpaintings.com +salogs.com +salomerebecca.com +salonglong.com +salongweb.com +salonwith.com +salute88.com +samanlehua.com +samebar.com +samhotele.com +saming.com +samirchen.com +samsunganycar.com +samsungfiberoptics.com +samsunghealthcn.com +samsungyx.com +samwell.net +samyuong.com +samzhe.com +san-health.net +san-sheng.net +sancanal.com +sanctpalace.com +sancunrenjian.org +sandaha.com +sandai.net +sandaile.com +sandbean.com +sandcomp.com +sandeepin.com +sandianzhong.com +sandingtv.com +sandrarene.com +sandslee.com +sandsresortsmacao.com +sanduoyun.com +sandworld.net +sandwych.com +sandy2.com +sanen.online +sanfen.me +sanfen666.com +sanfengyun.com +sanfo.com +sanfu.com +sangfor.com +sangfor.net +sangfor.org +sangfordns.com +sangongzai.net +sangsir.com +sanguobbs.com +sanguocard.com +sanguoh5.com +sanguohero.com +sanguosha.com +sanguozz.com +sanhao.com +sanhaofushi.com +sanhaostreet.com +sanhe-scale.com +sanhucidiao.cc +sanjiang.com +sanjiangpm.com +sanjiaoniu.com +sanjiasoft.com +sanjieke.com +sanjinjiake.com +sanjun.com +sankaijian.com +sankgo.com +sankougift.com +sankuai.com +sanlan123.com +sanlangwang.ink +sannongejia.com +sanpowergroup.com +sanpuzhiyao.com +sanqin.com +sanqindaily.com +sanqinyou.com +sanqiu.org +sanquan.com +sansancloud.com +sansanyun.com +sanshengcao.com +sansky.net +santaihu.com +santelvxing.com +santezjy.com +santiwang.com +santiyun.com +santongit.com +santostang.com +santsang.com +sanweimoxing.com +sanweiyiti.org +sanwen.com +sanwen.net +sanwen8.com +sanwer.com +sanxia-china.com +sanxiamarathon.com +sanxiapharm.com +sanxige.com +sanxinbook.com +sanxu88.com +sanyachloe.com +sanyafz.com +sanyamotor.com +sanyanblockchain.com +sanyaotc.com +sanyastar.com +sanyatour.com +sanye.cx +sanyexin.com +sanygroup.com +sanyhi.com +sanyibao.com +sanyipos.com +sanyoutj.com +sanyuanbaobao.com +sanyuantc.com +sanyuesha.com +sanzang5.com +sanzang5.net +sanzangwang.com +sanzei.com +sao-ma.com +sao.so +saoic.com +saomadang.com +saopu.com +saoso.com +saowen.net +sap-nj.com +sap1000.com +sap1200.com +sapjx.com +saraba1st.com +sarft.net +sass.hk +sasschina.com +sasscss.com +sasseur.com +satrip.com +saturnbird.com +saveen.com +savokiss.com +savouer.com +sawenow.com +sayabear.com +sayloving.com +saywash.com +sb1152.com +sbanfu.com +sbanzu.com +sbc-mcc.com +sbc398.com +sbc665.com +sbeira.com +sbgl.net +sbh15.com +sbiquge.com +sbk-h5.com +sbkh5.com +sbkk8.com +sblunwen.com +sbo8.com +sbr-info.com +sbrj.net +sbt123.com +sbwml.net +sbwxz.com +sbzj.com +sc-jiaoyu.com +sc-vis.com +sc.gg +sc115.com +sc119.cc +sc157.com +sc1588.com +sc1618.com +sc2c.com +sc2car.com +sc2p.com +sc2yun.com +sc666.com +sc823.com +sc946.com +scacm.com +scaffi.com +scala.cool +scanv.com +scarbbs.com +scarclinic-cn.com +scatwang.com +scbaidu.com +scbao.com +scbxmr.com +scbyx.net +scbz.org +scbz120.com +scc.ssacdn.com +scccyts.com +sccin.com +scclssj.com +sccm.cc +sccnn.com +sccq.net +sccsfxdq.com +sccts.com +sccwz.com +scdbzzw.com +scdn1e8v.com +scdnf80r.com +scdng.com +scdng8js.com +scdnj3in.com +scdnl3bk.com +scdnl9cm.com +scdnmogt.com +scdno5zl.com +scdnrvy1.com +scdnucc5.com +scdnurea.com +scdnygb7.com +scdri.com +scdzmw.com +scedu.net +sceeo.com +scfaying.com +scflcp.com +scflgc.com +scfzbs.com +scgc.net +scgckj.com +scgglm.com +scgh114.com +scghseed.com +scgis.net +scgra.com +scgzzg.com +schengle.com +schezi.com +schneidercampus.com +scholarmate.com +scholat.com +schoolgater.com +schove.com +schrb.com +schwarzeni.com +schwr.com +sci-hub.ee +sci-hub.ren +sci-hub.shop +sci-hub.tf +sci99.com +scichina.com +scicn.net +scidict.org +sciencemeta.com +scientrans.com +scies.org +scifans.com +scigy.com +scihubtw.tw +sciimg.com +scijuyi.com +scimao.com +scinno-cn.com +scinormem.com +scipaper.net +sciping.com +sciscanpub.com +scisky.com +scistor.com +scitycase.com +sciyard.com +sciyon.com +scjhyq.com +scjjrb.com +scjtaq.com +scjyzb.net +scjzjyjc.com +scjzy.net +sclf.org +sclinktech.com +scmenhu.com +scmeye.com +scmor.com +scmroad.com +scmsky.com +scmttec.com +scmylike.com +scnjnews.com +scntv.com +sco-marathon.com +scodereview.com +scoee.com +scommander.com +scoregg.com +scp-wiki-cn.org +scpgroup.com +scpic8.com +scplt.com +scqcp.com +scrcu.com +scrdzf.com +scrmtech.com +scrsw.net +scrtf.com +scrumcn.com +scscms.com +scsdns.com +scsdzxh.org +scsgk.com +scsjnxh.org +scsstjt.com +sctaixin.com +sctbc.net +sctcd.com +sctobacco.com +sctv.com +sctvf.com +scufida.com +scujj.com +scusec.org +scutde.net +scutef.org +scutsee.com +scuvc.com +scw123.com +scw98.com +scweixiao.com +scwj.net +scwlylqx.com +scwsf.com +scwy.net +scxdf.com +scxnyl.com +scxyoa.com +scycxh.com +scymob.com +scyongqin.com +scytyy.net +sczg.com +sczgzb.com +sczhaosheng.com +sczj.org +sczl123.com +sczlb.com +sczlcts.com +sczprc.com +sczshz.net +sczsie.com +sczsxx.com +sczw.com +sczxmr.com +sczycp.com +sczyh30.com +sd-blb.com +sd-cellbank.com +sd-ex.com +sd-pic.com +sd-sma.com +sd-xd.net +sd-ysjt.com +sd11185.com +sd173.com +sd235.net +sd5g.com +sdailong.com +sdaoyou.com +sdbao.com +sdbeta.com +sdbykqn.com +sdbys.com +sdca119.com +sdchem.net +sdchina.com +sdchn.com +sdcqjy.com +sdcydl.com +sdd17.com +sddagongrubber.com +sddcp.com +sddermyy.com +sddeznsm.com +sddh.online +sddlys.com +sde6.com +sdebank.com +sdeca.org +sdecloud.com +sdenews.com +sdeqs.com +sderp.com +sdewj.com +sdey.net +sdfcxw.com +sdfhyl.com +sdfll.com +sdfmgg.com +sdg-china.com +sdgdxt.com +sdgh.net +sdgho.com +sdgt1985.com +sdgude.com +sdguguo.com +sdguoxinqz.com +sdgw.com +sdgwy.org +sdhangmoguan.com +sdhk2008.com +sdhoukang.com +sdhsie.com +sdhuxiji.com +sdhxnykj.com +sdiandian.com +sdiborn.com +sdicin.com +sdicpower.com +sdicvc.com +sdifenzhou.com +sdiread.com +sditol.com +sdj-tech.com +sdjcw.com +sdjinlan.com +sdjinwang.com +sdjnwx.com +sdjtcx.com +sdjushu.com +sdkclick.com +sdkclickurl.com +sdklh.com +sdknext.com +sdksrv.com +sdlangkun.com +sdlgzy.com +sdlinqu.com +sdlldj.com +sdlocw.com +sdlongli.com +sdlvxing.com +sdly35.com +sdmic.com +sdmyzsgs.com +sdnci.com +sdnfv.org +sdnjsbc.com +sdnlab.com +sdnxs.com +sdnysc.com +sdo-shabake.com +sdo.com +sdodo.com +sdongpo.com +sdoprofile.com +sdpku.com +sdpmcnc.com +sdqifushebei.com +sdqlkr.com +sdqmy.com +sdqoi2d.com +sdrcu.com +sdsgwy.com +sdshshb.com +sdshulifang.com +sdshyl.com +sdsmefina.com +sdsszt.com +sdtdata.com +sdtsrf.com +sdtuomei.com +sdtvjiankang.com +sdtxmq.com +sduod.com +sdutacm.org +sdv8dvj.com +sdwanping.com +sdwdxl.com +sdwenlian.com +sdwgyy.com +sdx.microsoft.com +sdxczn.com +sdxietong.com +sdxitong.com +sdxjpc.com +sdxvisa.com +sdxwy168.com +sdxyxhj.com +sdxzt.com +sdyinshuachang.com +sdyizhibi.com +sdylsc.com +sdyndcjx.com +sdynr.com +sdyuanbao.com +sdyy.org +sdyyebh010.com +sdyypt.net +sdzbcg.com +sdzdmjg.com +sdzhidian.com +sdzk.co +sdzxswhjygjlm.com +se77en.cc +se7enzone.com +sea-group.org +sea-gullmall.com +sea789.com +seagulllocker.com +seaheart.cc +sealand-scan.com +sealand100.com +sealeadbattery.com +sealyun.com +seamanhome.com +seandou.com +seaning.com +seanxp.com +seanya.com +seanyxie.com +seapard.com +search1990.com +search616.com +searcheasy.net +searchforit8.com +searchpstatp.com +searchtb.com +seasouthgy.com +seassoon.com +seastarasset.com +seasungame.com +seavo.com +seayao.net +seayee.com +sebastianblade.com +sebigdata.com +seblong.com +sebug.net +sec-wiki.com +secaibi.com +secange.com +secbug.cc +secbug.org +secdoctor.com +secdriver.com +secfree.com +secisland.com +secist.com +seclover.com +secoo.com +secooart.com +secooimg.com +secpulse.com +secretgardenresorts.com +secretmine.net +secrss.com +secrui.com +secsilo.com +sectigochina.com +secu100.net +secun.com +secure.globalsign.com +security.cdnetworks.com +securitycn.net +securityfrontline.org +securitypaper.org +secutimes.com +secwk.com +secwx.com +sed3.com +see-far.com +see-source.com +seea.red +seeapp.com +seeb.red +seebug.org +seebyleegee.com +seecmedia.net +seed-china.com +seedasdan.org +seeddsp.com +seedit.cc +seedit.com +seedland.cc +seedsufe.com +seefarger.com +seegif.com +seek114.com +seekbetter.me +seekchem.com +seekfunbook.com +seekonly.net +seekpetm.com +seekplay.online +seelvyou.com +seemmo.com +seemoread.com +seentao.com +seer520.com +seersee.com +seeseed.com +seeshentech.com +seesoso.com +seetao.com +seewellintl.net +seewo.com +seewoedu.com +seexpo.com +seeyii.com +seeyon.com +seeyonoversea.com +seeyouhealth.com +seeyouyima.com +seezy.com +sefonsoft.com +sefyc.com +segahome.com +segmentfault.com +segmentfault.net +segotep.com +segwayrobotics.com +sehuiyao34.com +sehuiyao49.xyz +sehy66.com +seidns.com +seinfeldtv.com +seisman.info +sejai.com +sejie16.xyz +sekede.net +sekorm.com +selboo.com +selfinflatingballoon.com +selfservicechina.com +selinuxplus.com +sell66.com +sellingexpress.net +selypan.com +sem123.com +semeye.com +semgg.com +semgz.com +semicic.com +semidata.info +semiee.com +semielite.com +semiinsights.com +semiway.com +semlinker.com +sempk.com +semplus.org +semptian.com +semvseo.com +sencdn.com +sencha-china.com +send2boox.com +senda360.com +sendbp.com +sendcloud.net +sendcloud.org +sendocn.com +sendong.com +sends.cc +senenwood.com +senfengg.com +sengguo.com +senguo.cc +senguo.com +sengxian.com +seniverse.com +senleo.com +senlianshop.com +senlujj.com +senmi88.com +senmiaoschool.com +senorsen.com +senra.me +sensate.hk +sense-hk.com +senselock.com +senseluxury.com +sensertek.com +sensetime.com +senseyun.com +sensorsdatavip.com +sensorshome.com +senszx.com +sentaijs.com +sentetuwen.com +sentsin.com +sentuxueyuan.com +senyuanhi.com +senyuanzhonggong.com +seo-6.com +seo-820.com +seo.tm +seo123.net +seo628.com +seo8.org +seo8o.com +seoccc.com +seocun.com +seocxw.com +seodaniel.com +seofangfa.com +seohet.com +seohuizhou.com +seoniao.com +seopath.net +seopre.com +seosn.com +seosrx.net +seosteven.com +seotcs.com +seowdw.com +seowenda.net +seowhy.com +seoxiaosai.com +seoxuetang.com +seoyu.net +seozhuanjia.com +seozyw.com +sepact.com +sepri.com +septinn.com +septwolves.com +sepu.net +sequ.biz +sequoiadb.com +sercomm.com +serholiu.com +servasoft.com +serverless.ink +serversad.com +servicemesher.com +servicewechat.com +servingcdn.com +sesamestreetenglishchina.com +seseacg.com +sesier.com +sesubox.com +seteuid0.com +seuic.com +sevdot.com +seven7777.eu +sevencdn.com +sevenseas-china.com +sevnday.com +sewise.com +sexytea2013.com +sf-airlines.com +sf-bearing.com +sf-card.com +sf-companion.com +sf-dsc.com +sf-express.com +sf-financial.com +sf-pay.com +sf-saas.com +sf-zs.net +sf007.com +sf024.com +sf6710.com +sfacg.com +sfantree.com +sfb-100.com +sfbest.com +sfccn.com +sfcdn.org +sfddj.com +sfgj.org +sfgy.org +sfht.com +sfhxdfgl.com +sfile2012.com +sfitcdp.com +sfjdml.com +sfkedu.com +sfkj.vip +sflep.com +sflqw.com +sfmianhua.com +sforest.in +sfpgmk.com +sfplay.net +sfwxf.com +sfyb.com +sfygroup.com +sfystatic.com +sfyy120.com +sfzj123.com +sg-micro.com +sg.work +sg120.com +sg169.com +sg560.com +sg8.cc +sg91.net +sg92.com +sgamer.com +sgcctd.com +sgcctop.com +sgchinese.com +sgcn.com +sgcyjy.com +sgda.cc +sgdmobile.com +sge.sh +sghnny.com +sgjwb.com +sgllk.com +sglxcn.com +sgmlink.com +sgmwlu.com +sgmwsales.com +sgnet.cc +sgnongkang.com +sgou.com +sgpy08.com +sgshero.com +sgsxw.com +sguo.com +sgwk.info +sgyaogan.com +sgzhee.com +sgzm.com +sh-3ai.com +sh-an.com +sh-arpm.com +sh-aurora.net +sh-baolai.com +sh-deem.com +sh-dent.com +sh-dls.com +sh-eastwes.com +sh-ekeyboard.org +sh-gmc.com +sh-henian.com +sh-hilead.com +sh-holiday.com +sh-huifeng.com +sh-hywin.com +sh-investment.net +sh-ryjx.com +sh-service.com +sh-sfc.com +sh-surface.com +sh-tangfeng.com +sh-warwick.com +sh-xinao.com +sh-yajia.com +sh-ybxhz.com +sh-yuy.com +sh-zbfm.com +sh.com +sh112.com +sh1122.com +sh414.com +sh5y.com +sh7.com +sh85gk.com +sh8y.com +sh9130.com +sh9yuan.com +sha-cun.com +sha-steel.com +sha2255.com +sha2299.com +sha2777.com +sha7000.com +sha990.com +shaanxirk.com +shabc.net +shaca.net +shachong8.com +shacumox.com +shaddockfishing.com +shadow-forum.com +shadowedu.net +shadowq.com +shaduizi.com +shafa.com +shafaguanjia.com +shahaizi.com +shaidc.com +shailema.com +shairport.com +shaisino.com +shaizai.com +shallserve.cc +shamiao.com +shan-san.com +shan.com +shanai365.com +shanbay.com +shanbotv.com +shanda960.com +shandagames.com +shandaz.com +shandianhuifu.com +shandianpan.com +shandianyidai.com +shandjj.com +shandong-energy.com +shandongair.com +shandonghaiyang.com +shandongjuli.com +shandongruixiang.com +shandongsannong.com +shandongyunpin.com +shandw.com +shang-tai.com +shang0898.com +shang168.com +shangbaolai.com +shangbiao.com +shangbw.com +shangc.net +shangcaifanyi.com +shangdandan.com +shangdaotong.com +shangdiguo.com +shangdingxin.com +shangdixinxi.com +shangdu.com +shangdu.info +shangdumall.com +shangduo-ihome.com +shangeedu.com +shangeseo.com +shangfayuan.com +shangfox.com +shanggame.com +shanghai-air.com +shanghai-channel.com +shanghai-electric.com +shanghai-intex.com +shanghai-map.net +shanghaiairport.com +shanghaiboji.com +shanghaicaiyi.com +shanghaichannel.net +shanghaiconcerthall.org +shanghaicup.com +shanghaidaily.com +shanghaidisneyresort.com +shanghaiferry.com +shanghaihino.com +shanghaiiot.org +shanghaik11.com +shanghaimart.com +shanghaimuseum.net +shanghainb.com +shanghaining.com +shanghaipower.com +shanghairanking.com +shanghairc.com +shanghairemax.com +shanghairolexmasters.com +shanghaishuangyanpi.com +shanghaitianqi114.com +shanghaitower.com +shanghaixs.com +shanghaiyueshang.com +shanghaizaojia.com +shanghaizhenji.com +shangji998.com +shangjialianpage6.win +shangjilian.com +shangjinuu.com +shanglv51.com +shangmayuan.com +shangmeijiu.com +shangpin.com +shangpintong.com +shangpo.com +shangpusou.com +shangpuzhan.com +shangqiulvxing.com +shangquanquan.com +shangque.com +shangrao-marathon.com +shangshaban.com +shangshangke.me +shangshi360.com +shangshici.com +shangshu.cc +shangshuyixue.com +shangtao.net +shangtao360.com +shangtianapp.com +shangtongda.com +shanguansoft.com +shangusec.net +shangwb.com +shangwu168.com +shangxueba.com +shangyejihua.com +shangyekj.com +shangyeluoji.com +shangyexin.com +shangyexinzhi.com +shangyouze.com +shangyubank.com +shangyuer.com +shangzhang.com +shangzhibo.tv +shanhaizhanji.com +shanhu99.com +shanhuojiaoyi.com +shanhuu.com +shanhuxueyuan.com +shanjinqh.com +shankejingling.com +shanliao.com +shanlink.com +shanliulian.com +shanmao.me +shannon-sys.com +shannonai.com +shanp.com +shanpow.com +shanqb.com +shanqu.cc +shanse8.com +shanshanku.com +shanshoufu.com +shantoumama.com +shanweinews.net +shanxicloud.net +shanxidiy.com +shanximuseum.com +shanxiol.com +shanxiumao.com +shanxiuxia.com +shanxuenet.com +shanyemangfu.com +shanyetang.com +shanyeyuanliang.com +shanyhs.com +shanyishanmei.com +shanyougame.com +shanzhaiwang.net +shanzhen.com +shanzhen.me +shanzhonglei.com +shaodts.net +shaoerbc.org +shaoerbianchengwang.com +shaogood.com +shaoke.com +shaolintagou.com +shaolinwy.com +shaoqun.com +shaoshilei.com +shaoxianchong.com +shaoxing330.com +shaoyee.com +shaozi.info +shaozimama.com +shaphc.org +shaqing.com +shaqm.com +share1diantong.com +share2dlink.com +share2uu.com +sharecharger.com +sharecore.net +sharedaka.com +shareditor.com +sharegog.com +shareinstall.com +shareinstall.net +sharejs.com +shareoneplanet.org +sharetao.com +sharetome.com +sharetrace.com +sharevdi.com +sharewaf.com +sharewithu.com +sharing-water.com +sharkselection.com +sharonroalind.com +sharpbai.com +sharpmobi.com +shartu.com +shawdo.com +shawdubie.com +shawnzeng.com +shayugg.com +shayujizhang.com +shbaimeng.com +shbangde.com +shbars.com +shbbq.net +shbear.com +shbg.org +shbicycle.com +shbj.com +shbnrj.com +shbobo.com +shbund18h.com +shbyer.com +shcaoan.com +shcas.net +shcc-horizon.com +shccig.com +shccineg.com +shccio.com +shcell.org +shchengsan.com +shchhukou.com +shchjj.com +shclearing.com +shcljoy.com +shcngz.com +shcs2010.com +shcsdq.com +shcxzxgs.com +shcymc.com +shdctp.com +shdjt.com +shdrkj.com +shdsd.com +shdzby168.com +shdzfp.com +shebao.net +shebao5.com +shebao520.com +shebaotong.com +shebaoyizhan.com +shebiaotm.com +sheboo.com +sheca.com +shedejie.com +shedoor.com +shedunews.com +sheencity.com +sheepmats.com +sheepsun.com +sheetgit.com +shehuo.me +sheinet.com +sheizhiwo.com +sheji.com +shejibao.com +shejiben.com +shejidaren.com +shejigh.com +shejijia.com +shejijingsai.com +shejiku.net +shejipi.com +shejiqun.com +shejis.com +shejiwo.net +shejiye.com +shejizhaji.com +sheketiandi.com +shekou.com +shelive.net +shellsec.com +sheluyou.com +shelwee.com +shen-hua.com +shenanhui.com +shenbao.org +shenbinghang.com +shenchai.com +shenchuang.com +shencut.com +shendoow.com +shendu.com +shendugho.com +shenduliaojie.com +shenduwin10.com +shenduwin8.com +sheng-huo.org +shengangzc.com +shengbangshenghua.com +shengbaoluo.com +shengbenzixun.com +shengcai.net +shengcaijinrong.com +shengdan.com +shengdaprint.com +shengdianhuadg.com +shengdianhuadk.com +shengejing.com +shengfanwang.com +shenghan.org +shenghefilms.com +shengheplastic.com +shenghui56.com +shenghuojia.com +shenghuorili.com +shenghuowo.com +shenghuozhe.net +shengjing360.com +shengjoy.com +shengli.com +shengming.net +shengminsy.com +shengpay.com +shengqian51.com +shengqianlianmeng.net +shengqugames.com +shengsci.com +shengshaonv.xyz +shengtaireli.com +shengtian.com +shengtongedu.com +shenguang.com +shengwu01.com +shengxiao.net +shengxin.ren +shengxinquan.net +shengyeji.com +shengyidi.com +shengynan.com +shengzehr.com +shengzhaoli.com +shengzhouyigou.com +shenhaiedu.com +shenhexin.com +shenhexin.vip +shenhua.cc +shenhuagushi.net +shenjian.io +shenkexin.com +shenkong.net +shenlanbao.com +shenliyang.com +shenma.com +shenmadsp.com +shenmamov.cc +shenmayouxi.com +shenmou.com +shenmufeiyang0912.com +shenou.com +shenpinwu.com +shenqhy.com +shenqibuy.com +shenquol.com +shenrennn.com +shenrongda.com +shenruan.org +shenshi777.com +shenshiads.com +shenshouwl.com +shenshouyouxi.com +shenshu.info +shenshuo.net +shenshuw.com +shensuantang.com +shentongdata.com +shenweimicro.com +shenweisupport.com +shenwud.com +shenxianhua.com +shenxianyu.cc +shenxingnet.com +shenyangoffice.com +shenyecg.com +shenyehd.com +shenyequ.com +shenyou.tv +shenyunlaw.com +shenzan.com +shenzaole.com +shenzhekou.com +shenzhen-world.com +shenzhenair.com +shenzhenmarathon.org +shenzhenshouxin.com +shenzhenshui.com +shenzhentong.com +shenzhentour.com +shenzhenware.com +shepai1688.com +shequfu.com +shequfu.net +shequnguanjia.com +sherc.net +sheshui.com +sheui.com +sheup.net +shevdc.org +shexiannet.com +shexun.net +sheyi8.com +sheying001.net +sheyingtg.com +shezhan88.com +shfangshui.com +shfcw.com +shfdyk.com +shfft.com +shfilmmuseum.org +shfinancialnews.com +shfq.com +shfrp.com +shftth.com +shgaaz.com +shgao.com +shgaoxin.net +shgci.com +shgjj.com +shgsic.com +shgskj.com +shgyg.com +shhanqiao.com +shhbm.com +shheywow.com +shhgzf.com +shhonghu.com +shhorse.com +shhssts.com +shhuangding.com +shhuayi.com +shhuihai.com +shhuu.com +shhws.com +shhxf119.com +shhyhy.com +shhzcj.com +shi-ci.com +shi-ming.com +shi78.com +shibaihui.org +shibeike.com +shibeiou.com +shibor.org +shicai.biz +shicaidai.com +shicaids.com +shichangbu.com +shichuedu.com +shici.store +shicishe.com +shiciting.com +shiciyun.com +shida66.com +shidaedu.vip +shidaiyuhu.com +shidapx.com +shidastudy.com +shidi.org +shidiao136.com +shidiao18.com +shidu.com +shidz.com +shielday.com +shifen.com +shifendaojia.com +shifeng.com +shifenyuedu.com +shigaoshan.com +shigoog.com +shiguangkey.com +shiguangxu.com +shiguangyouju.com +shiguanvip.com +shij001.com +shijiala.com +shijian.cc +shijianla.com +shijiaok.com +shijibenteng.com +shijicloud.com +shijie2.com +shijiebang.com +shijiebao.vip +shijieditu.net +shijiehuarenbao.com +shijiemap.com +shijiemingren.com +shijieshangzuihaodeyuyan.com +shijiexia.com +shijieyouxi.com +shijieyunlian.com +shijihr.com +shijihulian.com +shijiong.com +shijiudao.com +shijuba.com +shijue.me +shijueju.com +shikang.net +shikee.com +shiku.co +shilawyer.com +shileizcc.com +shilian.com +shilian.net +shilipai.net +shilitie.net +shiliupo.com +shimano-fishchina.com +shiminjiaju.com +shimo.im +shimo.run +shimodev.com +shimolife.com +shimonote.com +shimonote.net +shimowendang.com +shineenergy.com +shinelink.vip +shinelon.com +shinemediaworld.com +shinerayad.com +shineu.com +shineway.com +shinewing.com +shineyie.com +shinianonline.com +shiningmidas.com +shinnytech.com +shinsoukun.com +shinybbs.info +shinycg.com +shinyway.org +shiove.com +ship56.net +shipengliang.com +shipfinder.com +shipgce.com +shiphr.com +ships66.com +shipsc.org +shiptux.com +shipuxiu.com +shipxy.com +shiqi.me +shiqichan.com +shiqichuban.com +shiqidu.com +shiqu.com +shiqumao.com +shiqutech.com +shirannegar.com +shirleyruby.com +shishagame.com +shishangfengyun.com +shishike.com +shisongya.com +shitac.com +shitianxia.vip +shitibaodian.com +shitongaf.com +shitou.com +shitouboy.com +shitourom.com +shiwan.com +shiwangyun.com +shiweisemi.com +shiwenhua.org +shixian.com +shixiaojin.com +shixibiaozhi.com +shixijob.net +shixin.com +shixingceping.com +shixinhua.com +shixiseng.com +shixiu.net +shixiu.org +shixun.co +shixunsuda.com +shixunwl.com +shiyan.com +shiyanbar.com +shiyanbar.net +shiyanbbs.com +shiyanhospital.com +shiyanjia.com +shiyanlou.com +shiye.org +shiyebian.net +shiyebian.org +shiyi.co +shiyi11.com +shiyibao.com +shiyicunxiao.com +shiyiyx.com +shiyongjun.biz +shiyousan.com +shiyu.pro +shiyue.com +shiyuegame.com +shiyunlaile.com +shizhuonet.com +shjdc.com +shjdceo.com +shjgu.com +shjgxy.net +shjh120.com +shjhjc.com +shjinting.com +shjob.work +shjoycity.com +shjsit.com +shjt.net +shjxfc.com +shjyou.com +shkegai.net +shkkl.com +shkuangjing.com +shkypump.com +shl56.com +shlandscape.com +shlawserve.com +shlcd.com +shld.com +shlhwlkj.com +shlll.net +shlmth.com +shlpk.com +shlungu.com +shmama.net +shmarathon.com +shmds.com +shmedia.tech +shmet.com +shmetro.com +shmiaosai.com +shmljm.com +shmnyy.com +shmog.org +shmulan.com +shmusic.org +shmxcz.org +shmy365.com +shmyapi.com +shmylike.co +shmylike.com +shnaer.com +shnb12315.com +shnczq.org +shneweye.com +shnosbbs.com +shnsyh.com +shnti.com +shoasis.net +shobserver.com +shockerli.net +shoegaze.com +shoeshr.com +shojo.cc +shokan.org +shokw.com +shomyq.com +shoot.photo +shootmedia.net +shop.globalsign.com +shop2255.com +shop2cn.com +shopbackdrop.com +shopbop.ink +shopchaoren.com +shoperm.com +shopin.net +shopj.net +shopjyh.com +shoplineimg.co +shopmaxmb.com +shopnc.net +shoprobam.com +shopxo.net +shopyy.com +shortof.com +shoubaodan.com +shoubiaobaojia.com +shouce.ren +shouce365.com +shouchaobao.com +shoucheng123.com +shoucw.com +shoudayy.net +shoudian.com +shoudian.info +shoudian.org +shouduit.com +shoudurc.com +shoufm.com +shougongke.com +shouhoubang.com +shouji.com +shouji10086.com +shouji315.org +shouji56-img.com +shouji56.com +shoujibao.net +shoujiduoduo.com +shoujihuifu.com +shoujikanshu.cc +shoujimi.com +shoujitouping.com +shoujiwan.com +shouliwang.com +shouluo.me +shoumizhibo.com +shouqianba.com +shouqiev.com +shouqu.me +shoutao.biz +shouxi.com +shouxi88.com +shouxibet.com +shouxieti.com +shouxintec.com +shouyao.com +shouyeren.org +shouyou.com +shouyouba.net +shouyoubus.com +shouyoucdn.com +shouyoujz.com +shouyoumen.com +shouyouqianxian.com +shouyoushenqi.com +shouyoutan.com +shouyoutv.com +shouyouzhijia.net +shouzan365.com +shouzhang.com +shouzhangapp.com +shouzhou365.com +shouzhuanfa.com +shouzhuanzhidao.com +shovesoft.com +show160.com +showapi.com +showapk.com +showchina.org +showcome.net +showdesk.io +showdoc.cc +showerlee.com +showing9.com +showji.com +showjoy.com +showjoy.net +showmebug.com +showself.com +showstart.com +showxiu.com +showxue.com +showyu.com +shoyoo.com +shpanli.com +shpans.com +shpanyou.com +shpd.net +shpgt.com +shpgx.com +shphschool.com +shppa.net +shpuyuxxkj.com +shqcplw.com +shqi7.net +shqingzao.com +shqlty.com +shqmxx.com +shqswlgs.com +shrail.com +shrca.org +shrcb.com +shrcdy.com +shrenq.com +shrenqi.com +shrobotpark.com +shsaic.net +shsbnu.net +shsby.com +shsbzl.com +shsci.org +shsee.com +shshilin.com +shsipo.com +shsixun.com +shsjb.com +shskapp.com +shskin.com +shsot.com +shspark.com +shspdt.com +shssp.org +shsunedu.com +shsxjy.com +shtdgj.com +shtdsc.com +shtefu.com +shtennis.org +shtfqx.com +shtgds.com +shtianhe.cc +shtic.com +shtimg.com +shtion.com +shtml.net +shtrhospital.com +shtwjiebao.com +shu-ju.net +shu163.com +shuaacg.com +shuabuapp.com +shuadanfu.com +shuai.so +shuai.win +shuaibo.wang +shuaigay.com +shuaigay.nl +shuaigay6.com +shuaigeshe.com +shuaigetupian.com +shuaihuajun.com +shuaiming.com +shuainiba.com +shuaishou.com +shuaishouzhuang.com +shuaitong.vip +shuajb.com +shuaji.com +shuaji.net +shuajibang.net +shuajibao.com +shuajige.net +shuajizhijia.net +shuame.com +shuanghui.net +shuangkuai.co +shuangtao.com +shuangtv.net +shuangxian.com +shuangxinhui.com +shuangyingsx.com +shuangyuejn.com +shuangzan.com +shuangzheng.org +shuanlongda.site +shuashuaapp.com +shuazhibo.com +shubiaob.com +shubulo.com +shubuzi.com +shucaiguaguo.com +shucaixiaoshuo.com +shuchongread.com +shucong.com +shudaizi.org +shudan.vip +shudaxia.com +shudc.com +shuerjia.com +shufa.com +shufaai.com +shufabao.net +shufadashi.com +shufafin.com +shufaji.com +shufami.com +shufashibie.com +shufawu.com +shufazidian.com +shufaziti.com +shufe.com +shuge.la +shuge.net +shuge.org +shuge9.com +shugoo.com +shuguanghuayuan.com +shuguanxs.com +shuhai.com +shuhaidata.com +shuhaisc.com +shuhaitz.com +shuhegroup.com +shuhua66.com +shuhuangla.com +shui-mai.com +shui.moe +shui.org +shui12366.com +shui2014.com +shuicao.cc +shuichachong.com +shuichan.cc +shuichan51.com +shuichuyu.com +shuidichou.com +shuididabingchou.net +shuidigongyi.com +shuidihealth.com +shuidihuzhu.com +shuidihuzhu.net +shuidike.com +shuidishuju.com +shuiditech.com +shuidixy.com +shuiguo.com +shuihulu.com +shuihuoibm.com +shuijing100.com +shuijingcn.com +shuijingka.com +shuijingwanwq.com +shuijingwuyu.com +shuiliaosheji.com +shuimiao.net +shuimoyuan.com +shuimujiaju.com +shuimushequ.com +shuinankeji.com +shuini.biz +shuipingzuo.com +shuiqian.cc +shuiwushi.net +shuixyh.com +shuiyinbao.com +shuiyoucam.com +shuizhiyuncaishui.com +shujike.com +shuju.net +shujuba.net +shujubang.com +shujubo.com +shujucun.com +shujupie.com +shujutang.com +shukeba.com +shukeju.com +shukoe.com +shukongwang.com +shukuai.com +shuland.com +shulb.com +shuliao.com +shulidata.com +shulihua.net +shuliyun.com +shuma2.com +shumahezi.com +shumaidata.com +shumeipai.net +shumeipaiba.com +shumenol.com +shumensy.com +shumiao.com +shumiimg.com +shumil.co +shumil.com +shumilou.com +shumilou.org +shumo.com +shundecity.com +shunderen.com +shunfalighting.com +shunfangw.com +shunguang.com +shunmi.com +shunong.com +shunshikj.com +shunshunliuxue.com +shunvzhi.com +shunwang.com +shuo6.com +shuo66.com +shuoas.com +shuoba.org +shuobao.com +shuobofootball.xyz +shuoboku.com +shuodedui.com +shuomingshu.net +shuomingshuku.com +shuosanguo.com +shuosc.org +shuoshuo4.com +shuoshuo9.com +shuoshuokong.com +shuoshuokong.org +shuotiancn2012.com +shuotoutiao.com +shuotxts.com +shuowan.cc +shuowan.com +shuowan.net +shuoxu.com +shuqi.com +shuqiapi.com +shuqiread.com +shuqireader.com +shuqistat.com +shuquge.com +shuqun.com +shuqw.com +shuren100.com +shurenbang.net +shurenyun.com +shushangyun.com +shushao.com +shushi100.com +shushihome.com +shushubuyue.com +shushubuyue.net +shusw.com +shuti.com +shuttle.co +shutxt.com +shuwangxing.com +shuwulou.com +shuxiao.wang +shuyang.tv +shuyangba.com +shuyfdc.com +shuyong.net +shuyouji.vip +shuyuewu.co +shuyun.com +shuzhi9.com +shuzhiduo.com +shuzibao.com +shuziju.com +shuzixiaoyuan.com +shuziyinpin.com +shvlee.com +shwcsh.com +shwdbjgs.com +shweiya.com +shwglm.com +shwpbbs.com +shwqjx.com +shws.org +shwsg.net +shwyky.net +shxb.net +shxbe.com +shxhgzf.com +shxiaoran.com +shxibeiquanshe.com +shxil.com +shxkwck.com +shxpp.com +shxt.com +shxwcb.com +shy99.com +shyanke.com +shydjscl.com +shyestar.com +shyfci.com +shygc.net +shyhhema.com +shyingfu.net +shyjad.com +shykx.com +shykz123456.com +shymte.com +shyonghui.xyz +shyouai.com +shyouth.net +shyrcb.com +shyuanting.com +shyueai.com +shyunwei.net +shyuzhai.com +shyxcm.com +shyxwz.com +shyy6688.com +shyyp.net +shyywz.com +shyz07.com +shyzsd.com +shzbc.com +shzbh.com +shzbkj.com +shzcgs.org +shzf.com +shzfzz.net +shzgd.org +shzgh.org +shzh.net +shzhangji.com +shzhanmeng.com +shzhiyingedu.com +shzhyx.com +shzkb.com +shzq.com +shzsun.com +si-en.com +si-in.com +si.cdn.dell.com +si0769.com +si9377.com +siaedu.net +siaoao.com +sias-sha.com +sibfi.com +sibida.net +sic.hk +sicheng.net +sicher-elevator.com +sichina.com +sichuan163.com +sichuanair.com +sichuangwy.org +sicimano.com +sicong.wang +sidatz.com +siddim.com +sidfate.com +siecc.org +sieredu.com +sifalu.com +sifangguo.com +sifangvideo.com +sifayun.com +siff.com +sifive-china.com +sifou.com +sifve.com +sigchina.com +sightp.com +siglent.com +siglff.com +sigmachip.com +sigmamed.net +sigmoblive.com +sigu.cc +sigu.me +sigujx.com +siguoya.name +sigure.xyz +sigvc.org +sihai-inc.com +sihaidj.com +sihaimg.com +sihaishuyuan.com +sihaitv.com +sihaiyijia.com +siheal.com +sihuanpharm.com +sihuida.net +sihuisoft.com +siii.xyz +siiic.com +siilu.com +sijiaomao.com +sijijun.com +sijinchuanbo.com +sijitao.net +sike.cc +sikiedu.com +silanggame.com +sileadinc.com +silenceper.com +silianmall.com +siliaobaba.com +siliaokelijixie.com +siliaoycw.com +siling.com +silkpresent.com +silkroadtechnologies.com +silksong.me +sillydong.com +silucar.com +silucg.com +siludao.com +siluecai.com +siluke.cc +siluke.com +siluke.tw +silukeke.com +silusheji.com +siluwu.com +silverlight.dlservice.microsoft.com +silverlighter.net +sim.djicdn.com +sim800.com +simagic.com +simapple.com +simba.pro +simcom.com +simcomm2m.com +simcu.com +simengadx.com +simiam.com +simici3.com +simida.org +simiki.org +simingcun.net +simingtang.com +simon96.online +simope.com +simp.red +simperfect.com +simple-is-better.com +simplecd.cc +simpledatas.com +simplexue.com +simpo-data.com +simu800.com +simul-china.com +simulway.com +simuwang.com +simwe.com +simxhs.com +sina.com +sina.lt +sina.net +sinaapp.com +sinacdn.com +sinacloud.com +sinacloud.net +sinaedge.com +sinahk.net +sinahlj.com +sinaif.com +sinaimg.com +sinaluming.com +sinanet.com +sinanya.com +sinaquyong.com +sinashow.com +sinasinasinasina.com +sinastorage.com +sinasws.com +sinauda.com +sinawallent.com +sinawap.com +sinawf.com +sincetimes.com +sindsun.com +sinesafe.com +sinforcon.com +singbon.com +singcere.net +singdown.com +singee77.com +singfun.com +singhead.com +singhot.com +singlecool.com +singpodcast.com +singread.com +singtaonet.com +sinmeng.com +sino-corrugated.com +sino-cr.com +sino-flexography.com +sino-foldingcarton.com +sino-life.com +sino-manager.com +sino-rainbow.cc +sino-uniontrust.com +sino-web.net +sinoancher.com +sinoassistance.com +sinobaron.com +sinobasalt.com +sinobasedm.com +sinoca.com +sinocars.com +sinocateringexpo.com +sinocax.com +sinochem.com +sinochemb2c.com +sinochemitc.com +sinocul.com +sinoec.net +sinoef.com +sinoergy.com +sinoevin.com +sinofo.com +sinofsx.com +sinogt.com +sinohb.com +sinohotel.com +sinohowe.com +sinohx.com +sinohydro.com +sinoicc.com +sinoinfosec.com +sinoing.net +sinoins.com +sinointeractive.com +sinologyinstitute.com +sinolub.com +sinolube.com +sinomapping.com +sinomaps.com +sinomatin.com +sinomod.com +sinonet.org +sinooceanland.com +sinooilgas.com +sinopec.com +sinopecgroup.com +sinopechyzx.com +sinopecnews.com +sinopecsales.com +sinopecsenmeifj.com +sinopharm.com +sinopharmzl.com +sinophex.com +sinopr.org +sinosig.com +sinosiglife.com +sinostargroup.com +sinosteel.com +sinotf.com +sinotn.com +sinotone.cc +sinotone.net +sinotrans.com +sinovale.com +sinovatio.com +sinovationventures.com +sinovdc.com +sinovoice.com +sinowealth.com +sinowealth.com.hk +sinowel.com +sinoxk.com +sinreweb.com +sinsam.com +sintaytour.com +sintu.com +sinvofund.com +sinvta.com +sinyuee.com +sinzk.com +sipai.com +sipaphoto.com +sipco.com +sipeed.com +sipgl-lcl.com +siphrd.com +sipo-gd.com +sipo-hb.com +sipo-pesc.com +sipo-sc.com +sipo-tj.com +siportal.cdnetworks.com +siposchina.com +siqiquan.org +sique.com +sir3.com +sir66.com +sirenvps.com +siryin.com +sisen.com +sishuok.com +sishuxuefu.com +sisijiyi.com +sisijp.com +sisp-china.com +sisuoyun.com +siswin.com +site-digger.com +siteapp-static.com +siteinfourl.com +sitekc.com +sites120.com +sitezj.com +sithc.com +sitiaoyu.com +sitongedu.org +sitongzixun.com +sitrigroup.com +situdata.com +sivan.in +sivps.com +siwaman.com +siwazyw.cc +siwazyw.tv +siwazyw.xyz +siwazywcdn.com +siwazywcdn2.com +siwazywimg.com +siwei.me +siweidaotu.com +siweidaoxiang.com +siweiearth.com +siweikongjian.net +siweiw.com +siwuprint.com +sixflower.com +sixianchina.com +sixiang.im +sixiangguo.net +sixiju.com +sixstaredu.com +sixu.life +sixuexiazai.com +sixunited.com +siyanhui.com +siyhust.com +siyu522.com +siyu527.com +siyuan.cc +siyuanedu.com +siyuanren.com +siyuefeng.com +siyunxi.com +siyuweb.com +sizeofvoid.net +sizuo.com +sj-lawyer.com +sj11hb.com +sj123.com +sj33.net +sj35hb.com +sj3w.com +sj88.com +sj96615.com +sj998.com +sjawards.com +sjbzx.com +sjcomic.com +sjdzp.com +sjdzp.net +sjetdz.com +sjf029.com +sjfcdn.com +sjfpro.com +sjfx.com +sjfzxm.com +sjgnskf.com +sjhcip.com +sjhfrj.com +sjhgo.com +sjhl.cc +sjhy.net +sjifm.com +sjkhsl.fun +sjlqgg.com +sjm.life +sjmdh.com +sjmeigao.com +sjmxx.com +sjono.com +sjpcw.com +sjq315.com +sjqkd.com +sjrwzz.com +sjsbk.com +sjsydq.com +sjtiantang.com +sjtickettech.com +sjtjcn.com +sjtug.org +sjtxt.com +sjtxt.la +sjtyks.com +sjtype.com +sju56.com +sjvi.net +sjwtlm.com +sjwxzy.com +sjwyx.com +sjxinxiwang.com +sjxs.la +sjybsc.com +sjycbl.com +sjyst.net +sjytech.com +sjyx.com +sjyyt.com +sjz.cc +sjzbasha.com +sjzbwx.com +sjzcmw.com +sjzcsw.com +sjzdbs.com +sjzhu.com +sjzhushou.com +sjzkz.com +sjzlg.com +sjzlgz.com +sjzmama.com +sjznews.com +sjzqcrl.com +sjzrbapp.com +sjzsidadianji.com +sjztd.com +sjzwww.com +sjzxtsh.com +sjzyu.com +sjzyz.net +sjzz.cc +sjzzimu.com +sk-mtek.com +sk163.com +sk1999.com +sk2game.com +skatehere.com +skcto.com +skdlabs.com +skeo.net +sketchchina.com +sketchchina.net +sketchcn.com +sketchupbar.com +sketchupbbs.com +skg.com +skhao.net +skieer.com +skight.com +skinme.cc +skip-links.com +skiy.net +skjcsc.com +sklinux.com +sklse.org +sklxsj.com +skomart.com +skongmx.com +skrshop.tech +sks7.com +sksdwl.com +skusoft.com +skwl.org +skwo.net +sky-deep.com +sky-fire.com +sky003.com +sky1shop.com +skyallhere.com +skyao.io +skybig.net +skybluead.com +skybluek.com +skycaiji.com +skycloudsoftware.com +skycn.com +skycn.net +skydust.net +skyeaglee.com +skyecs.com +skyfeather.online +skyfollowsnow.pro +skyfont.com +skyfox.org +skygho.com +skyheng.com +skyju.cc +skykeyjoker.com +skylerzhang.com +skyliteapi.com +skylook.org +skymobiapp.net +skymoons.com +skymoons.net +skynj.com +skype-china.net +skyrichpower.com +skyrivers.org +skyrj.com +skysea.com +skysgame.com +skysrt.com +skyts.net +skytv.cc +skyue.com +skywhat.com +skywldh.com +skyworth-ac.com +skyworth-cloud.com +skyworth-ea.com +skyworth-mould.com +skyworth.com +skyworthbox.com +skyworthdigital.com +skyworthds.com +skyworthiot.com +skyworthlighting.com +skyxinli.com +skyyin.org +skyzms.com +sl-360.com +sl.al +sladjust.com +slamtec.com +slanissue.com +slanmedia.com +slassgear.com +slatic.net +slchos.com +sld-cctv.com +sleepboy.com +slegetank.com +slertness.com +slfwq.com +slicercn.com +slieny.com +slimtheme.com +slink8.com +slinli.com +slinuxer.com +sljkj.com +sljypt.com +slkeq.com +slkj.org +slksy.com +sllai.com +slmbio.com +slmwp.com +slogra.com +slooti.com +slpi1.com +slrbs.com +slready.com +slsteel.com +slswx7.com +sltv.net +slupdate.dlservice.microsoft.com +slvdy.com +slwh-dfh.com +slwwedding.com +slzsxx.com +slzww.com +sm-check.com +sm-cq.com +sm-main.com +sm012.com +sm160.com +sm160.net +sm688839.com +sm96596.com +smabaike.com +smallk.net +smallpdfer.com +smallxu.me +smallyuan.com +smarch.com +smarchit.com +smart-idc.net +smart-ptt.com +smart-rise.com +smart4e.com +smartbiyun.com +smartcityzhejiang.com +smartcloudcon.com +smartdeep.com +smartdot.com +smartedm.com +smartemple.com +smartermicro.com +smartfactory-expo.com +smartgaga.com +smartgeek.vip +smartgslb.com +smarthey.com +smarthomecn.com +smartisan.com +smartisanos.com +smartleon.net +smartlifein.com +smartlinku.com +smartmidea.net +smartoct.com +smartpigai.com +smartproxy.me +smartqian.com +smarts.online +smartsenstech.com +smartshe.com +smartsteps.com +smartstudy.com +smartwebee.com +smartx-cn.com +smartx.com +smartyao.com +smarun.com +smaryun.com +smaty.net +smbaike.com +smbais.com +smbinn.com +smbxw.com +smc18.com +smc3s.com +smd88.com +smdcn.net +smdiban.net +smdmark.com +smdyvip.com +sme8718.com +smebb.com +smejs.com +smemo.info +smeoa.com +smesun.com +smfsgs.com +smfyun.com +smggw.com +smgif.com +smgjj.com +smgstar.com +smhdoto.com +smhom1.com +smhyplay.com +smianet.com +smic-sh.com +smics.com +smil888.com +smilec.cc +smilingwhitebear.com +smiseo.com +smjyfx.com +smk3000.com +smkmp.com +smmy365.com +smo-clinplus.com +smo-software.com +smohan.net +smokeliq.com +smoothgroup.cc +smovie168.com +smpeizi.com +smppw.com +sms9.net +smsbao.com +smshx.com +smskb.com +smsx.org +smsyun.cc +smt-dip.com +smt-job.com +smtcdns.com +smtcdns.net +smtchinamag.com +smtcl.com +smtdc.com +smth.org +smthome.net +smtsvs.com +smtvip.com +smucdn.com +smudc.com +smwd.tech +smwenxue.com +smxdiy.com +smxgjj.com +smxgzjy.org +smxs.com +smy01.com +smyfinancial.com +smyhvae.com +smyx.net +smzdm.co +smzdm.com +smzdmimg.com +smzdwan.com +smzwgk.com +smzy.com +snai.edu +snail.com +snail007.com +snailgame.net +snailshub.com +snailsleep.net +snailyun.com +snapemoji.net +snbkf34.com +sncdental.com +sncoda.com +sndhr.com +sndo.com +sneac.com +sneia.org +sngdxsn.com +sngx.ml +snh48.com +sniec.net +snieri.com +snifast.com +snjairport.com +snjbs.com +snjjiu.com +snjrsks.com +snnd.co +snobten.com +snooda.com +snor-china.com +snowballsecurities.com +snowballtech.com +snowdream.tech +snowyimall.com +snrat.com +snren.com +snrtv.com +snrunning.com +sns.io +snsbao.com +snscz.com +snsfun.cc +snsfun.com +snsii.com +snssdk.com +snsteam.club +snsyx.com +snto.com +snupg.com +snwxn.com +snxfcw.com +snxiaowai.com +snxw.com +snysy1.com +snyu.com +snzfj.net +snzgy.com +snzhz.com +so-a.net +so-b.com +so-love.com +so-naver.com +so-t.net +so-voioe.com +so-w.com +so.com +so147.com +so8848.com +soarwatch.com +soba8.com +sobaidupan.com +sobanks.com +sobeian.com +sobereva.com +sobeycache.com +sobeycloud.com +sobot.com +soboten.com +sobug.com +socang.com +socansoft.com +socay.com +socchina.net +sochengyi.com +sochips.com +socialark.net +socialbeta.com +socialfishface.com +socialjia.com +socks1688.com +socolar.com +socomic.com +socool-tech.com +socsight.com +sod99.com +sodalife.xyz +sodao.com +sodc8.com +sodeog.com +sodexo-cn.com +sodhef.com +sodino.com +sodocloud.com +sodocs.net +sodu.cc +sody123.com +soeasysdk.com +soeol.com +sofabiao.com +sofang.com +sofangche.com +sofasofa.io +sofastack.tech +sofi-tech.com +sofreight.com +soft10.com +soft128.com +soft2005.com +soft50.com +soft5566.com +soft568.com +soft6.com +soft778.com +soft78.com +soft808.com +soft8899.com +softabc.com +softbanks.net +softbar.com +softbingo.net +softgostop.com +softhead-citavi.com +softhome.cc +softparkinfo.com +softtest.com +softwarechn.com +softwarecn.com +softwarekeyclub.com +softweek.net +softwelt.com +softwhy.com +softwincn.com +softxz.net +sogaa.net +sogame8.com +sogo.com +sogoke.com +sogood360.com +sogou-inc.com +sogou-op.org +sogou.com +sogou2.com +sogoucdn.com +sogouimecdn.com +sogouw.com +sogouwenwen.com +soharp.com +soho-yiming.com +soho3q.com +sohochina.com +sohonow.com +sohotask.com +sohu-inc.com +sohu.com +sohu.net +sohucs.com +sohuhistory.com +sohunjug.com +sohuns.com +sohusce.com +sohuu.com +soicp.com +sojex.net +sojiang.com +sojiang.net +sojianli.com +sojson.com +sojump.com +sojump.hk +sokoban.ws +soku.com +sokutu.com +solarbe.com +solaridc.com +soldierstory-toys.com +soleilneon.com +solepic.com +solidot.org +soliloquize.org +solo-launcher.com +solochex.com +solodonna.world +solosea.com +solotoon.com +solution9.net +solvso.com +solvyou.com +somanhua.com +somao123.com +somcool.com +somdom.com +someabcd.com +somebus.net +somecoding.com +someet.cc +someibo.com +somepen.com +something8.com +somo.so +somode.com +somsds.com +sonald.me +songchuan12345.com +songcn.com +songguo7.com +songguojiankang.com +songhaifeng.com +songhaoyun.com +songhaozhi.com +songhengnet.com +songjiayang.com +songker.com +songlei.net +songluhome.com +songqili.net +songqinedu.com +songqinnet.com +songruhui.com +songsgames.com +songshitang.com +songshizhao.com +songshudiandian.com +songshuhui.net +songshushuo.com +songsongruanwen.com +songsongyingxiao.com +songsongyun.com +songtaste.com +songxiaocai.com +songyang.net +songyanjiaye.com +songyi.net +songyongzhi.com +songyuan163.com +songzhaopian.com +songzi100.com +songziren.com +sonhoo.com +sonhoo.net +soniu.net +sonkwo.com +sonkwo.hk +sonnewilling.com +sontan.net +sonyue.com +soobb.com +soocang.com +sooele.com +soogif.com +soojs.com +soolco.com +soolun.com +soomal.com +soonwill.com +soonyo.com +sooopu.com +soopat.com +soopay.net +sooshong.com +sooshu.net +soosmart.com +sootoo.com +sooxue.com +sooyisi.com +sooyooj.com +sooyuu.com +soozhu.com +sopaimai.com +sopandas.com +sopanxia.com +soperson.com +soppt.com +sopuning.com +soq.com +soqicrm.com +soquair.com +sorpack.com +sos919.com +sosaw.com +sosdx.com +sosg.net +soshoo.com +soshoulu.com +soshuwu.com +sosidc.com +soso.com +sosoapi.com +sosobtc.com +sosohaha.com +sosomp.com +sosoo.net +sosoq.org +sosorank.com +sososteel.com +sosotec.com +sosotirp.com +sosowan.com +sosowenwen.com +sosoxian.com +sosoyunpan.com +sosoyy.com +sosuo.name +sotemall.com +sothink.com +sotwm.com +sou-yun.com +souaiche.com +souaus.com +soubct.com +soucai.com +souche-fin.com +souche-inc.com +souche.com +soucod.com +soudao.com +soudoc.com +souduanzu.com +soueast-motor.com +souebao.com +soufang.com +soufoo.com +soufuli.net +soufun.com +soufunimg.com +souge.cc +sougu001.com +souho.cc +souho.net +souhu.com +souid.com +souidc.com +souidc.org +soukecheng.net +soukf.com +soukuyou.com +soulady.net +soulapp.me +souldee.com +soulgame.mobi +souluo.net +soulv.com +soundai.info +soupan.info +soupf.net +soupian.org +soupingguo.com +soupis.com +soupu.com +soupu.org +soupv.com +souqian.com +souqiu8.com +souqiwang.net +souqupu.com +source3g.com +sourcecodecap.com +sourcedev.cc +sourl.co +sousea.com +soushai.com +soushuking.com +sousou.com +sousoudus.com +sousouyixia.com +soutaowang.com +southbeauty.com +southbeautygroup.com +southcn.com +southei.com +southernfund.com +southgis.com +southmoney.com +southnews.cc +southnews.net +southseagy.com +southsurvey.com +southyule.com +southzw.com +soutu123.com +soutudi.so +soutushenqi.com +souutu.com +souvr.com +souwifi.com +souwoo.com +souxue8.com +souxuexiao.com +souya.com +souyi.cc +souyidai.com +souyue.mobi +souyunku.com +sov5.com +sovell.com +soven.com +sovxin.com +sowang.com +sowangpan.com +soweather.com +sowin.com +sowu.com +soxscc.info +soxsok.com +soxuxu.com +soyim.com +soyiyuan.com +soyobo.com +soyohui.com +soyoung.com +soyouso.com +soyunion.com +soyunpan.com +sozdata.com +sozhen.com +sp.cc +sp588.cc +sp588.net +sp84.com +sp888.net +sp910.com +space1688.com +spacechina.com +spacesystech.com +spacexlanding.com +spark-app.store +spark4y.com +sparkandshine.net +sparkgis.com +sparkletour.com +spasvo.com +spawatervip.net +spawor.com +spay365.com +spbo.com +spbo1.com +spbosta.org +spc365.net +spcdntip.com +spcywang.com +spdbh5.com +spdbuser.com +spdcat.com +spdchgj.com +spdex.com +spdiy.com +spdiy.net +spdl.com +spdydns.com +specialcdnstatus.com +speed-dns.cc +speed-idc.com +speedcdns.com +speednt.com +speedpan.net +speedsz.net +speedws.info +speedws.org +speedycloud.cc +speiyou.com +spfmc.com +spforum.net +spgnux.com +sphinxrating.com +spibj.com +spiiker.com +spin-view.com +spinytech.com +spirit-doll.net +spirithy.com +spischolar.com +spjxcn.com +spl4cn.com +splaybow.com +splayer.org +splayer.work +splmcn.com +spnchinaren.com +spoience.com +spointdesign.com +spongeliu.com +sportk8.com +sportnanoapi.com +sportq.com +sports-idea.com +sportsdt.com +sposter.net +spot.download +spoto.net +spouyashop.com +spplnet.com +sppmc.com +spprec.com +spps.cc +spr-atm.com +spreton.com +spring4all.com +springairlines.com +springboot.io +springcloud.cc +springcocoon.com +springtour.com +sprzny.com +spswc.com +sptcc.com +sptccn.com +spthome.com +sptxm.com +spway.net +spyouxi.com +spzs.com +sq1996.com +sq580.com +sq581.com +sq688.com +sqa-chn.com +sqage.com +sqanju.com +sqbot.vip +sqchunqiu.com +sqdaily.com +sqeatin.com +sqfcw.com +sqfortune.com +sqggzy.com +sqiming.com +sqkb.com +sql110.com +sqlsec.com +sqmingli.com +sqmlw.com +sqrc.net +sqreader.com +sqrtthree.com +sqstudio.com +sqsxs.com +squarecn.com +squarefong.com +squrab.com +sqxy.net +sqzapp.com +sqzw.com +srcb.com +srcbcz.com +srcmsh.com +srcssc.com +sreanalyze.com +srell.com +srfip.com +srgow.com +srichina.org +sritsoft.com +srjxj.com +srm.dji.com +srrsh.com +srrtvu.com +srssn.com +srtong.com +srun.com +srw00.com +srworld.net +srx3.net +srxww.com +sryjx.com +srzc.com +srzxg.com +srzxjt.com +ss-ceo.com +ss0.me +ss6.co +ss8899888.com +ssaxx.com +ssaya.win +ssbbww.com +ssbgzzs.com +ssby.cc +sscity.org +sscmwl.com +ssdata.com +ssdax.com +ssdfans.com +ssdvd.net +sseinfo.com +ssf.cc +ssgabc.com +ssggg.com +ssgushi.com +ssine.cc +ssine.ink +ssipex.com +ssjjss.com +ssjjtt.com +ssjlicai.com +ssjyhy.com +ssjzw.com +ssky123.com +ssl-google-analytics.l.google.com +ssl.gstatic.com +sslaaa.com +sslceshi.com +sslchaoshi.com +sslchina.com +sslcity.com +ssldun.com +ssleye.com +sslibrary.com +sslnode.com +ssmec.com +ssmoit.com +ssnewyork.com +ssnn.net +ssofair.com +ssoffo.com +ssozz.com +ssp86.com +sspaas.com +sspai.com +sspai.me +sspezz.com +ssports.com +ssports.net +sspsky.com +ssqgx.com +ssqzj.com +ssrcr.com +ssreader.com +ssrrxx.com +ssrtys.com +sss129vip.com +ssscdn.com +sssie.com +ssso.com +sst-ic.com +sst-sd.com +ssuu.cc +ssvob.com +sswchina.com +ssxf.net +ssyar.com +ssyer.com +ssyule.com +ssyxlx.com +ssyzx.net +sszjnc.com +sszzz.com +st001.com +st123.com +st180.com +stackboom.xin +stackcc.com +stackoom.com +stackoverflow.club +stage1st.com +stage3rd.com +stajy.com +standardshop.net +star-boy.com +star-village-ent.com +star1024.com +star7th.com +starbaysoft.com +stardict.net +stardict.org +stardoctor.com +starduster.me +starfivetech.com +stargame.com +staridc.net +starlight-generator.com +starlott.com +starlunwen.org +starming.com +starpainters.net +starparkshenzhen.com +starpiao.com +starrtc.com +starrysurvey.com +starschina.com +starschinalive.com +starsino.com +starsmicrosystem.com +starstech.cc +starstech.tech +starstopic.com +starswar.org +start.htc.com +start.htcsense.com +startcarlife.com +starting2000.com +startogether1.com +startos.com +startos.org +startup-partner.com +starwarschina.com +stat-nba.com +stat18.com +static.cdnetworks.com +staticaa.com +staticdn.net +staticec.com +staticf.com +staticfile.org +statickksmg.com +staticssl.image-gmkt.com +staycu.com +stbieshu.com +stboda.com +stc2002.com +stcmcu.com +stcmcudata.com +stcn.com +stcpsm.com +stcv66.com +stdaily.com +stdard.com +stdicloud.com +stdlibrary.com +stdout.pub +stdwp.com +steambang.com +steambig.com +steamboxs.com +steamchina.com +steamcn.com +steampp.net +steamproxy.net +steamrepcn.com +steamvpn.org +steamxdf.com +stec.net +stedu.net +steelphone.com +steelsearcher.co.kr +steelsearcher.com +stefg.org +stepfpga.com +stevenshi.me +stfile.com +stg8.com +stgairasia.com +stgod.com +stgowan.com +sthforme.com +sthifi.com +sthke.com +stianran.com +stjfw.net +stjulianc.org +stjunshi.com +stjy.net +stkey.win +stlswm.com +stmaoyi.com +stmbuy.com +stmcu.org +stmybj.com +stnn.cc +stnts.com +sto80.com +stock8m.com +stockhn.com +stocks-sparkline-lb.apple.com.akadns.net +stockstar.com +stockwei.com +stockxp.com +stointl.com +stone168.com +stonebuy.com +stoneios.com +stoneo2o.com +stonepoll.com +stonepoll.net +stoneread.com +stonescloud.com +stoneu.com +stonexp.com +stor-age.com +storagesemicon.com +store.apple.com +store.apple.com.edgekey.net +store.apple.com.edgekey.net.globalredir.akadns.net +store.dji.com +store.nike.com +store.storeimages.apple.com.akadns.net +store.storeimages.cdn-apple.com +storeedgefd.dsx.mp.microsoft.com +storkapp.me +stormorai.com +stormsend1.djicdn.com +story520.com +storyboardworld.com +storyday.com +storyren.com +stourweb.com +stourweb.net +stovol.club +stoyard.com +str-mo.com +strconv.com +strcpy.me +streamaxtech.com +streamcomputing.com +streaming.vn.teslamotors.com +streffy.com +strong-study.com +strongcms.net +strongled.com +stswjx.com +stubbornhuang.com +studa.net +studentboss.com +studioartiz.com +study-kit.com +studyapi.com +studyems.com +studyez.com +studyfr.net +studyget.com +studygolang.com +studyingtours.com +studyintour.com +studyiris.com +studyjamscn.com +studylinux.net +studyll.com +studyofnet.com +studypay.com +studyuser.com +studyvip.com +stuhome.net +stuhui.com +stuliving.com +stuln.com +stupid77.com +stupidet.com +stuq.com +stuq.org +stutimes.com +stvgame.com +styadmin.com +stylecdn.com +stylemode.com +styles-sys.com +stz8.com +su-long.com +suaee.com +suanbanyun.com +suandao.com +suanfazu.com +suangtianw.com +suanguajie.com +suanisp.com +suanjuzi.com +suanli.org +suanlitou.com +suanning.com +suanst.com +suanya.com +suaooo.com +suapp.me +subangjia.com +subaonet.com +subaotuan.com +subingkang.com +subinwechat.com +sublimetextcn.com +subline.org +subo.net +subo40.com +subom.net +subond.com +subuy.com +sucai.com +sucaibar.com +sucaidao.com +sucaifengbao.com +sucaifu.com +sucaihuo.com +sucaijishi.com +sucainiu.com +sucaitu.cc +sucaiw.com +such-game.com +suchasplus.com +suchen820.com +suchso.com +sucop.com +sucoupon.com +suda123.com +sudaizhijia.com +sudaoa.com +sudaqq.com +sudidc.com +sudu-67ph.com +sudu-72ub.com +sudu-kay6.com +sudu-pq2y.com +sudu-q6wk.com +sudu-r8gh.com +sudu-sq56.com +sudu-tf42.com +sudu-xu9b.com +sudu123.net +suducha.com +sududa.com +sudupower.net +sudusite.com +sueflower.com +sueon.com +sufangxu.com +sufeinet.com +sufont.com +sugar918.com +sugarcanetechnology.com +sugarforex.com +sugarguo.com +sugarle.com +sugon.com +sugou.com +suhaodian.com +suhuibao.com +suhuishou.com +sui.com +suibianla.com +suibianzhao.com +suibiji.com +suilengea.com +suileyoo.com +suinian.com +suinikan.com +suiniyi.com +suipq.com +suiqiao.com +suirui.com +suishenyun.net +suishouji.com +suisuihu.com +suisuijiang.com +suixingjia.com +suixw.com +suiyichong.com +suiyiju.com +suiyuanjian.com +suiyueyule.com +suizhoushi.com +suizui.net +sukimad.com +sukiu.net +sukkaw.com +sulabs.net +sulandscape.com +sule.cc +suleapi.com +sulianlian.com +suliaodingzhi.com +sumaart.com +sumaarts.com +sumatang.com +sumavision.com +sumeme.com +sumgotea.com +sumiaowang.com +suming.in +sumly.net +summall.com +summerlight.name +sumoon.com +sumory.com +sumrday.net +sumscope.com +sumsz.com +sumygg.com +sun-ada.net +sun-lion.com +sun-wish.com +sun0769.com +sun0769ns.com +sun0816.com +sun66.net +sunater.com +sunbloger.com +sunbo.com +sunbo367.com +sunborngame.com +sunboxsoft.com +sunboyu.com +suncafe.cc +suncco.com +sundan.com +sundns.com +sundray.com +sundxs.com +sunear.net +sunfarms.net +sunfcb.com +sunflyday.com +sunfounder.cc +sunfront.com +sunft.com +sungari1995.com +sungesoft.com +sungoal.org +sungoedu.com +sunhante.com +sunhaojie.com +suninf.net +suning.com +suningcloud.com +suningestate.com +suningholdings.com +sunjidong.net +sunjiwen.com +sunjix.com +sunjs.com +sunland.cc +sunlands.com +sunlands.wang +sunlandstudy.com +sunlandvip.com +sunlandzk.com +sunlife-everbright.com +sunlight-tech.com +sunlightbig.com +sunlogin.com +sunlons.com +sunlordinc.com +sunlune.com +sunmi.com +sunmingxia.com +sunmnet.com +sunnada.com +sunny90.com +sunnychina.com +sunnyos.com +sunnyqi.com +sunnyxx.com +sunofbeaches.com +sunowo.com +sunpala.com +sunpcm.com +sunplusedu.com +sunpma.com +sunpun.com +sunrise-env.com +sunrisedutyfree.com +sunrisenan.com +sunrtb.com +sunsharer.com +sunshe.com +sunshine-power.net +sunshinechn.com +sunsky-online.com +sunstarasia.com +sunstu.com +suntalk-shftz.com +suntop168.com +suntray.com +suntrayoa.com +sunup3d.com +sunupcg.com +sunwayworld.com +sunweiwei.com +sunwinon.com +sunwoda.com +sunwodaenergy.com +sunwy.org +sunxiaoning.com +sunxinfei.com +sunyansong.com +sunyea.com +sunyet.com +sunyingchao.com +sunyixing.com +sunyongfeng.com +sunzhongwei.com +suo.im +suo.nz +suobao8.com +suobuy.com +suofeiya.com +suofeiyashop.com +suoge.net +suorang.com +suorong.com +suoxin5.com +suoyiren.com +supcname.com +supcompute.com +supcon.com +supdri.com +supeeder.com +supei.com +super-mt.com +superboss.cc +superbrowser.hk +superbuy.com +supercrm.com +superdns.net +superfix.com +superforeseer.com +supergslb.com +superhl.com +superjq.com +superlb.net +superlib.com +superlib.net +superlink.mobi +supermap.com +supermap.io +supermapcloud.com +supermapol.com +superpb.com +superpowercn.com +superqq.com +superslide2.com +supersocket.net +superyd.com +superzl.com +supesite.com +supesoft.com +supfast.net +supfree.net +supmeter.com +supmil.com +supmil.net +supoin.com +supool.com +suporpe.com +support-china.apple-support.akadns.net +support-cn.samsung.com +support.apple.com +support.globalsign.com +support.lenovo.com +supumall.com +supuy.com +suqian360.com +suqicloud.com +suqishi.com +suqnn.com +surdoc.net +sure56.com +suremotoo.site +surface-ser.com +surmon.me +surprising.studio +sursen.com +sursenelec.com +sursung.com +surtime.com +suruicloud.com +survey-y.com +survey.work +surveyhills.com +surveyunion.com +survivor99.com +sushouka688.com +susong51.com +susongbbs.com +sustc.us +susudm.com +suteidc.com +sutuiapp.com +sutune.me +suuk.org +suukcn.com +suv666.com +suxiaohu.com +suxiazai.com +suxiege.com +suxing.me +suxuenet.com +suxuewang.com +suy.me +suyanw.com +suyuening.com +suyugame.com +suyunbo.tv +suyutech.com +suzhenyi.com +suzhou.cc +suzhoubank.com +suzhouds.com +suzhoulida.com +suzhoushilla.com +suzhousj.com +suzip.com +suzip.net +suzuki-china.com +suzuki-shanghai.com +svenhetin.com +svinsight.com +svip15.com +svipduihuan.com +svlik.com +svmuu.com +svn999.com +svnbucket.com +svnfc.com +svnspot.com +svnur4.com +svw-volkswagen.com +svwuc.com +sw-bllp.com +sw0013.com +sw2008.com +sw996.com +swaeab.com +swakopuranium.com +swang8.com +swansea86.com +swansonchina.com +swap.wang +swaqds.com +swarma.net +swarma.org +swatou.com +swbbsc.com +swcatalog-cdn.apple.com.akadns.net +swcatalog.apple.com +swcdn.apple.com +swcdn.g.aaplimg.com +swchina.org +swcpu.com +swdist.apple.com +swdist.apple.com.akadns.net +sweet-data.com +sweetalkos.com +sweetdan.com +sweetlove.cc +sweetmartmarketing.com +sweetread.net +swfc-shanghai.com +swg36.com +swgzs.com +swhysc.com +swift.gg +swift51.com +swifter.tips +swifthumb.com +swiftlet.net +swiftmi.com +swiftstar.net +swijoy.com +swjinsheng.com +swjoy.com +swkong.com +swlidc.com +swliuxue.com +swlsbj.com +swoft.org +swok.net +swomc.net +swoole-cloud.com +swoole.com +swordair.com +swordart.online +swordnets.net +swordofmorning.com +swordtt.com +swotbbs.com +swothouse.com +swsbw.com +swscan-cdn.apple.com.akadns.net +swscan.apple.com +swsm.net +swsmu.com +swstsg.com +swt0.com +swupdl.adobe.com +swwlotus.com +swwy.com +sx189.com +sx267.com +sxafz.com +sxbang.net +sxbawy.com +sxccb.com +sxcits.com +sxcm.net +sxcntv.com +sxcqzyc.com +sxctf.com +sxcwit.com +sxcyts.com +sxcywy.com +sxd408.com +sxdkj.com +sxdwsx.com +sxdygbjy.com +sxdzyp.com +sxemc.com +sxepc.com +sxfblog.com +sxfu.org +sxgdtv.com +sxglpx.com +sxgoo.com +sxgq.net +sxgs.com +sxgwyw.org +sxhctv.com +sxhlxy.com +sxhm.com +sxhpthsm.com +sxhr.net +sxhxbank.com +sxiaoshuo.com +sxjagc.com +sxjhzsgc.com +sxjzxww.com +sxkid.com +sxkzxt.com +sxlcdn.com +sxldns.com +sxldtv.com +sxmaps.com +sxmcwlw.com +sxmtdz.com +sxncb.com +sxnfss.com +sxnxl.com +sxnycl.com +sxnyzs.com +sxol.com +sxpdf.com +sxpdk.com +sxpjp.com +sxplc.com +sxpmg.com +sxprgc.com +sxpta.com +sxpyzg.com +sxrb.com +sxrbw.com +sxrczx.com +sxrjcspx.com +sxrtv.com +sxsapi.com +sxsgs.com +sxsim.com +sxsimg.com +sxsjgy.com +sxslnews.com +sxsoft.com +sxsruida.com +sxsslz.net +sxszw.net +sxthzs.com +sxtppm.com +sxtvs.com +sxtybook.com +sxuyr2nx.com +sxvt58.com +sxwbs.com +sxwpyx.com +sxwrsa.org +sxww.com +sxxdll.com +sxxl.com +sxxt.net +sxxw.net +sxxyfw.com +sxxynews.com +sxy7.com +sxycrb.com +sxyj.net +sxzfcy.com +sxzhaobiao.com +sxzlycl.com +sxzq.com +sxzt.org +sxzydj.com +sy-home.com +sy12306.com +sy25.com +sy2k.com +sy3.com +sy76.com +sybasebbs.com +syberos.com +sybj.com +sycaijing.com +sycdtz.com +sycxzx.net +sydaxxw.com +sydcch.com +sydi.org +sydimg.com +sydjwl.com +sydw8.com +sydzconn.com +sydzdiy.com +syf.ink +syfabiao.com +syfw.com +syg315.com +sygd.com +sygsyq.com +syhccs.com +syhhidc.com +syhhkj.com +syhospital.com +syhtcgf.com +syiptv.com +syitgz.com +syjiancai.com +syjkqzw.com +syjzedu.com +sykong.com +sylixos.com +syltdj.com +symama.com +symtc.com +symuge.com +syn029.com +synacast.com +synball.com +sync.sh +synjones.com +synjones.net +synochip.com +syntao.com +synyan.net +syoits.com +syoker.com +syoogame.com +syoseo.com +syoucn.com +syouhui.com +syouzyo.org +sypao.com +sypole.com +syr-sce.com +syrcb.net +sys-ele.com +syscan360.org +sysceo.com +sysclk.com +syscxp.com +sysdyy120.com +sysengi.com +sysfans.com +syshospital.com +syshospital.org +sysmini.com +sysmk120.com +sysrsksy.com +systoon.com +sysush.com +sysuyz.com +sysysjnk.com +sytcke.com +sythealth.com +syttgame.com +sytuku.com +syuan.net +syue.com +sywg.com +sywgy.com +syxwang.com +syxwnet.com +syy07.com +syys8.com +syyx.com +syyyking.com +syzlzz.com +syzoukan.com +sz-3a.com +sz-amdc.com +sz-cerberus.com +sz-changfeng.com +sz-czzc.com +sz-dfl.com +sz-dns.net +sz-edsy.com +sz-etong.com +sz-iflysse.com +sz-jlc.com +sz-lcsc.com +sz-mtr.com +sz-osckj.com +sz-printing.com +sz-skt.com +sz-sunway.com +sz-tianmai.com +sz-trip.com +sz-ua.com +sz-ytq.com +sz0760.com +sz121.com +sz189.com +sz1978.com +sz240.com +sz315.org +sz4db.com +sz5156.com +sz5983.com +sz61.com +sz7h.com +sz836.com +sz886.com +szadst.com +szaeia.com +szaiaitie.com +szaima.com +szairport.com +szaisino.com +szaiten.com +szande.com +szaudio.com +szbbs.org +szbcase.com +szbdyd.com +szbeilu888.com +szbelle.com +szbelle.net +szbiu.com +szbnrj.com +szbwgr.com +szbwgy.com +szbwpt.com +szbym.com +szc.com +szca.com +szcatic.com +szcec.com +szchi.net +szclmd.com +szcno.com +szcompare.com +szcp.com +szcsot.com +szcssx.com +szcsw.com +szcua.org +szcwdz.com +szcy99.com +szczjy.com +szczkjgs.com +szdaily.com +szdc.org +szdcjd.com +szddns.net +szdesigncenter.org +szdiyibo.com +szdn1ms.com +szdxjf.com +szdyx8.com +szeant.com +szeasyin.com +szed.com +szedu.net +szeholiday.com +szelanpo.com +szelight.com +szfa.com +szfachina.org +szfangzhouhd.com +szffmr.com +szfg.net +szfob.cc +szfw.org +szfwzl.com +szfyhd.com +szgalaxy.com +szgft.com +szgftz.com +szggzy.com +szgky.com +szgla.com +szguanai.com +szgwsd.com +szgymz.com +szhdlm.com +szhdyic.com +szhetai.com +szhgh.com +szhh8.com +szhiross.com +szhk.app +szhk.com +szhkkd.com +szhlodz.com +szhlsg.com +szhome.com +szhomeimg.com +szhot.com +szhtp.com +szhuace.com +szhufu.com +szhuhang.com +szhulian.com +szhulian.net +szhytrip.com +szider.com +szisland.com +szjcyyy.com +szjhxjt.com +szjjtg.com +szjlwul.com +szjuquan.com +szjyt66.com +szjytx.com +szkb.net +szkingdom.com +szkoa.com +szksqy.com +szlande.com +szlangwei.com +szlc9.com +szlcsc.com +szledia.org +szleezen.com +szlhtram.com +szlianya.net +szlihuam.com +szlilun.com +szlingsheng.com +szlips.com +szlos.com +szlottery.org +szltz.com +szlvbarcode.com +szlwtech.com +szmadigi.com +szmall.com +szmama.com +szmama.net +szmc.net +szmctc.com +szmil.com +szmrcd.com +szmslaser.com +szmtzc.com +szmuseum.com +szmynet.com +szmyxc.com +szn360.com +sznews.com +szniego.com +szniushi.com +sznlgg.com +sznmd.com +szns-marathon.com +szol.net +szolxd.com +szonline.net +szp168.com +szpa.com +szpclab.com +szpgzn.com +szpiao.com +szpiaoyi.com +szpichappy.com +szpmi.org +szpowerpms.com +szputy.com +szpxe.com +szqcz.com +szqf.org +szqgzx.com +szqinxindz.com +szqsq.com +szqt.net +szquanli.com +szrcfw.com +szrlqy.com +szrrjc.com +szschj.com +szsci.net +szscree.com +szsczx.com +szseafoodexpo.com +szshequ.org +szshinp.com +szsia.com +szsing.com +szsjtjj.com +szsky.com +szslhssy.com +szsmk.com +szsq.net +szsti.net +szsunlaser.com +szswt.net +szt365.com +sztaijier.com +sztalent.org +sztanko.com +sztara.com +szteacher.net +szthks.com +sztkc.com +sztongdazulin.com +sztopbrand.com +sztspi.com +sztxcpa.com +szuavia.org +szvca.com +szvft.com +szvi-bo.com +szwb.com +szwblm.com +szwego.com +szweita.com +szwellsun.com +szwfb.com +szwfzs.com +szwgroup.com +szwstui.com +szwwco.com +szxbyx.com +szxdhj.com +szxianchu.com +szxiangjun.com +szxihu.com +szxinghe.net +szxinjiaxin.com +szxinyixin.com +szxlga.com +szxqsx.com +szxsdmy.com +szxuexiao.com +szxxtx.com +szyfdz.net +szyhljt.com +szyibei.com +szyin.com +szyingwei.com +szyingzhan.com +szyixiu.net +szyjedu.com +szymweb.com +szyran.com +szysmpay.com +szyuda88.com +szyxwkj.com +szyy0373.com +szyyda.com +szyyt.com +szyyx.com +szzbmy.com +szzfgjj.com +szzfzd.com +szzh365.com +szzhangchu.com +szzs360.com +szzxks.net +szzyqc.net +t-bb.net +t-biao.com +t-cha.com +t-cheshi.com +t-chs.com +t-d.tv +t-firefly.com +t-gafa.com +t-io.org +t-ji.net +t-jiaju.com +t-jiu.com +t-nan.com +t-v.com +t.tt +t00y.com +t027.com +t086.com +t1.ink +t10.com +t105.com +t11.store +t12.com +t123yh.xyz +t1networks.com +t1y4.com +t20000.com +t262.com +t2cn.com +t2df.com +t3315.com +t365777.com +t5.work +t56.net +t56jy.net +t58b.com +t5a9.com +t5xs.com +t6756.com +t6q.com +t7t71.com +t7w157.com +t85.net +t888w.com +t8f.com +t8tcdn.com +ta26.com +taaas.org +tabalt.net +tachangxing.com +taclsc.org +tadaigou.com +tadseeker.com +tadu.com +taeapp.com +tag.gg +taglyst.com +tagmmm.com +tagphi.net +tagtxq.com +taguage.com +taguxdesign.com +tahua.net +tai-liang.com +tai3399.com +tai666666.com +tai87.com +taian.com +taianmedia.com +taiantang.net +taibumall.com +taichangle.com +taichi-app.com +taicihome.com +taidao.net +taidous.com +taidu.com +taidupa.com +taifutj.com +taig.com +taigaoxiao.com +taigongwl.com +taiguoyu.com +taihaikj.com +taihainet.com +taihaocn.com +taihe.com +taihehospital.com +taihemedia.com +taiho.cc +taihuoniao.com +taihuwang.com +taihuyuan.com +taiji.com +taijicoder.com +taijiny.com +taijio.com +taijs.com +taijutt.com +taijutv.com +taikang.com +taikanglife.com +taikangzhijia.com +taikeji.com +taikongmedia.com +taikr.com +tainicement.net +taipingyangyinshua.com +taiqigame.com +tairan.com +taishangshiwu.com +taishenghb.com +taishengtoys.com +taitaiblog.com +taitaikg.com +taiwandao.tw +taixingren.com +taixsw.com +taiyang888.com +taiyangd.com +taiyanghttp.com +taiyangpo.com +taiyiche.com +taiyiplus.com +taiyougo.net +taiyulink.com +taizibao.com +tajdny.com +tajubao.com +tajyw.net +takungae.com +takungpao.com +tal-rasha.com +taladapp.com +talangy.com +talbrain.com +talebase.com +talebook.org +talentjava.com +talents-tech.com +talentsmag.com +talicai.com +taliove.com +taljdns.com +talk-fun.com +talk007.com +talkgw.com +talkingchina.com +talkingdata.com +talkingdata.net +talklee.com +talkop.com +talkwithtrend.com +talkyun.com +taluo.com +talyscm.com +talzjsj.com +tamaegis.com +tamc8.com +tamersunion.net +tamguo.com +tamigroup.com +tamll.com +tamtattoodx.com +tan.cc +tan07.com +tan14.net +tan8.com +tan90.me +tanbaicun.com +tanbo.name +tancdn.com +tanchinese.com +tandehao.com +tandjx.com +tang-lei.com +tang.su +tang8.com +tangdaoya.com +tangdou.com +tangdouimg.com +tangeche.com +tanggu11g.com +tangguoxian.com +tanghushi.com +tangjie.me +tangjiu.com +tangkabj.com +tanglei.name +tangmi.net +tangobrowser.net +tangongye.com +tangrenjv.com +tangruiqian.com +tangsanshu.com +tangshan.cc +tangshijun.com +tangshuang.net +tangshui.net +tangsongys.com +tangsuanradio.com +tangtang.org +tangtanghr.com +tanguan.net +tangux.com +tangwumo.com +tangyingkang.com +tangzhekan2.net +tangzhuan666.com +tanhaibo.net +tanho.com +tanhu.net +tankeai.com +tankmm.com +tankywoo.com +tanling.com +tanluxia.com +tanmer.com +tanmizhi.com +tannet-information.com +tanpoqiuer.com +tanrd.com +tanshudata.com +tansoole.com +tansuotv.com +tantanapp.com +tantu.com +tantu.info +tantuw.com +tanv.com +tanwan.com +tanwan123.net +tanwanyx.com +tanweime.com +tanwuapp.com +tanx.com +tanyihui.com +tanyu.mobi +tanyuantech.com +tanzhouedu.com +tanzhoujiaoyu.com +tanzhouvip.com +tao-jiujiu.com +tao-star.com +tao-studio.net +tao-wu.com +tao008.com +tao123.com +tao168.com +tao30.com +tao616.com +tao800.com +tao8090.com +taoad.com +taoba568.com +taobao-img.com +taobao.com +taobao.cz +taobao.net +taobao.org +taobao.tw +taobao.wang +taobao1111.com +taobao92.com +taobaocdn.com +taobaocdn.net +taobaoweb.co +taobaozxw.com +taobc.com +taobeihai.com +taobeirj.com +taobz.com +taoc.cc +taocece.com +taoche.com +taoci.com +taocloudx.com +taocms.org +taocz.com +taodabai.com +taodake.com +taodangpu.com +taodaso.com +taodaxiang.com +taodianjia.com +taodiantong.com +taodiqupu.com +taodocs.com +taodu.com +taodudu.cc +taoduyx.com +taofang.com +taofen8.com +taofont.com +taogula.com +taohaobang.com +taohhui.com +taohua.com +taohuaan.net +taohuadao3.com +taohuazu.net +taohuazu.pw +taohui.pub +taohuichang.com +taohuizhou.com +taohuochang.com +taohuren.com +taohwu.com +taoibao.net +taojiji.com +taojin6.com +taojindi.com +taojingame.com +taojinhudong.com +taojinji.com +taojinyi.com +taokaifu.com +taoke.com +taokehome.com +taokewenan.com +taokezhushou.com +taokouling.com +taoku.com +taolusm.com +taolx.com +taomanhua.com +taomee.com +taomeiju.com +taoming.com +taomingyan.com +taonienie.com +taoniu.com +taoniupin.com +taooo.cc +taopiaopiao.com +taopinquan.com +taoq.net +taoqao.com +taoqian123.com +taoquanquan.com +taosdata.com +taosem.com +taoshouyou.com +taoshu.com +taoshudang.com +taosj.com +taotao.com +taotaocar.com +taotaosou.com +taotieren.com +taotiwang.com +taotu8.net +taotumowang.com +taotuwu.com +taou.com +taowenxue.com +taowola.com +taoxiaolu.com +taoxiaozhong.com +taoxie.com +taoxv.com +taoyeyou.com +taoyi-support.com +taoyizhu.com +taoyoupin.com +taoyuantravel.com +taozaisheng.com +taozhutu.com +tapapis.com +tapas.net +tapdata.net +tapdb.com +tapdb.net +tapechat.net +tapenjoy.com +tapimg.com +tapotiexie.com +tapque.com +taptap-api.com +taptap.com +taptapcode.com +taptapdada.com +taraniss.com +tarczp.com +tarenacn.com +tarenwang.net +tarsocial.com +tartscenter.com +tasiyun.com +taskcity.com +taskcn.com +taskyou.net +taslgs.com +tasly.com +tastespirit.com +tastones.com +tastysteak.com +tatace.com +tatatimes.com +tatazu.com +taterli.com +tattoo114.com +tattoo77.com +taurus66.com +tavsiktlig.com +tax-edu.net +taxjiangkewang.com +taxnote.org +taxspirit.com +taxwen.com +tayohya.com +tazhe.com +taznsb.com +tb.am +tb51.net +tb58.net +tb888.net +tbadc.com +tbankw.com +tbcache.com +tbdazhe.com +tbdiy.com +tbh5.com +tbhcc.com +tbhelper.com +tbhjgc.com +tbkf.net +tbl-import.com +tblk.me +tbnimg.com +tbq168.com +tbqw.com +tbsandbox.com +tbscp.net +tbsgame.net +tbshops.com +tbsite.net +tbt.cc +tburl.in +tburl.net +tbw-fuzhuang.com +tbw-hufu.com +tbw-xie.com +tbwbao.com +tbwda.com +tbwfy.com +tbxt.com +tbyfsoft.com +tbyuantu.com +tc-21.com +tc-ds2000.com +tc12580.com +tc199.net +tc9011.com +tc930.com +tcc.so +tccqb.com +tccxfw.com +tcdai.com +tcdnlive.com +tcdnos.com +tcdnv3.com +tcdnvod.com +tcdnvp.com +tcdushi.com +tceic.com +tcfhty.com +tcgcardgame.com +tchbgz.com +tchilde.com +tchzt.com +tciplay.com +tcl.com +tclbusiness.com +tclclouds.com +tclking.com +tcloudbase.com +tcloudbaseapp.com +tcloudfamily.com +tcloudlife.com +tcloudscdn.com +tcloudscdn.net +tcm100.com +tcmfrj.com +tcmygy.com +tcnews.cc +tcnvmms.com +tcp.hk +tcpspc.com +tcqccn.com +tcrcb.com +tcrcsc.com +tcs-y.com +tcsae.org +tcsdzz.com +tcshare.org +tcsnake.com +tcstudents.com +tcstzg.com +tctd.net +tctip.com +tctong.com +tcxfpc-pcb.com +tcxw.cc +tcy365.com +tcylgslb.com +tcz.name +td-tech.com +td22.com +td518.com +td776.com +td98.com +tdatamaster.com +tdbzcl.com +tddmp.com +tddspmall.com +tdfcw.com +tdict.com +tdimg.com +tdldz.com +tdlegg.com +tdnsv1.com +tdnsv2.com +tdnsv3.com +tdnsv5.com +tdnsv6.com +tdnsv8.com +tdpress.com +tdun.com +tduou.com +tdyxmoto.com +tdzyw.com +te5.com +te6.com +tea26.com +tea7.com +tea88gifts.com +teach365.com +teachcn.net +teachercn.com +teacherhou.com +teacti.com +teakki.com +teaku.com +teamall.cc +teambition.com +teambition.net +teambuy.cc +teamlogs.com +teamminus.com +teamotto.net +teamshub.com +teamtopgame.com +teapic.com +teatreexy.com +teazhishi.com +tebaidu.com +teboncapital.com +tecbbs.com +tecenet.com +tech-domain.com +tech-food.com +tech-mx.com +tech-sonic.net +tech1024.com +tech110.net +tech126.com +tech2ipo.com +techan.com +techantong.net +techbeat.net +techbrood.com +techeme.net +techenergize.com +techflow520.com +techgastronomy.com +techgogogo.com +techkedu.com +techmiao.com +technode.com +techoke.com +techsir.com +techuangyi.com +techug.com +techvisum.com +techwalker.com +teclast.com +tecobj.com +tecyle.com +tedaniu.com +teddymobile.net +tedx.net +tee7.com +teein.com +teencn.com +teeqee.com +tefl-china.net +tegongji.com +tegoushe.com +tehui001.com +tehuituan.com +tejiabei.com +tejiaquan.com +tejiawang.com +tektea.com +telaideyouxue.com +teld.net +telefen.com +telehr.com +teleinfoo.com +teleland.net +telfri.net +teliute.org +telking.com +tell520.com +telling.com +telllove520.com +telnet404.com +telojob.com +telu.net +telunsu.net +tem.pw +tem365.com +temaihui88.com +temaiku.com +temox.com +temp.im +tencdns.net +tencent-blackboard.com +tencent-cloud.com +tencent-cloud.net +tencent-gf.com +tencent.com +tencent.com.hk +tencentads.com +tencentclb.com +tencentcloud.com +tencentcloudapi.com +tencentcs.com +tencentdba.com +tencentdevices.com +tencentipv6.com +tencentlog.com +tencentmeeting.com +tencentmind.com +tencentmusic.com +tencentsuite.com +tencentwm.com +tencentyun.com +tenchii.com +tendacn.com +tendawifi.com +tendcode.com +tenddata.com +tenfafa.com +tenganxinxi.com +tengattack.com +tengbai-it.com +tengbo.cc +tengchu.com +tengdinggame.com +tengfang.net +tengfangyun.com +tengfeijob.com +tengfeizhida.com +tengfun.com +tenghen.com +tenglutg.com +tengma123.com +tengmed.com +tengmoney.com +tengshuodz.com +tengwen.com +tengwen001.com +tengxiao.wang +tengxunmail.com +tengxunqiye.com +tengxunqiyeyou.com +tengxunyu.com +tengxunyundaijinquan.com +tengy.com +tengyuejz.com +tengzhihh.com +tengzhipp.com +tengzhuan.com +tenhot.net +teniucaijing.com +teniujinfu.com +tenlonstudio.com +tenlywu.com +tenmh.com +tennisworld.mobi +tennoo.com +tenpay.com +tenqent.com +tensafe.com +tenshi.cc +tensorchip.com +tensornews.net +tenstars.net +tensynad.com +tensynchina.com +tentrue.com +tentx.com +tenxapp.com +tenxcloud.com +tenxcloud.net +teoripendidikan.com +teown.com +tepcb.com +tepintehui.com +terabuy.com +terapines.com +terence2008.info +terencexie.com +teridge.com +terminus.io +terra-master.com +terransforce.com +teruide.net +tese5.com +tesexiu.com +teshenqi.com +tesolsh.com +tesoon.com +test-edu.net +test404.com +testbird.com +testcoo.com +testeb.com +testerhome.com +testerlife.com +testict.com +testip.xyz +testiu.com +testjj.com +testroad.org +testrust.com +testtao.com +testwo.com +testxy.com +testyk.com +teuhui.com +tex68.com +texclo.net +text.wiki +textin.com +teyop.com +tezhengma.com +tezhongzhuangbei.com +tezign.com +tf.wiki +tf86.com +tfang.net +tfax.com +tfbcj.com +tfcaijing.com +tfcloud.com +tfclub.com +tfdccn.com +tfedu.net +tff.bz +tfg2.com +tfgame.vip +tfhj.com +tfme.com +tfogc.com +tfol.com +tfrl.net +tfsino.com +tfsmy.com +tfxgt.com +tfysw.com +tfyum.net +tfzcode.com +tg-vision.com +tg-vision.net +tg0123.com +tg1234.com +tg72.com +tgbus.com +tgcid.org +tghello.com +tgirl.cc +tgjh.com +tgking.net +tgljw.com +tglxh.com +tgnet.com +tgovcloud.com +tgshiguan.com +tgyoo.com +tgyun.cc +th123.com +th38.com +thaiyuehealth.com +thamco.com +thanhong.me +thanhtunghairsalon.com +thankbabe.com +thatinterpreter.net +thatsmags.com +thatsmandarin.com +thbattle.net +thcad.net +thcantech.com +thdb.com +the4can.com +the5fire.com +the9.com +thearenacapital.com +thearyong.com +theateliercouture.com +thebeastshop.com +thebeautools.com +thebeijinger.com +thebeijingnews.com +thechihuo.com +thechois.cc +thecode.me +thecodeway.com +thedatasys.com +theduapp.com +thefatherofsalmon.com +thefifthera.com +thegbdc.com +thegiac.com +theguangdong.com +thehanshow.com +theiei.com +thejamy.com +thejiangmen.com +thejoyrun.com +thelarkcloud.com +thelastsky.com +themebetter.com +themeforwp.net +themeila.com +themex.net +themez.cc +themisweeps.com +then9.com +thenburn.com +thenew123.com +theorychina.org +thepaintstore.net +thesmartmelon.com +thestack.net +thethirdmedia.com +thetigerhood.com +thetongji.com +thetype.cloud +thewowa.com +thexnode.com +theyun.com +thfdcsoft.com +thfure.com +thhome.net +thief.im +thinbug.com +thingjs.com +thingtry.com +thinkcmf.com +thinkdream.com +thinkeridea.com +thinkhard.tech +thinkindrupal.com +thinkjs.org +thinksns.com +thinksrc.com +thinvent.com +thishealthsummit.com +thisim.net +thisisdongdongqiang.com +thiztech.com +thjunshi.com +thmovie.com +thmz.com +thn21.com +thoughtworkers.org +thrbs.com +threadcn.com +threegorgestours.com +threeol.com +threetong.com +ths123.com +ths8.com +thseoer.com +thstars.com +thstp.com +thsyyxgs.com +thtfpc.com +thumedialab.com +thundercdn.net +thunderflash.net +thunderobot.com +thunderurl.com +thunis.com +thunisoft.com +thunlp.org +thupdi.com +thwiki.cc +thxbxg.com +thxddb.com +thxedu.com +thxflt.com +thxxw.com +thyclub.com +thyoo.com +thyou.com +thz56.com +thzab.com +thzcb.com +thzer.com +thzxhm.com +ti-node.com +ti-solar.com +ti98.com +tian10.com +tianan-cyber.com +tiananmenlvyou.com +tianapi.com +tianbai.net +tianbaosi.com +tiancaiui.com +tiancaixing.com +tianchu.com +tiancipz.com +tiancity.com +tiancitycdn.com +tiandaoedu.com +tiandi.com +tianditu.com +tianditu.org +tiandizw.com +tianduntech.com +tiandy.com +tianelian.com +tianfeiyu.com +tianfupic.com +tianfusoftwarepark.com +tianhaohz.com +tianhejiayi.com +tianhongdiaosu.com +tianhongsunshine.com +tianhujy.com +tianji.com +tianji368.com +tianjieleather.com +tianjigame.com +tianjihr.com +tianjimedia.com +tianjin-air.com +tianjingrong.com +tianjinshunma.com +tianjinwe.com +tianjinxs.com +tiankong.com +tiankong.info +tiankonguse.com +tianlaiedu.com +tianlaikge.com +tianlan.net +tianmao.com +tianmaying.com +tianmeng.org +tianmidian.com +tianmin789.com +tianmujiqi.com +tianmupe.com +tianmupr.com +tiann90.com +tianniuyouxi.com +tiannv.com +tianpeng.com +tianpinjie.com +tianpujun.com +tianqi.cc +tianqi.com +tianqi123.com +tianqi321.com +tianqi4.com +tianqi518.com +tianqiaojuyuan.com +tianqiaoyishuzhongxin.org +tianqiapi.com +tianqihoubao.com +tianqijun.com +tianqikb.com +tianqistatic.com +tianqiwang.org +tianrow.com +tianruixinxi.com +tianruiyun.com +tiansenjituan.com +tianshan277.com +tianshangrenjian123.com +tianshengdiyi.com +tianshi.info +tianshi2.net +tianshiaomei.com +tianshiyiyuan.com +tianshouzhi.com +tianshuge.com +tiansin.com +tiantailaw.com +tiantang6.com +tianti.com +tiantian.com +tiantian8.com +tiantiancaipu.com +tiantianfm.com +tiantianfunds.com +tiantianhr.com +tiantianleshuiguo.com +tiantianquce.com +tiantianqutao.com +tiantiansoft.com +tiantiantiao.com +tiantianxuexi.com +tiantk.com +tiantonglaw.com +tianvalue.com +tianwenhu.com +tianxia.la +tianxiadianjia.com +tianxiajiameng.com +tianxiang.com +tianxianle.com +tianxiawangxiao.com +tianxiaxiao.net +tianxiaxinyong.com +tianxinfan.com +tianxing.com +tianxinsuye.com +tianya.com +tianya.tv +tianya999.com +tianyablog.com +tianyabook.com +tianyaclub.com +tianyaluedu.com +tianyana.com +tianyancha.com +tianyanqifu.com +tianyant.com +tianyaruanwen.com +tianyaui.com +tianyecollege.com +tianyi1368.com +tianyibook.com +tianyihy.net +tianyiidc.com +tianyijue.com +tianyinzaixian.com +tianyiweiya.com +tianyuimg.com +tianzeba.com +tianzhao.net +tianzhuo.com +tianzikj.com +tianziyu.com +tianzongyouxi.com +tiaodao.com +tiaoguangbolimo.com +tiaohao.com +tiaoliao.biz +tiaomu.com +tiaona.com +tiaooo.com +tiaotiaotang.net +tiaozhanbei.net +tiatiatoutiao.com +tibaitong.com +tibet3.com +tibet4wd.com +tibet9.com +tibetanbible.org +tibetannet.com +tibetcn.com +tibetcnr.com +tibetcul.com +tibetculture.net +tibetcyts.com +tibetway.com +ticketdashi.com +ticketmars.com +ticp.io +ticp.net +ticstore.com +ticwear.com +tida120.com +tidb.io +tideswing.fun +tidi.mobi +tiduyun.com +tieba.com +tiebaimg.com +tiebamm.com +tiebaobei.com +tiebashop.com +tiedan2019.com +tiegu.com +tiejia123.com +tiejiang.org +tiejiong.com +tiejp.com +tielemao.com +tielingcn.com +tielu.org +tiepishihu.com +tietie.la +tietuku.com +tieweishi.com +tieww.com +tiexie0.wang +tiexing.com +tiexing.net +tiexiuyugudao.com +tiexue.net +tieyi.tm +tieyou.com +tiezhima.com +tiezis.com +tigerbbs.com +tigerbrokers.com +tigerbrokers.net +tigeresop.com +tigerfintech.com +tigersecurities.com +tigeryun.com +tiham.com +tiimg.com +tijian001.com +tijian123.com +tijianbao.com +tijianka.cc +tijianshangmen.com +tijianzhuanjia.com +tikane.com +tikersport.com +tikuol.com +tillcn.com +timanetworks.com +timchen314.com +time-weekly.com +time-year.com +time.izatcloud.net +time2011.com +timecoo.com +timedg.com +timenote.cc +timeofdate.com +timeoutbeijing.com +timeoutcn.com +timepill.net +timeread.com +timeread.net +timesdf-hn.com +timetw.com +timev.com +timing360.com +timipc.com +timitime.com +timjx.com +tinderboxx.com +tinfinite.com +ting-tou.com +ting30.com +ting55.com +ting85.com +tingall.com +tingbook.com +tingcd.com +tingchewei.net +tingchina.com +tingclass.com +tingclass.net +tingdegang.com +tingfun.net +tingjiandan.com +tingke8.com +tingliku.com +tingmall.com +tingmimi.net +tingroom.com +tingshubao.com +tingshucn.com +tingshuge.com +tingtao.net +tingwusun.com +tingyulou.com +tingyun.com +tingyunfenxi.com +tinkad.net +tinkerpatch.com +tinman798.net +tinsecret.com +tinsecret.org +tiny-calf.com +tiny4.org +tinyems.com +tinyflare.com +tinygroup.org +tinylab.org +tinyservices.net +tinyyuan.com +tipaipai.com +tipask.com +tipdm.com +tipray.com +tiprpress.com +tips1000.com +tiqiaa.com +tiqianle.com +tired.im +tiruna-cn.com +tisgame.com +tisino.com +tisiwi.com +tisohinge.com +tita.com +titan007.com +titan24.com +titanar.com +titanmatrix.com +titapark.com +tiwb.com +tixa.com +tixaapp.com +tixaclub.net +tiyalive.com +tiye.me +tiyeji.com +tiyep.com +tiyii.com +tiyu68.com +tiyudaka.com +tiyufeng.com +tiyule.com +tiyusaishi.com +tiyuxiu.com +tizi.com +tizi365.com +tizoinfo.com +tj-guangxin.com +tj-kingdee.com +tj-model.com +tj-un.com +tj-yijiajing.com +tj-zt.com +tj0573.com +tj20.com +tjabjm.com +tjaide.com +tjashy.com +tjbearing.com +tjbh.com +tjbsq.com +tjbus.com +tjcamp.com +tjcondom.com +tjculture.com +tjdcsd.com +tjdwkj.com +tjdyf.com +tjfer.com +tjflora.com +tjgangkouyiyuan.com +tjgcs.com +tjgdjn.com +tjgtgd.com +tjhukou.com +tjhyzyxy.com +tjinsuo.com +tjj.com +tjjapp.com +tjjt360.com +tjjwt.com +tjkx.com +tjkximg.com +tjkyhr.com +tjluohuzhijia.com +tjmama.com +tjmhc.com +tjmuch.com +tjorthop.org +tjpa-china.org +tjpma.org +tjptfhq.com +tjqktgg.com +tjrge.com +tjsjnxh.com +tjst.net +tjstats.com +tjtdhyfs.com +tjtzkj.com +tjufbase.com +tjupdi.com +tjvedu.com +tjwch.com +tjwch.org +tjwenjie.com +tjwj88.com +tjwmschool.net +tjwzy.com +tjxishuai.com +tjxmzd.com +tjxrm.com +tjxxcl.com +tjxxsw.com +tjxz.cc +tjyfkt.com +tjyouai.com +tjyun.com +tjyywjc.com +tjyz.org +tjzb.com +tjzcsj.com +tjzentan.com +tjzfcg.com +tjzhongyiyao.com +tjzrld.com +tjzsxl4.com +tjzyec.com +tk-rays.com +tk-xiong.com +tk163.com +tkf.ink +tkg5.com +tkgame.com +tkhealthcare.com +tkoubei.com +tkplusemi.com +tkw.cc +tkxxd.net +tkxzw.com +tky001.com +tl-self.com +tl-shida.com +tl-tek.com +tl-vogue.com +tl88.net +tlbaby.com +tlby120.com +tlbyx.com +tlcharity.com +tlfjw.com +tlfw.net +tlggzyjy.com +tlightsky.com +tlinx.com +tljcw.com +tljob8001.com +tlkzs.com +tlqwine.com +tlrcbk.com +tlsj-hd.com +tlstwy.com +tlte.com +tltesoft.com +tltuan.net +tltzg.com +tlwok.com +tlyy.cc +tm12ji.com +tm312.com +tma-001.com +tmabike.com +tmaill.com +tmall.casa +tmall.com +tmall.hk +tmall.ru +tmallma.com +tmallvvv.com +tmbbs.com +tmcdn.net +tmdm.com +tmeiju.com +tmhong.com +tmhvps.com +tmigoods.com +tmisp.com +tmjob88.com +tmjypx.com +tmkoo.com +tmmini.com +tmqmqj.com +tmrcw.com +tmscnz.com +tmsf.com +tmsgschool.com +tmtforum.com +tmtpost.com +tmtpost.net +tmuaih.com +tmuyun.com +tmwcn.com +tmxmall.com +tmxxw.com +tn2000.com +tn597.com +tnbz.com +tnccdn.com +tnet.hk +tngcjx.com +tnjyfc.com +tnkjmec.com +tntdown.com +to-future.net +to4f.com +to8to.com +to9.org +to999.com +tobaccobid.com +tobaccochina.com +toberp.com +tobnews.com +tobosu.com +tobosu.net +tobsnssdk.com +tochgo.com +tochinajob.com +tocosc.com +today36524.com +todaycache.net +todayguizhou.com +todayidc.com +todayios.com +todayisp.net +todaynic.com +todebug.com +todesk.com +todoen.com +todokeji.com +todonow.com +todosomeone.com +toec-gdgs.com +toec-iot.com +toec.com +toecsec.com +toecsoft.com +toecxy.com +togj.com +togocareer.com +togogo.net +tohic.net +tohkalove.com +tohosting.com +tohosting.net +tohours.com +tohuo.com +toidea.com +tok9.com +token-ad.com +tokenglish.com +tokeninsight.com +tokenpocket.pro +tokensky.net +tokenview.com +tokenworld.pro +tokimekiclub.org +toktok-mall.com +tol24.com +tom.cat +tom.com +tom163.net +tomap.me +tomatogames.com +tomatolei.com +tomax.xyz +tomczhen.com +tomdiy.com +tomonline-inc.com +tomotoes.com +tompda.com +tomujiang.com +tomwx.net +tonbao.com +tonehk.com +tonewinner.com +tongbanjie.com +tongbanjie.info +tongbaoyun.com +tongbu.com +tongbulv.com +tongbupan.com +tongbusj.com +tongcaihulian.com +tongchaba.com +tongcheng.cc +tongchouba.com +tongda2000.com +tongdaohui.com +tongdiaogs.com +tongdoutown.com +tongdun.net +tongfangpc.com +tongfengqu.com +tongfu.net +tonggao.info +tongguanbao.net +tonghs.com +tonghuaji.com +tonghuiqiye.com +tongji.com +tongji.net +tongjiai.com +tongjitong.com +tongleer.com +tongli-hrcc.net +tongliangrc.com +tongliaowang.com +tonglu-tour.com +tongluyizhao.com +tongmengguo.com +tongpankt.com +tongshanbank.com +tongshuai.com +tongtech.com +tongtianta.site +tongtongli.com +tongtool.com +tongwang.net +tongxiang.net +tongxin.com +tongxin.org +tongxinclub.com +tongxinghui.com +tongxinky.com +tongxinmao.com +tongxinteng.com +tongxiong.com +tongxue.com +tongxue365.com +tongyavisa.com +tongye.biz +tongyi.com +tongyidrying.com +tongyongji.net +tongyou188.com +tongyuanos.com +tongyue.com +tongyulala.org +tongzhuo100.com +tonitech.com +tonnn.com +tonysfarm.com +toobug.net +toocle.com +toodaylab.com +toohiphop.com +tool.cx +tool.la +tool.lu +tool77.com +toolinbox.net +toolmall.com +toolmao.com +toolnb.com +tools.google.com +tools.l.google.com +tooming.com +toomoss.com +toon.mobi +toonmax.com +toonmaxmedia.com +tooogooo.com +tooopen.com +tooseo.com +tootour.com +toouoo.com +top-iot.com +top100summit.com +top147.com +top1food.com +top2099.com +top263.net +top2fun.com +top3456.com +topacg.com +topber.com +topbester.com +topbiz360.com +topbm.com +topbook.cc +topcfo.net +topcheer.com +topchitu.com +topciic.com +topcj.com +topcrab.com +topcsic.com +topdiaoyu.com +topdodo.com +tope365.com +topeditsci.com +topeet.com +topeetboard.com +topengroup.net +topfisc.com +topflames.com +topfreeweb.net +topgslb.com +topguo.com +topgus.com +tophant.com +tophold.com +tophr.net +tophub.fun +tophub.today +topide.com +topitme.com +topjoy.com +topjoycloud.com +topksw.com +topku.com +toplanit.com +toplee.com +toplife.com +toplinks.cc +toploong.com +topmba.mobi +topnews9.com +topomel.com +toppdu.com +topperuse.com +toppiao.net +topproio.com +topqh.net +toprand.com +topsage.com +topscan.com +topsedu.com +topsrx.com +topswim.net +toptastewin.com +topthink.com +topthink.net +toptourservice.com +topuc.com +topwalk.com +topwanwan.com +topway.org +topwaysoft.com +topys.com +topzj.com +torovo.com +toshiba-gtbs.com +toshiba-semicon-storage.com +toshiba-thpc.com +toshiba-tnis.com +toshow.com +tospur.com +tot.name +totalacg.com +totoro.pub +tou360.com +tou70.com +toubang.tv +toucdn.com +touch4.me +touchealth.com +touchev.com +touchpal.com +touchrom.com +touchsprite.com +touchsprite.net +touchstudio.net +touchxd.com +touclick.com +touduyu.com +toufu321.com +toughcoder.net +tougub.com +touhou.cd +touhou.vote +toujidao.com +touker.com +toumiao.com +toupb.com +toupiaoapp.com +tour110.com +tourhr.com +tourjob.net +tourongjia.com +tourongzi.org +tourscool.com +toursforfun.com +tourye.com +toushibao.com +toutiao-xinwen.com +toutiao.com +toutiao.io +toutiao.org +toutiao11.com +toutiao12.com +toutiao13.com +toutiaoapi.com +toutiaoapp.com +toutiaobashi.com +toutiaobus.com +toutiaocdn.com +toutiaocdn.net +toutiaocloud.com +toutiaocloud.net +toutiaoimg.com +toutiaoimg.net +toutiaojc.com +toutiaolite.com +toutiaolite1.com +toutiaonanren.com +toutiaopage.com +toutiaostatic.com +toutiaovod.com +toutiaoyule.com +toutoufc.com +toutoupiao.com +touwenzi.com +touwho.com +touxiang8.com +touying.com +touyouquan.com +touzhibang.com +touzhijia.com +touzi.com +touzid.com +touzikuaibao.com +touzizn.com +tower.im +towinor.com +townsky.com +towntour.net +towords.com +towry.me +toxingwang.com +toybaba.com +toycloud.com +toyean.com +toysir.com +tp8.me +tpbook.com +tpkey.com +tplife.com +tplm123.com +tplogincn.com +tpooo.com +tpoxiaozhan.com +tpsxs.com +tpturang.com +tpy10.net +tpy100.com +tpyboard.com +tpywlkj.net +tpyyes.com +tq163.com +tq321.com +tq520.net +tqcj.com +tqcto.com +tqedu.com +tqedu.net +tqiantu.com +tql.ink +tqle.com +tqmall.com +tqmdp.net +tqqa.com +tqsafe.com +tqschool.net +tqybw.net +tr518.com +trace4me.com +tracefact.net +traceint.com +track-roller.com +trackingio.com +trackingmore.com +tracup.com +tracyclass.com +trade-over-world.com +trade-plug.net +trade2cn.com +tradeask.com +tradeleo.com +traderwork.com +tradew.com +tradow.com +tradyau.com +traineexp.com +trainingipv6.com +trait-wholesale.com +tranbanker.com +tranbbs.com +trans4e.com +transcn.org +transer-cn.com +transformer-cn.com +transfu.com +transfun.net +translate.googleapis.com +translatego.net +translation-dictionary.net +translation.googleapis.com +translationchina.com +transn.com +transnbox.com +transparcel.com +transplendor.com +transportjp.com +transrush.com +transtill.com +transwarp.io +transwiki.org +tratao.com +travel-x.cc +travel6.co.uk +traveldba.com +traveller2.com +travellingwithhotel.com +travellinkdaily.com +travelsky.com +travelsky.net +travelwuhan.com +travelyee.com +trc4.vip +trcoin.com +treation.com +treehousesub.com +treelib.com +treeoncloud.com +treetwins.com +treeyee.com +trejhtyrjetyjetyrkuy-3.xyz +trekin.space +trekiz.com +trend6.com +trendsmen.com +trendtokyo.com +tretars.com +trhj.net +trhos.com +trhui.com +trinitigame.com +trinitigames.net +trioisobardev.com +trip8080.com +tripbaba.com +tripbe.com +tripdv.com +triphr.com +triplexservice.com +trippanda.com +tripsanxia.net +tripsmc.com +tripvivid.com +tripwirechina.com +triring.com +triumbest.net +trjcn.com +trjcn.net +trjggs.com +trkeyboard.com +troila.com +trojantesting.com +tronixin.com +trpcdn.net +trsoft.vip +trsoft.xin +trsol.com +trt.hk +trtb.net +trueart.com +truebuty.com +trueeyu.com +trueland.net +trueme.net +truemv.com +truerun.com +truesing.com +trufun.net +trusfort.com +trust-one.com +trust400.com +trustasia.com +trustedsign.com +trustexporter.com +trustie.net +trustkernel.com +trustlife.com +trustmover.com +trustmta.com +trustocean.com +trustsoc.com +trustutn.org +trwl.net +try2explore.com +tryenough.com +tryfun.com +tryineapp.com +trylist.net +trymoka.com +trysenz.com +tryurbest.com +tryxue.com +ts-cooling.com +ts-juheng.com +ts100.com +ts108.com +ts166.net +ts168.net +ts16949px.com +ts16949rz.org +ts95.com +tsddu.com +tsdlp.com +tsdm.net +tsdmw.net +tsdxb.com +tsfucai.com +tsg-online.net +tsggwl.com +tshaisen.com +tshe.com +tshe.me +tshiny.com +tshmkj.com +tshtech.com +tsichuan.com +tsinghua-getinfo.com +tsinghuabook.com +tsinghuaic.com +tsinghuaicwx.com +tsinghuajournals.com +tsinghuan.com +tsinghuawoman.com +tsingj.com +tsingming.com +tsingoofoods.com +tsingpost.com +tsingtoo.com +tskscn.com +tskscn.org +tslapinshang.com +tsljzs.com +tslongtai.com +tslsmart.com +tsmtkj.com +tsmxs.com +tsoo.me +tsov.net +tsp189.com +tspsy.com +tspweb.com +tsqt.net +tsqw.com +tsrcw.com +tssakura.com +tsshunxin.com +tssns.net +tsstorry.com +tstdtz.com +tstone.xyz +tsw18.com +tswuby.com +tsxcx.xyz +tsybsmz.com +tsyqb.com +tsyzm.com +tsz.com +tszckj.com +tszs360.com +tszyzx.com +tt-bike.com +tt-ly.com +tt116114.com +tt120.org +tt1386.com +tt1h.com +tt286.com +tt56w.com +tt65.org +tt83.xyz +tt96596.com +tt98.com +ttaidu.com +ttbba.com +ttbbss.com +ttbc33.com +ttbcdn.com +ttcad.com +ttcdy.com +ttdailynews.com +ttdown.com +ttdtweb.com +ttdz03.com +ttechhk.com +ttfly.com +ttgjx.com +tth1688.com +tthbw.com +tthigo.com +ttic.cc +ttigame.com +ttime.com +ttionya.com +ttjianbao.com +ttkdex.com +ttkefu.com +ttkkuu.com +ttkmj.org +ttkuan.com +ttkxh.com +ttkyy.net +ttll.cc +ttlsa.com +ttlutuan.com +ttmark.com +ttmd5.com +ttmeishi.com +ttmnq.com +ttmv.com +ttn8.com +ttpaicdn.com +ttpaihang.com +ttpaper.com +ttpet.com +ttplayer.com +ttpod.com +ttpp.com +ttq.com +tts8.com +ttsfgyrj.com +ttshengbei.com +ttsmmwb.com +ttsq6.net +ttstream.com +ttsz8.com +ttt.sh +ttthing.com +tttuangou.net +tttxf.com +tttz.com +ttufo.com +ttunion.com +ttuu.com +ttwanjia.com +ttwebview.com +ttwoyun.com +ttwx.com +ttxn.com +ttxs123.net +ttxs234.com +ttxs789.com +ttxsapp.com +ttxuanpai.com +ttyingqiu.com +ttyjf.com +ttymq.com +ttyongche.com +ttyqm.com +ttys5.com +ttysq.com +ttyyuuoo.com +ttz.com +ttzhongbao.com +ttzhushou.com +ttzw.com +ttzw.tv +ttzx.tv +ttzyw.com +tu11.com +tu520.cc +tu6.la +tu8.cc +tu960.com +tuan800.com +tuan800.net +tuanai.com +tuanche.com +tuancu.com +tuandai.com +tuanduishuo.com +tuanhuiwang.com +tuanidc.net +tuanimg.com +tuanjianjian.com +tuanjiebao.com +tuankezhan.com +tuanlego.com +tuanlin.net +tuanping.com +tuanshan.com +tuanwen.com +tuanxia.com +tuanxue360.com +tuanxue360.net +tuanyx.com +tubachina.com +tubangzhu.com +tubaobao.com +tubaobaoqm.com +tubaoveneer.com +tubaoyz.com +tubebbs.com +tubegetpro.com +tubiaoxiu.com +tuboshu.com +tubutu.com +tucaojie.com +tuchong.com +tuchong.net +tuchuanhuwai.com +tucia.net +tucoo.com +tudai.cc +tudan.cc +tudan.vip +tudou.com +tudouh5.com +tudoupe.com +tudouui.com +tudouxy01.com +tudouyx.com +tudown.com +tudu.com +tudu.im +tuer.me +tugou.com +tugouli.com +tuguaishou.com +tuguoabc.com +tuhaihe.com +tuhaokuai.com +tuhu.com +tuhu.org +tuhu.work +tuhusmart.com +tui-8.com +tui18.com +tui56.com +tuiaaaa.com +tuiabq.com +tuiapple.com +tuiayonghu.com +tuibamboo.com +tuibat.com +tuibear.com +tuibench.com +tuiberry.com +tuibit.com +tuicoco.com +tuicool.com +tuidaniu.com +tuidc.com +tuideli.com +tuidove.com +tuidragon.com +tuifeiapi.com +tuifish.com +tuifrog.com +tuiguangdns.com +tuiguangpingtai.com +tuijie.cc +tuikemima.com +tuikemohe.com +tuili.com +tuili8.com +tuilidashi.xin +tuilie.com +tuilisr.com +tuiliu.net +tuiliw.com +tuilixy.net +tuimax.com +tuimob.com +tuimz.com +tuipeanut.com +tuipear.com +tuipenguin.com +tuipine.com +tuipink.com +tuiplay.com +tuipony.com +tuiq.net +tuirabbit.com +tuirice.com +tuishao.net +tuishark.com +tuishiben.com +tuishujun.com +tuisnake.com +tuistone.com +tuitiger.com +tuitui99.com +tuituitang.com +tuiwailian.com +tuixue.online +tuizx.com +tujia.com +tujiacdn.com +tujian.com +tujidu.com +tujie8.com +tujiedianying.com +tujiwar.com +tujixiazai.com +tukaxiu.com +tuke88.com +tukexw.com +tukkk.com +tukong123.com +tuku.cc +tuku.com +tukucc.com +tukumanhua.com +tukuppt.com +tulading.com +tulaoshi.com +tuliaohr.net +tuling123.com +tulingtec.com +tuliren.com +tuliu.com +tumajewelry.com +tumanyi.com +tumeinv.com +tumukeji.com +tumuzhe.com +tuna.wiki +tungshungroup.com +tungsten-alloy.com +tungsten-bar.com +tungsten-copper.com +tungsten-jewellery.com +tungsten-powder.com +tunionfans.com +tuniu.cc +tuniu.com +tuniu.net +tuniu.org +tuniucdn.com +tuniuglobal.com +tuniuins.com +tuniuops.net +tunynet.com +tuo-li.com +tuo-pan.com +tuodanyy.com +tuohuangzu.com +tuoluocaijing.com +tuoluozhuan.net +tuoniaox.com +tuotuozu.com +tuoweisi.com +tuoxiaoshebei.com +tuoyundan.com +tuozhe8.com +tupai.me +tupian114.com +tupian1234.com +tupian365.com +tupiancunchu.com +tupiankucdn.com +tupianzj.com +tupu360.com +tuputech.com +tupuw.com +tuquu.com +turangyq.com +turbomail.org +turingapi.com +turingbook.com +turingcat.com +turingdi.com +turingtopia.com +turnitin.org.in +turnitincn.com +turnitinuk.net +tusapi.com +tusay.net +tuscdn.com +tusdk.com +tushare.org +tushare.pro +tushifu.com +tusholdings.com +tushu001.com +tushu007.com +tushuguan.cc +tushumi.com +tushupan.com +tushupdf.com +tusij.com +tusiot.com +tusooo.com +tuspark.com +tuspass.com +tuspass.net +tusstar.com +tutechanhb.com +tutorialdocs.com +tutu001.com +tutuapp.com +tutucloud.com +tutuge.me +tutuim.com +tutupan.com +tuvrblog.com +tuwan.com +tuwan21.com +tuwandata.com +tuwangwang.com +tuwenba.com +tuweng.com +tuwenla.com +tuwenzhibo.com +tux.red +tuxiaobei.com +tuxiu.com +tuya.com +tuyacn.com +tuyansuo.com +tuyaya.com +tuyiqi.com +tuyitu.com +tuyiyi.com +tuyoo.com +tuyou.me +tuyoujp.com +tuyoumi.com +tuyouxinxi.net +tuyuantech.com +tuzhan.com +tuzhan.net +tuzhanai.com +tuzhanh5.com +tuzhaozhao.com +tuzhizhijia.com +tuzi123.com +tuzi8.com +tuziyangzhi.com +tv0001.com +tv002.com +tv189.com +tv3w.com +tv432.com +tv5box.com +tvandnet.com +tvapk.com +tvapk.net +tvb1.cc +tvbbj.com +tvblack.com +tvbwind.com +tvcbook.com +tventry.com +tvfanqie.com +tvflnet.com +tvfuwu.com +tvguo.tv +tvhome.com +tvhuan.com +tvjianshen.com +tvkou.com +tvkuai.com +tvmao.com +tvmcloud.com +tvmining.com +tvn.cc +tvoao.com +tvos.com +tvscn.com +tvsou.com +tvt.im +tvtsg.com +tvxio.com +tvyouxuan.com +tvzhe.com +tvzn.com +tw2sm.com +twanxi.com +twapk.com +twcad.com +twcczhu.com +twd2.me +twd2.net +twdm.net +tweakcube.com +twfeq.com +twguozao.com +twh5.com +twinkleunion.com +twinsel.com +twinsenliang.net +twitterios.com +twk.cc +twlkbt.com +twoarmy.com +twocucao.xyz +twofei.com +tworice.com +twsapp.com +twsyue.com +twtstudio.com +twtym.com +twwtn.com +twwtn.net +twyuxin.com +twyxi.com +tx-livetools.com +tx-livetools.wang +tx-trans.com +tx009.com +tx163.com +tx29.com +tx5d.com +txbapp.com +txbimg.com +txcbwgg.com +txcdns.com +txcsjlb.com +txdai.com +txdy01.com +txdzs.com +txdzw.com +txfeiyu.com +txffp.com +txfund.com +txga.com +txianning.com +txip8.com +txitech.com +txjszz.com +txlt.com +txlunwenw.com +txmcu.com +txmeiju.com +txon.net +txooo.com +txqcw.net +txrjy.com +txrzx.com +txsc100.com +txsdk.com +txssw.com +txt321.com +txt81.com +txtbbs.com +txtbook.net +txtduo.com +txttool.com +txtxz.com +txwb.com +txweekly.com +txwestart.com +txwgame.com +txwy.com +txwy.com.tw +txxbxx.com +txxtw16.com +txy8.com +txyapp.com +txyes.com +txylab.com +txzad.com +txzdq.com +txzing.com +ty-im.com +ty-tyre.com +ty2y.com +ty3w.net +ty8866.com +tyalxx.com +tybai.com +tyc100.com +tychio.net +tychou.com +tycits.com +tycmbvb.com +tycqxs.com +tycredit.com +tydouke.com +tyee8.com +tyfo.com +tyhjzx.com +tyhuoyun.com +tyi365.com +tyjmmy.com +tyjmqz.com +tyksl.com +tyloo3d.com +tymcdn.com +tyn.cc +tyncar.com +tyniu.com +tyouai.com +tyouquan.com +typany.com +type.so +typecho.me +typechodev.com +typecodes.com +typekuon.com +tyr.gift +tyrad.cc +tyrantdb.com +tyread.com +tyriejl.com +tysdmh.com +tysj365.com +tysjyjy.com +tyst88.com +tysurl.com +tyswy.com +tyszy.com +tytlj.com +tytuyoo.com +tytywuliu.com +tyueo.com +tyust.net +tyuyan.com +tyuyan.net +tywbw.com +tywh.com +tywxw.la +tyy6.com +tyymt.com +tyzscl.com +tz-dsp.com +tz-wf.com +tz089.com +tz121.com +tz12306.com +tz1288.com +tz1980.com +tz8.com +tz887.com +tz911.com +tzbank.com +tzbank.net +tzbao.com +tzcul.com +tzdjzu.com +tzesf.com +tzfdc.com +tzfeize.xyz +tzfile.com +tzfuke.com +tzgcjie.com +tzhubo.com +tzhwcc.com +tzidc.com +tzidt.com +tzjxl.com +tzkameng.com +tzlib.net +tzm66.com +tzres.com +tzrl.com +tzsnw.com +tzsports.com +tzsti.com +tztusi.com +tzvtc.com +tzxgzk.com +tzxingtang.com +tzxwzx.com +tzye123.com +tzyg.org +tzysbwg.com +tzza.net +u-jingling.com +u-link.org +u-om.com +u-qun.com +u-road.com +u-tide.com +u005.com +u14.com +u148.net +u17.com +u17i.com +u17t.com +u193.com +u21a.com +u22e.com +u2j2ha.com +u2sz.com +u3dc.com +u3dcn.com +u3dol.com +u3v3.com +u51.com +u520.net +u5h5.com +u5wan.com +u69cn.com +u6u.com +u77.com +u78.com +u7u9.com +u8sy.com +u8yx.com +u9game.net +u9h.com +u9time.com +u9u8.com +u9u9.com +ua168.com +uadrc.com +uaedata.com +uao-online.com +uao.so +uauc.net +uavvv.com +uayangtze-volga.org +ub-os.com +ub.cc +ub666.cc +uban.com +ubangmang.com +ubernihao.com +ubersz.com +ubestkid.com +ubetween.com +ubgame.com +ubicdn.com +ubijoy.com +ubismartparcel.com +ubixai.com +ubja.vip +ubk22.com +ubmconlinereg.com +uboat100.com +ubooo.com +uboxol.com +uboxsale.com +ubs001.com +ubssdic.com +ubtrobot.com +ubuntubar.com +ubuntukylin.com +ubuntukylin.org +ubuntuqa.com +ubuuk.com +uc-union.com +uc108.com +uc123.com +uc129.com +uc1z.com +uc23.net +uc56.com +uc669.com +ucai123.com +ucaiyuan.com +ucaiyun.com +ucancs.com +ucantech.com +ucantech.net +ucardpro.com +ucarinc.com +ucbug.com +uccastore.com +uccheck.net +uccvr.com +ucdchina.com +ucdok.com +ucdrs.net +ucdwhatif.com +ucfly.com +ucfpay.com +uchangdi.com +uchiha.ltd +uchis.com +uchuanbo.com +uchuhimo.me +ucicq.com +ucjoy.com +uckendo.com +ucloudgda.com +ucly.net +ucnano.com +ucnest.com +ucpaas.com +ucpchina.com +ucpopo.com +ucren.com +ucss.ninja +uctrac.com +uctxt.com +ucuuc.com +ucw.pub +ucweb.com +ucxinwen.com +ucying.com +uczhidao.com +ucziliao.com +uczzd.com +uczzd.net +ud783c02.com +udache.com +udalogistic.com +udamall.com +udangjia.com +udashi.com +udaxia.com +udbac.com +udcredit.com +uddtrip.com +udecig.com +udeepin.com +udfex.com +udonmai.com +udpis.com +udrig.com +udsdown.xyz +uebao.com +uebilling.com +uecook.com +ued163.com +uedbox.com +uedhome.net +uedna.com +uedsc.com +uee.me +ueeshop.com +uehtml.com +ueibo.com +uekeer.com +uelike.com +uemo.net +uepei.com +ueren.com +uestcedu.com +uestcguoji.com +ueuz.com +ueview.com +uewaf.com +uf-crm.com +uf-tobacco.com +ufanw.com +ufbar.com +ufcap.com +ufenqi.com +ufhost.com +ufhosted.com +ufida-lcwy.com +ufidaoa.com +ufileos.com +ufirefly.com +ufizl.com +uflowx.com +ufo.club +ufoer.com +ufofxw.com +ufojia.com +ufojoy.com +ufotm.com +ug15.com +ug888.com +ugainian.com +ugapi.com +ugbb.com +ugcar.com +ugdtimg.com +ugediao.com +uggas.com +uggd.com +ugirls.tv +ugmars.com +ugmjd.com +ugojp.com +ugong.com +ugoshop.com +ugslb.com +ugslb.info +ugslb.net +ugsnx.com +ugubl.net +ugxsd.com +uhgal.com +uhomecp.com +uhomes.com +uhouzz.com +uhuitong.com +ui001.com +ui100day.com +ui4app.com +ui63.com +ui879.com +uibaba.com +uibim.com +uibmm.com +uibobo.com +uibot123.com +uicmall.com +uicom.net +uicool123.com +uid75.com +uidec.com +uidev.tech +uidev.xyz +uigreat.com +uihacker.com +uiiiuiii.com +uil.ink +uileader.com +uilover.com +uimaker.com +uimix.com +uincall.com +uincall400.com +uincom400.com +uipower.com +uisdc.com +uisheji.com +uishijie.com +uisnetwork.com +uisrc.com +uiste.com +uiu.cc +uiwed.com +ujian.cc +ujinbi.com +ujing.online +ujipin.com +ujiuye.com +ujwang.com +uk-edu.com +uk-odc.samsungapps.com +ukassignment.org +ukeban.com +ukelink.com +ukelink.net +uker.net +ukh5.com +ukolmv.com +ukongm.com +ukonline2000.com +ukoo.net +ukpass.org +ukpathway.com +ukraine-beauty.com +ukubang.com +ukui.org +ukulelecn.com +ulaaq.com +ulandian.com +ulaojiu.com +ule.com +ule.hk +uleapp.com +ulecdn.com +uleek.net +ulhat.com +uliaobao.com +ulikecam.com +ulikemusic.com +ulinix.com +ulink.cc +uliuli.fun +ulpay.com +ultramanclub.com +ultramanol.com +ulucu.com +ulzdk.com +umaman.com +umbpay.com +umcloud.com +umei.cc +umeng.co +umeng.com +umeng.online +umeng100.com +umengcloud.com +umenglog.com +umetrip.com +umi.im +umihome.com +umilu.com +umindex.com +uminehotel.com +umineiot.com +uminsky.com +umivi.net +umiwi.com +umjicanvas.com +uml-tech.com +umlchina.com +umlife.net +umlonline.org +umowang.com +umpay.com +umr18.club +ums86.com +umsns.com +umtrack.com +umvsoft.com +un-bug.com +un10086.com +un1c0de.xyz +una-ad.com +unages.com +unblockcn.com +unbuyi.com +uncbd.com +unccr.com +uncle-ad.com +uncledesk.com +unclenoway.com +unclenowayapi.com +unclicks.com +undefined.ltd +underfill.cc +uneed.com +unfish.net +ungifts.com +uni-perfect.com +unibizp.com +unicde.com +unicloud.com +unicom-cz.com +unicomjnwy.com +unicomlife.com +unicompayment.com +unicomspeedtest.com +unicomtest.com +unicon-hibar.com +unicornacg.com +unifull.com +unigress.com +uninf.com +union-4.com +union-game.com +union-rnd.com +union-wifi.com +union178.com +union400.com +union555.com +union968.com +unionclouds.net +unioncyber.net +unionli.com +unionpay.com +unionpay95516.cc +unionpayintl.com +unionpaysecure.com +unionsy.com +uniontech.com +unionwebpay.com +unionzs.com +uniostay.com +uniow.com +uniplayad.com +uniproud.com +uniqueway.com +uniscope.com +unisedu.com +unisemicon.com +unisguard.com +unishy.com +unisoc.com +unisound.com +unispim.com +unisscan.com +unissoft.com +unistc.com +uniswdc.com +unitedbank.ltd +unitedmoney.com +unitek-it.com +uniteyun.com +unitop-apex.com +unity3d8.com +unitymanual.com +uniview.com +uniworldart.com +unixfbi.com +unixhot.com +unixidc.com +unizai.com +unjmz.com +unjs.com +unlimax.com +unnnnn.com +unnue.com +unohacha.com +unpcn.com +unqu.com +unsemi.com.tw +unspay.com +unsuv.com +unsv.com +unyoo.com +unzg.com +uo12.com +uodoo.com +uoeee.com +uofon.com +uoften.com +uohchina.com +uoj.ac +uoko.com +uomg.com +uono4521.com +uooconline.com +uoocool.com +uooioo.com +uoolu.com +uooss.com +uooyoo.com +uoozi.com +uoschina.com +uoser.org +uouo123.com +uovz.com +up360.com +up4dev.com +up71.com +upai.com +upaidui.com +upairs.com +upaiyun.com +upan.cc +upanboot.com +upanok.com +upanshadu.com +upanso.com +upantool.com +upanxitong.com +upbz.net +upcdn.net +upchina.com +upchinapro.com +upchinaproduct.com +upd.kaspersky.com +update.googleapis.com +updates-http.cdn-apple.com +updates-http.cdn-apple.com.akadns.net +updates.cdn-apple.com +updba.com +updrv.com +upe.net +upecp.com +upesn.com +upho2015.com +uphong.com +upimgku.com +upin.com +upkao.com +uplinux.com +uplookedu.com +uplooking.com +upnb.com +upowerchain.com +uppsd.com +upqzfile.com +upqzfilebk.com +ups-huawei.net +ups.ksmobile.net +ups001.com +upsapp.com +upst86.com +upsunet.com +uptougu.com +upupbug.com +upupfile.com +upupoo.com +upupw.net +upwardsware.com +upwith.me +upx8.com +upyun.com +upzxt.com +uqbike.com +uqche.com +uqd1.net +uqee.com +uqeegame.com +uqer.io +uqi.me +uqidong.com +uqidong.net +uqite.com +uqseo.com +uqude.com +uqulive.com +uqyqcuq.ml +urart.cc +urbanchina.org +urbanmatters.com +urbetter.com +urbetter.net +urcb.com +urcities.com +urfire.com +urgc.net +uri6.com +url.ms +urlos.com +urovo.com +urovoworld.com +urpimp.com +ursb.me +urselect.com +urtrust.com +us-ex.com +us7.com +usa-gti.com +usa-idc.com +usaas.net +usaedu.net +usagaa.com +usahaitao.com +usakongjian.net +usaliuxue.com +usaobb.com +usaphoenixnews.com +usashopcn.com +usbing.com +usbmi.com +usbxyz.com +uscnk.com +uscxm.com +usd-cny.com +usdxz1.com +usdxz1.net +use-trust.com +useaudio.com +usecubes.com +userhostting.com +userresearch.net +useryun.net +useso.com +usfcw.com +ushaqi.com +ushendu.com +ushengame.com +using.club +usingde.com +usingwin.com +usitour.com +usitrip.com +usjuw.com +usnook.com +usocctn.com +usocialplus.com +usoftchina.com +usonetrip.com +uspard.com +ustack.com +ustalk.com +ustc.edu +ustcers.com +ustclug.org +ustui.com +usu8.com +usuredata.com +uszcn.com +ut7.com +ut8d.com +utan.com +utanbaby.com +utbon.com +utc-ic.com +utecbj.com +utepo.com +uthinks.com +utiankong.com +utogame.com +utom.design +utoper.com +utourworld.com +utovr.com +utransm.com +uu.cc +uu.me +uu1.com +uu1314.com +uu178.com +uu361cn.com +uu38.com +uu41.com +uu456.com +uu55.tv +uu66.com +uu89.com +uu898.com +uuaa.net +uuaoz.com +uuboos.com +uucolor.com +uudsp.com +uuecs.com +uufund.com +uugai.com +uugame.com +uugtv.com +uuhall.com +uuhimalayanqm.com +uuhy.com +uuid.online +uuimg.com +uuka.vip +uukit.com +uukkuu.com +uulucky.com +uulux.com +uumachine.com +uunice.com +uuns.com +uunt.com +uuoo.com +uupaotui.com +uupark.com +uupee.com +uupei.com +uupoop.com +uupt.com +uuradio.com +uus8.com +uusama.com +uusee.com +uusky.com +uusoo.net +uusos.com +uustory.com +uustv.com +uusucai.com +uutop.com +uutuu.com +uuu9.com +uuudo.com +uuukey.com +uuuo.com +uuutu.com +uuvisa.com +uuvps.com +uuwego.net +uuwow.com +uuwtq.com +uuxn.com +uuxs.net +uuyoyo.com +uuzham.com +uuzhufu.com +uuzo.net +uuzu.com +uuzuonline.com +uuzuonline.net +uuzz.com +uvexperience.com +uvledtek.com +uvov.com +uvu.cc +uvuvv.com +uw3c.com +uw9.net +uwa4d.com +uwan.com +uwan5.com +uwenku.com +uwexp.com +uwin100.com +uworter.com +uwowo.com +ux18.com +ux87.com +ux98.com +uxacn.com +uxdc.net +uxdc.org +uxianhu.com +uxicp.com +uxigo.com +uxin.com +uxingroup.com +uxiting.com +uxpi.net +uxxsn.com +uya100.com +uyan.cc +uyanip.com +uycnr.com +uyess.com +uyi2.com +uyou.com +uyouqu.com +uyshipin.com +uyueread.com +uyunad.com +uyunbaby.com +uyuyao.com +uyyidc.com +uzai.com +uzaicdn.com +uzing.net +uzise.com +uzshare.com +uzuzuz.com +uzzf.com +v-56.com +v-beautysalon.com +v-danci.com +v-ka.com +v007.net +v114.com +v1bo.com +v1h5.com +v1kd.com +v1lady.com +v1pin.com +v1tuan.com +v1tx.com +v2b3.com +v2ex.cc +v2geek.com +v2kt.com +v2land.net +v2make.com +v3best.com +v3edu.org +v4.cc +v4dwkcv.com +v5.com +v54321.com +v58003.com +v58008.com +v5bjq.com +v5cam.com +v5cg.com +v5dun.net +v5fox.com +v5kf.com +v5music.com +v5pc.com +v5ppt.com +v5shop.com +v5tv.com +v66666666.com +v6dp.com +v6lvs.com +v6ok.com +v78q.com +v86.org +v8d8.com +v977.com +v9b5n91.com +va-etong.com +vaakwe.com +vacmic.com +vaecn.com +vaeliu.com +vaillant2.com +vakku.com +valid.apple.com +valid.origin-apple.com.akadns.net +validform.club +valinbl.com +valinresources.com +value500.com +valuecome.com +valuedshow.com +valuepr.net +valueq.com +valueur.com +valurise.com +vamachina.com +vamaker.com +van-u.com +vanbaolu.com +vance-commerce.com +vanch.net +vanchhandheld.com +vanchiot.com +vanchip.com +vanchiptech.com +vanchu.com +vancl.com +vandream.com +vanfo.net +vanfun.com +vanggame.com +vangotech.com +vankang.com +vanke.com +vankeservice.com +vankeservice.mobi +vankeweekly.com +vanlinkon.com +vanmai.com +vanmatt.com +vanrui.com +vanterc.com +vants.org +vanzol.com +vapee.com +vapejoin.com +vapps.me +vaptcha.com +vaptcha.net +varena.com +variflight.com +varmilo.com +vart.cc +vartcn.com +vas.ink +vasdaqh.com +vasee.com +vasoon.com +vauoo.com +vbanzs.com +vbbobo.com +vbidc.com +vbiquge.com +vbmcms.com +vbooking.net +vbsemi.com +vbsuvb.com +vbuluo.com +vbuluo99.com +vc800.com +vcb-s.com +vcbeat.net +vcchar.com +vceshi.net +vcg.com +vchangyi.com +vchat5.com +vchatshow.com +vchello.com +vchome.net +vcimg.com +vcinchina.com +vckai.com +vckbase.com +vcloudgtm.com +vclusters.com +vcode.cc +vcomic.com +vcomputes.com +vcooline.com +vcore.hk +vcpic.com +vcredit.com +vcsint.com +vdaye.com +vdfly.com +vdian.com +vdisk.me +vdncache.com +vdncloud.com +vdndc.com +vdnplus.com +vdnsv.com +vdolady.com +vdongchina.com +ve70.com +vealandlamar.com +vearne.cc +vecentek.com +vechain.com +vechain.org +vedamobi.com +vedeng.com +veding.com +vediotalk.com +veedrin.com +veelink.com +veeqi.com +veer.com +veervr.tv +veeteam.com +veevlink.com +veguci.com +veikei.com +veilytech.com +veinbase.com +veken.com +velasx.com +velep.com +velocaps.com +vemvm.com +ventoy.net +venucia.com +venustrain.com +vephp.com +verdareto.com +verisilicon.com +verisyno.com +veritrans-link.com +verodillan.com +versaloon.com +vertuonline.com +ververica.com +veryapex.com +verybeaut.com +verycaca.com +verycd.com +verycdn.net +verydns.net +verydoc.net +verydz.com +veryevent.com +verygrass.com +verygslb.com +verygslb.net +veryhappy.pw +veryide.com +veryitman.com +verym.com +veryns.com +veryol.com +verypan.com +verysou.com +verysource.com +verystar.net +veryweibo.com +verywind.com +veryxiang.com +veryzhun.com +vesystem.com +vetscloud.com +vf5c.com +vfcsz.com +vfinemusic.com +vfocus.net +vftfishing.com +vfund.org +vfx123.com +vfxinfo.net +vg1234.com +vgabc.com +vgbaike.com +vgfav.com +vghall.com +vgjump.com +vglook.com +vgoapp.com +vgooo.com +vgover.com +vgoyun.com +vgtime.com +vhaey.com +vhall.com +vhallyun.com +vhao123.com +vhostgo.com +vhteam.com +vi21.net +vi586.com +via-cert.com +via.com.tw +viaeda.com +vial.cc +viatech.com.tw +viayoo.com +vibaike.com +vibit.cc +vic18.com +vicchen.me +vichamp.com +vicigaming.com +vickn.com +vicovico.com +vicp.cc +vicp.net +vicrab.com +vicsdf.com +vida-bio.com +vidaa.com +vidarsoft.com +viday.org +videaba.com +videocc.net +videofk.com +videohupu.com +videoincloud.com +videoipdata.com +videojj.com +videoyi.com +videoyx.com +videozhishi.com +vienblog.com +viewones.com +viewstock.com +viewtool.com +viewtrans.com +viigee.com +viisan.com +viitalk.com +viixin.com +vijos.org +vikduo.com +vikecn.com +vikeninvest.com +villaday.com +villafrancescatti.com +viltd.com +vimage1.com +vimage2.com +vimage4.com +vimge.com +vimicro.com +vimiix.com +vimiy.com +vimjc.com +vimlinux.com +vims04.com +vimsky.com +vin114.net +vinchin.com +vinehoo.com +vinetreetents.com +vingoojuice.com +vingoostation.com +vinjn.com +vinkdong.com +vinllen.com +vinnywang.com +vinoyang.com +violetgo.com +violinerhu.com +violinstudy.net +violinww.com +vip-wifi.com +vip.com +vip120.com +vip1280.net +vip150.com +vip800.com +vip8849.com +vip9982.net +vipbaihe.com +vipbla.com +vipbuluo.com +vipchina.com +vipcn.com +vipcto.com +vipdage.com +vipdy.cc +vipersaudio.com +vipfengfei.com +vipfengxiao.com +vipfinal.com +vipgs.net +vipgslb.com +viphxw.com +vipjingdong.com +vipjr.com +vipkaoyan.net +vipkdy.com +vipkid.com +vipkidresource.com +vipkidstatic.com +vipkj.net +vipkoudai.com +vipleyuan.com +vipliangmei.com +viplux.com +vipmaillist.com +vipmando.com +vipmro.com +vipmro.net +viponlyedu.com +vippluspai.com +vipqlz.com +vips100.com +vipshop.com +vipshopyao.com +vipsinaapp.com +vipsmt.com +vipstatic.com +vipstore.com +viptail.com +viptarena.com +viptest.net +viptijian.com +vipwaf.com +vipwaf.net +vipwm.cc +vipxap.com +vipxdns.com +vipxdns.info +vipxdns.net +vipyaya.com +vipyl.com +vipyooni.com +vipzhuanli.com +viqq.com +virbox.com +vircloud.net +virscan.org +virtualevent.net +virusdefender.net +visa800.com +visabao.com +visacits.com +visadeguo.com +visaforchina.org +visas.to +visaun.com +visbodyfit.com +viseator.com +vishining.com +visionbbs.com +visioncloudapi.com +visionly.org +visionsoar.com +visionstar-tech.com +visionunion.com +visionvera.com +visitsz.com +viskem.com +vispp.net +vista123.com +vistastory.com +visualchina.com +visvachina.com +visweet.com +vitagou.com +vitagou.hk +vitamio.org +vitarn.com +vitechliu.com +vitian.vip +vivantecorp.com +vivcms.com +vividict.com +vivijk.com +viviv.com +vivo.com +vivoglobal.com +vivokb.com +viwik.com +vixue.com +viziool.com +vjia.com +vjiazu.com +vjie.com +vjshi.com +vjudge.net +vk6.me +vkaijiang.com +vkehu.com +vkelai.com +vkemai.com +vksoft.com +vku6.com +vkvr.net +vlabstatic.com +vlan9.com +vland-official.com +vlandgroup.com +vlcms.com +vldbd.com +vliang.com +vlifan.com +vlightv.com +vlinkage.com +vlinke.com +vlion.mobi +vlong.tv +vlongbiz.com +vloyal.com +vlzp.com +vm.sg +vmall.com +vmallres.com +vmanhua.com +vmartaw.com +vmdo.net +vmengblog.com +vmeti.com +vmfor.com +vmgirls.com +vmicloud.com +vmoiver.com +vmonkey.mobi +vmovier.cc +vmovier.com +vmoviercdn.com +vmsky.com +vmvps.com +vnet.mobi +vnnox.com +vnoke.com +vnsdl.com +vnsiubvgs.com +vnvshen.com +vnzmi.com +vobao.com +vobao.mobi +vocalmiku.com +voccdn.com +vocinno.com +vodjk.com +voguego.com +vohringer.com +voicedic.com +voicer.me +voidcc.com +voidking.com +voidme.com +vojs.tv +vokop.com +vol.moe +volccdn.com +volceapplog.com +volcfcdndvs.com +volcgslb.com +volcgtm.com +volchina.com +volcimagex.net +volcsiriusbd.com +volcvod.com +voldp.com +volit.com +volmoe.com +voltmemo.com +voltsky.com +volumes.cc +von-sh.com +vonets.com +vooec.com +voole.com +voole.net +voora.net +voovle.net +voovlive.com +voovmeeting.com +vortexfun.com +vote8.cc +vote8.com +voyooo.com +vp3u.com +vpadn.com +vpal.com +vpalstatic.com +vpansou.com +vpbus.com +vpcoupons.com +vpcs.com +vpgame.com +vpgcdn.com +vpiaotong.com +vpie.net +vpimg1.com +vpimg2.com +vpimg3.com +vpimg4.com +vplayer.net +vpn39.com +vpnsoft.net +vpquc9rn.com +vps.im +vps.sh +vps234.com +vpsaa.com +vpsaa.net +vpsaff.com +vpscang.com +vpsdawanjia.com +vpsdx.com +vpser.net +vpsjie.com +vpskk.com +vpsmm.com +vpsor.com +vpsqb.com +vpsrb.com +vpsrr.com +vpssir.com +vpsss.net +vpszh.com +vqs.com +vqudo.com +vqudochina.com +vr-cat.com +vr-game.club +vr1000.com +vr186.com +vr42.com +vr5008.com +vrbeing.com +vrbi.viveport.com +vrbig.com +vrbrothers.com +vrcfo.com +vrgame520.com +vrjie.com +vrlequ.com +vrltec.com +vrmvip.com +vroan.com +vrpowder.com +vrsat.com +vrshendeng.com +vrvlink.com +vrvmanager.com +vrwuhan.com +vrzb.com +vsaker.com +vsane.com +vsbclub.com +vsbuys.com +vsdhf.com +vsens.com +vshangdaili.com +vshare.com +vsharecloud.com +vsharing.com +vshengsu.com +vshouce.com +vshuoshuo.com +vslai.com +vsledclothes.com +vsnoon.com +vsnoon.net +vsnoon.org +vsnuf.com +vsochina.com +vsocloud.com +vsooncat.com +vsooncloud.com +vsoontech.com +vspk.com +vspk.net +vsppt.com +vsread.com +vstab.com +vstart.net +vstecs.com +vstmv.com +vstou.com +vsuch.com +vsun.com +vsyo.com +vtache.com +vte8.com +vteamgroup.com +vtears.com +vtepai.com +vtepai.net +vtibet.com +vtoutiao.cc +vtrois.com +vtuzx.com +vue-js.com +vue5.com +vuejscaff.com +vuepr.icu +vuevideo.net +vulbox.com +vulnhunt.com +vulogcn.com +vultr1.com +vultrcn.com +vultrla.com +vultrvps.com +vunion.net +vurl.link +vutimes.com +vux.li +vv181.com +vv8.com +vv881.com +vv8yx.com +vv91.com +vv9vv.com +vvaii.com +vvbtc.com +vvddcc.com +vvdeal.com +vvdoit.com +vvebo.vip +vvfeng.com +vvhan.com +vvic.com +vvipcdn.com +vvjob.com +vvkaoyan.com +vvmeiju.com +vvo2o.com +vvpncdn.com +vvtor.com +vvup.net +vvv.io +vvvcd.com +vvvdj.com +vvvfans.com +vvzero.com +vweizhan.com +vwhulian.com +vwvvwv.com +vwwmsd.com +vx.com +vx888.net +vxgua.com +vxia.net +vxiaocheng.com +vxiaoxin.com +vxinyou.com +vxmpw.com +vxplo.com +vxposed.com +vxsnk.com +vxuey.com +vycool.com +vyg.net +vyin.com +vysj.com +vyuan8.com +vyun.com +vz41.com +vzan.cc +vzan.com +vzhang.net +vzhantong.com +vzhifu.net +vzhou.net +vzhuanba.com +vzhuji.com +vzhuo.com +vzhushou.com +vzidc.com +vzkoo.com +vzmapp.com +vzuu.com +w-e.cc +w0lker.com +w10a.com +w10xitong.com +w10xz.com +w10zj.com +w123w.com +w1365.com +w18.net +w1989.com +w20.net +w218.com +w2bc.com +w2fzu.com +w2gou.com +w2solo.com +w333.com +w3cay.com +w3cbus.com +w3cfuns.com +w3chtml.com +w3cl.com +w3cplus.com +w3cschool.cc +w3cshare.com +w3ctalk.com +w3ctech.com +w3cui.com +w3cways.com +w3pop.com +w3tong.com +w3tt.com +w3xue.com +w7.cc +w7000.com +w8xitong.com +w918.com +wa5.com +wa5as4.com +waaaat.com +waakee.com +wabcw.info +wabuw.com +wacai.com +wacaiyun.com +wacaoren.net +wacdn.com +wacths.com +wadao.net +wader1714.com +wadmz.com +waduanzi.com +waerfa.com +waf.cdnetworks.com +waf.cx +wafcn.com +wafunny.com +waheaven.com +wahlap.com +waibao123.com +waibao12333.com +waibaodashi.com +waibo.wang +waig8.com +waigame.com +waigf.com +waiguaw.com +waiguofang.com +waihui888.com +waihuigu.net +waihuo.com +wailaishop.com +wailianvisa.com +waima.com +waimaiquan.vip +waimao6.com +waimaolangtz.com +waimaoribao.com +waiqin365.com +waisir.com +waitingfy.com +waitsun.com +wajueji.com +wajuejin.com +wakatool.com +wakedata.com +waketu.com +wakeup.fun +wakingsands.com +wakkaa.com +walahe.com +walanwalan.com +walatao.com +walekan.com +wali.com +walibao.com +walidream.com +walimaker.com +walkerdu.com +walknode.com +walkthechat.com +wallba.com +wallcoo.com +wallcoo.net +walle-web.io +wallet.io +walletio.io +wallpapersking.com +wallstcn.com +wallstreetcn.com +wamawama.com +wamila.com +wan.cc +wan.com +wan.wang +wan160.com +wan25.com +wan32.com +wan5d.com +wan68.com +wan7.xin +wan73.com +wan77.com +wan8.com +wan95.com +wanbang365.com +wanbaoju.com +wancai.com +wancaibb.com +wancaiinfo.com +wancaomei.com +wanche100.com +wancheng168.com +wanchengwenku.com +wanchenzg.com +wanchezhijia.com +wand6.com +wanda-cti.com +wanda-gh.com +wanda-group.com +wandacinemas.com +wandafilm.com +wandahotelinvestment.com +wandahotels.com +wandamoviepark.com +wandanqu.com +wandaplazas.com +wandarealm.com +wandasportstravel.com +wandavista.com +wandhi.com +wandianshenme.com +wandodo.com +wandoer.com +wandouip.com +wandoujia.com +wandouys.com +waneziyuan.com +wanfangdata.com +wanfangqikan.com +wanfangs.com +wanfangtech.com +wanfantian.com +wanfn.com +wanfumei.net +wang-li.com +wang-nan.com +wang-russell.cc +wang1314.com +wang1314.net +wang13607.com +wanga.me +wangamela.com +wanganedu.com +wangbixi.com +wangcaio2o.com +wangcaiwang.com +wangcanmou.com +wangchujiang.com +wangchunsheng.com +wangcms.com +wangdaibus.com +wangdaicaifu.com +wangdaidongfang.com +wangdaidp.com +wangdaijiamen.com +wangdaijianwen.com +wangdaijin.com +wangdaileida.com +wangdaizhijia.com +wangdalao.com +wangdali.net +wangdaodao.com +wangdian.wang +wangdianmaster.com +wangdongjie.com +wangeditor.com +wangejiba.com +wangfanwifi.com +wangfujing.com +wanggou.com +wanggou236.com +wanggouyizu.com +wangguai.com +wanghaida.com +wanghairead.com +wanghualang.com +wanghz.com +wangi.cc +wangid.com +wangjianshuo.com +wangjinle.com +wangjubao.com +wangjunwei.com +wangkl.com +wangkx.xyz +wangl903.com +wangle.com +wanglibao.com +wanglids.com +wanglu.info +wangluoliuxing.com +wanglutech.com +wanglv.com +wanglv.vip +wangmeng.com +wangmingkuo.com +wangminping.com +wangmou.com +wangmou.net +wangpan007.com +wangpengcufe.com +wangpiao.com +wangpiao.net +wangpu.net +wangpu365.com +wangpuzhi.com +wangqi.com +wangren.com +wangriyu.wang +wangrongbao.com +wangrunze.com +wangshangfayuan.com +wangshidi.com +wangshu.la +wangshuashua.com +wangshugu.com +wangsongxing.com +wangsu.com +wangsucloud.com +wangting.net +wangtingrui.com +wangtongtong.com +wangtouwang.com +wangtu.com +wangtuizhijia.com +wanguan.com +wangukcn.com +wanguoschool.net +wanguotong.com +wangwango.com +wangwenda.com +wangwo.net +wangxc.club +wangxianyuan.com +wangxiao.com +wangxiao.net +wangxiaobao.cc +wangxiaobao.com +wangxingcs.com +wangxinhao.com +wangxinlicai.com +wangyajie.wang +wangyanpiano.com +wangye.com +wangyin.com +wangyou.com +wangyou2.com +wangyuan.com +wangyuegame.com +wangyutang.com +wangyuwang.com +wangzhan123.net +wangzhan360.com +wangzhan6.com +wangzhanbao.cc +wangzhanbianji.com +wangzhanbus.com +wangzhanchi.com +wangzhanmeng.com +wangzhanzj.com +wangzhe.com +wangzhengzhen.com +wangzhennan.com +wangziru.com +wanh5.com +wanhedoors.com +wanheweb.com +wanhi.com +wanhongji.com +wanhu888.com +wanhuahai.com +wanhuajing.com +wanhui365.com +wanhunet.com +wanimal1983.org +wanjiajinfu.com +wanjiashe.com +wanjidashi.com +wanjiedata.com +wanjiedu.com +wanjuhe.com +wanka5.com +wankacn.com +wanke123.com +wanke798.com +wankr100.com +wankukeji.com +wankuwl.com +wanlaiwang.com +wanlan.vip +wanli.com +wanlitong.com +wanliyouxuan.com +wanmei.com +wanmeila.com +wanmeilink.com +wanmeilr.com +wanmeiyueyu.com +wanmeiyunjiao.com +wanmi.cc +wannaenergy.com +wannaexpresso.com +wannar.com +wannengxiaoge.com +wannengzj.com +wannianli.mobi +wannianli.net +wannuoda.com +wanqianyun.com +wanquankan.com +wanrenxing.net +wansege.info +wansf.com +wanshahao.com +wanshanshuju.com +wanshh.com +wanshhh.com +wanshifu.com +wanshitong.com +wanshouyou.net +wanshutech.com +wanshuyun.com +wansongpu.com +wantattoo.com +wantegame.com +wantexe.com +wantgame.net +wantiku.com +wantong-tech.net +wantouzi.net +wantowan.com +wantrack-nj.com +wantshopping.ltd +wantumusic.com +wanvv.com +wanwanol.com +wanweipc.com +wanweixin.com +wanwudezhi.com +wanwupai.com +wanwushuo.com +wanwuxia.com +wanww.com +wanxiang100.com +wanxiangqihang.com +wanyan.com +wanyiwang.com +wanyol.com +wanyoo.com +wanyoucn.com +wanyouxi7.com +wanyuanxiang.com +wanyuenet.com +wanyuhudong.com +wanyumi.com +wanyunshuju.com +wanyuwang.com +wanyx.com +wanyxbox.com +wanzaidangxia.com +wanzhao.com +wanzhongcar.com +wanzhouhr.com +wanzhoumo.com +wanzhuang.com +wanzhuanhulian.com +wanzhuanlea.com +wanzhuanmobile.com +wanzhucdn.com +wanzhugs.com +wanzi.cc +wanzi.com +wanzjhb.com +wanzuile.com +waoo.cc +wapadv.com +waptt.com +wapzk.net +waqiang.com +warcraftchina.com +warestage.com +wargamecn.com +warmcolor.net +warsongmobile.com +warstudy.com +warsu.com +warting.com +warwickintl.com +was-expo.com +wasair.com +washpayer.com +wasoinfo.com +wasu.com +wasu.tv +watanabe-mayu.com +watch-life.net +watchleader.com +watchstor.com +watchtop.com +water520.com +watercubeart.com +watergasheat.com +watertek.com +watertu.com +watsoniki.com +wauee.com +wauee.net +wave-game.com +wave-optics.com +waveshare.net +wavideo.tv +wavky.com +wavpub.com +wawa114.com +wawadns.com +wawayaya.net +waxrain.com +waxxh.me +wayboosz.com +wayhu.cc +wayhu8.com +wayingyong.com +waylon.wang +waynetechs.com +wayos.com +wayoulegal.com +wayoutv.com +wayoxi.com +waytide.com +waytit.com +wayzim.com +wazhuti.com +wb0311.com +wb133.com +wb321.com +wb699.com +wbangdan.com +wbdacdn.com +wbiao.co +wbiao.com +wbini.com +wbljjy.com +wbo529.com +wbolt.com +wbpluto.com +wbpvc.com +wbsp.net +wbsrf.com +wbsz.com +wbtech.com +wbucs.com +wbw.im +wbxgl.com +wbxs8.com +wbyweb.com +wbzol.com +wc44.com +wcd.im +wcfang.com +wch-ic.com +wcjbb.com +wcloud.com +wcmrpx.com +wcsapi.com +wcsfa.com +wcuhdi.com +wcwlmobi.com +wcyecs.com +wczf.net +wd1266.com +wdace.com +wdashi.com +wdaveh5game.com +wddcn.com +wddream.com +wdfangyi.com +wdfxw.net +wdghy.com +wdinter.com +wdjimg.com +wdjky.com +wdjl.net +wdku.net +wdkud6.com +wdlny.com +wdmcake.com +wdmuz.com +wdqh.net +wdres.com +wdshouji.com +wdsjz.com +wdsrc.com +wdstory.com +wdszb.com +wdtianxia.com +wdtlfj.com +wduw.com +wdw6.com +wdw88.com +wdxmzy.com +wdxtub.com +wdy33.com +wdy44.com +wdyxgames.com +wdzj.com +wdzj.org +wdzjimages.com +wdzx.com +we.com +we.dji.com +we.game +we.tm +we1130.com +we123.com +we12306.com +we2.name +we2255.com +we2marry.com +we4399.com +we4game.com +we7.cc +weachat.net +weakyon.com +wealink.com +wealinkcdn.com +weand.com +weaoo.com +weapp.com +weapp.me +wearemanner.com +weareqy.com +weartrends.com +weasing.com +weatherat.com +weathercn.com +weatherdt.com +weatherol.com +weaverdream.com +weaversoftware.com +weavi.com +weaview.com +web-tinker.com +web0518.com +web0898.net +web100.cc +web1800.com +web2060.com +web3.xin +web3389.com +web360.pw +web89.net +web930.com +webacg.com +webaner.com +webank.com +webankcdn.net +webcname.net +webdissector.com +webdiyer.com +webdriver.org +webfalse.com +webfont.com +webfoss.com +webfreecounter.com +webfuwu.com +webgame138.com +webgzs.com +webhek.com +webhivers.com +webjike.com +webkaka.com +webkdcdn.com +webkf.net +webkv.com +webluker.com +webmagic.io +webmeng.net +webmulu.com +webnovel.com +webok.me +webond.net +weboss.hk +webpackjs.com +webpiaoliang.com +webportal.cc +webpowerchina.com +webppd.com +webqxs.com +webrtc.win +webs.so +websbook.com +websem.cc +webseo9.com +webshao.com +webshu.com +webshu.net +websjcdn.com +websjx.com +websjy.com +websocket-test.com +websoft9.com +webterren.com +webullzone.com +webuy.vip +webview.tech +webxgame.com +webxin.com +webxmf.com +webxueyuan.com +webyang.net +wecarepet.com +wecash.net +wecatch.me +wecenter.com +weceshi.com +wechat-data-rescue.com +wechat.ba +wechat.com +wechat.org +wechat007.com +wechat500.com +wechatapp.com +wechatify.net +wechatpay.com.hk +wechatpen.com +weclassroom.com +wecloudx.com +wecrm.com +wecycling.com +wecydia.com +wed027.com +wed6.com +wedate.me +weddingos.com +wedengta.com +wedfairy.com +wedn.net +wedo8.com +wedooapp.com +weebei.com +weebia.com +weedong.com +weefang.com +weeiy.com +weekus.com +weelv.com +weeqoo.com +weeyun.com +wefans.com +wefiler.com +wefinder.com +wefinger.club +wegame.com +wegamex.com.hk +wegene.com +weharvest.com +wehefei.com +weherepost.com +wei2008.com +wei6.com +weiba66.com +weibaiyue.com +weibaji.com +weibanan.com +weibangong.com +weibanzhushou.com +weibenchina.com +weibo.co +weibo.com +weibocdn.com +weibodangan.com +weibohelper.com +weiboi.com +weibopay.com +weibopie.com +weiboreach.com +weiboyi.com +weibusi.net +weica.net +weicaifu.com +weicewang.com +weichaishi.com +weiche.me +weichen.org +weiclicai.com +weico.cc +weico.com +weicot.com +weida888.com +weidanbai.com +weidanci.com +weidaohang.org +weidaoliu.com +weidea.net +weidian.cc +weidian.com +weidian.gg +weidiancdn.com +weidianfans.com +weidiango.com +weidianyuedu.com +weidown.com +weiduhui.com +weidunewtab.com +weiengift.com +weifang168.com +weifenghr.com +weifengke.com +weifengou.com +weifengtang.com +weigang.com +weigongju.org +weigongxue.com +weihai.tv +weihai6.com +weihaicollege.com +weihaipoly.com +weihanli.xyz +weihaobang.com +weihaoyi.com +weihua2.com +weihuangqp.com +weihuazs.com +weihubao.com +weihuijob.com +weihulian.com +weihz.net +weijifan.com +weijinsuo.com +weijinzhuanbb.com +weijinzhuancc.com +weijiu.org +weijiuxin.com +weijj.com +weiju.net +weijuju.com +weijuwhua.com +weikaowu.com +weikasen.com +weikd.com +weike.fm +weikebaba.net +weikeimg.com +weikejianghu.com +weikengtech.com +weikuo.cc +weikuw.com +weilairibao.com +weilaishidai.com +weilaitiku.com +weilaizhaiju.com +weilanhaian.com +weilanliuxue.com +weile.com +weiling520.com +weilingdi.com +weilinovel.net +weilitoutiao.net +weilongshipin.com +weilt.net +weimai.com +weimaqi.net +weimeiba.com +weimeicun.com +weimeifan.net +weimeixi.com +weimiaocaishang.com +weimingcq.com +weimingedu.com +weimingkids.com +weimob.com +weimobdc.com +weimobqa.com +weimobwmc.com +weinisongdu.com +weinovel.cc +weiot.net +weipaitang.com +weiphone.net +weiphp.com +weipinchu.com +weiping.com +weipu.com +weiq.com +weiqi.cc +weiqiaocy.com +weiqiaoyun.com +weiqidaxing.com +weiqinfang.com +weiqingbao.cc +weiqitv.com +weiqudao.net +weiquyx.com +weiren.com +weisanyun.com +weisay.com +weishan.cc +weishang99.net +weishangagent.com +weishangchina.org +weishangshijie.com +weishangye.com +weishangzhonghe.com +weishengka.com +weishi.com +weishi100.com +weishu.me +weisiliang.com +weismarts.com +weistang.com +weisuyun.com +weitehui.com +weitiaozhuan.com +weitiewang.com +weitip.com +weitoupiao.com +weitousuo.com +weituibao.com +weitunit.com +weituobang.net +weituoshepin.com +weitushe.com +weiwangpu.com +weiwangvip.com +weiwanhudong.com +weiwanjia.com +weiwei123.com +weiweibox.com +weiweiwo.com +weiweixiao.net +weiweixiong.com +weiweiyi.com +weiwenjia.com +weiwuhui.com +weixiangshe.com +weixianmanbu.com +weixianzhuan.com +weixiaoduo.com +weixiaohan.com +weixiaotong.com +weixiaotuoke.tech +weixiaov.club +weixiaov.wang +weixin.com +weixin008.com +weixin111.com +weixin12.com +weixin12315.com +weixinbang.com +weixinbridge.com +weixincall.com +weixingate.com +weixingmap.com +weixingon.com +weixingongzuoshi.com +weixingv.com +weixinhbs.com +weixinhost.com +weixinhow.com +weixinjia.net +weixinjiajia.com +weixinju.com +weixinkd.com +weixinmenu.com +weixinmuban.com +weixinmvp.com +weixinnu.com +weixinpy.com +weixinqing.com +weixinqn.com +weixinquanzi.com +weixinrensheng.com +weixinsxy.com +weixinyunduan.com +weixistyle.com +weixiu2.com +weixiuka.com +weixue100.com +weixueyuan.net +weixun.com +weixuncj.com +weixunyunduan.net +weixz.com +weixz8.com +weiyan.me +weiyangx.com +weiyapaper.com +weiye.me +weiyes.com +weiyi.com +weiyianws.com +weiyichina.org +weiyiminhenqiang.com +weiyingbao.com +weiyituku.com +weiyoou8.com +weiyoubot.com +weiyours.com +weiyui.com +weiyun.com +weiyun001.com +weiyunchong.com +weiyuntop.com +weiyunyong.com +weizhanabc.com +weizhangjilu.com +weizhangwang.com +weizhanle.com +weizhengbrand.com +weizhenwx.com +weizhilink.com +weizoom.com +wejianzhan.com +wejiazu.com +wejoydata.com +wekbo.com +wekuo.com +welansh.com +welcrm.com +weldzy.com +welefen.com +weleve.com +weliads.com +welian.com +welife001.com +welife100.com +welinkpark.com +well8.com +wellant88.com +wellcoding.com +wellhope.net +wellphp.com +wellpie.com +wellsoon.com +welove520.com +welovead.com +welqua.com +wemdsm.com +wemediacn.com +wemomo.com +wemunc.org +wemvp.com +wenancehua.com +wenancn.com +wenangou.com +wenanzhe.com +wenbita.net +wenbo.cc +wenbofund.com +wencaischool.com +wenchain.com +wenda100.net +wenda123.com +wenda8.com +wendaifu.com +wendal.net +wendangdaquan.com +wendangku.net +wendangmao.com +wendangmao.net +wendangwang.com +wendangxiazai.com +wendax.com +wendaxiaowu.com +wenday.com +wendian.com +wendns.com +wendoc.com +wendu.com +wenduedu.com +wendumao.com +wenfangjushe.com +wenfangnet.com +wenfatang.net +wenfuxiang.com +wengbi.com +wengkui.com +wenguang.com +wenguangta.com +wenguanguoji.com +wenguo.com +wengzai.com +wenhaofan.com +wenhua.cc +wenhuabolan.com +wenhui.space +wenidc.com +wenjian.net +wenjiangs.com +wenjingnetwork.com +wenjiwu.com +wenjuan.cc +wenjuan.com +wenjuan.in +wenjuan.link +wenjuan.ltd +wenjuan.net +wenjuan.pub +wenjuanba.com +wenjuanshow.com +wenjunjiang.win +wenjuntech.com +wenjx.com +wenku.net +wenku321.com +wenku365.com +wenku7.com +wenku8.com +wenku8.net +wenkudao.com +wenkudaquan.com +wenkumao.com +wenkuwenku.com +wenkuxiazai.net +wenlc.com +wenlvnews.com +wenmeng.com +wenmi.com +wenneart.com +wenpie.com +wenrouge.com +wenruya.com +wenryxu.com +wensang.com +wenshaktv.com +wenshao-art.com +wenshen.net +wenshen010.com +wenshen8.net +wenshendaka.com +wenshenku.com +wensheno.com +wenshenxiu.com +wenshibaowenbei.com +wenshijiawei.com +wenshitiandi.com +wenshuba.com +wensuocaster.com +wenten.net +wentu.io +wenwen.com +wenwentang.com +wenwo.com +wenwu8.com +wenwuchina.com +wenxi777.com +wenxiang.org +wenxiaoyou.com +wenxingfilter.com +wenxiu.com +wenxiu998.com +wenxiushop.com +wenxue100.com +wenxuedu.com +wenxuem.com +wenxuemi.com +wenxuemi6.com +wenxuemm.com +wenxuetiandi.com +wenyijcc.com +wenyoutai.com +wenyu6.com +wenyw.com +wenzaizhibo.com +wenzhaihui.com +wenzhangba.com +wenzhanghui.com +wenzhen8.com +wenzhengwenhua.com +wenzhousx.com +wenzon.com +wepiao.com +wepie.com +weplaybubble.com +weplaymore.com +weplus.com +weplus.me +werewolf.mobi +werewolf.online +wesafesoft.com +wesai.com +wesane.com +wesdom.me +weshaketv.com +weshequ.com +weshineapp.com +wesiedu.com +west.xyz +west263.com +west999.com +westbund.com +westcy.com +weste.net +westengine.com +westleadfund.com +westonecloud.com +westpac.group +westsecu.com +westsummitcap.com +wesure100.com +wetherm.com +weti.me +wetogame.com +weton.net +wetouch.net +wetruetech.com +wetsd.com +wetv.vip +wetvinfo.com +wewean.com +wewinpe.com +wex5.com +wexin.com +wey.com +weyee.com +weyhd.com +weyi.cc +weyman.me +weyo.me +wezeit.com +wezhan.hk +wezhan.net +wezhan.us +wezhuiyi.com +wf.pub +wf163.com +wf66.com +wfbaiyou.com +wfbbs.com +wfbrood.com +wfc805.com +wfccb.com +wfdata.club +wfeil.com +wfek.com +wff168.com +wffc120.com +wffengmailin.com +wffms.com +wfhero.online +wfiltericf.com +wfilterngf.com +wfjimg.com +wfkouyaji.com +wflgjx.com +wfluxin.com +wfsdf.com +wfun.com +wfuyu.com +wfwenshigongcheng.com +wfxspc.com +wfxz.com +wfyake.com +wfycjd.com +wfzbjx.com +wfzqhb.com +wfzssz.com +wfztg.com +wfzzz.com +wg900.com +wgcss.com +wgh.me +wghostk.com +wghpdi.com +wgimg.com +wglm.net +wgmf.com +wgnds.com +wgos.com +wgpsec.org +wgsptc.com +wgxcn.com +wgxdxx.com +wgxy.com +wgxy.net +wh-baidu.com +wh-charity.com +wh-china.com +wh-haipu.com +wh-motorshow.com +wh-mx.com +wh10000.com +wh100idc.com +wh111.com +wh119.com +wh12345szzx.com +wh20zx.com +wh2work.com +wh50.com +wh6z.com +wh702g.ren +whadexpo.com +whairport.com +whalecloud.com +whaledu.com +whaleunique.com +whalipaycs.com +whart.net +what21.com +whatbuytoday.com +whatsns.com +whatua.com +whbaishitong.com +whbbs.com +whbc2000.com +whbcrs.com +whbear.com +whbester.com +whbiobank.com +whbjdn.com +whbjyy.com +whbsybj.com +whbts.com +whbtsj.com +whbwj.com +whbws.com +whcat.net +whcbank.com +whcbs.com +whccb.com +whcch802.com +whccwh.com +whcdc.org +whcfs.org +whcgtx.com +whchihuo.com +whckxx.com +whcotton.com +whcrewin.com +whcst.com +whctv.com +whcyit.com +whdaring.com +whdayy.com +whdckj.com +whddgc.com +whdonde.com +whdqhj.com +whdrawing.com +whdsyy.com +whduanwu.com +whdydl.com +whecb.com +whecloud.com +whecn.com +whegj.com +whenchat.net +whenever-online.com +wherxian.com +whetc.com +whevt.com +whewash.com +whfangchanzx.com +whfazun.com +whfcsc.org +whfeiyou.com +whfengli.com +whflfa.com +whgaodu.com +whgaopeng.com +whggjk.com +whggjtjs.com +whggvc.net +whghfz.com +whghjt.com +whgjjtjx.com +whgjzt.com +whgk.com +whglory.com +whgmbwg.com +whgmq.com +whgmxy.com +whgszx.com +whgtgh.com +whguo.com +whgwbn.net +whgykg.com +whhbxh.org +whhdcz.com +whhdmt.com +whhdsdq.com +whhengchang.com +whhexin.com +whhk520.com +whhkbyg.com +whhlhj.com +whhnkj.com +whhost.net +whhouse.com +whhpaccp.com +whhsg.com +whhslndx.com +whhuatian.com +whhuiyu.com +whhxny.com +whhxts.com +whhysound.com +whhzhn.com +whhzyj.com +whib.com +whicec.com +whichmba.net +whidc.com +whidy.net +whiee.com +whinfo.net +whir.net +whisperto.net +whitebox.im +whitecat.com +whitegem.net +whitemedia-china.com +whitjy.com +whjbh.com +whjclgs.com +whjcly.com +whjhcz.com +whjiaoy.com +whjjhbj.com +whjm.com +whjmyc.com +whjtxx.com +whjuren.com +whjy.net +whjyx.com +whjzw.net +whjzy.net +whjzyxh.org +whkakaxi.com +whkc.com +whkingdom.com +whkjz.com +whkpcnc.com +whkt.net +whkyjz.com +whkykj.com +whland.com +whlawyer.net +whldsoft.com +whlido.com +whljyl.com +whlkwy.com +whlongre.com +whlrhd.com +whlxhs.net +whly56.com +whlybzh.com +whlynk.com +whmama.com +whmcwd.com +whmcxh.org +whmeigao.com +whmicrocredit.com +whmj.org +whmlcy.net +whmnls.com +whmnrc.com +whmnx.com +whmoocs.com +whmoto.com +whmylike.cc +whmylikekq.com +whnatural.com +whnfc.com +whngd.org +whoami.akamai.net +whoceansys.com +whocool.com +whoil.net +whoolala.com +whooyan.com +whosedrop.com +whozen.com +whpantosoft.com +whpanva.com +whplmd.com +whptc.org +whpx.net +whqcbj.com +whqhyg.com +whqiansou027.com +whqtdjy.com +whqunyu.com +whr.cc +whrango.com +whrazf.com +whrcbank.com +whrenai.com +whres.net +whrhkj.com +whrl.net +whrsip.com +whrsj.org +whrtmpay.com +whsdsyy.com +whseoclub.com +whsir.com +whsladz.com +whsladz.net +whsmkg.com +whsoftway.com +whsql.org +whsqsoft.com +whsrc.com +whssxpx.com +whsunmap.com +whsw.net +whsy.org +whsyy.net +whtbq.com +whtcm.com +whtcm.net +whtdcb.com +whtdsc.com +whtech-sonic.net +whtfzy.com +whtmhh.com +whtongyun.com +whtpi.com +whtqedu.net +whtran.com +whtryine.com +whtsw.org +whtto.com +whttsy.com +whtuff.com +whtxcloud.com +whtzb.org +whu-cveo.com +whu.pt +whualong.com +whudfr.com +whuh-gi.com +whuh.com +whuhzzs.com +whume.com +whuspark.com +whuss.com +whusu.org +whut-px.com +whutech.com +whutosa.com +whuwto.com +whwanshun.com +whwater.com +whwebsite.com +whweo.com +whwkzc.com +whwm.org +whwomensmarathon.com +whwxxy.com +whxc01.com +whxh.com +whxinhuo.com +whxsnsy.com +whxunw.com +whxy.net +whxyqb.com +whxysz.net +why123.org +whybh2015.com +whycan.com +whyec.com +whyenjoy.com +whyestar.com +whyfcm.com +whyfyc.com +whyicheng.com +whyimingkeji.com +whyinsheng.com +whyinzhimei.com +whyiqitong.com +whyldd.net +whyongwei.com +whyqi.com +whysdomain.com +whyshop.com +whysodiao.com +whysx.com +whyungu.com +whyyy.com +whzb.com +whzblawson.com +whzbtb.com +whzc2008.com +whzdyy.com +whzglc.com +whzh-cw.com +whzhqsg.com +whzhtd.com +whzhzxmr.com +whzjyy.com +whzkb.com +whzlyy.com +whzph.com +whzsrc.com +whzwzk.com +whzwzs.com +whzxht.com +whzxzls.com +whzyblh.com +whzydz.com +whzyht.com +whzyy.net +wiblog.net +wicep.com +wicp.net +wicp.vip +wicresoft.com +widuu.com +wifenxiao.com +wifi.com +wifi03.com +wifi0917.com +wifi188.com +wifi33.com +wifi8.com +wifibanlv.com +wifichain.com +wifidog.pro +wifidown.com +wifigushi.com +wifigx.com +wifimsl.com +wifire.net +wifishenqi.com +wifiwx.com +wifizj.com +wiitrans.com +wiiyi.com +wiki8.com +wikielife.com +wikiimgs.com +wikimirror.org +wikimoe.com +wikiyuedu.com +wikore.com +wikore.net +wilddog.com +wilddream.net +wildgun.net +willcdn.com +willmao.com +willsemi.com +willsfitness.net +willsgym.com +willwin91.com +wiloon.com +wiloop.net +wimetro.com +wimiar.com +win-ke.com +win-man.com +win.hn +win007.com +win1032.com +win1064.com +win10cjb.com +win10com.com +win10gw.com +win10net.com +win10set.com +win10world.com +win10ww.com +win10xitong.com +win10zyb.com +win2007.com +win4000.com +win71234.com +win732.com +win789.com +win7999.com +win7china.com +win7en.com +win7i.com +win7qijian.com +win7qjb.com +win7sky.com +win7w.com +win7xzb.com +win7zhuangjiyuan.com +win8.net +win866.com +win8china.com +win8e.com +win8pc.com +win8xiazai.com +win9008.com +winasdaq.com +winbaicai.com +winbaoxian.com +winbic.com +winbjb.com +winbond-ic.com +winbons.com +winbosmart.com +wincheers.com +wincheers.net +wincn.com +wind.moe +wind2021.com +windcoder.com +windever.com +windin.com +windleaf.site +windmsn.com +windows10.pro +windows10zj.com +windows11.pro +windows7adobe.com +windows7en.com +windowszj.com +windowszj.net +windrunner.me +winds.red +winds2021.com +windsns.com +windtch.com +windworkshop.net +wine-world.com +wine9.com +winegame.net +wineln.com +winemagz.com +winenice.com +wines-info.com +winesinfo.com +winesou.com +wineworld.vip +winex-hk.com +winfang.com +winfanqie.com +winfreeinfo.com +wingconn.com +winglungbank.com +wingsbook.com +wingstudio.org +wingtecher.com +winhong.com +winhyl.com +winicssec.com +winkey17.com +winkingworks.com +winksi.com +winndoo.com +winner9.com +winnermicro.com +winnet.cc +winning11cn.com +winotmk.com +winrobot360.com +winsenseos.com +winshang.com +winshangdata.com +winsing.net +wintalent.com +winteam500.com +winterchen.com +wintimechina.com +wintooo.com +wintopedu.com +winvvv.com +winwebmail.com +winwin7.com +winxp8.com +winxuan.com +winxuancdn.com +winxw.com +wio2o.com +wireless-driver.com +wirelesschina-summit.com +wisburg.com +wisder.net +wisdoing.com +wisdom-braun.com +wisdomcmmi.com +wisdontech.com +wisdr.com +wisdri.com +wise-iot.com +wiseah.com +wiseboke.com +wisecotech.com +wisedoo.com +wisedsp.net +wisedu.com +wiseduc.com +wiseimp.com +wiselong.com +wisenjoy.com +wiseuc.com +wisevector.com +wishbuild.com +wishcad.com +wishcalls.com +wishdown.com +wishisp.com +wisiyilink.com +wismom.com +wison-engineering.com +wison.com +wisrc.com +wistone.com +wiswonder.com +wit-parking.com +wit0.com +wit5.com +witcp.com +with366.com +withae.com +withcdn.com +withiocdn.com +withmedia.net +withpinbox.com +withsccdn.com +withsin.com +withubit.org +withzz.com +witkey.com +witmart.net +witnew.net +witontek.com +witown.com +witspring.com +witt.wang +wiwide.com +wiyeniao.com +wiz03.com +wizarcan.com +wj-hospital.com +wj001.com +wj166.com +wjage.com +wjajw.com +wjasset.com +wjbb.com +wjbk.site +wjceo.com +wjdaily.com +wjdhcms.com +wjdiy.com +wjdiy.net +wjgslb.com +wjhouses.com +wjhtxx.com +wjiaxing.com +wjika.com +wjin.cc +wjinmiao.com +wjjfjt.com +wjkwl.com +wjlkj.com +wjlxmedia.com +wjrcb.com +wjshw.com +wjsou.com +wjsw.com +wjunjie.com +wjx.com +wjxcdn.com +wjyanghu.com +wjyh.com +wjyt-china.org +wjyw.com +wjz0098.me +wjzj.vip +wk-foryou.com +wk007.com +wk2.com +wk78.com +wkai.cc +wkanx.com +wkbins.com +wkcmall.com +wkderp.com +wkdty.com +wkepu.com +wkhub.com +wkimg.com +wklken.me +wklm2018.com +wkmic.com +wkread.com +wksc.com +wkshipark.com +wkyaoye.com +wkzf.com +wkzuche.com +wl.dlservice.microsoft.com +wl369.com +wlanadmin.com +wlanbanlv.com +wlanwifi.net +wlbaike.com +wlbqczk.vip +wlcbnews.com +wlcbw.com +wlcxx.com +wld5.com +wldsb.com +wleye.com +wlhcd.com +wlim.pro +wlinfor.com +wljy8.com +wljyyjy.com +wlkgo.com +wlkst.com +wlmq.com +wlmqgjj.com +wlmqwb.com +wlnh.net +wlphp.com +wlqtpolytheatre.com +wlread.com +wlrjy.com +wlsgjslgy.com +wlshw.com +wlski.com +wlsrenzaocaoping.com +wlstock.com +wlsvt.com +wltieyaoban.com +wlxit.com +wlxmall.com +wlxww.com +wlyfw.com +wlyjbl.com +wlyscl.com +wlzni.com +wlzp.vip +wlzy.tv +wm-imotor.com +wm-motor.com +wm090.com +wm18.com +wmc-bj.net +wmcloud.com +wmcn.com +wmedias.com +wmiao.com +wmiyx.com +wmjk.net +wmjrc.com +wmjygg.net +wmjyqd.net +wmjyszba.com +wmk0099.xyz +wmljw.com +wmlunwen.com +wmnetwork.cc +wmota.htcsense.com +wmp169.com +wmphp.com +wmpic.me +wmpvp.com +wmpyol.com +wms100.com +wmssedu.com +wmsub.com +wmton.com +wmtp.net +wmtxt.com +wmupd.com +wmvideo.com +wmxxgy.com +wmxxgz.com +wmxxwh.com +wmxxxj.com +wmy-ad.com +wmzhe.com +wn1998.com +wn3331.com +wn51.com +wn789.com +wnark.com +wnbsq.com +wndhw.com +wndlkj.com +wnform.com +wnhuifu.com +wniecm.com +wnkj88.com +wnlbs.com +wnlpromain.com +wnlproyunying.com +wnlprozhanxing.com +wnlprozijia.com +wnmqchwl.com +wnn8.com +wnplayer.net +wnrb.net +wns1191.com +wnshouhu.com +wnsqzonebk.com +wnsr391.com +wnssedu.com +wntool.com +wnwb.com +wnzc.com +wnzhbb.com +wnzhuishu.com +wnzy.net +wo-xa.com +wo113.net +wo116114.com +wo123.com +wo170.com +wo186.tv +wo188.win +wo1990.com +wo685.com +wo81.com +wo99.net +woa.com +woaap.com +woaide.com +woaidu.org +woaifanyi.com +woaihuahua.com +woaijiba.com +woailuo.com +woaipj.com +woaipu.com +woair.com +woaishouban.com +woaixiao.com +woaizr.com +woaizuji.com +woaoo.net +wobenben.com +wobiquge.com +wobocn.com +woc88.com +wocai.de +wocaoseo.net +wochacha.com +wochaw.com +wodai.com +wodavip.com +wodcloud.com +wode.im +wode20.com +wodeabc.com +wodecrowd.com +wodedagong.com +wodefanwen.com +wodemeitu.com +wodeoffice.com +wodeshebao.com +wodiancan.net +wodidashi.com +wodingche.com +wodjob.com +wodocx.com +wofang.com +wofang.net +wofangwang.com +wofficebox.com +wofjhs.com +wogame.net +wogoo.com +wohenizaiyiqi.com +wohxx.com +woi3d.com +woiyu.com +wojiacloud.com +wojiaoni.com +wojilu.com +wok.com +wokeji.com +woko.cc +wolai.com +wolaidai.com +woledy.com +wolegou.net +wolezhibo.com +wolf.cc +wolfcstech.com +wolfgo.com +wolfogre.com +wolife.com +wolighting.com +woliuda.com +wolonge.com +wolongge.com +wolongyin.com +wolongyoule.com +wolongzy.net +wolwo.ltd +wolwobiotech.com +womai.com +womaiapp.com +woman91.com +womeime.com +women-heart.com +womenaiyuedu.com +womenjie.com +wonder.wiki +wondercv.com +wonderful-pr.com +wonderfulsz.com +wonderjk.com +wonderkun.cc +wondermars.com +wondermole.com +wonderscloud.com +wondersgroup.com +wondershare.cc +wondershare.com +wondershare.net +wondersmemory.com +wonderstar027.com +wonei.com +wonerqu.com +wongcw.com +wonggang.com +wongpeace.com +woniu.com +woniu8.com +woniubaoxian.com +woniucloud.com +woniutrip.com +woniuwl.com +wonmay.com +wonmay.net +wonote.com +wonpearl.com +wonplug.net +wonter.net +wonxun.net +woo.im +wooaii.com +woocg.com +wooclouds.com +wood168.com +wood168.net +woodbunny.com +wooddb.com +woodnn.com +wooee.net +wooffice.net +woola.net +wooolab.com +wooqx.com +woordee.com +wooshoes.com +woosmart.com +wooxhome.com +wooyun.org +woozooo.com +wopaiyi.com +wopaper.com +wopaw.com +wopeng.net +wopus.org +woqidege.com +woqifoundation.com +woqu.com +word666.com +wordlm.com +wordpress.la +wordpresshy.com +wordscan.net +work28.com +workchat.com +workec.com +workehr.com +workerman.net +worklaw.vip +workpcb.com +worksgz.com +worksoho.com +worktile.com +worktilemail.com +workyun.com +world-pass.net +world-trade.org +world68.com +worldcps.com +worldgoodvoices.com +worldh5.com +worldhello.net +worldinout.com +worldlv.com +worldmall365.com +worldmr.net +worldmsports.com +worldofai.com +worldpathclinic.com +worldpowerliftingchina.com +worlduc.com +worldwarner.com +worldwayhk.com +worldwu.com +wosai-inc.com +wosaimg.com +woshao.com +woshipm.com +woshiqian.com +woshitv.com +woshizz.com +woshuo123.com +wosign.com +wosigndoc.com +woskj2.com +wosn.net +woso100.com +wosouyun.com +wotobang.com +wotougao.com +wotrus.com +wotucdn.com +wotula.com +wouju.com +wow-classic.com +wowant.com +wowar.com +wowcat.net +wowchina.com +wowenda.com +wowforex.com +wowodai.com +wowoit.com +wowoohr.com +wowops.com +wowoqq.com +wowoshijie.com +wowotech.net +wowotuan.com +wowoyoo.com +wowoyou.com +wowqu.cc +wowsai.com +wowys.com +woxian.com +woxiaoyun.com +woxihuan.com +woxiu.com +woxuexue.com +woxuyuan.com +woyao998.com +woyaobaoliang.com +woyaofanyi.com +woyaogexing.com +woyaoqiudai.com +woyaosouti.com +woyaozhan.com +woying.com +woyoo.com +woyouche.com +woyouquan.net +wozaijia.com +wozhua.mobi +wozhuan.com +wozhuye.com +woziku.com +wp-china-yes.net +wp-h.com +wp10.cc +wpan123.com +wpceo.com +wpchina.org +wpcnzz.com +wpdaxue.com +wpengapp.com +wper.com +wpgdadatong.com +wpgdadawant.com +wphonelife.com +wphun.com +wping.org +wpjam.com +wpk8.com +wplat.com +wpmee.com +wpmtp.com +wporder.com +wps-office.net +wpscdn.com +wpsdns.com +wpsep.com +wpsgo.com +wpsmail.net +wpsoffice.com +wptao.com +wptrn.com +wpweixin.com +wpxap.com +wpyou.com +wpzhiku.com +wq96f9.com +wqbook.com +wqc.so +wqchat.com +wqcms.com +wqdian.com +wqdian.net +wqetqi.vip +wqetrip.com +wqgp.com +wqhunqing.com +wqiis.com +wqingjian.com +wqketang.com +wqlin.com +wqrlink.tech +wqshui.com +wqxuetang.com +wqyunpan.com +wqzx.net +wrating.com +wrcdn.com +wrfou.com +write-bug.com +writebp.com +wrjzj.com +wrkdih.com +wrltxt.com +wrmjk.com +wrpotter.com +wrsa.net +wrsaea.com +wrtnode.cc +wrtnode.com +wrtsz.com +wrx319.com +ws-dla.com +ws.ksmobile.net +wsaf.net +wsbuluo.com +wsc-expo.com +wscdns.com +wscdns.info +wscdns.org +wscloudcdn.com +wscloudcdn.org +wsclouddns.com +wscloudsec.com +wscont1.apps.microsoft.com +wscont2.apps.microsoft.com +wscrm.net +wscso.com +wscstrace.com +wscvdns.com +wscxy.com +wsdcasa.com +wsdccq.com +wsdvs.com +wsdvs.info +wsdvs.org +wse.me +wsecar.com +wseen.com +wselearning.com +wselearning.net +wsfdl.com +wsfdn.com +wsfff.com +wsfnk.com +wsfsy.com +wsgjp.com +wsglb0.com +wsglb0.info +wsglb0.org +wsglw.com +wsgxsp.com +wshang.com +wshangw.net +wshenm.com +wshili.com +wshost.cc +wshoto.com +wshtgame.com +wshttpdns.com +wsisp.com +wsisp.net +wsj186.com +wsjx.net +wslcode.com +wslmf.com +wsloan.com +wsltt.com +wsmaoyi.com +wsmaoyi.net +wsonh.com +wsoso.com +wsound.cc +wsoversea.info +wsq.cool +wsqejt.com +wsry18.xyz +wsssec.com +wstx.com +wsview.com +wswebcdn.com +wswebcdn.info +wswebcdn.org +wswebpic.com +wswebpic.info +wswebpic.org +wsxa.com +wsxc.me +wsxcme.com +wsxddg.com +wsy7.com +wsyyxz.com +wszwh.org +wt-px.com +wt168.com +wt8.com +wtaluo.com +wtango.com +wtaovip.com +wtapi.com +wtbds.com +wtdex.com +wtdlq.com +wtdms.com +wting.info +wtmmn.com +wtn5.com +wtobag.com +wtoip.com +wtojob.com +wtoutiao.com +wtown.com +wts999.com +wtsimg.com +wtszx.com +wttms.com +wtwvision.com +wtxcdn.com +wtzw.com +wu-mart.com +wu-mi.com +wu35.com +wu37.com +wu7zhi.com +wuage.com +wuaiso.com +wubaiyi.com +wubaiyi.net +wubiba.com +wubisheng.net +wubizi.net +wubizigen.net +wubolive.com +wubx.net +wucaiabc.com +wuchajian.com +wuchenxu.com +wuda-website.com +wudage.com +wudangquan.net +wudangshan.com +wudao.com +wudaotv.com +wudku.com +wudusw.com +wueasy.com +wufafuwu.com +wufangbo.com +wufangzhai.com +wufazhuce.com +wufuba.com +wufun.net +wuguiyunwei.com +wuguoren.com +wuguyufen.com +wugx.net +wuhan-guide.com +wuhan-tour.net +wuhan-travel.com +wuhan.com +wuhan163.com +wuhananyu.com +wuhanart.com +wuhanauto.com +wuhanbaituo.com +wuhanbus.com +wuhancityofdesign.com +wuhandazhaxie.com +wuhaneca.org +wuhanev.com +wuhanfuke120.com +wuhanfukeyy.com +wuhanhengyi.com +wuhanins.com +wuhanjiaojing.com +wuhanjingce.com +wuhankb.com +wuhanly.com +wuhanmarathon.org +wuhanmeigao.com +wuhanmetro.com +wuhanopen.org +wuhanparking.com +wuhanpe.com +wuhanpep.com +wuhanport.com +wuhanrt.com +wuhanrx.com +wuhansailingclub.com +wuhantest.com +wuhantianqi114.com +wuhantianrun.com +wuhantskj.com +wuhanunion.com +wuhanxingfuwan.com +wuhanxyz.com +wuhanyidu.com +wuhanzdq.com +wuhanzhongye.com +wuhongsheng.com +wuhouhaodian.com +wuhu.cc +wuhuashe.com +wuhubtv.com +wuhusanlian.com +wuhushengwei.com +wui5.com +wuji.com +wujiangtong.com +wujiayi.vip +wujiecaifu.com +wujiehd.com +wujiehuyu.com +wujiexiang.com +wujiexueyuan.com +wujiit.com +wujinimg.com +wujixiaoshuo.com +wujiyou.com +wukong.com +wukong.la +wukongapi.com +wukongchou995.com +wukongkf.com +wukonglicai.com +wukongphp.com +wukongrom.com +wukongshuo.com +wukongtui.com +wukongtv.com +wukongwenda.com +wukuiwang.com +wukur.com +wukypay.com +wul.ai +wulannews.com +wuletv.com +wuliannanjing.com +wuliaoo.com +wuliaosi.com +wuliapi.com +wulicdn.com +wuliujia2018.com +wulong365.com +wulvxing.com +wumart.com +wumeishebei.com +wumii.com +wumii.tv +wuming.com +wuqing.cc +wuqiong.info +wuqishike.com +wurenjifanzhi.com +wuruihong.com +wuruo8.com +wuscn.com +wuse.com +wusen.net +wuseng.com +wuseng.net +wuseyun.com +wushang.com +wushangplaza.com +wushen.com +wushuangol.com +wushuangtech.com +wushuhenan.com +wusiwei.com +wusunjiance.net +wusuobuneng.com +wuta-cam.com +wutaishanfojiao.com +wutanyuhuatan.com +wutep.com +wutianqi.com +wutnews.net +wutongguo.com +wutongshanxia.com +wutongtec.com +wutongwan.org +wutongxiang.cc +wutos.com +wutui.pro +wutuojia.com +wuuxiang.com +wuweijob.com +wuweiyou.com +wuwenjun.net +wuwenliang.net +wuwii.com +wuwm-aprg.org +wuxi.com +wuxiairport.com +wuxiamh.com +wuxiangcc.com +wuxiangxing.com +wuxianhaibao.com +wuxianlin.com +wuxiantu.com +wuxiaodi.com +wuxiatools.com +wuxibus.com +wuxijy.com +wuximarathon.com +wuximeidi.com +wuxin.info +wuxinban.com +wuxiqiangheng.com +wuxiwang.net +wuxu92.com +wuyang-honda.com +wuyangplatform.com +wuyazi.com +wuyecao.net +wuyehr.com +wuyida.com +wuyishan.net +wuyou.com +wuyou.net +wuyoufang.com +wuyouhui.net +wuyousy.com +wuys.com +wuyuan.cc +wuyublog.com +wuyueit.com +wuyukang.com +wuyumin.com +wuyuncdn.com +wuzhaiba.com +wuzhenfestival.com +wuzhenpay.com +wuzhenwic.org +wuzhicms.com +wuzhiwei.net +wuzhouqianzheng.com +wuzhuiso.com +wuziya.com +wvidc.com +wvshare.com +ww2bbs.net +wwc-blog.com +wwdz13.com +wwe008.com +wwenglish.com +wwenglish.org +wwfchina.org +wwggw.com +wwjia.com +wwleww.com +wwmhdq.com +wws23.com +wwstat.com +www-123490.com +www-175345.com +www-4620.com +www-63608.com +www-google-analytics.l.google.com +www-googletagmanager.l.google.com +www.adobe.com +www.agoda.com +www.akamai.com +www.amd.com +www.analog.com +www.apple.com +www.apple.com.edgekey.net +www.apple.com.edgekey.net.globalredir.akadns.net +www.bing.com +www.cc +www.cdnetworks.com +www.cg +www.com.my +www.dell-brand.com +www.dell.com +www.dji.com +www.djivideos.com +www.epsonconnect.com +www.ericsson.com +www.globalsign.com +www.gov.mo +www.gstatic.com +www.htc.com +www.htcsense.com +www.linkedin.com +www.microsoft.com +www.nike.com +www.pandora.net +www.redhat.com +www.samsung.com +www.st.com +www.sulwhasoo.com +www.thinkpad.com +www.tzoo-img.com +www.viveport.com +www.volvocars.com +www045789.com +www1.djicdn.com +www2.djicdn.com +www2011india.com +www3.djicdn.com +www37430.com +www4.djicdn.com +www48-365365.com +www5.djicdn.com +www78966.cc +www8.hp.com +www81854.com +wwwatch.in +wwwbuild.net +wwwer.net +wwwic.net +wwwimages.adobe.com +wwwimages2.adobe.com +wwwku.com +wwwwww.vip +wwwwwwwwww.com +wwxcl.com +wx-data.com +wx-youyan.net +wx.com +wx135.com +wx16999.com +wx42.com +wx6.org +wx8s.com +wx939.com +wxagame.com +wxang.com +wxaokai.com +wxapp-union.com +wxappclub.com +wxatech.com +wxavu.com +wxb.com +wxbjq.wang +wxblockchain.com +wxbm04.com +wxbrandway.com +wxbsgc.com +wxbxkx.com +wxc6115.com +wxcha.com +wxcsgd.com +wxdgjx.com +wxdspt.com +wxeditor.com +wxfenxiao.com +wxfls.net +wxfsgj.com +wxgamemini.com +wxgrcpa.com +wxguan.com +wxhand.com +wxhbts.com +wxhon.com +wxhouse.com +wxhu.net +wxhudong.com +wxiao.net +wxiat.com +wxjx123.com +wxkol.com +wxlagame.com +wxlongre.com +wxmama.com +wxmcgz.com +wxmetro.net +wxmolegames.com +wxmovie.com +wxnacy.com +wxngh.com +wxp114.com +wxphp.com +wxr999.com +wxrb.com +wxreallink.com +wxrrd.com +wxscreen.com +wxsell.com +wxshake.com +wxsky.net +wxsteed.com +wxsyedu.net +wxsywh.com +wxt2020.com +wxthe.com +wxtj10086.com +wxtpb.com +wxuse.com +wxw120.com +wxwzt.com +wxy1314.com +wxyxrc.com +wxzzz.com +wy000.com +wy100.com +wy119.com +wy182000.com +wy213.com +wy28.com +wy2sf.com +wyaoqing.com +wyaq.com +wyb168.com +wybbao.com +wybgs.com +wycanyin.com +wycntv.com +wydbw.com +wydljx.com +wydns.com +wyduihua.com +wyh138.com +wying360.com +wyins.net +wykefu.com +wykw.com +wykz.com +wylws.com +wymp4.net +wymp46.com +wyn88.com +wyptk.com +wypxj.com +wyq9.com +wyr.me +wys.net +wysaid.org +wysap.com +wysfgc.com +wysls.com +wysww.vip +wytfsp.com +wytx.net +wytype.com +wyuetec.com +wywy6.com +wywyx.com +wyx365.com +wyxbc.com +wyydsb.xin +wyzc.com +wyzdg.com +wyzhifu.com +wyzlvyou.com +wyzxsd.com +wyzxwk.com +wz01.com +wz120.cc +wz132.com +wz16.net +wz5.com +wzcheshi.com +wzciming.com +wzdai.com +wzdjy.com +wzdress.com +wzdsb.net +wzexe.com +wzfg.com +wzfou.com +wzfw.ltd +wzhealth.com +wzhekou.com +wzhouhui.com +wzhouhui.net +wzhust.com +wzhxlx.com +wzijia.com +wzime.com +wzits.com +wzj9.com +wzjmr.com +wzjxyq.com +wzkouqiang.cc +wzksw.com +wzktys.com +wzlscf.com +wzlt8.com +wzms.com +wzplc.com +wzpo.net +wzpod.com +wzright.com +wzsee.com +wzsky.net +wzstationery.com +wztf121.com +wzwmw.com +wzwqs.com +wzyestar.com +wzyun.net +wzz180809.net +wzz1809.com +wzzww.com +x-bows.com +x-cti.org +x-jishu.com +x-medex.com +x-mol.com +x-plans.com +x0750.com +x0769.com +x118.net +x12plus.com +x158.tv +x1997.net +x1n.xin +x23qb.com +x23us.cc +x23us.me +x23us.us +x23wxw.com +x3366.com +x3china.com +x3cn.com +x431.com +x5dj.com +x64pro.com +x6d.com +x6kj.com +x6x8.com +x72y.com +x7sy.com +x81zw.com +x821.com +x86android.com +xa-online.com +xa.com +xa189.net +xa30zx.com +xa9t.com +xaahjy.com +xabbp.com +xabbs.com +xabcdns.com +xabcloud.com +xacbank.com +xacbwl.com +xacnnic.com +xacyhj.com +xadamai.com +xadiannao.com +xaecong.com +xafc.com +xaffp.com +xafpz.com +xafzjy.com +xags8.com +xagxz.com +xahhp.com +xahkzc.com +xahrly.com +xahunter.com +xaidc.com +xaifin.com +xaigame.com +xainjo.com +xaixs.org +xajjk.com +xajjwy.com +xajob.com +xajr.com +xalanq.com +xalawyer.net +xalhar.net +xalhlf.com +xamama.net +xamjx.com +xampp.cc +xanahotelle.com +xanbhx.com +xanet110.com +xank120.com +xany6.com +xaoji.com +xaonline.com +xaoyao.com +xapcn.com +xaqdrs.com +xaqsl.com +xaredian.com +xargin.com +xarxrljt.com +xaseastar.com +xasff.com +xasgxy.com +xashangwang.com +xasimonds.com +xasixiongdi.com +xaskm.com +xasqw.com +xasrc.com +xaszjf.com +xatao029.com +xatielu.com +xatongsheng.net +xatvs.com +xatyaviation.com +xatyds.com +xatyyx.com +xatzj.com +xauat-hqc.com +xaudiopro.com +xavua.com +xawb.com +xawbb.com +xawdz.com +xawhz.com +xaxing05.com +xaxinghuo.com +xayestar.com +xazcit.com +xaztdz.com +xazzg.com +xazzp.com +xazzs.com +xb.dlservice.microsoft.com +xb100.net +xb2s.com +xb5.cc +xbaixing.com +xbaofun.com +xbaquge.com +xbase.cloud +xbatu.com +xbauto.com +xbbei.net +xbceo.com +xbdym.com +xbequge.com +xbeta.info +xbext.com +xbfnet.com +xbfqw.com +xbfzb.com +xbhb.net +xbhub.com +xbhy.com +xbhz.net +xbiao.com +xbidc.com +xbingoz.com +xbiquge.cc +xbiquge.com +xbiquge.la +xbiquge6.com +xbiqugew.com +xbirder.com +xbjianzhan.com +xblds.com +xblyw.com +xbmiaomu.com +xbniao.com +xbongbong.com +xbooklist.com +xbptc.com +xbpz9.com +xbriyu.com +xbrl-cn.org +xbrother.com +xbspace.com +xbwbh.com +xbwebyun.com +xbxgame.com +xbxwx.org +xbxxb.com +xbxxz.com +xbzlapp.com +xc123.net +xc829.com +xc940.com +xcabc.com +xcao.win +xcape.cc +xcar.com +xcarimg.com +xcb-family.com +xcbank.com +xcdesign.net +xcexe.com +xcfee.com +xcfunds.com +xcgjj.com +xcgogo.club +xcgogo.site +xcgp.com +xcgui.com +xchjw.org +xchlxx.com +xchmai.com +xchrc.com +xchuandai.com +xchuxing.com +xcj.com +xcj.pub +xcjd.net +xckszx.com +xclient.info +xcloudbase.com +xcmad.com +xcmg.com +xcmgmall.com +xcmh.cc +xcmh.com +xcn457.com +xcnchinese.com +xcnte.com +xcode.me +xcoder.in +xcodest.me +xcommon.com +xcoodir.com +xcos.cc +xcot.com +xcpapa.site +xcpapa.xyz +xcrxykl.com +xcshaifen.com +xcsinsignia.com +xcstuido.com +xcsyxx.net +xctmr.com +xctsw.com +xcvgame.cc +xcvmbyte.com +xcvxcv.space +xcx-x.com +xcxd-inc.com +xcxs222.com +xcxs520.com +xcxwo.com +xcxx28.com +xcxzl.com +xcy8.com +xcyg.net +xcyo.com +xczzs.com +xd-game.com +xd-tech.com +xd-world.com +xd.com +xd0.com +xd57.com +xdapp.com +xdbcb8.com +xdc.at +xdcdn.com +xdcdn.net +xddhy.com +xddpay.com +xddxs.cc +xddxx102.com +xde.com +xde6.net +xdfckjz.com +xdfkt.com +xdfpr.com +xdgalaxy.com +xdh0808.com +xdhbs.com +xdhcn.com +xdj-sz.com +xdja.com +xdjc.org +xdju.com +xdjy369.com +xdkb.net +xdkcw.com +xdkjchina.com +xdkjjy.com +xdkjpx.com +xdmnyy.com +xdmssp.com +xdnice.com +xdnote.com +xdnphb.com +xdocin.com +xdoor.cc +xdow.net +xdplt.com +xdpvp.com +xdressy.com +xdrig.com +xds04.com +xdsipo.com +xdtos.com +xduoo.com +xduph.com +xdusz.com +xdwan.com +xdwyx.com +xdxdsz.com +xdxmwang.com +xdyqw.com +xdzdzl.com +xedaojia.com +xedaojia.net +xeeee.net +xeenho.com +xeeok.com +xefan.com +xege.org +xehedu.com +xeknow.com +xeltek-cn.com +xelz.info +xemean.net +xen0n.name +xender.com +xenium.mobi +xenvpser.com +xerlang.com +xesapp.com +xescdn.com +xesdns.com +xesee.com +xesimg.com +xesv5.com +xetimes.com +xetsg.com +xevd.co +xeylon.com +xf-world.org +xf-yun.com +xf.com +xf0797.com +xf09.net +xf119.xin +xf120.com +xf1233.com +xf1433.com +xf24ms.com +xf3z.com +xf4hs.com +xf5z.com +xfabs.com +xfannix.com +xfb315.com +xfc888.com +xfcgs.com +xfconnect.com +xfdown.com +xfeng.me +xffcol.com +xfgjj.com +xfguo.org +xfhx.com +xfinfr.com +xfisher.com +xfisp.com +xfjw.net +xfkou.com +xfliusheng.com +xfnano.com +xfocus.net +xfocus.org +xforceplus.com +xfpass.com +xfplay.com +xfplay.tv +xfsb119.com +xfsd.com +xfsub.com +xft123.com +xftclub.com +xfun233.com +xfwi.com +xfxb.net +xfyousheng.com +xfyun.com +xfzhsf.com +xfztc.com +xfzyun.com +xgamevip.com +xgantt.net +xgcs618.com +xgcsczyc.com +xgcsyg.com +xgd666.com +xgdfz.com +xgdown.com +xgdq.com +xgfz.net +xggjj.com +xghylt.com +xgimi.com +xgj-info.com +xgjxjy.com +xgkwx.com +xglpa.com +xgmeidiya.com +xgo.cc +xgqq.com +xgres.com +xgsdk.com +xgslb.net +xgt2014.com +xgv5.com +xgwx.net +xgxedu.com +xgz.cc +xgzdhj.com +xgzx.org +xh456.com +xhay1122.com +xhbaihehang.com +xhbhr.com +xhblog.com +xhboke.com +xhby.net +xhbycm.net +xhcjtv.com +xhclub.net +xhcpas.com +xhd.org +xhdollar.com +xheditor.com +xhedu.net +xhengshui.com +xhg.com +xhgame.com +xhgm100.com +xhgongsi.com +xhhd6.com +xhhdd.cc +xhhfw.com +xhidc.com +xhj.com +xhjingling.com +xhkt.tv +xhlaowu.com +xhlgfsc.com +xhlyjlb.com +xhma.com +xhmzgbj.com +xhn888.com +xhnews.net +xhostserver.com +xhpfw.com +xhpiano.com +xhqqt.com +xhscdn.com +xhsd.com +xhsfw.com +xhslink.com +xhspx.com +xhswglobal.com +xhsyww.com +xht.com.hk +xhtd291.com +xhuojia.com +xhup.club +xhwhouse.com +xhxa9.com +xhxsw.com +xhxswz.com +xhxw.com +xhy.com +xhy998.com +xhyd.com +xhytd.com +xhzmjs.com +xi-soft.com +xi1361.com +xi5jie.com +xi9p.com +xia.me +xia1ge.com +xiaa.net +xiabb.club +xiabingbao.com +xiabor.com +xiabu.com +xiacai.com +xiacaipiao.com +xiachufang.com +xiada.net +xiadele.com +xiadts.com +xiadu.com +xiagaoqing.com +xiagepian.com +xiakeol.com +xialaile.com +xiald.com +xialingying.cc +xialv.com +xiamag.com +xiamai.net +xiamenair.com +xiamentianqi114.com +xiami.com +xiami.net +xiami77.com +xiamiaopai.com +xiamoyun.com +xiamp4.com +xian-tourism.com +xianba.net +xianbai.me +xianbao.net +xianbdj.com +xianbense.com +xianbey.com +xianchihuo.net +xiancn.com +xiandaiyuwen.com +xiandanjia.com +xiandaohu.net +xianfae.com +xianfeng.net +xianfengex.com +xianfengsg.com +xiang-le.com +xiang5.com +xiang578.com +xiangaiwang.com +xiangange.com +xianganquan.com +xianganyu.com +xiangbala.net +xiangbinjun.com +xiangbinmeigui.com +xiangbojiubo.com +xiangcaozhaopin.com +xiangcunxiaoshuo.com +xiangdang.net +xiangfan.org +xiangguo.com +xiangguohe.com +xiangha.com +xianghui8.com +xianghunet.com +xianghus.com +xiangkanzs.com +xiangkesi.com +xiangley.com +xianglute.com +xiangmaita.com +xiangmaojx.com +xiangmu.com +xiangni.com +xiangpeach.com +xiangpi.com +xiangqianpos.com +xiangqin7.com +xiangqinplus.com +xiangqiushi.com +xiangqu.com +xiangrikui.co +xiangrikui.com +xiangshang360.com +xiangshangban.com +xiangshanpark.com +xiangshe.com +xiangshengbao.com +xiangshi.cc +xiangshi123.com +xiangshu.net +xiangshuiping.com +xiangsidi.com +xiangsw.com +xiangtaole.com +xiangtatech.com +xiangtuan.xyz +xianguo.com +xianguomall.com +xiangw.com +xiangwangdesh.com +xiangwushuo.com +xiangyang.net +xiangyiai.com +xiangyujiankang.com +xiangyukj.com +xiangyun.so +xiangyunseo.com +xiangzhan.com +xiangzhiren.com +xiangzhuyuan.com +xianjian10.com +xianjiaosuo.com +xianjichina.com +xianjj.com +xiankan.com +xiankankan.com +xianlaigame.com +xianlaihy.com +xianlife.com +xianlu0605.com +xianmin.org +xianms.com +xiannanyou.com +xiannvtu.com +xianpp.com +xianqiao.wang +xianruan.com +xianshiqiba.com +xianshu.com +xianshua.net +xianshuabao.com +xianshufang.com +xiantao.com +xianwangs.cc +xianxiadao.com +xianxiadao.net +xianyang888.com +xianyin.net +xianyuange.com +xianyugame.com +xianyugouwu.com +xianyuso.com +xianyuwang.com +xianyuyouxi.com +xianzhaiwang.com +xianzhanget.com +xianzhi.net +xianzhongwang.com +xiao-an.com +xiao-bo.com +xiao-new.com +xiao-sports.com +xiao.lu +xiao6.tv +xiao84.com +xiao89.com +xiaoa.name +xiaobai.com +xiaobaibk.com +xiaobaipan.com +xiaobaishiji.com +xiaobaishixi.com +xiaobaiss.com +xiaobaiupin.com +xiaobaivr.com +xiaobaixitong.com +xiaobangbaoxian.com +xiaobao360.com +xiaobao8.com +xiaobaodt.com +xiaobaoonline.com +xiaobaostudio.com +xiaobd.net +xiaobenzi.com +xiaobingxitong.com +xiaobu121.com +xiaocaoo.com +xiaocaoyun.com +xiaocen.com +xiaoche001.com +xiaochengxucms.com +xiaochiwang.org +xiaochuan010.com +xiaocifang.com +xiaocms.com +xiaocong.tv +xiaodaka.net +xiaodanyang.com +xiaodao.la +xiaodao360.com +xiaodaotv.com +xiaodaozhi.com +xiaodengta.com +xiaodengvip.com +xiaodian.com +xiaodian.in +xiaodian.so +xiaodianpu.com +xiaodianweb.com +xiaodigu.com +xiaodigufz.com +xiaodoubi.com +xiaodoushebao.com +xiaodouzhuan.net +xiaoduoai.com +xiaoduseo.com +xiaodutv.com +xiaody.com +xiaoe-tech.com +xiaoe-tools.com +xiaoeknow.com +xiaoenai.com +xiaoeryi.com +xiaofangdeng.com +xiaofantian.com +xiaofany.com +xiaofeng.org +xiaogan.com +xiaogj.com +xiaogouh5.com +xiaogr.com +xiaoguikuaipao.com +xiaoguosq.com +xiaoguowenhua.com +xiaogushi.com +xiaoh.me +xiaohansong.com +xiaohb.com +xiaohe-jiankang.com +xiaohe666.com +xiaohei.com +xiaoheima.com +xiaohongchun.com +xiaohongdian.wang +xiaohongshu.com +xiaohongshulvyou.com +xiaohuabaichu.com +xiaohuabuluo.com +xiaohuai.com +xiaohuangji.com +xiaohulu.com +xiaohuochai.cc +xiaohuochai.site +xiaohuwl.com +xiaoj.com +xiaoji.com +xiaoji001.com +xiaojian.site +xiaojianjian.net +xiaojiaoyar.com +xiaojiding.com +xiaojing360.com +xiaojiuwang.com +xiaojl.com +xiaojuchefu.com +xiaojudeng.com +xiaojukeji.com +xiaojun.org +xiaoka.tv +xiaokanba.com +xiaokanglongjiang.com +xiaokao.com +xiaokaxiu.com +xiaokcdn.com +xiaokcehui.com +xiaokeai.com +xiaokeduo.com +xiaokesoso.com +xiaokuihua.net +xiaokusha.com +xiaolai.net +xiaolajiao.com +xiaolanben.com +xiaolantiao.com +xiaolee.net +xiaoliangkou.com +xiaoliebian.com +xiaoliketang.com +xiaolin.in +xiaolinsi.com +xiaolinwl.com +xiaolinyuan.com +xiaolist.com +xiaolixiaoxue.com +xiaolizhuli.com +xiaolu123.com +xiaoluboke.com +xiaoluhaohuo.com +xiaoluyouxuan.com +xiaoma-school.com +xiaoma.com +xiaoma.net +xiaoma.wang +xiaomachuxing.com +xiaomagaojian.com +xiaomai5.com +xiaomaigongkao.com +xiaomaiketang.com +xiaomantu.com +xiaomaomv.com +xiaomaowan.com +xiaomape.com +xiaomashijia.com +xiaomastack.com +xiaomav.com +xiaomaxitong.com +xiaomayi.co +xiaomayi88.com +xiaomei.cc +xiaomeiti.com +xiaomeme.com +xiaomeng1235.com +xiaomi.com +xiaomi.hk +xiaomi.net +xiaomi.tw +xiaomiaozai.com +xiaomicp.com +xiaominet.com +xiaominfo.com +xiaoming.me +xiaomingming.org +xiaomiqiu.com +xiaomiquan.com +xiaomishu.com +xiaomiwujiecao.com +xiaomiyoupin.com +xiaomlove.com +xiaomor.com +xiaomoyao.com +xiaomuji.info +xiaomy.net +xiaomyc.com +xiaonaodai.com +xiaonei.com +xiaoniba.com +xiaoniu66.com +xiaoniu88.com +xiaoniuapp.com +xiaoniuben.com +xiaoniudunkj.com +xiaononfu.com +xiaopan.cc +xiaopangyu.com +xiaopena.com +xiaopeng.com +xiaophy.com +xiaopi.com +xiaopinw.com +xiaopiu.com +xiaoqiandao.com +xiaoqiangge.com +xiaoqiaomm.com +xiaoqijj.com +xiaoqingtou.com +xiaoqinre.com +xiaoqiqiao.com +xiaoqugang.com +xiaoqukuaishou.com +xiaoquyijia.com +xiaorizi.me +xiaorui.cc +xiaoruibao.com +xiaoshe.tk +xiaoshengqi8.com +xiaoshengyiwang.com +xiaoshentui.com +xiaoshijie.com +xiaoshitou123.com +xiaoshituina.vip +xiaoshoubang.org +xiaoshouhudong.com +xiaoshoukuaifa.com +xiaoshouyi.com +xiaoshu168.com +xiaoshujiang.com +xiaoshukaihua.com +xiaoshuo.com +xiaoshuo1-sm.com +xiaoshuo2016.com +xiaoshuo520.com +xiaoshuo530.com +xiaoshuo570.com +xiaoshuoba.com +xiaoshuobi.cc +xiaoshuochen.com +xiaoshuodaquan.com +xiaoshuoli.com +xiaoshuoshu.org +xiaoshuotxt.com +xiaoshuoyd.com +xiaoshuozu.com +xiaoshuwu.vip +xiaoshuxiong.com +xiaositv.com +xiaoso.net +xiaoss.net +xiaot.com +xiaota.com +xiaotee.com +xiaoten.com +xiaotengyouxi.com +xiaotut.com +xiaotuzhan.com +xiaou2014.com +xiaouguanjia.com +xiaouqyfw.com +xiaoushuo.com +xiaowang.net +xiaowangshen.com +xiaowangyun.com +xiaowanzhou.net +xiaowazi.com +xiaoweigod.com +xiaoweirobot.com +xiaowiba.com +xiaowm.com +xiaoxiaapi.com +xiaoxiangbz.com +xiaoxiangxueyuan.com +xiaoxiangyoupin.com +xiaoxiansheng.com +xiaoxiao.com +xiaoxiaofang.club +xiaoxiaoketang.com +xiaoxiaomo.com +xiaoxiaotong.org +xiaoxiaozi.com +xiaoxichangliu.com +xiaoxicloud.com +xiaoxineye.com +xiaoxinrili.com +xiaoxintoutiao.com +xiaoxintuku.com +xiaoxiongmeishu.com +xiaoxiongyouhao.com +xiaoxue123.com +xiaoxuehelp.com +xiaoyantong.com +xiaoyaobi.com +xiaoyaoyou.com +xiaoyaoyou365.com +xiaoyatong.com +xiaoyayun.com +xiaoyeren.com +xiaoyewuliu.com +xiaoyezi.com +xiaoyi.com +xiaoyida.com +xiaoyida.net +xiaoying.co +xiaoying.com +xiaoying.tv +xiaoyiwo.net +xiaoyouxi100.com +xiaoyouxiqun.com +xiaoyouzb.net +xiaoyu.com +xiaoyuanjiu.com +xiaoyuanzhao.com +xiaoyuanzhaopin.net +xiaoyuer.com +xiaoyulog.com +xiaoyun.com +xiaoyunquegroup.com +xiaoyusan.com +xiaoyusanchou.com +xiaoyuxitong.com +xiaoyuzhoufm.com +xiaoz.me +xiaoz123.com +xiaozaixiao.com +xiaozehuashi.com +xiaozhan.cc +xiaozhang365.com +xiaozhaolaila.com +xiaozhewz.com +xiaozhibaoxian.com +xiaozhibo.com +xiaozhishi.net +xiaozhiyun.com +xiaozhu.com +xiaozhu2.com +xiaozhua.com +xiaozhuanlan.com +xiaozhuseo.com +xiaozhustatic1.com +xiaozhustatic2.com +xiaozhustatic3.com +xiaozhuvideo.com +xiaozuan8.com +xiaozujian.com +xiaozuowen.net +xiappt.com +xiaqunfeng.cc +xiarikui.com +xiarj.com +xiashu.app +xiataoseo.com +xiatou.com +xiawan8.com +xiawu.com +xiaxiab8.com +xiayige.org +xiayiqu.com +xiayx.com +xiazai.com +xiazai163.com +xiazaiba.com +xiazaibao2.com +xiazaicc.com +xiazaidb.com +xiazaidc.com +xiazaidown.com +xiazaiduo.com +xiazaijidi.com +xiazaima.com +xiazaisoft.com +xiazaiwx.com +xiazaiziti.com +xibaiwang.com +xibao100.com +xibeicanyin.com +xibeidev.com +xibojiaoyu.com +xibsteel.com +xibu168.com +xibulaobohui.com +xibutiyu.com +xicaijing.com +xicaishe.com +xice.wang +xichu.net +xichuangzhu.com +xici.com +xici.net +xicp.net +xidea-inc.com +xidesheng.com +xidian.cc +xidibuy.com +xidie.com +xidong.net +xidongv.com +xiduobaby.com +xiduoil.com +xie-jue-tui-xiao.com +xieat.com +xiebao18.com +xieboke.net +xiechao.org +xieche.net +xiecheng.com +xiechuangw.com +xiecuo.com +xiedaimala.com +xiefenxiang.com +xieheedu.com +xiehejx.com +xiehekjkf.com +xiejiahe.com +xiejianji.com +xiejiaxin.com +xieliqun.com +xier.tech +xiesk.com +xieso.net +xietongbw.com +xietui.com +xiexiaoyuan.com +xiexiebang.com +xiexingcun.com +xiexingme.com +xieyangzhe.com +xieyinwang.com +xiezefan.me +xiezewen.com +xiezhenxian.net +xiezhicehua.com +xieziqiu.net +xiezixiansheng.com +xiezuo100.com +xiezuocat.com +xifan.org +xifangw.com +xifenfei.com +xifenggroup.com +xifengjiuzhaoshang.com +xifengwangzhan.com +xifuquan.com +xifuwa.com +xigeweb.com +xigo.tv +xigua110.com +xigua66.com +xiguabook.com +xiguaimg.com +xiguaji.com +xiguaplayer.com +xiguavideo.net +xigushan.com +xigushan.net +xihachina.com +xihaiannews.com +xihawan8.com +xihuan.me +xihuanfang.com +xihuojie.com +xihusgh.com +xihustateguesthangzhou.com +xiimoon.com +xiji.com +xijiangtv.com +xijing01.com +xijucn.com +xikan.tv +xikii.com +xiladaili.com +xilaiping.com +xilexuan.com +xileyougame.com +xilidou.com +xilinjie.com +xilinsi.org +xilish.com +xilu.com +xilvlaw.com +xima.org +xima.tv +ximalaya.com +ximalayaos.com +ximeiapp.com +ximgs.net +ximiplay.com +ximiyouxi.com +ximizi.com +ximopanda.com +ximuw.com +xin.com +xin.xin +xin1234.com +xin3721.com +xinaigame.com +xinaitu.com +xinanidc.com +xinaoyun.com +xinbaby.com +xinbaicai.com +xinbalive.com +xinbaopos.com +xinbear.com +xinbqg.com +xinbxwx.com +xincache.com +xincai.com +xincaiguan.com +xincailiao.com +xincainet.com +xincaitong.net +xincanshu.com +xinceyq.com +xincg.com +xincha.com +xinchacha.com +xinchangol.com +xinchao.com +xinchaoss.com +xinchaoyue.com +xinchego.com +xincheng.com +xinchengzhongbang.com +xincheping.com +xinchukj.com +xincmm.com +xindaifu.com +xindemarinenews.com +xindexuexi.com +xindi02.site +xindie.net +xindingwealth.com +xindns.com +xindns.mobi +xindon.com +xindong.com +xinduihuan.com +xinduo.com +xinduoad.com +xinerdact.com +xineurope.com +xinfangsheng.com +xinfee.com +xinfei.com +xinfeijituan.com +xinfengxitong.net +xinfenlei.com +xinfu888.com +xinfushe.com +xing73.com +xingaiming.com +xingames.com +xingbangip.com +xingbo.tv +xingchen.com +xingchenjia.com +xingcheshixian.com +xingdaoo.com +xingdatrip.com +xingdi.me +xingdong.co +xingdongliu.com +xinge.com +xingfagroup.com +xingfudu.com +xingfufangdai.com +xingfulizhaofang.com +xingfunancun.com +xingfuu.com +xinggan.com +xinggan.net +xinghao8.xyz +xinghengedu.com +xinghuankj.com +xinghuiyl.com +xinghuo100.com +xinghuo365.com +xinghuogroup.com +xinghuoxiaoshuo.com +xingjuhe.com +xingkeduo.com +xingkong.com +xingkongmt.com +xingkoo.com +xingkuad.com +xinglai.com +xinglinpukang.com +xingmai58.com +xingmao.cc +xingmeihui.com +xingmima.com +xingming.com +xingming.net +xingpan.com +xingpin.com +xingqiu.tv +xingqu11.com +xingren.com +xingrongn.com +xingse.net +xingseapp.com +xingshangnet.com +xingshulin.com +xingshuo.net +xingtac.com +xingtai123.com +xingtan001.com +xingtangzp.com +xingtouzi.com +xingtu.com +xinguad.com +xingumin.net +xingxing.com +xingxingmeiyu.com +xingyi.com +xingyigz.com +xingyongli.com +xingyoucai.com +xingyuanhuzhu.com +xingyuehuyu.com +xingyuhuwai.com +xingyunba.com +xingyunxc.com +xingyunxingqiu.wang +xingyusoft.net +xingyuyouxi.com +xingzhang.com +xingzhiedu.net +xingzhilian.net +xingzhiyue.com +xingzuo.com +xingzuo123.com +xingzuo8.com +xingzuo8090.com +xingzuoshu.com +xingzuowu.com +xinhanhd.com +xinhanyx.com +xinhaolian.com +xinhaoqi.net +xinhay.com +xinhexinli.com +xinhongru.com +xinhtz.com +xinhua-news.com +xinhua.org +xinhua08.com +xinhuaapp.com +xinhuacu.com +xinhuamm.net +xinhuanet.com +xinhuanet.ltd +xinhuaphoto.org +xinhuapo.com +xinhuaprs.com +xinhuapub.com +xinhuashe.org +xinhuasuye.com +xinhuatoupiao.com +xinhuawang.com +xinhuaxmt.com +xinhuayimin.com +xinhuazhiyun.com +xinhuipihua.com +xinhuoshuguan.com +xinhushang.org +xiniu.com +xiniu1688.com +xiniu3d.com +xiniugushi.com +xiniuyun.com +xiniuz.com +xinjiadiy.com +xinjiance.com +xinjianggou.com +xinjimo.com +xinjingks.com +xinjisuan.net +xinjizhou.com +xinjunshi.net +xinjunshicn.net +xinkamai.com +xinkb.org +xinkuai.com +xinle366.com +xinli001.cc +xinli001.com +xinli001wx.com +xinliangxiang.com +xinliceping.com +xinlifudao.com +xinlimaoyi.com +xinlinghuayuan.com +xinlingletu.com +xinliwanju.com +xinlixue525.com +xinluex.com +xinluobo.com +xinlvtu.com +xinm123.com +xinmanduo.com +xinmanyuan.com +xinmaopimao.com +xinmei6.com +xinmeihu.com +xinmima.com +xinmuedu.com +xinnet.com +xinniangjie.com +xinnianhua.com +xinnong.com +xinnuoqian.com +xinorngyk.com +xinouhk.com +xinpianchang.com +xinpianyugao.com +xinpinget.com +xinpujie.com +xinpure.com +xinqiannv.com +xinqigu.com +xinqing.com +xinqingdou.cc +xinqingdou.com +xinqiyejia.com +xinqiys.com +xinqtech.com +xinquanedu.com +xinquji.com +xinran1016.com +xinranliu.me +xinray.net +xinrenxinshi.com +xinrong.com +xinrong88.com +xinrui-games.com +xinrui.biz +xinrz.com +xinsanbanbao.com +xinsdn.com +xinshangmeng.com +xinshangshangxin.com +xinshiba.com +xinshijuewp.com +xinshipu.com +xinshishen.com +xinshoucun.com +xinshouzhanzhang.com +xinshula.com +xinshulaile.com +xinshuru.com +xinsilu.com +xinstall.com +xinstatic.com +xinsui.net +xintaileju.com +xintaizhou.com +xintheme.com +xintian.org +xintiao100.com +xintiao80.com +xintiaoyouxi.com +xintongconference.com +xintuiwang.com +xintuofalv.com +xinwangcj.com +xinweiyun.com +xinwen365.com +xinwen520.net +xinwengao.net +xinwenlianbo.cc +xinwenlianbo.tv +xinwenlianbovip.com +xinwentoutiao.net +xinwo.com +xinxianghui.com +xinxianshilb.com +xinxiansk.com +xinxiaochina.com +xinxiaodian.com +xinxiaoqi.com +xinxifabu.net +xinxinapp.net +xinxindai.com +xinxing.org +xinxing100.com +xinxingdaoju.com +xinxingjiaocheng.com +xinxingly.com +xinxinhot.net +xinxinjoy.com +xinxinkeji168.com +xinxinshukong.com +xinxisea.com +xinxuezl.com +xinxunwang.com +xinyali.net +xinyan.com +xinyaoyao.com +xinyayk.com +xinyegang.com +xinyicms.com +xinyifu.net +xinyisemi.com +xinyitt.com +xinyo100.com +xinyongbuy.com +xinyongqingdao.com +xinyou.com +xinyour.com +xinyouw.org +xinyu19.com +xinyuefei.com +xinyueseo.com +xinyukj99.com +xinyunfuwu.com +xinyunji.com +xinyuwanju.com +xinyuwen.com +xinzaoxing.com +xinzengwj.net +xinzheng.cc +xinzhenkj.com +xinzhi.space +xionganzhuce.com +xiongdayq.com +xiongdong.com +xiongmao666.com +xiongmaojinku.com +xiongyin.com +xiongying.com +xiongzhangad.com +xipushuju.net +xipuu.com +xiqb.com +xiqihe.com +xiqingji.com +xiqinrc.com +xiqqq.com +xirang.com +xirenxuan.com +xishanju.com +xishaoye.com +xishiqu.com +xishiwang.com +xishuai.com +xishuai.net +xisj.com +xisslvyou.com +xitao88.com +xitaoinfo.com +xitek.com +xitek.net +xitie.com +xitieba.com +xitmi.com +xitong-tech.com +xitong110.com +xitong520.com +xitong8.com +xitongbuluo.com +xitongcheng.cc +xitongcheng.com +xitongdaquan.net +xitonggho.com +xitonghe.com +xitonghuayuan.net +xitongjiaocheng.com +xitongku.cc +xitongle.com +xitongmen.com +xitongpe.com +xitongqingli.com +xitongtiandi.net +xitongtiankong.com +xitongtu.net +xitongwanjia.com +xitongxz.net +xitongzhijia.net +xitouwang.com +xitu.io +xituan.com +xituju.com +xiu.com +xiu8.com +xiuai.com +xiucai.com +xiuchuang.com +xiudodo.com +xiufaxing.com +xiugei.com +xiugu.com +xiuhome.com +xiuimg.com +xiujiadian.com +xiujukoo.com +xiulian.com +xiuluowang.com +xiulv.com +xiumb.com +xiumi.com +xiumi.us +xiumius.com +xiumucn.com +xiuna.com +xiunian.wang +xiuno.com +xiupin.com +xiushao.com +xiusheji.com +xiusheji.net +xiushuang.com +xiustatic.com +xiutuan.com +xiutv.com +xiuxiandou.com +xiuxiu.com +xiuxiustatic.com +xiuzhan365.com +xiuzhanwang.com +xivcdn.com +xiwang56.com +xiwangchina.com +xiwangd.com +xiwanglife.com +xiwenquan.com +xiwnn.com +xiwuji.com +xixi520.com +xixiaoyou.com +xixiarc.com +xixibobo.com +xixiclothing.com +xixijiji.com +xixik.com +xixik.net +xixin123.com +xixipan.com +xixiqiu.com +xixisys.com +xixiwg.com +xiyacs.com +xiyang1.icu +xiyijiang.com +xiyin.life +xiyiqq.com +xiyogo.com +xiyoo.com +xiyou-g.com +xiyou360.net +xiyoucdn.com +xiyouchat.com +xiyouence.com +xiyouji.com +xiyouquan.com +xiyousdk.com +xiyouwebgame.com +xiyow.com +xiyuan.tv +xiyuege.com +xiyun.net +xiyurumen.com +xizanggl.com +xizangguolv.net +xizangqinglv.com +xizangzl.com +xizhang.com +xizhezhe.com +xizhi.com +xizhibei.me +xizi.com +xiziquan.com +xiziwang.net +xj-gr.com +xj-hao.com +xj-zp.com +xj120.com +xj123.info +xj169.com +xj7road.com +xj96596.com +xjabc.net +xjbdf.net +xjbhyx.com +xjbmaker.com +xjbuluo.com +xjc18.com +xjcbt.com +xjcc.net +xjche365.com +xjcmtj.com +xjctc.net +xjdaily.com +xjdkctz.com +xjdpx.com +xjdsb.com +xjdwx.com +xjent.com +xjfda.com +xjfilm.net +xjfine.com +xjflcp.com +xjfzb.com +xjggjy.com +xjgj.com +xjgqt.org +xjgsdm.com +xjgwy.org +xjh.me +xjhgame.net +xjhjsd.com +xjhr.com +xjietiao.com +xjishu.com +xjisme.com +xjiuai.com +xjiyou.com +xjjnjp.org +xjjxc.com +xjltp.com +xjlxw.com +xjlz365.com +xjmglr.com +xjmty.com +xjmw.net +xjorsa.net +xjpdf.com +xjphsd.com +xjrb.net +xjrmyy.com +xjshift.com +xjstnyly.com +xjtour.com +xjtsnews.com +xjtuccjsj.com +xjtucompressor.com +xjtudlc.com +xjwljb.com +xjwork.com +xjwyglw.com +xjxbx.com +xjxy.com +xjyaxin.com +xjyou88.com +xjyqly.com +xjytjt.com +xjzdjx.com +xjzkzx.com +xjzlyy.com +xjzsks.com +xk8090.com +xk89.com +xk9l.com +xkb1.com +xkbsw.com +xkcd.in +xkcun.com +xkdmp.com +xker.com +xkhouse.com +xknote.com +xkpx.com +xkqyfw.com +xksafe.com +xkw.com +xkwe.com +xkyn.com +xkyn.net +xkzww.net +xkzzz.com +xl-ai.com +xl-soft.com +xl13.com +xl526.com +xl5bb.com +xl5dd.com +xl5du.com +xl5dw.com +xl699.com +xlb588.com +xlcidc.com +xlctyd.com +xlcz.com +xlfans.com +xlgao.com +xlgxapp.com +xlhb.com +xlhtcucc.com +xlimg.net +xlinclass.com +xlisp.net +xljnjy.com +xlkorganic.com +xlkty.com +xllxdg.com +xlm33.com +xlobo.com +xlpan.com +xlrocket.com +xlsemi.com +xlshou.com +xltrip.com +xltzgy.com +xluos.com +xlwxsw.com +xlxzikao.com +xlylf.com +xlyouxi.com +xlys1904.com +xlysauc.com +xlysoft.net +xlzhao.com +xlzx.com +xlzx123.com +xlzxdc.com +xlzyyw.com +xm-ad.com +xm-ais.net +xm-chuang.com +xm-olympic-museum.org +xm0760.wang +xm680.com +xm909.com +xm9m.com +xmadx.net +xmall1.com +xmamiga.com +xmanblog.net +xmantou.com +xmbankonline.com +xmbhw.com +xmbike.com +xmccb.com +xmcdn.com +xmchong.com +xmcimg.com +xmcp.ltd +xmcwh.com +xmcx.net +xmcymg.com +xmd5.com +xmeasygo.com +xmecard.com +xmedchain.com +xmf.com +xmfc.com +xmferry.com +xmfish.com +xmfunny.com +xmgc360.com +xmgps.com +xmgsd.com +xmheitu.com +xmhitek.com +xmhouse.com +xmigc.com +xmindchina.net +xminfoport.com +xmisp.com +xmitic.com +xmj.app +xmjgjy.com +xmjhome.com +xmjiaruan.com +xmjim.com +xmjslh.com +xmjyw.com +xmkanshu.com +xml-data.org +xmlhifi.com +xmlure.com +xmlvbarcode.com +xmmade.com +xmmama.com +xmmodo.com +xmmtoys.com +xmnjdwx.com +xmnovel.com +xmodelmall.com +xmonecode.com +xmos.tv +xmpcba.com +xmrbi.com +xmsec.cc +xmshqh.com +xmsixian.com +xmsme.com +xmsmjk.com +xmsoft.com +xmsoushu.com +xmspace.net +xmtbang.com +xmtekic.com +xmttz02.pw +xmtyy02.pw +xmtyy04.pw +xmuchong.com +xmuli.tech +xmwan.com +xmwsrc.com +xmxdev.com +xmxgame.com +xmxwl.net +xmxwz.com +xmyeditor.com +xmyijing.com +xmyipin.com +xmylhy.com +xmysgame.com +xmysinter.com +xmzdls.com +xmzsyg.com +xmzylh.com +xn--2krw29cdqai43k.com +xn--6rt008ee0k3ua.com +xn--6rt008ee0k3ua.net +xn--7hv285el2dtof.com +xn--dkr447bejn.com +xn--dkr447bejn.net +xn--e9qp53aepg.xn--ses554g +xn--ebr05n.com +xn--eqrt2g.xn--vuq861b +xn--fiq8ituh5mn9d1qbc28lu5dusc.xn--vuq861b +xn--fiqz7g67bsydx1ed00d.com +xn--glr604k.com +xn--it-1r3f.com +xn--ntsp37j.net +xn--nyqx2gbsm8u0b.com +xn--nyw032beqlm2f.com +xn--nyw032beqlm2f.net +xn--q20av2y36ac54a.com +xn--rss99n.com +xn--s4t325g.com +xn--w9qy23cc6adz7d.net +xn--wlqw5ebvdhpi5hepihs3c.com +xn--ygtp21bwyedsq.com +xn-ck.com +xn121.com +xn2017.com +xnaidog.com +xnara.org +xnb.me +xncoding.com +xncoo.com +xncredit.com +xndm.tech +xnguke.com +xnh123.com +xnhdgame.com +xninja.org +xnipapp.com +xnjcw.com +xnjjob.com +xnjz.net +xnlkj.com +xnnpc.com +xnongren.com +xnpic.com +xns315.com +xnsla.com +xntt.com +xntv.tv +xnw.com +xnwan.com +xnwx2014.net +xny365.com +xnyauto.com +xnye.net +xnzjxx.com +xoao.com +xocoder.com +xoliao.com +xooooa.com +xorpay.com +xoveskincare.com +xoxknct.com +xoxv.net +xoyo.com +xoyobox.com +xoyocdn.com +xoyq.net +xp002.com +xp5.com +xp6000.com +xp666.com +xp74.com +xp85.com +xp868.com +xp933.com +xp9365.com +xpagn.com +xpaper.com +xpaper.net +xpaper.vip +xpath.org +xpc420.com +xpccdn.com +xpcha.com +xpdf.net +xpjedu.com +xpjj.net +xpjm.net +xplian.net +xpsheying.com +xpsy.net +xptt.com +xpu93.com +xpw888.com +xpxt.net +xpykjsws.com +xpyx.net +xq0356.com +xq5.com +xqb24.com +xqblog.com +xqbxz.com +xqchuxing.com +xqckg.com +xqfunds.com +xqggz.com +xqipu.com +xqishu.com +xqiushu.com +xqjmzc.com +xqjs.net +xqkqk.com +xqnmz.com +xqs360.com +xqsbw.com +xqship.com +xqspx.com +xqtesting.com +xqwww.com +xqyz.net +xrcch.com +xrccp.com +xreacloud.com +xredu.com +xrender.com +xrichengapp.com +xrkapp.com +xrkcdn.com +xrkmonitor.com +xrso.com +xrunda.com +xrwcn.com +xs-servers.com +xs.la +xs1h.com +xs222.tw +xs2500.com +xs321.com +xs386.com +xs3cnc.com +xs52.com +xs7.cc +xs7.la +xs74.com +xs880.com +xs91.net +xs963.com +xsb.tw +xsb120.com +xsbiquge.com +xsbnggzyjyxx.com +xscbs.com +xschu.com +xsdwk.com +xsee.cc +xsery.net +xsesc.com +xsfaya.com +xsfc.com +xshb.net +xshell.net +xshellcn.com +xshengyan.com +xshenshu.com +xshkvip.com +xshrcw.com +xshulin.com +xshuma.com +xshuoba.com +xshuotxt.com +xshwp.com +xsina.net +xsj2021888.com +xsjedu.org +xsjsource.com +xsjtxt.com +xsjwyx.com +xskhome.com +xskyx.net +xslb.me +xsldh.net +xslou.com +xsmaofa.com +xsmnews.com +xsmore.com +xsnsyh.com +xsool.com +xsp0311.com +xspcf.com +xspic.com +xspliter.com +xsrjt.com +xsrtvu.com +xsshuku.com +xssk.net +xsslyjt.com +xsstomy.com +xssz.net +xsteach.com +xsti.net +xstqj.com +xstt5.com +xstx.info +xstxt.com +xsu.cc +xsvps.com +xswdcasting.com +xsxkzz.com +xsycps.com +xsyk021.com +xsyqmztg.com +xsyushan.com +xsyxsc.com +xszp.cc +xszrcw.com +xszww.com +xszysc.com +xt-kp.com +xt-tattoo.com +xt12333.com +xt70.com +xt918.com +xtao.me +xtbank.com +xtc-edu.com +xtcaq.com +xtcrm.com +xtdpye.com +xtea.org +xtedu.com +xthc999.com +xthinking.net +xtibet.com +xtjc.com +xtjky.com +xtjxsb.com +xtlkgc.com +xtlog.com +xtmtrj.com +xtongs.com +xtrc.net +xtt95511.bz +xttblog.com +xttongcai.com +xttongji.com +xttz.com +xtu2.com +xtuan.com +xtuo.net +xtutoring.com +xtyxdq.com +xu1s.com +xu7b.com +xuanad.com +xuanba.com +xuanbiaoqing.com +xuancaizi.com +xuanceo.com +xuancheng.org +xuandan.com +xuande99.com +xuandui.me +xuanfengge.com +xuanfengkeji.com +xuanfuwang.com +xuanhuafb.com +xuanhuange.com +xuanhuange.net +xuanjutong.com +xuanke.com +xuanlishi.com +xuanliwang.com +xuannaer.com +xuanquge.com +xuanqun.com +xuanruanjian.com +xuanshu.com +xuantaikeji.com +xuanwonainiu.com +xuanwu88.com +xuanwumobile.com +xuanwww.com +xuanxiu.cc +xuanxuan.com +xuanxuangame.com +xuanxuantemai.com +xuanxue.com +xuanxueyuan.com +xuanyangxl.com +xuanyouwang.com +xuanyusong.com +xuanzhoubian.com +xubei.com +xuchuang.com +xudan123.com +xudankeji.com +xudongfood.com +xudoodoo.com +xuduan.vip +xue163.net +xue3dmax.com +xue51.com +xue63.com +xueanquan.com +xueba100.com +xuebalib.com +xuebingsi.com +xuebuyuan.com +xuecaijie.com +xuecan.net +xuechebu.com +xuechela.com +xueda.com +xuedi.com +xuedong97.com +xueepay.com +xueersen.com +xueersi.com +xueerxing.com +xuefenxi.com +xuefo.net +xuegaogame.com +xuegeshui.com +xuegongkong.com +xueguoedu.net +xuehai.net +xuehaibjb.com +xuehaoba.com +xuehuacdn.com +xuehuahua.cc +xuehuahua.net +xuehui.com +xuehuile.com +xuehuiwang.com +xueit.com +xuejiehome.com +xuejiqiao.com +xuekeedu.com +xuekuaiji.com +xuekubao.com +xuekuibang.shop +xuelecn.com +xueleku.com +xuelema.com +xueleyun.com +xueli9.com +xuelu.org +xueming.li +xuenb.com +xuepaijie.com +xuepojie.com +xueqiu.com +xueqiu360.com +xuerentang.net +xuesax.com +xueseo.com +xueshandai.com +xueshanlinghu.com +xueshen.net +xueshiboke.com +xueshiyun.com +xueshu.com +xueshu5.com +xueshuda.com +xueshujia.com +xuetangonline.com +xuetangx.com +xuetangzaixian.com +xueti.com +xuetimes.com +xuetu.net +xuetuwuyou.com +xueui.com +xueuisheji.com +xuewangshang.com +xuewangzhan.com +xuewangzhan.net +xuexb.com +xuexi.la +xuexi365.com +xuexi637.com +xuexiaodaquan.com +xuexiaodaquan.net +xuexiaozhaopin.com +xuexibao.com +xuexigang.com +xuexijilu.com +xuexila.com +xuexili.com +xuexilinux.com +xuexin365.com +xuexiniu.com +xuexitong.com +xuexivip.net +xueyanshe.com +xueyiyun.com +xueyou.org +xueyouyoo.com +xueyuanjun.com +xuezhouyi.com +xuezishi.net +xuezizhai.com +xugaoyang.com +xugucn.com +xuhangzj.com +xuheen.com +xuhehuan.com +xuhot.com +xujianhua.com +xujun.org +xukai.xyz +xulaoshi68.com +xuliangwei.com +xulihang.me +xulizui6.com +xulonggame.com +xulv.net +xumenger.com +xuminggang.com +xumingxiang.com +xumurc.com +xun1688.com +xunbao178.com +xunbaozhifu.com +xunbibao.com +xunbin.com +xunbuy.com +xuncaoji.net +xunchabing.com +xundalm.com +xundayun.com +xundns.com +xundns.net +xundns.org +xundupdf.com +xunerjie.com +xunfang.com +xunfeivr.com +xungou.com +xunhuoyi.com +xunhupay.com +xunicard.com +xunihao.net +xunjiecad.com +xunjiepdf.com +xunjieshipin.com +xunjietupian.com +xunkids.com +xunkoo.com +xunlei.com +xunlei.net +xunlei1.com +xunleigang.com +xunleige.com +xunleige520.com +xunleige88.com +xunleihuiyuan.net +xunleiyy.com +xunlew.com +xunli.xyz +xunliandata.com +xunlong.net +xunlong.tv +xunlonghe.net +xunlongsoft.com +xunmb.com +xunmei.net +xunmeinet.com +xunmiweb.com +xunmzone.com +xunqianwang.com +xunruicms.com +xunsearch.com +xunshou.com +xuntou.com +xuntuoguan.com +xunurl.com +xunwan.com +xunwei.org +xunwei.tm +xunxi.com +xunxu.com +xunyixia.com +xunyou.com +xunyou.mobi +xunyun.com +xunzai.com +xunzhuang.net +xunzhuo123.com +xunzi.cc +xuooo.com +xupu.name +xupu120.com +xuqyfw.com +xuruowei.com +xuxian.com +xuxian.me +xuxueli.com +xuxusheng.com +xuyaokeji.com +xuyi.net +xuyilx.com +xuyimin.club +xuyongren.com +xuyuanyi.com +xuzhi.net +xuzhoujob.com +xv5b.com +xvision.club +xvista.com +xvna.com +xvv.cc +xw-china.com +xw1806.com +xw360.com +xwadv.com +xwan.com +xwb8.com +xwbank.com +xwcms.net +xwcool.com +xwdsp.com +xweb.vip +xwei.tv +xwhb.com +xwhodesign.com +xwjqr.com +xwjr.com +xwjy.org +xwko.com +xwlunwen.com +xwlxw.com +xwood.net +xwsj.org +xwtex.com +xwuad.com +xww360.com +xwxguan.com +xwyun.net +xwz999.com +xwzc.net +xwzxjy.com +xx007.com +xx144.com +xx4a.com +xx5.com +xxadc.com +xxbiquge.com +xxbmm.com +xxbt.com +xxcang.com +xxcig.com +xxcmw.com +xxd.io +xxdao.com +xxfzl.com +xxgj47.com +xxgzmlt.com +xxhd-tech.com +xxhh.com +xxhkt.com +xxhyzd.com +xxingclub.com +xxjcy.com +xxjr.com +xxjrjxc.com +xxjrqc.com +xxka.com +xxko.net +xxkucun.com +xxlcn.com +xxliudsp.com +xxlwin.com +xxm.plus +xxmac.com +xxmanhua.info +xxmh117.com +xxmh21.com +xxmh223.com +xxmh225.com +xxmh226.com +xxmh268.com +xxmh330.com +xxmh460.com +xxmh481.com +xxmh484.com +xxmh673.com +xxmh730.com +xxnets.net +xxnmcd.com +xxoojoke.com +xxorg.com +xxpie.com +xxptcs.com +xxqb5200.com +xxqipai.com +xxqun.com +xxrou.net +xxs8.com +xxsb.com +xxsdfjx.com +xxshu.com +xxskins.com +xxsy.net +xxsywxj.com +xxtaotao.com +xxtiao.com +xxtjs.com +xxwenda.com +xxwolo.com +xxxfeng.com +xxxlbox.com +xxxmeng.com +xxxxxbbs.com +xxxzzlm.org +xxycw.com +xxyfgy.com +xxyhzd.com +xxyo.com +xxyw.com +xxzdpf.com +xxzfgjj.com +xxzhushou.com +xy-365.com +xy-asia.com +xy.com +xy1212.com +xy1758.com +xy178.com +xy1989.com +xy3000.com +xy48.net +xy58.net +xy78.com +xy980.net +xyb100.com +xybsyw.com +xybygw.com +xyc999.com +xycaogen.com +xycareer.com +xycdn.com +xycloud.com +xyclouds.com +xyczero.com +xydcname.com +xydcname.net +xydhl.com +xydxcloud.com +xydxcs.com +xyfc.com +xyfcw.com +xyffsb.com +xyfw.org +xygjx.com +xygmed.com +xygyhd.org +xyhc.com +xyhis.com +xyhlcd.com +xyhospital.com +xyhqsh.com +xyhtml5.com +xyhust-meri.com +xyimg.net +xyinzhe.com +xyj.link +xyj321.com +xyjt.org +xylh888.com +xylink.com +xylmf.com +xymcp3.com +xymens.com +xymvip.com +xynbnb.com +xyniubi.com +xynsh.com +xyookj.com +xyous.com +xyppzx.com +xyq.name +xyqb.com +xyqczy.com +xyqka.com +xyrtv.com +xysb.com +xyshu8.com +xyshu8.net +xyssdzrmzf.com +xystatic.com +xystoy.com +xysy.com +xytjcpj.com +xytzg.com +xyunqi.com +xyvend.com +xyvending.com +xyw.com +xywallet.com +xywm.ltd +xywooden.com +xywy.com +xywyfw.com +xywzs.com +xyx234.com +xyxcables.com +xyxdie.com +xyxinr.com +xyxl.net +xyxsc.com +xyxsns.com +xyxy.com +xyxy.net +xyxy01.com +xyy001.com +xyyh.xyz +xyyksy.com +xyyuedu.com +xyyx82.com +xyz-jm.com +xyz1001.xyz +xyz1412.net +xyz365.vip +xyz456.com +xyz83.com +xyzcdn.net +xyzcn.com +xyzdict.com +xyzggg.com +xyzmdzs.com +xyzone.xyz +xyzs.com +xyzsq.com +xyzysmx.com +xz-juming.com +xz.com +xz577.com +xz6.com +xz6699.com +xz6d.com +xz7.com +xzapi56.com +xzbu.com +xzcblog.com +xzddx.com +xzdzsww.com +xzfile.com +xzggjyzpw.com +xzgjj.com +xzh200c.shop +xzhengyida.com +xzhichang.com +xzhizao.com +xzji.com +xzjqx.date +xzjxtsg.com +xzkd.com +xzking.com +xzlogo.com +xzlres.com +xzltzc.com +xzm56.com +xzn56.com +xzoo.org +xzper.com +xzpoll.com +xzr.kim +xzrj.cc +xzrjsoft.com +xzsec.com +xzsnw.com +xzstatic.com +xzsthj.com +xztyhl.com +xztylfu.com +xztzb.com +xzw.com +xzwwxn.com +xzx.com +xzxiaoshuo.com +xzxw.com +xzyhealth.com +xzzanggong.com +xzzp.net +y-os.net +y.to +y007.com +y0game.com +y1995.com +y2002.com +y261.com +y4dg.cc +y4dg.com +y500.me +y5000.com +y5663.com +y6162.com +y80s.com +y821.cc +y999.com +y9photo.com +ya17.com +ya247.com +yaability.com +yaahe.com +yabo.com +yabo2020.com +yabodns.com +yabolive.com +yaboor.com +yabovip2029.com +yac8.com +yac8.net +yadashi.com +yadgen.com +yadingchi.com +yadingtour.com +yaduo.com +yaeherhealth.com +yaersen.com +yafanpm.com +yafco.com +yafdev.com +yafeilinux.com +yageo.tech +yago-mall.com +yahacode.com +yahaizi.com +yahei.net +yahoo001.com +yahotab.com +yahuhost.com +yahui.hk +yaitest.com +yaiyuan.com +yajuke.com +yajxc.com +yakool.com +yalayi.net +yalewoo.com +yaliang.net +yalinfeng.com +yalishiyanji.com +yalixinli.com +yalongsi.com +yalqq8976.com +yamadesignlab.com +yamadie.net +yameijie.com +yameisj.com +yamibo.com +yan-wei.net +yanbinghu.com +yanbm.com +yanboguoji.com +yanboyuan.com +yanche315.com +yanchebang.com +yanchengzx.com +yandianying.com +yandui.com +yanedu.com +yanfen.online +yang16.com +yangbing.club +yangchenglianhe.com +yangchunjian.com +yangcong.com +yangcong345.com +yangcongchufang.com +yangdongjia.com +yangerxiao.com +yangfannie.com +yangfawen.net +yangfd.com +yangge.me +yangguanjun.com +yangguiweihuo.com +yanghengjun.com +yanghua.com +yanghui.com +yangjian.me +yangjie.li +yangkatie.com +yangkeduo.com +yangki.net +yangkun.net +yanglajiao.com +yanglaocn.com +yanglaofuwu365.com +yanglaozhan.org +yanglee.com +yangli.com +yanglingxi.com +yanglong.pro +yangluojob.com +yangluoxw.com +yangmao.info +yangmaodang.org +yangmaohao.net +yangner.com +yangqianguan.com +yangqimanhua.com +yangqq.com +yangqu.com +yangsam.com +yangshengliang.com +yangshengpu.com +yangshengtt.com +yangshengzhu.com +yangshitianqi.com +yangtaiapp.com +yangtengfei.com +yangtianb.com +yangtianbao.com +yangtse.com +yangtze-volga.org +yangwang.pw +yangwc.com +yangxiang.com +yangxiangming.com +yangxiaojia.me +yangxikun.com +yangxingzhen.com +yangxinlife.com +yangyangla.com +yangyanxing.com +yangyi.vip +yangyi02.com +yangyi08.com +yangyi19.com +yangyingming.com +yangyongquan.com +yangyq.net +yangzhe1991.org +yangzhiping.com +yangzhiriji.com +yangzhix.com +yangzhongchao.com +yangzijiang.com +yangzw.vip +yanhaijing.com +yanjiangwang.com +yanjiao.com +yanjiao.net +yanjiaoapp.com +yanjiaols.com +yanjiaoweixin.com +yanjinews.com +yanjingge.com +yanjiubaogao.com +yanjiushenglw.com +yanjiyou.net +yanjun7858.com +yanjunbo.com +yankanshu.net +yankanzw.com +yankay.com +yanliu.org +yanlutong.com +yanmbjiage.com +yannv.com +yanoda.com +yanpk.com +yanqiao.com +yanqing-888.net +yanqingzhan.net +yansedaquan.com +yanshihua.com +yanshishuo.com +yansudian.com +yantai-chuanpiao.com +yantaibank.net +yantaimarket.com +yantaitech.com +yantubao.com +yantuchina.com +yanue.net +yanunon.com +yanwenzi.com +yanxian.org +yanxintong.com +yanxishe.com +yanxiu.com +yanxuezhang.net +yanxurui.cc +yanyapeng.com +yanyib2b.com +yanyijiameng.com +yanyijingling.com +yanyiwu.com +yanyuzw.com +yanzhiwu.com +yanzoujia.net +yao.com +yao123.com +yao51.com +yaoao.net +yaobo.net +yaochixs.com +yaochufa.com +yaocsoft.com +yaodou.net +yaofangwang.com +yaofangwang.net +yaofx.net +yaoge123.com +yaoguo.com +yaohaixiao.com +yaohuiji.com +yaohuo.me +yaojiao.tv +yaojibuyu.com +yaojidsfee.com +yaojiedianzi.com +yaojingtang.com +yaokaihui.com +yaolaifen.com +yaolan.com +yaoliwang.com +yaomaiche.com +yaoman.net +yaonano.com +yaoor.com +yaooxx.space +yaopaiming.com +yaopinnet.com +yaoqingwo.com +yaosai.com +yaowan.com +yaowei.info +yaoxianwu.com +yaoyedan.net +yaoying.vip +yaoyl.com +yaoyouke.com +yaoyu.com +yaoyuan.com +yaoyuanba.com +yaozh.com +yaozs.com +yaozui.com +yareiot.com +yarnn.com +yasishuo.com +yasiyasi.com +yasking.org +yasn.com +yasuotu.com +yataishoes.com +yatiku.com +yatiwang.com +yatsenglobal.com +yatsoft.com +yawancaiwu.com +yawen.cc +yawenb.com +yawkj.com +yaxi.net +yaxige.com +yaxinde.com +yaxuntuhang.com +yaya.love +yayigou.net +yayihouse.com +yaypool.com +yayu.org +yazhifan.com +yazhougoufang.com +yazibt.com +yazjy.com +yazuo.com +yb1518.com +yb1867.com +yb3.cc +yb983.com +yba120.com +ybaby.com +ybao.org +ybaobx.com +ybbdzp.com +ybbgd.com +ybbxkj.com +ybccb.com +ybccode.com +ybdudu.com +ybe.net +ybhdmob.com +ybi.net +ybin.cc +ybirds.com +ybj.com +ybjasb.com +ybjk.com +yblp.com +ybm100.com +ybren.com +ybs120.com +ybtong.com +ybtvyun.com +ybtzjt.com +ybvipdns.com +ybvv.com +ybword.com +ybwzx.com +ybxww.com +ybzkb.com +yc123.com +yc370.com +yc38.com +yc999vip.com +ycandyz.com +ycb.com +ycbright.com +yccdn.com +ycdjy.com +ycdlfw.com +ycdongxu.com +yceshop.com +ycgj.cc +ycgjj.net +ycgslb.com +ychefu.com +ychromedgeie.com +ychxie.com +ychxiex.com +ycig.com +ycigilink.com +yciyun.com +ycjt2007.com +ycjtj.com +ycjyjt.com +ycku.com +yclh6.com +yclunwen.com +ycmbcd.com +ycnuli.com +ycoem.net +ycool.com +ycpack.net +ycpai.com +ycrh-tattoo.com +ycrusher.com +ycsgame.com +ycshengwang.com +ycsrc.com +ycsystem.com +yct-tec.com +ycty.org +ycty119.com +ycwalker.com +ycwanju.com +ycwb.com +ycwhys.com +ycwtbgsb.com +ycxfgroup.com +ycxhdp.com +ycxjtd.com +ycyggr.com +ycyhhx.com +ycyjkj.com +ycym.com +ycypin.com +ycyui.com +yczihua.com +ydaobo.com +ydbimg.com +ydc360.com +yddn.com +ydh.fun +ydimmi.com +ydjt1166.com +ydl.com +ydl.wang +ydlbk.com +ydlcdn.com +ydm88.com +ydmel.com +ydmeng.com +ydmob.com +ydmsh.com +ydn5.com +ydnewmedia.com +ydr.me +ydsaso.com +ydsjjs.com +ydstatic.com +ydsyxzx.com +ydtad.com +ydtnotary.com +ydtun.com +ydu6.com +yduav.com +ydui.org +ydvip00ap.com +ydvip00as.com +ydwhgs.com +ydx2.com +ydxxt.com +ydy.com +ydyeducation.com +ydys1688.com +ydyspc.com +ydyy120.com +ye.com +ye1992.com +ye3.com +ye40.com +yea.im +yead.net +yeah.net +yeahka.com +yeahworld.com +yeai.com +yealink.com +yealinkvc.com +yeapcloud.com +yearnfar.com +yeastar.com +yeax.com +yebaike.com +yebangyu.org +yeboyzq.com +yecdn.com +yedingding.com +yee5.com +yeeaoo.com +yeecall.com +yeecin.com +yeecloud.com +yeedian365.com +yeefeitrip.com +yeefire.com +yeefx.net +yeekit.com +yeelight.com +yeelink.net +yeelogo.com +yeemiao.com +yeemiao.net +yeepay.com +yeepaycdn.com +yeepiao.com +yeeuu.com +yeeyan.com +yeeyan.org +yeeyk.com +yeezhe.com +yef2.vip +yefeiyexs.com +yefu365.com +yegame.com +yegenyou.com +yegong.net +yehaoqian.com +yehetang.com +yeidc.com +yeidc.net +yejienet.com +yejing.biz +yejuu.com +yelanxiaoyu.com +yelinmall.com +yelixiali.com +yelook.com +yemablog.com +yemacaijing.com +yemaili.com +yemaosheji.com +yemaosoft.com +yemayun.com +yemeihuoguo.com +yemet.com +yemi.me +yenisezonmodelleri.com +yeolar.com +yeoner.com +yeree.com +yerhu.com +yes-chinese.com +yes-med.net +yes515.com +yes58.net +yes88.com +yesacc.com +yesaha.com +yesanpole.com +yesapi.net +yesbt.cc +yesdat.com +yesdecor.com +yeseesports.com +yesense.com +yeseread.com +yeshen.com +yeshengarts.com +yeshj.com +yeshu.com +yesidos.com +yesiness.com +yeskn.com +yesky.com +yeslib.com +yeslicake.com +yesmryang.net +yesmyimg.com +yesmywine.com +yesoulchina.com +yespearl.com +yestar.com +yestar1992.com +yestarm.com +yestarvip.com +yeston.net +yestone.com +yesudoo.com +yesuse.net +yeswan.com +yesxia.com +yesxun.com +yetang.com +yetianzi.com +yetingjk.com +yewen.us +yewuyuan.com +yexinggroup.com +yeyaji9.com +yeyday.com +yeyemm.xyz +yeyexx.com +yeyexx8.com +yeyexx9.com +yeyezw.com +yeyimg.com +yeyo.cc +yeyou.com +yeyoucdn.com +yeyoujia.com +yeyulingfeng.com +yeyun.com +yezdm.com +yezhuwq.com +yezhuwuyou.com +yezicc.com +yeziting.com +yezixigame.com +yezixueyuan.com +yfbzb.com +yfcache.com +yfcalc.com +yfcdn.net +yfcloud.com +yfcloud.io +yfcmf.net +yfdns.net +yfdts.net +yfdurl.com +yfdxs.com +yfdyf.com +yffe.com +yfgj68.com +yfgyp.com +yfhl.net +yfhxtech.com +yfiot.com +yfjiakao.com +yfklxz.com +yfmhw.com +yfp2p.net +yfpayment.com +yfscdn.com +yfscdn.net +yfservice.com +yftxt.com +yfvb.com +yfway.com +yfwnm.com +yfycrc.com +yfycyboil.com +yg-dk.com +ygc711iq.com +ygct.com +ygdy8.com +ygdy8.net +yge.me +ygei.com +yget.me +yghsh.com +ygibao.com +yginsight.com +ygjj.com +ygjoy.com +ygo.wiki +ygodl.com +ygread.com +ygsdmedia.com +ygshangjie.com +ygsoft.com +ygsub.com +ygtcpa.com +ygwenxue.com +ygym.org +yh31.com +yh596.com +yh598.com +yh99.cc +yhachina.com +yhbimg.com +yhcko.com +yhcmovie.com +yhcqw.com +yhd.com +yhdfa.com +yhdm5.com +yhdns.net +yhdtns.com +yhetent.com +yhfx.info +yhgo.wang +yhgo8.com +yhidc.com +yhindustrial.com +yhj2000.com +yhj9.com +yhjbox.com +yhjdcom.com +yhkgas.com +yhkingdee.com +yhlbbs.com +yhm11.com +yhmh.vip +yhouse.com +yhq368.com +yhqapp.com +yhqdashi.com +yhquan365.com +yhqurl.com +yhrcb.com +yhres.com +yhrtvu.com +yhshapp.com +yhsms.com +yhspy.com +yhsrv.com +yhtools.cc +yhtower.com +yhtx.tv +yhurl.com +yhwomen.com +yhxuexiao.com +yhy50.com +yhyf.cc +yhyshop.com +yhz2000.com +yhz365.com +yhz66.com +yhzdt.com +yhzm.cc +yhzm.com +yhzml.com +yhzuche.com +yhzy365.com +yi-jy.com +yi-you.org +yi114.com +yi2.net +yi588.com +yi6.com +yi7.com +yi958.com +yiai.me +yiaini.com +yianju.ltd +yiapp.com +yibaifen.com +yibaixun.com +yiban.io +yiban1314.com +yibaogao.com +yibei.com +yibencaijing.com +yibenmanhua.com +yibite.com +yicai.com +yicaitangwangzhuan.com +yicamp.com +yichadan.com +yichangly.com +yiche.com +yichemall.com +yichesafe.com +yichuyifan.com +yiclear.com +yicongfound.org +yicuba.com +yicx.com +yidaba.com +yidai.com +yidaomobi.com +yidaservice.com +yideamobile.com +yidejia.com +yidejr.com +yidejr.net +yidengxuetang.com +yidian360.com +yidianchina.com +yidiandian-tea.net +yidianer.com +yidianfenqi.com +yidianhulian.com +yidianling.com +yidiansz.com +yidianting.xin +yidianzixun.com +yidianzx.com +yidmall.com +yidong-food.com +yidonghua.com +yidonglin.com +yidoutang.com +yidu.cc +yidui.me +yidumen.com +yidun.com +yiernews.com +yifabao.com +yifake.com +yifanghy.com +yifanmedia.net +yifansuo.com +yifatong.com +yifeisoft.com +yifeiyuan.me +yifen.com +yifeng-mover.com +yifeng.com +yifenghudong.com +yifenghuyu.com +yifengke.com +yifengx.com +yifengxin.org +yifone.com +yifu.net +yifubao.com +yifucj.com +yifuls.com +yifutangvip.net +yifutu.com +yigao.com +yigaosu.com +yige.org +yigecun.com +yigeking.com +yigeqianbao.com +yigerlife.com +yigood.net +yigoonet.com +yigouu.com +yiguanli.net +yigujin.wang +yiguo.com +yiguoimg.com +yihafo.com +yihaikerry.net +yihangen.com +yihao01.com +yihaodian.com +yihaodianimg.com +yihaoduozhongduan.com +yihaohuoche.com +yihaojiaju.com +yihaomen.com +yihchina.com +yihe360.com +yihecloud.com +yihedoors.com +yihegold.com +yihong001.com +yihu.com +yihuacomputer.com +yihuimg.com +yihun.com +yii-china.com +yiibai.com +yiibook.com +yiichina.com +yiiheng.com +yiihuu.com +yiii.net +yiiwoo.com +yijia-ai.com +yijia.com +yijiaer.com +yijian119.com +yijiangshan.net +yijianjiaoyu.com +yijianjiexi.com +yijianxiu.com +yijianzj.com +yijiaren888.com +yijie.com +yijiebuyi.com +yijiedai.com +yijiexiaomin.com +yijinghong.com +yijingji.com +yijintong.net +yijirecovery.com +yijiupi.com +yijiuplus.com +yijueweb.com +yikang1977.com +yikaow.com +yike.io +yikedou.com +yikehome.com +yiketalks.com +yikeweiqi.com +yikexue.com +yikeyz.com +yikm.net +yikuaide.com +yikuaiqu.com +yikuns.com +yikuzy.com +yilan.io +yilan.tv +yilanvaas.com +yile8.com +yilewan.com +yileweb.com +yileyiqi.com +yileyoo.com +yileyunssp.com +yili.com +yilianmeiti.com +yilianqing.com +yilianyixue.com +yilibabyclub.com +yilihuo.com +yilijet.com +yilingshop.com +yilinguoji.com +yilinweb.com +yilong.com +yilongtv.com +yilule.com +yiluzhuanqian.com +yiluzouhao.com +yilvcheng.com +yimaoip.com +yimashijie.com +yimasm.com +yimeima.com +yimenapp.com +yimeng.com +yimengmusic.com +yimenonline.com +yimenyun.net +yimi.com +yimianmian.com +yimiaozhongdemeng.com +yimidida.com +yimihaodi.com +yimikf.com +yimin.biz +yimin168.com +yimincaifu.com +yiminchaoshi.com +yimingzhi.net +yimininfo.com +yiminjiayuan.com +yiminw.com +yimisoft.com +yimitongxue.com +yimiyisu.com +yimizhibo.tv +yimoe.cc +yimutian.com +yinan9.com +yinar.com +yinbaitu.com +yinbangbroker.com +yinbin.ink +yinchengpai.com +yinchengwealth.com +yindon.com +yindou.com +yinduabc.com +yindudigital.com +yinduzx.com +yineitong.com +yinfeiy.com +ying-ji.com +yingbishufa.com +yingcankeji.com +yingchaozhibo.com +yingchengnet.com +yingchuang.com +yingchulawyer.com +yingci86.com +yingdev.com +yingdianzi.com +yinge.cc +yinge.tech +yingerchela.com +yingfeiyun.com +yingfeng.me +yinghaicar.com +yinghaozs.com +yinghecloud.com +yingheying.com +yinghezhong.com +yinghualiu.com +yinghub.com +yingjia360.com +yingjianzhijia.com +yingjiesheng.com +yingjiesheng.net +yingjimall.com +yingk.com +yingkelawyer.com +yingle.com +yinglou6.com +yinglunka.com +yingmei.me +yingmi.com +yingmile.com +yingming.net +yingmoo.com +yingpingji.com +yingsheng.com +yingshengyl.com +yingshiborui.com +yingshixiaoshuo.com +yingshiyou.com +yingsoo.com +yingsun.net +yingsx.com +yingtai.com +yingtaoai.com +yingtaosiyue.com +yingtaoyun.com +yingucaifu.com +yingujr.com +yinguobing.com +yingupuhui.com +yingwenming.com +yingworks.com +yingwuyuzd.cc +yingxiahome.com +yingxiaoo.com +yingxiong.com +yingxuan.io +yingxunkeji.net +yingyang630.com +yingyinglicai.com +yingyongbei.com +yingyonghao8.com +yingyonghui.com +yingyongmiao.com +yingyu.com +yingyurumen.com +yingyushijie.com +yingyuweb.com +yingzaocms.com +yingzheng.com +yingzhongshare.com +yingzt.com +yinhai.com +yinhangchaxun.com +yinhanghanghao.com +yinhangkadata.com +yinhangkahao.com +yinhangkaoshi.net +yinhanglilv.net +yinhangzhaopin.com +yinhe.com +yinheli.com +yinhengli.com +yinher.com +yinheyuedu.com +yinhu.com +yini.org +yinjiaji.com +yinjietd.com +yinka.co +yinker.com +yinlei.net +yinliuba.com +yinmishu.com +yinongtouzi.com +yinpiao.com +yinsha.com +yinshua.cc +yinshua86.com +yinshuiyu.com +yintai.com +yintechi.com +yintop.com +yinuoedu.net +yinuosy.com +yinxi.net +yinxiang.com +yinxianggame.com +yinxiangma.com +yinxiangqingyang.com +yinxiao.com +yinxiaobao.net +yinxinbh.com +yinxing.com +yinxunbiao.com +yinyue7.com +yinyuegf.com +yinyuemeitu.com +yinyuetai.com +yinyueyouxi.com +yinzhijie.com +yinzhizhu.com +yinzifang.com +yinzige.com +yinziji.com +yinzuo100.com +yinzuojianshen.com +yioho.com +yioulai.com +yiovo.com +yipaipian.com +yipanhaocai.com +yipaogan.com +yiparts.com +yipemail.com +yipihuo.com +yipingmi.vip +yipinhr.com +yipinread.com +yipinsucai.com +yipuping.com +yiqi.com +yiqianbao.com +yiqianlian.com +yiqiao88.com +yiqibazi.com +yiqibing.com +yiqibuduoduo.com +yiqicesuan.com +yiqifa.com +yiqifa.org +yiqifengtian.com +yiqifin.com +yiqihao.com +yiqijixiang.com +yiqimaila.com +yiqiming88.com +yiqioffice.com +yiqishai.com +yiqishangxueba.com +yiqishanyuan.com +yiqiso.com +yiqisoo.com +yiqisooimg.com +yiqisou.net +yiqitp.com +yiqiu.org +yiqiuu.com +yiqiv.com +yiqixie.com +yiqixiegushi.com +yiqiyou.com +yiquanhs.com +yiquanseo.com +yiquhai.com +yiqujing.com +yiquxapp.com +yiren001.com +yirendai.com +yirentong.com +yirenzhushou.com +yirimao.com +yirlir.com +yiruantong.com +yiruanwang.com +yirui.net +yiruide.com +yiruikecorp.com +yiruituo.com +yisa.com +yisafe.co +yisanban.com +yisanwu.com +yisell.com +yishalai.com +yisharepdf.site +yishengfanyi.com +yishihui.com +yishion.com +yishion.net +yishixue.com +yishu.com +yishu168.com +yishu1688.net +yishujie.com +yishuliuxue.com +yishun.net +yishuweipen.com +yishuzhifa.com +yishuzi.com +yishuzi.org +yishuziti.com +yisier.com +yisou.com +yisouti.com +yisouyifa.com +yiss.com +yisu.com +yisu6.com +yisusoft.com +yit.com +yitaifang.com +yitang.org +yitanyun.com +yitaojiayuan.com +yitel.com +yitenggz.com +yitesoft.com +yitianshidai.com +yitianxinda.com +yiticm.com +yitongjiayou.com +yitongmedia.com +yitopapp.com +yituocn.com +yitutech.com +yituyu.com +yiupin.com +yiuxiu.com +yivian.com +yivicar.com +yivizd.com +yiwaiart.com +yiwan.com +yiwanggo.net +yiwanzhushou.com +yiwealth.com +yiweb.com +yiweilaogumin.com +yiwenyida.com +yiwubuy.com +yiwufair.com +yiwugo.com +yiwugou.com +yiwuku.com +yiwutalk.com +yixao.com +yixao.net +yixi.tv +yixia.com +yixiaoxi.com +yixie8.com +yixiekeji.com +yixieshi.com +yixiin.com +yixin.com +yixin.im +yixin5.com +yixincao.com +yixinfinance.com +yixinfund.com +yixinhuinong.com +yixintui.com +yixinu.com +yixinxin.com +yixiu08.com +yixiubx.com +yixiuxueyuan.com +yixuan.net +yixue68.com +yixue99.com +yixueks.com +yixuelunwen.com +yixui.com +yixun.com +yiya520.com +yiyaha.com +yiyakq.com +yiyanche.com +yiyangidc.com +yiyaojd.com +yiyaojie.com +yiyatuan.com +yiybb.com +yiye.ai +yiyebang.com +yiyefei.com +yiyesheng.net +yiyewenxs.com +yiyiarts.com +yiyiarts.net +yiyihd.com +yiyimh.com +yiyingt.com +yiyisoft.com +yiyitech.com +yiyiwawa.com +yiyongcad.com +yiyou.org +yiyouhbkj.com +yiyouliao.com +yiyoupay.net +yiyouqi.com +yiyu.com +yiyuanqiang.net +yiyuansoft.com +yiyuantian.com +yiyuanyi.org +yiyuetop.com +yiyult.com +yiyum.com +yiyunweb.com +yiyurumen.com +yiyuzw.com +yizaoyiwan.com +yizeijun.com +yizenb.com +yizhanzx.com +yizhchan.com +yizhema.com +yizhi-its.com +yizhibi.com +yizhibo.com +yizhidayu.com +yizhifubj.com +yizhikan.com +yizhishenbi.com +yizhiwechat.com +yizhixiaogame.com +yizimg.com +yizlife.com +yizu.org +yizuocity.com +yj-bank.com +yj-fun.com +yj.ink +yj3g.com +yj93zp.com +yjbys.com +yjcf360.com +yjcp.com +yjdatasos.com +yjfs8.com +yjhyjl.com +yjihua.com +yjk.im +yjldp.com +yjlin4.com +yjopen.com +yjpal.com +yjq.cc +yjrcyw.com +yjro.com +yjrzj.com +yjs-cdn.com +yjs-cdn10.com +yjs111.com +yjscloud.com +yjsjl.org +yjwlo.com +yjwujian.com +yjxsoft.com +yjyghb.com +yjz9.com +yk08.com +yk211.com +ykadx.com +ykccn.com +ykclass.com +ykdgd.com +ykdmsy.com +ykedu.net +ykimg.com +ykinvestment.com +ykjhdc.com +ykn956.com +ykn966.com +ykntv.com +ykp568.com +ykplg.com +ykpxxx.com +ykq.ink +ykqnl.com +ykread.com +yks365.com +yksq.net +ykstarshine.com +yksuit.com +ykt.io +yktworld.com +yktz.net +ykyao.com +ykydxh.com +ykzr.com +yl1001.com +yladm.com +ylallinone.com +ylbgw1.com +ylcs.cc +yldh.cc +ylfx.com +ylg877.com +ylghsj.com +ylgj.com +ylhaitao.com +ylhh.net +ylhsrsrc.com +ylife9.com +ylimg.com +yliyun.com +yljc888.com +yljr.com +ylkc.net +ylkjgame.com +ylmf.cc +ylmf.com +ylmf.net +ylmf888.com +ylmfeng.com +ylmfwin100.net +ylmfwin8.com +ylnetworks.com +yloo.org +ylq.com +ylrb.com +ylrj.com +ylstatic.com +yltpcb.com +ylunion.com +yluu.com +ylwl.cc +ylwood-cn.com +ylws.net +ylwyw.com +ylxbxgtg.com +ylxdtww.com +ylxk.net +ylxw.net +ylyk.com +ylzms.com +ym-trans.com +ym1998.com +ym23.com +ym68.cc +ym75168.com +ymailcampaign.com +ymall.com +ymanz.com +ymaojob.com +ymapp.com +ymark.cc +ymars.com +ymatou.com +ymatou.hk +ymbq301.com +ymcall.com +ymcart.com +ymd520.net +ymd88.com +ymeme.com +ymexf.com +ymfhbcj.net +ymfile.com +ymfile01.com +ymgmno.com +ymhudong.com +ymiot.net +ymjm.net +ymkj99.com +ymlfxp.com +ymlinks.com +ymlykj.com +ymm56.com +ymmfa.com +ymmzb.com +ymoxuan.com +ymoxuan.org +ympcb.com +ymq.com +ymraaa.com +ymrcw.vip +yms7.com +ymsteam.com +ymstj.xyz +ymsxq001.xyz +ymsxq002.pw +ymsxq003.pw +ymsxq004.pw +ymsxq005.xyz +ymsxq007.pw +ymsxq009.pw +ymsxq009.xyz +ymsxqcdn.xyz +ymt.com +ymt360.com +ymtc.com +ymtjfxly.com +ymtmt.com +ymvkt.com +ymwl111.com +ymwl234.com +ymxinxi.com +ymxxs.com +ymyun.com +ymyxzz.com +ymzer.com +yn-tobacco.com +yn.com +yn12396.com +yn58.com +ynairport.com +ynb2dca.com +ynbike.net +ynbojie.com +yncuc.net +yncunguan.com +yndaily.com +yndkt.com +yneg-ev.com +yneit.com +ynet.com +ynfabu.com +yngd016.com +ynggzy.com +yngp.com +ynguangsui.com +yngw518.com +yngwyw.org +ynhanfu.com +ynhl.net +ynho.com +ynhouse.com +yni84.com +ynianyongheng.com +ynikon.com +yninfo.com +ynit580.com +ynkcfc.com +ynkmjj.com +ynlibs.com +ynlyfw.com +ynmec.com +ynpxrz.com +ynrayy.com +ynshangji.com +ynshf.com +ynshijian.com +ynsjg.com +ynsjnls.com +ynsqx.com +ynteng.com +yntsg.com +ynwin.com +ynxr.com +ynxxb.com +ynycloud.xyz +ynyes.com +ynyp.com +ynzczs.com +ynzg.org +ynzhongyi.com +ynzp.com +ynzy-tobacco.com +yo4399.com +yoagoa.com +yobangbang.com +yobbom.com +yobo360.com +yocan.net +yochoi.com +yocyxc.com +yodak.net +yodakgroup.com +yodao.com +yodao.net +yodo1.com +yodo1api.com +yoe365.com +yofc.com +yofcjs.com +yofebearing.com +yofijoy.com +yofish.com +yofond.com +yofond.net +yofus.com +yogeev.com +yogorobot.com +yoher.com +yoho.org +yohoblk.com +yohoboys.com +yohobuy.com +yohogirls.com +yoholm.com +yohomars.com +yohoowin.com +yohoshow.com +yohui.com +yojl.net +yojochina.com +yoju360.com +yoju360.net +yoka.com +yokacdn.com +yokagames.com +yokmob.com +yoko66.com +yokong.com +yolanda.hk +yolewa.com +yolexi.com +yolinkmob.com +yoloboo.com +yoloho.com +yomiko.club +yomob.com +yomocode.com +yongaomy.com +yongche.name +yongche.org +yongchengren.com +yonghe1999.com +yongheng.online +yongheng0852.com +yonghongtech.com +yonghuigj.com +yonghuivip.com +yongkao.com +yonglang.co +yonglongdai.com +yongqianbao.com +yongqiaonews.com +yongqischool.net +yongshei.com +yongsheng-sl.com +yongshikj.com +yongsy.com +yongtu.net +yongxinby.com +yongxinggw.com +yongxintex.com +yongzhentang.com +yonho.com +yonlive.com +yonyou.com +yonyouaud.com +yonyoubao.com +yonyouccs.com +yonyoucloud.com +yonyoufinancial.com +yonyoufintech.com +yonyougov.com +yonyouny.com +yonyouoa.com +yonyouscf.com +yonyouup.com +yoo-hn.com +yoo1.com +yoodb.com +yooek.com +yooerjia.com +yoohouse.com +yoojia.com +yooknet.com +yooli.com +yoolin.cc +yoooooooooo.com +yoopu.me +yootou.com +yoouxi.com +yooxun.com +yooxuu.com +yooyoo360.com +yoozai.com +yoozhe.com +yoozoo.com +yoozword.com +yopai.com +yopoint.cc +yopoint.com +yoptech.com +yopwefun.com +yopwork.com +yoqoo.com +yoqu.net +yorentown.com +york33.com +yoseleather.com +yotta800.com +you-mi.net +you1ke.com +you200.com +you2php.com +youba.com +youba123.com +youban.com +youbangyun.com +youbaoidc.com +youbbs.org +youbeichefu.com +youbh.com +youbian.com +youboy.com +youc.com +youcaizhushou.com +youcao.cc +youcash.com +youcha.net +youchedi.com +youchent.com +youcheyihou.com +youchuhuodong.com +youda8.com +youdaihe.com +youdaili.net +youdaiw.com +youdajx.com +youdanhui.com +youdao.com +youdaolvshi.com +youdas.com +youdashidai.com +youdemai.com +youdiancms.com +youdingte.com +youdu.im +youduzw.com +youdwh.com +youease.net +youedata.com +youeryun.com +youez.com +youfangw.com +youfangzx.com +youfen666.com +youfh.com +youfubao.vip +youfunlab.com +yougababy.com +youganghangmoguan.com +yougaoji.com +yougequn.com +yougou.com +yougou357.com +yougu.tv +youguo.com +youguoquan.com +youguu.com +youhaodongxi.com +youhaosoft.com +youhaosuda.com +youhro.com +youhua.com +youhuaaa.com +youhuafuzhi.com +youhuashu.com +youhugmedia.com +youhundao.com +youhutong.com +youideal.net +youinsh.com +youjiands.net +youjiangzhijia.com +youjiao.com +youjiaus.net +youjiaxiao.com +youjingnetwork.com +youjinyongka.com +youjiuhealth.com +youjoy.tv +youjuke.com +youkake.com +youke.co +youke.com +youke365.site +youkecn.com +youked.com +youkego.com +youkelai.com +youkexueyuan.com +youkongkan.com +youkongwan.com +youku.com +youkua.net +youkudou.com +youkudown.com +youlanw.com +youle360.com +youle55.com +youleliwu.com +youlinyouke.com +youlishipin.com +youliv.com +youloft.com +youlong123.com +youlongciqing.com +youlongteng.com +youlu.com +youlu.net +youlu6.com +youluwx.com +youluxe.com +youmai.com +youmaolu.com +youmars.com +youme.im +youmeng.me +youmenr.com +youmew.com +youmi.net +youmiad.com +youmingdifu.com +youmingdot.com +youminonline.com +youmobi.com +youmodou.com +youmooyouyoung.com +youmuyouxs.com +youneng.com +younet.com +younfor.com +young40.com +youngblog.cc +youngfunding.co.uk +youngor.com +youni.im +youo.net +youoh.com +youonbike.com +youook.com +youpinppt.com +youpinx.com +youpinzhekou.com +youqichuyun.com +youqinggong.com +youqiwu.com +youqizhan.com +youqo.com +youqu.in +youqudao.com +youranshare.com +yourbin.com +yourcollect.net +yourdream.cc +youren5.com +yourtion.com +yousc.com +youscm.com +yousee.com +yousenjiaoyu.com +youshang.com +youshanmeishi.com +yousheng.shop +yousheng8.com +yousheyoujia.com +youshifu.com +youshikoudai.com +youshixiu.com +youshop10.com +youshu.cc +youshuba.cc +youshuge.com +yousmyq.com +yousuu.com +yousuyuan.com +youtaidoors.com +youtaidu.com +youtak.com +youthi.com +youtiandi.com +youtianli.com +youtibao.com +youtoart.com +youtoupiao.com +youtu.com +youtuzi.com +youtx.com +youwawa.com +youwei.com +youwinedu.com +youwo.com +youwoxing.net +youwoyou.com +youxi.com +youxi01.com +youxi186.com +youxi369.com +youxi377.com +youxi500.com +youxi528.com +youxi567.com +youxia.com +youxia.org +youxiacg.com +youxiaju.com +youxiake.com +youxiake.net +youxiamotors.com +youxiang03.com +youxiaoad.com +youxiaohou.com +youxiaxiazai.com +youxibao.com +youxibaoku.com +youxicdn.com +youxichaguan.com +youxicheng.net +youxicitang.com +youxicity.com +youxicool.net +youxidaxue.com +youxidr.com +youxidun.com +youxiduo.com +youxifan.com +youxigongchang.com +youxigonglue8.com +youxigt.com +youxigu.com +youxiguancha.com +youxih.com +youxihezi.net +youxihun.com +youxij.com +youxike.com +youxila.com +youximao.com +youximt.com +youxin.com +youxingapp.com +youxiniao.com +youxinpai.com +youxipai.com +youxiping.com +youxiputao.com +youxiqiang.com +youxiqun.com +youxishuo.com +youxitexiao.com +youxituoluo.com +youxiuhui.com +youxiula.com +youxiwangguo.com +youxiwugui.com +youxixf.com +youxixj.com +youxizhan.com +youxizhongguo.com +youxizhuang.com +youxuangu.com +youxueke.com +youyacao.com +youyanchu.com +youyannet.com +youyikeji666.com +youyilm.com +youyiqi.com +youyiqiaogou.com +youyizhidao.com +youyo88.com +youyou234.com +youyoudianqi.com +youyouii.com +youyouwin.com +youyuan.com +youyuanapp.com +youyuanw.com +youyudf.com +youyuegame.com +youyueke.com +youyur.com +youyuwei.com +youyuwo.com +youyy.com +youzan.com +youzanyun.com +youzhai.com +youzhan.org +youzhao.com +youzhi.net +youzhicai.com +youzhiwk.com +youzhixueyuan.com +youzhuan.com +youzhuanhua.com +youzi02.com +youzi100.com +youzibank.com +youzibuy.com +youzijie.com +youziku.com +youzikuaibao.com +youziqk.com +youzu.com +yovisun.com +yovocloud.com +yovole.com +yovyuan.com +yowooa.com +yoxiha.com +yoximi.com +yoxyok.com +yoya.com +yoyi.tv +yoyiapp.com +yoyo1900.com +yoyojacky.com +yoyojie.com +yoyokko.com +yoyokx.com +yoyone.net +yoyotown.com +yoyou.com +yoyou.net +yoyound.com +yoytang.com +yozodcs.com +yozodoc.com +yozodocs.com +yozooffice.com +yozosoft.com +yozsc.com +yp007.net +yp1151.com +yp900.com +ypank.com +ypgyyq.com +yph-shop.com +yphuifu.com +ypicw.com +ypjiameng.com +ypk559.com +yplady.com +yplmzx.com +ypmob.com +yppp.shop +ypppt.com +ypshengxian.com +ypstech.com +ypxiaoshuo.com +ypzdw.com +ypzhushou.com +yq027.com +yq1751.com +yq51.com +yq6.cc +yqb.com +yqb920.com +yqbank.com +yqbdt.com +yqbimg.net +yqfml.com +yqh.com +yqh5.com +yqhapp.com +yqhlm.com +yqhy.org +yqhyy.com +yqibook.com +yqie.com +yqjsj.com +yqjtgs.com +yqkk.link +yqkqw.com +yqmb001.com +yqmh.com +yqphh.com +yqptzx.com +yqqlm.vip +yqsbz.com +yqsns.com +yqtc.com +yqtxzm.com +yqwyx.xyz +yqxhl.com +yqxiuyoung.com +yqxs.cc +yqyanhong.com +yqzww.la +yqzww.net +yr-info.com +yrcbank.com +yrgu.com +yrmpay.com +yrom.net +yruan.com +yrucd.com +yrw.cc +yrw.com +yrwy.com +yryz.com +yrzjw.com +ys.cc +ys001.com +ys137.com +ys168.com +ys1688.cc +ys2345.com +ys4fun.com +ys666888.com +ys7.com +ys720.com +ys8.com +ysaedesign.com +ysali.com +yscase.com +yscb.net +ysch.cc +yscq.com +ysdui.com +yse360.cc +ysedu.com +yseeker.com +ysepay.com +ysext.com +ysgtg.com +ysgushi.com +yshp.net +yshsports.com +yshuoba.com +yshyqxx.com +ysicing.me +ysicing.net +ysiis.com +ysjf.com +ysjgames.com +ysjkgl.com +ysjpin.com +yslcw.com +yslqo.com +ysmiji.com +ysmine.com +ysoow.com +ysp68.com +ysplay.com +ysptuan.com +ysrh.com +ysshipu.com +yssm.org +yssm.tv +yssp88.com +ysstech.com +ysszzs.com +ysszzx.com +yst100.net +yst3.com +ysten.com +ystinbox.com +ysug.com +ysw365.com +ysw366.com +ysw68.com +yswebportal.cc +yswh.com +yswlgame.com +yswliot.com +yswpq.com +yswxcn.com +ysx8.com +ysx8.net +ysx8.vip +ysx9999.com +ysxs8.com +ysyhljt.vip +ysyycv.com +yszx99.com +yszyun.com +yszyz.com +yszzlt.com +yt1998.com +yt69.com +yt698.com +yta-tech.com +ytaomb.com +ytaotao.net +ytb.io +ytbbs.com +ytbfilm.com +ytcbh.com +ytcj.com +ytcos.com +ytcutv.com +ytdaily.com +ytdcloud.com +ytdsdz.com +ytesting.com +ytet.org +ytfuzhen.com +ytghnb.com +ythouse.com +ytjcpj.com +ytkaituo.com +ytlh120.com +ytlvbao.com +ytmedia.tv +ytmer.com +ytnetgame.com +ytoexpress.com +ytoglobal.com +ytop8.com +ytoxl.com +ytpp.com +ytrenyu.com +ytsanchuan.com +ytszg.com +ytsznyy.com +ytud.net +ytv3.one +ytxedu.com +ytxsc.com +ytxun.com +ytzhihui.com +ytzq.com +yu-fish.com +yu.gs +yu1u.org +yu72.com +yuanbao.com +yuanbaobaoxian.com +yuanbaohui.com +yuanbin.me +yuancailiao.net +yuancdn.com +yuancefund.com +yuanchengxiezuo.com +yuanchuangchi.com +yuandi.com +yuandiancredit.com +yuandongjixie.com +yuanfeng021.com +yuanfengyazhu.net +yuanfr.com +yuanfudao.biz +yuanfudao.com +yuanfudao.ws +yuangongbao.com +yuanhaitaiji.com +yuanhuikai.com +yuaniis.com +yuanjie.org +yuanjisong.com +yuanjoy.com +yuanjubieshu.com +yuanlai.com +yuanlian365.com +yuanliao.info +yuanlin.com +yuanlin365.com +yuanlin8.com +yuanma.net +yuanmadian.com +yuanmait.com +yuanmas.com +yuanmatao.com +yuanmawu.net +yuanqi46.com +yuanqiao.net +yuanqingsh.com +yuanqitu.com +yuanrenbang.com +yuanrengu.com +yuanrenxue.com +yuanseedu.com +yuansfer.com +yuanshanbx.com +yuanshen.com +yuanshichang.com +yuansouti.com +yuanss.com +yuantengfei.net +yuantengfei.org +yuantiku.com +yuantoushuo.com +yuantu8.com +yuantutech.com +yuanu.com +yuanwanw.com +yuanxuxu.com +yuanyi.biz +yuanyoutao.com +yuanzhexi.com +yuanzidai.com +yuanzige.com +yuanzun.fun +yuanzun5200.com +yuanzun888.com +yuanzunxs.cc +yuapt.com +yubangweb.com +yubnjy.com +yubodata.com +yubohr.com +yuboinfo.com +yubosun.com +yuboyun.com +yucccc.com +yuchai.com +yuchen360.com +yuchengwang.com +yuchenjf.com +yuchenw.com +yuchk.com +yuchu3d.com +yuchuantech.com +yucl.com +yucoolgame.com +yucui.org +yudanglasses.com +yudaocha.com +yudi.com +yudianda.com +yudiangame.vip +yudouyudou.com +yudwl.com +yue365.com +yue7.com +yuebagu.com +yuebingcheng.com +yuebooemt.com +yuecheng.com +yuedaoec.com +yuedisk.com +yuedu.pro +yuedufang.com +yueduji.com +yuedun.wang +yuedunovel.com +yueduwen.com +yueduyun.com +yuego.net +yuegowu.com +yuehuzhi.com +yueimg.com +yueji.com +yuejianzun.xyz +yuejiewangluo.com +yuejuanbao.com +yuekenet.com +yuekeyun.com +yuelong.info +yueloo.com +yuelu.net +yuelun.com +yueme.tv +yuemei.com +yuenei.com +yuenshui.com +yuenwooping-truelegend.com +yuepaijia.com +yuepaow.net +yuepinwang.com +yueplus.ink +yueqi.com +yueqiquan.com +yueqiweixiu.com +yueqiziliao.com +yueque.com +yuer.com +yuerbao.com +yueru.com +yuesir.com +yuesuoping.com +yuetu.tech +yuetutu.com +yuetuvip.net +yuetx.cc +yueweimusic.com +yuewen.com +yuexianck.com +yuexing.com +yuexingfurniture.com +yuexinli.com +yuexinyouxi.com +yuexirc.com +yuexunedu.com +yueyaa.com +yueyanglou.com +yueyat.net +yueyear.com +yueyin99.com +yueyouxs.com +yueyq.com +yueyu114.com +yueyuanzhiye.com +yueyuecms.com +yueyues.com +yueyuevip.com +yueyuez.com +yueyuxuan.com +yueyuzhushou.com +yueyv.com +yuez.me +yufeitongji.com +yufengyangfan.com +yufu365.com +yufuid.com +yugasun.com +yuguo.us +yuguod.com +yuguozw.com +yuheii.com +yuheng.tech +yuhou.com +yuhuijob.com +yuiapi.com +yuike.com +yujia.com +yujiahui.com +yujie.pro +yujunjie.com +yujunren.com +yujzw.com +yukhj.com +yukicomic.com +yukiimall.com +yukuai.com +yukunweb.com +yul8.com +yule116.com +yule263.com +yuledaily.com +yulefm.com +yulehezi.com +yuleie.com +yulejiaodian.com +yulekan.com +yuleredian.com +yuleres.com +yuli.be +yulicdn.com +yuliechina.com +yulinapp.com +yulingtianxia.com +yulingw.com +yulongjun.com +yuloo.com +yulore.com +yulorepages.com +yulu1.com +yulu5.com +yulucn.com +yuluzhongde.com +yumaoshu.com +yumchina.com +yumenikki.info +yumi.cc +yumi.com +yumiaomiao.com +yumimobi.com +yuming.com +yumingguwen.com +yumingwan.com +yumisp7.com +yumixitong.com +yumstone.com +yun-gu.com +yun-idc.com +yun-img.com +yun-jinrong.com +yun-live.com +yun.pm +yun123.com +yun61.com +yunannet.com +yunaq.com +yunarm.com +yunaw.com +yunba.io +yunban.com +yunbang.net +yunbangcheng.com +yunbaoriji.com +yunbei.com +yunbeitech.com +yunbiao.tv +yunbiaosoft.com +yunbiaowulian.com +yunbiji.com +yunbook.vip +yunbook123.com +yuncai5.com +yuncaijing.com +yuncdn.bid +yuncdn263.com +yuncdndun.com +yunceng.com +yuncheng.com +yunchong-powder.com +yunchou.com +yuncii.com +yuncode.net +yunconfig.com +yunda56.com +yundaex.com +yundangan.com +yundaohuodong.com +yundasys.com +yundianjia.com +yundianseo.com +yundiantech.com +yundns.vip +yundongfang.com +yundonghao.com +yundongit.com +yundousoft.com +yundui.cc +yunduimedia.com +yundun.com +yundun.shop +yunduncdn.com +yunduncdns.com +yunduncname.com +yundunddos.com +yundundns.com +yundunjiasu.com +yunduns.com +yundunwaf.com +yundunwaf1.com +yundunwaf2.com +yundunwaf3.com +yundunwaf4.com +yundunwaf5.com +yunduocrm.com +yunduoke.net +yunduoketang.com +yundzh.com +yunews.net +yunfabiao.com +yunface.com +yunfaka.com +yunfalv.com +yunfan.com +yunfancdn.com +yunfandns.com +yunfangtan.com +yunfannet.com +yunfei89.com +yunfutech.com +yungangbj.com +yungao-ssp.com +yungao.mobi +yungongchang.com +yungoumi.com +yungouos.com +yungousj.net +yunguajibao.com +yungujia.com +yunhaicangshu.com +yunhaike.com +yunhaiqiao.com +yunhedata.com +yunheit.com +yunheka.com +yunhesanwan.com +yunhetong.com +yunhou.com +yunhuasheji.com +yunhucdn.com +yunhulu.org +yunhuotong.net +yunhuzx.com +yunifang.com +yunify.com +yunio.com +yunip.com +yunipo.com +yunji.com +yunjiale.net +yunjian.com +yunjiasu-cdn.net +yunjiasu.com +yunjiasu360.com +yunjiasu666.com +yunjiazheng.com +yunjifarm.com +yunjiglobal.com +yunjiweidian.com +yunjix.com +yunjuwuliu.com +yunkangdoctor.com +yunkawulian.com +yunke.com +yunkeji.com +yunkezan.com +yunkongpingban.com +yunlebao.com +yunlianip.com +yunlibeauty.com +yunlie.net +yunlietou.com +yunliketech.com +yunmai.com +yunmayi.com +yunmd.net +yunmeipai.com +yunmengnet.com +yunmiao.co +yunmishu365.com +yunmoseo.com +yunmoxing.com +yunnandns.com +yunnanjun.com +yunnao.com +yunnex.com +yunnut.com +yunos-tv.com +yunos.com +yunpan.com +yunpansou.cc +yunpanx.com +yunpanziyuan.com +yunpei.com +yunpian.com +yunpiao.net +yunpigai.com +yunplus.io +yunpp.com +yunqi.org +yunqi2050.com +yunqiandai.com +yunqikecrm.com +yunqingugm.com +yunqishi.net +yunque360.com +yunque365.com +yunrg.com +yunrongu.com +yunrouter.com +yunruift.com +yuns1.net +yunsd.net +yunser.com +yunshan.net +yunshangc.com +yunshanmeicai.com +yunshiketang.xyz +yunshipei.com +yunshipei.net +yunshouji123.com +yunshow.com +yunshuxie.com +yunshuyuan.cc +yunsom.com +yunsong.com +yunstu.net +yunsuan.org +yunsuanzi.com +yunsuo.com +yuntaigo.com +yuntask.com +yuntemai.com +yuntianti.com +yuntingiot.com +yuntongbu.com +yuntongcloud.com +yuntongtech.com +yuntongxun.com +yuntouxiang.com +yuntu.io +yunvm.com +yunvs.com +yunwangke.com +yunwei8.com +yunweibang.com +yunweipai.com +yunwenxue.com +yunwins.com +yunwuxian.net +yunxi.tv +yunxi10.com +yunxin123.com +yunxindai.com +yunxindns.com +yunxinfa.com +yunxinshi.com +yunxiu.com +yunxuetang.com +yunxzb.com +yunyi-dd.com +yunyihudong.com +yunyijk.com +yunyin.org +yunying166.com +yunyingdashu.com +yunyingketang.com +yunyingmiao.com +yunyingpai.com +yunyingxuetang.com +yunyingzhe.com +yunyingzhinan.com +yunyis.com +yunyoufeitian.com +yunyouni.com +yunyousj.com +yunyu123.com +yunyue.cc +yunyuh5.com +yunzhan365.com +yunzhangfang.com +yunzhanggui.net +yunzhanghu.com +yunzhanxinxi.com +yunzhifankeji.net +yunzhijia.com +yunzhitai.com +yunzhixiyou.com +yunzhizao.net +yunzhu100.com +yunzmall.com +yunzongnet.com +yunzujia.com +yunzz.net +yupiao.info +yupoo.com +yupsky.com +yupu.com +yuqianshu.com +yuqiaolong.com +yuqinge.com +yuquanhosp.com +yuque.com +yureen.com +yurenty.com +yuriimg.com +yusa.me +yushanapp.com +yushengny.com +yushexuetang.com +yushin88.com +yushu5.com +yushuha.com +yushunews.com +yusi.com +yusi.tv +yusi123.com +yusidunzc.com +yuteng.site +yutian.cc +yutianedu.com +yutong.com +yutuwo.com +yuu1.com +yuuboo.net +yuucn.com +yuudnn.com +yuuwan.com +yuwan-game.com +yuwandian.com +yuwanshe.com +yuweixian.com +yuwell.com +yuwellgroup.com +yuwen360.com +yuwenchaoshi.com +yuwenmi.com +yuwennews.com +yuwenxiandaihua.com +yuxianall.com +yuxiangrc.com +yuxiaor.com +yuxinba.com +yuxinews.com +yuxingqiu.com +yuxinzhilian.com +yuxip.com +yuxitech.com +yuxungs.com +yuxunzy.com +yuyicai.com +yuyin.tv +yuyu.com +yuyuangewh.com +yuyue111.com +yuyuema.com +yuyueshop.com +yuyuhunter.com +yuyuntech.com +yuzeli.com +yuzhaimedia.com +yuzhainan.com +yuzhenhai.com +yuzhi100.com +yuzhike.com +yuzhong.net +yuzhongxxw.com +yuzhoutuofu.com +yuzhouwan.com +yuzhua.com +yuzhuagame.com +yuzhuan.com +yuzhulin.com +yuzi.net +yuzzl.com +yveqi.com +yvv.in +yw11.com +yw2005.com +yw40.vip +ywart.com +ywbank.com +ywcbs.com +ywcec.com +ywdier.com +ywditan315.com +ywec.net +ywg7.com +ywies-shpd.com +ywindex.com +ywinf.com +ywky.org +ywlm.net +ywnds.com +ywnz.com +ywopt.com +ywork.me +ywsawei.com +ywshouyou.com +ywsoftware.com +ywtd.xyz +ywtlfishing.com +ywtrzm.com +ywtx.cc +ywxue.com +ywxzz.com +ywy7.com +ywyanxing.com +yx-g.com +yx-life.com +yx-s.com +yx-s.net +yx.com +yx.rs +yx0599.com +yx090.com +yx10011.com +yx129.com +yx129.net +yx231.com +yx7088.com +yx74.com +yxbao.com +yxbhhbkj.com +yxbox91.com +yxbuluo.com +yxcax.com +yxcc.net +yxcity.com +yxcshui.com +yxcuv.com +yxdaily.com +yxdd.com +yxdgc.com +yxdh.com +yxdimg.com +yxdoc.com +yxdown.com +yxdr.com +yxdsgs.com +yxduo.com +yxdwj.com +yxecg.com +yxen.net +yxfw.com +yxfwai.com +yxhenan.com +yxhhdl.com +yxhi.com +yxhqj.com +yxi.cc +yximgs.com +yxin18.com +yxinbao.com +yxit.net +yxixy.com +yxjedu02.com +yxjia.com +yxke12.com +yxkfw.com +yxkjlcd.com +yxlady.com +yxlady.net +yxlink.com +yxlmdl.net +yxm.com +yxmspx.com +yxn.fun +yxool.com +yxou.com +yxpjw.net +yxpk.net +yxpopo.com +yxptfs.com +yxqiche.com +yxrank.com +yxrb.net +yxsc33.com +yxsea.com +yxshgwjy.com +yxsos.com +yxss.com +yxsss.com +yxt-tattoo.com +yxt.com +yxt521.com +yxtvg.com +yxwoo.com +yxxurl.com +yxyfhgc.com +yxyzjx.com +yxz.me +yxzxgy.com +yy-xjy.com +yy.com +yy138.com +yy2169.com +yy2hd.com +yy4080.com +yy591.com +yy6080.org +yy845.com +yyangmob.com +yyasp.net +yybox.cc +yycaf.net +yyccia.com +yycec.com +yyclouds.com +yyclub.org +yycoin.com +yycqc.com +yycro.com +yydbzz.com +yydfwl.com +yydidai.com +yydzh.com +yyearth.com +yyestar.com +yyetss.com +yyfangchan.com +yyfax.com +yyfdcw.com +yyfq.com +yyfsb.com +yyg.com +yygjuu.club +yygold.com +yygrammar.com +yygzs.com +yyh.co +yyh.la +yyh2.com +yyhao.com +yyhh.com +yyhhaa.com +yyhn365.com +yyhomer.com +yyjzt.com +yyk100.com +yyk2.com +yykepu.com +yykj.org +yylending.com +yylm.org +yymedias.com +yymh999.com +yyming2.com +yymoban.com +yyny.me +yypcb.com +yypm.com +yypt.com +yyq.com +yyrtv.com +yystatic.com +yysub.net +yysweb.com +yysycn.com +yytad.com +yytcdn.com +yytek.com +yytgjjk.com +yytingli.com +yyuap.com +yyuasa.com +yywlsj.com +yywords.com +yywt.online +yywz123.com +yywzw.com +yyx168.com +yyxfzy.com +yyxscn.com +yyxt.com +yyxtao.com +yyxwzx.com +yyxx100.com +yyxxgame.com +yyxxgameyw.com +yyy5414.com +yyyeee.com +yyyy.games +yyzai.com +yyzsoft.com +yyzw.com +yyzyytj.com +yyzzsem.com +yz-iot.com +yz-show.com +yz061.com +yz063.com +yz168.cc +yz360.cc +yz3g.net +yz868.com +yzbank.com +yzbo.tv +yzbqzx.net +yzcyjy.com +yzdir.net +yzdn.net +yzfang.com +yzfc8.com +yzfjy.com +yzgjgs.com +yzgnet.com +yzgttm.com +yzhbw.net +yzhli.com +yzhtidc.com +yzintelligence.com +yzinter.com +yzipi.com +yzjbh.com +yzjjw.net +yzjsxy.com +yzkimage.com +yzkjpcb.com +yzmcms.com +yzmcxx.com +yzmg.com +yzmiao03.com +yzmjw.com +yzmoney.com +yznano.com +yznn.com +yzpetfood.com +yzpsb.com +yzrb.com +yzrom.com +yzs.com +yzspdq.com +yzt-tools.com +yztcdn.com +yzwb.com +yzwb.net +yzzs.cc +yzzzn.com +z-bank.com +z-index.cc +z-inn.com +z-zhuji.com +z.hr +z0.cc +z01.com +z0ukun.com +z1233.com +z12345.com +z2sci.com +z316.com +z3quant.com +z4bbs.com +z4m3.com +z5a.com +z5encrypt.com +z5z4.com +z701.com +z7xz.com +z7ys.com +z8q.cc +za-doctor.com +zablog.me +zac1993.com +zackku.com +zackxu.com +zaduonews.com +zadzs.com +zaeke.com +zahtb.com +zahuibaike.com +zahuishi.com +zai-art.com +zaibei.net +zaichengdu.com +zaidu.la +zaidudu.net +zaiduu.com +zaih.com +zaihuangshi.com +zaijia.com +zaijiawan.com +zailouxia.com +zaiminglvsuo.com +zainanjing365.com +zaisd.com +zaitianyan.com +zaitong.net +zaitongxiang.com +zaitouwang.com +zaiwai.com +zaixian-fanyi.com +zaixianfanyi.com +zaixianjianli.com +zaixiankaoshi.com +zaixs.com +zaixuchang.com +zaiyulin.com +zaiyunli.com +zaizai8.com +zakdy.com +zallcn.com +zallfuhui.com +zallgo.com +zallimg.com +zalljinfu.com +zampda.net +zampdmp.com +zampdsp.com +zamplink.net +zamplus.com +zampshare.com +zamptrak.com +zan-shang.com +zanba.com +zanbai.com +zangaifamily.com +zangaopet.com +zangdiyg.com +zanghaihuatxt.com +zangx.com +zanpic.com +zantainet.com +zanyiba.com +zaobang.com +zaoche168.com +zaodao.net +zaodin.com +zaodula.com +zaofabiao.com +zaofacai.com +zaogai.com +zaojiance.com +zaojiance.net +zaojiao.com +zaojiu.com +zaojv.com +zaojvdashi.com +zaole.net +zaopang.com +zaoshu.so +zaowandushu.com +zaowannews.com +zaoxu.com +zaoyang.org +zaoys.com +zaozhuanggo.com +zaozuo.com +zastatic.com +zasv.com +zasv.net +zat.cc +zatan.com +zatan8.cc +zatest.com +zatxt.com +zazhi.com +zazhiboss.com +zazhipu.com +zazsz.com +zb-kc.com +zb1.org +zb580.tv +zb7.com +zb8.com +zbai.net +zbapk.com +zbbar.net +zbfilm.com +zbfjsj.com +zbgedu.com +zbgl.net +zbgscm.com +zbhouse.com +zbii.com +zbintel.com +zbird.com +zbj.com +zbjdev.com +zbjdr.com +zbjiangsu.com +zbjimg.com +zbjsaas.com +zbjwork.com +zbkszx.net +zbling.com +zblogcn.com +zbluqian.com +zblzm.xyz +zbmcjx.com +zbmx666.com +zbnews.net +zbnxs.com +zbopr.net +zbqlm.com +zbqzy.com +zbrushcn.com +zbuhe.com +zbusa.com +zbwbbs.com +zbwdj.com +zbwg.cc +zbxsoft.com +zbxyh.com +zbytb.com +zbyz.net +zbz.com +zbzaixian.com +zbzdm.com +zbzhandian.com +zbzmtbk.com +zbzw.com +zbzw.la +zc-ha.com +zc-jk.com +zc0.net +zc0317.com +zc181.com +zc532.com +zcaijing.com +zcbjs.com +zcccc.com +zcdog.com +zcdsp.com +zcfc.com +zcfccs.com +zcfirst.com +zcfuhua.com +zcfy.cc +zcgsfy.com +zciii.com +zcimg.com +zcitidc.com +zcitwf.com +zciv.com +zcjxedu.com +zclock.xyz +zcmlc.com +zcmorefun.com +zcoa365.com +zcobrand.com +zcodc.com +zcom.com +zcoming.com +zcooler.com +zcosz.com +zcphp.com +zcppt.com +zcqh.com +zcqss.com +zcread.com +zcry007.com +zcs.cc +zcsbbs.com +zcsblog.com +zcskj.com +zctl.net +zctx.com +zcwlsc.com +zcwxjx.com +zcwz.com +zcxn.com +zcycdn.com +zcyiyao.com +zczj.com +zczy001.com +zd-ddos.com +zd-ddos.net +zd-power.com +zd.hk +zd200572.com +zdao.com +zdaye.com +zdb.io +zdcj.net +zdcjw18.com +zddhr.com +zdding.com +zddream.com +zdexe.com +zdface.com +zdfans.com +zdfans7.com +zdfx.net +zdh168.com +zdhaitao.com +zdhkyw.com +zdhnayr.com +zdic.net +zditect.com +zdjyj.com +zdkqyy.com +zdlife.com +zdlink.com +zdlpk.net +zdmimg.com +zdmr.net +zdnscloud.biz +zdnscloud.com +zdnscloud.info +zdnscloud.net +zdomo.com +zdoz.net +zdpeanut.com +zdpvt.com +zdrcrx.com +zdrcw.com +zdsee.com +zdslb.com +zdsr.net +zdwang.com +zdwfy.com +zdworks.com +zdwx.net +zdyrs.com +zdz.la +zdzdm.com +zdzwtesting.com +zdzxtech.com +ze13.com +ze5.com +zeakr.com +zealer.com +zeali.net +zealquest.com +zealsafe.net +zebred.com +zechoriah.com +zechunbengye.com +zedukm.com +zeelis.com +zeesin.com +zego.im +zeguoren.com +zeidei.com +zeisp.com +zeixihuan.com +zejiri.net +zeju.com +zelininfo.com +zelinonline.com +zemismart.com +zemuo.com +zen-est.com +zengdefei.com +zengjunpeng.com +zengrong.net +zenha.net +zenixauto.com +zenoven.com +zentao.net +zentaoms.com +zentaopm.com +zep8.com +zeperd.com +zeq366.net +zerobreeze.com +zerocollege.com +zerogfans.com +zeroling.com +zeruns.tech +zerustech.com +zesidasi.com +zesmob.com +zeststore.com +zetast.com +zeus.dl.playstation.net +zeuux.com +zeuux.org +zexiaoqiao.com +zeyi.cc +zeyouquan.com +zeze.com +zf-8.com +zf3d.com +zfancy.net +zfboke.com +zfcm.net +zfdmkj.com +zff888.com +zfhz.org +zfimg.com +zfkjgw.com +zfl9.com +zfowed.com +zfrmt.com +zfrontier.com +zfsc.com +zfsoft.com +zft.com +zfvnet.com +zfw.me +zfw.net +zfwimg.com +zfyml.com +zg-import.com +zg-imsoft.com +zg114w.com +zg163.net +zg3721.com +zg388.com +zg3china.com +zg45.net +zga81.com +zgaxr.com +zgazxxw.com +zgbenrun.com +zgbigart.com +zgbjyx.com +zgbmcl.com +zgboke.com +zgbywl.com +zgbzad.com +zgc-bigdata.org +zgc-dsa.org +zgcahpw.com +zgcbank.com +zgcbb.com +zgcbzs.com +zgcdiy.com +zgchawang.com +zgchawang.net +zgchrx.com +zgcicc.com +zgcindex.org +zgcjm.org +zgcjpx.com +zgcmlm.com +zgcsa.org +zgcshzz.org +zgcswhcbw.com +zgcups.com +zgddmx.com +zgddwhzb.com +zgdsw.com +zgdwzp.com +zgdxhbkf.com +zgdydyxh.com +zgdzqw.com +zgeci.com +zgflzxzx.org +zgfwgj.com +zgfxnews.com +zgfznews.com +zgg.com +zgg55.com +zggbdsw.net +zggcks.com +zggdjj.com +zggjgy.com +zgglkx.com +zgglyun.com +zggonglue.com +zggqzp.com +zggx.net +zggys.com +zghanlv.com +zghde.com +zghhzx.net +zghotnews.com +zghouse.net +zghtcd.com +zghtedu.com +zghtqk.com +zgjcks.com +zgjf168.com +zgjhjy.com +zgjiemeng.com +zgjinsu.com +zgjjzyjy.org +zgjm.net +zgjm.org +zgjsks.com +zgjtb.com +zgjxcad.com +zgjxf.com +zgjyjj.com +zgkao.com +zgkashi.com +zgkawah.com +zgkfzz.com +zgkjb.com +zgkjcx.com +zgkjw.org +zgkjxww.com +zgkjzx.com +zgkqw.com +zglb.org +zglcyx.com +zgldgbsdshyjy.com +zglipin.com +zgljl2012.com +zglkq.net +zglscom.com +zglww.net +zglxw.com +zglzb.com +zglzh.com +zgmcxw.com +zgmdbw.com +zgmsbw.com +zgmsbweb.com +zgmxl.com +zgncjr.com +zgnfys.com +zgnhzx.com +zgnt.net +zgong.com +zgpingshu.com +zgpj.net +zgpts.com +zgqkk.com +zgqw.com +zgqyhzfy.com +zgqywhcbw.com +zgqyzxw.com +zgrdnews.com +zgrlm.com +zgruisai.com +zgsc123.com +zgsclp.com +zgsd.net +zgserver.com +zgshici.com +zgshifu.com +zgshige.com +zgshjj.com +zgshoes.com +zgshq.com +zgshxfw.com +zgsj.com +zgslb.net +zgsmmhw.com +zgsof.com +zgsssss.com +zgsta.com +zgswcn.com +zgsydw.com +zgsynews.com +zgtcqw.com +zgtghccl.com +zgtianqi.com +zgtjq.com +zgtlgs.com +zgtsm.com +zgtuku.com +zgtxw.com +zgtygg.com +zgtzhb.com +zgui.com +zguonew.com +zgw.com +zgwangzhan.com +zgweimeng.com +zgwenku.com +zgwgfw.com +zgwhfe.com +zgwhw.com +zgwlmusic.com +zgwrx.com +zgwt.co +zgwxbbs.com +zgxcfx.com +zgxf.org +zgxk.org +zgxqwqh.com +zgxrjy.com +zgxue.com +zgxyzx.net +zgycgc.com +zgycsc.com +zgyeda.com +zgyey.com +zgygsy.com +zgyhys.org +zgyingtong.com +zgyinpin.com +zgylqy.com +zgyongxin.com +zgys.net +zgyssyxh.com +zgystsd.com +zgyxsw.org +zgyygl.com +zgzcw.com +zgzcwy.com +zgzfwm.com +zgzjzzs.com +zgzkw.com +zgznh.com +zgzsrc.com +zgzwl.com +zgzy.net +zgzyqccj.com +zgzyqcgw.com +zgzzs.com +zh-itone.com +zh.cc +zh188.net +zh30.com +zh51home.com +zhai14.com +zhai6.com +zhaiba.com +zhaidou.com +zhaifu.cc +zhaifu.tv +zhaihai.com +zhaiiker.com +zhaikexueyuan.com +zhaimansky.com +zhainanba.net +zhainanbaw.com +zhainanfulishe.com +zhainanhuayuan.com +zhaiqianfeng.com +zhairport.com +zhaisiji.net +zhaixiaoniu.com +zhan.com +zhandaren.com +zhandodo.com +zhang.ge +zhang365.com +zhang6.net +zhangchi.art +zhangdanyang.com +zhangdongshengtech.com +zhangdongxuan.com +zhangdu5.net +zhangdu520.com +zhange8.com +zhangfensir.com +zhanggang.net +zhanggao.club +zhanggaoyuan.com +zhanggee.com +zhanghaijun.com +zhanghongliang.com +zhanghuanglong.com +zhangjh.me +zhangjiaoshou.net +zhangjiexiong.com +zhangjinkun.com +zhangjunbk.com +zhangkai.red +zhangle.com +zhangli2015.com +zhangliziyun.com +zhangluya.com +zhanglvtong.com +zhangmen.com +zhangmen.org +zhangmenkid.com +zhangnan.xyz +zhangnq.com +zhangqi.ltd +zhangqiaokeyan.com +zhangqiongjie.com +zhangqiu.cc +zhangrunnan.com +zhangsenhao.com +zhangshengrong.com +zhangtielei.com +zhangtu.com +zhangu365.com +zhangweijie.net +zhangwenli.com +zhangxiaoyang.me +zhangxinhuichuan.com +zhangxinhulian.com +zhangxinxu.com +zhangyin.org +zhangyongjun.com +zhangyoubao.com +zhangyoushijie.com +zhangyu.com +zhangyue.com +zhangyue.net +zhangyue01.com +zhangyue02.com +zhangyue03.com +zhangyugg.com +zhangyulive.com +zhangyunling.com +zhangyuqing.me +zhangzhao.me +zhangzhengfan.com +zhangzhongpei.com +zhangzhongwang.com +zhangzhongyun.com +zhangzidao.com +zhangzifan.com +zhangziran.com +zhangzishi.net +zhangzs.com +zhanh.com +zhanhi.com +zhankoo.com +zhanlingol.com +zhanmazj.com +zhanqi.net +zhanqi.tv +zhanqitv.com +zhanqu.im +zhanshaoyi.com +zhanshiren.com +zhanst.com +zhansu.com +zhantai.com +zhantuo.com +zhanxingfang.com +zhanyicg.com +zhanyouyun.com +zhanzhang.net +zhaoapple.com +zhaobeidaxiao.com +zhaobeijing.com +zhaobuxiu.com +zhaocaibb.com +zhaocaihr.com +zhaocait.com +zhaocaiyan.com +zhaochafa.com +zhaochangjixie.com +zhaocheyun.com +zhaoda.net +zhaodanji.com +zhaodatu.com +zhaodll.com +zhaofangbang.net +zhaofanguan.com +zhaofile.com +zhaofinger.com +zhaogang.com +zhaogangimg.com +zhaogepu.com +zhaoguoshu.net +zhaohaipeng.com +zhaoj.in +zhaojiao.net +zhaojiaoan.com +zhaojiaxiao.com +zhaokaifeng.com +zhaokao.net +zhaokeli.com +zhaokuaizhao.com +zhaoliangji.com +zhaoliming.net +zhaolongedu.com +zhaomei.ink +zhaomengtu.com +zhaoming.biz +zhaomxd.com +zhaoneibuquan.com +zhaoniupai.com +zhaoonline.com +zhaopianzhibo.com +zhaopin.com +zhaopin668.com +zhaopinbao.me +zhaopingou.com +zhaopins.com +zhaoqianwang.com +zhaoqt.net +zhaoshang.net +zhaoshang100.com +zhaoshang800.com +zhaoshangbang.com +zhaoshangbao.com +zhaoshangdai.com +zhaoshayou.com +zhaosheng.com +zhaosheng365.com +zhaosifang.com +zhaosw.com +zhaotonghang.com +zhaouc.com +zhaouc.net +zhaowenxishi.com +zhaowofanyi.com +zhaowuding.net +zhaoxi.net +zhaoxi.org +zhaoxiaoshuo.com +zhaoxin.com +zhaoxitech.com +zhaoxiuyuan.com +zhaoyanblog.com +zhaoyangmao.com +zhaoyangsem.com +zhaoyangxueyuan.com +zhaoyaojd.com +zhaoyasai.com +zhaoyb.net +zhaoyingtian.com +zhaoyinqian.com +zhaoyuan365.com +zhaoyun.com +zhaozhanxu.com +zhaozhaoqu.com +zhaozhishi.com +zhaozongjie.com +zhatoufa.com +zhbit.com +zhblawyer.com +zhcf001.com +zhcw.com +zhdba.com +zhdclink.com +zhdgps.com +zhdzsw.com +zhe.com +zhe28.com +zhe4000.com +zhe800.com +zhebei.com +zhebiekeji.com +zhedakaoyan.com +zhefengle.com +zhejiangmuseum.com +zhejiangqinghe.com +zhejiangweiniu.com +zhejie.com +zhekouo.com +zhelaoda.com +zheli.com +zheliyangsheng.com +zhen-ao.com +zhen.com +zhenai.com +zhenaoyaoye.com +zhenbi.com +zhenbizi.com +zhending-chicken.com +zhenfang.me +zhenfund.com +zheng800.com +zhengcaimall.com +zhengcaishangcheng.com +zhengdabm.com +zhengdaotang.com +zhengdichaiqian.com +zhengding.cc +zhengfenduojin.com +zhengguzhishen.com +zhenghangyq.net +zhenghemold.com +zhengjia.com +zhengjiantong.com +zhengjicn.com +zhengjie.com +zhengmeng.net +zhengpinle.com +zhengqingsong.com +zhengruioi.com +zhengshihf.com +zhengshuku.com +zhengtoon.com +zhenguo.com +zhengwutong.com +zhengxiaoling.com +zhengxinbao.com +zhengyaing.win +zhengyee.com +zhengyexing.com +zhengyifeng.com +zhengyinyong.com +zhengyounet.com +zhengzai.tv +zhengzhoubus.com +zhengzhoulvxing.com +zhengzi.me +zhengzihui.com +zhenhaotao.com +zhenhaotv.com +zhenhong56.com +zhenhuajn.xin +zhenhuan888.com +zhenimg.com +zhenjiahuo.com +zhenjiang-marathon.com +zhenleishan.com +zhenlian.online +zhenlinxin.com +zhenlishen.com +zhenniu24.com +zhenpin.com +zhenren.com +zhenrongbao.com +zhensoushu.com +zhentan.la +zhenwu.com +zhenxian.fm +zhenxingkuangchanpin.com +zhenyouhuo.com +zhenyouliao.com +zhenyouweb.com +zhenzanzixun.com +zhepic.com +zhesui.com +zhetao.com +zhetian.org +zheurl.com +zhexi.tech +zhexinit.com +zheyangai.com +zheye.cc +zheye.com +zheyibu.com +zheyouquan.net +zheyouxinxi.com +zhezheai.com +zhezhekan.com +zhezhier.com +zhfc.com +zhfile.com +zhfund.com +zhgc.com +zhgjm.com +zhgl.com +zhgnj.com +zhguoguo.com +zhh.me +zhhainiao.com +zhhbqg.com +zhhrm.com +zhhs-china.com +zhhtxt.com +zhhuahui.com +zhhy-oa.com +zhi-bo.net +zhi-ming.com +zhi-niao.com +zhi.hu +zhi12.com +zhiaikm.com +zhiaimusic.com +zhiannet.com +zhiaxue.com +zhib.net +zhibao2car.com +zhibiao8.com +zhibo.at +zhibo.co +zhibo.me +zhibo.tv +zhibo8.cc +zhibo8.com +zhiboba.com +zhiboba.org +zhiboqiao.com +zhiboyun.net +zhibs.net +zhibugongzuo.com +zhicaiwang.com +zhicall.com +zhicg.com +zhichanli.com +zhicheng.com +zhichepin.com +zhichikeji.com +zhichiwangluo.com +zhichiweiye.com +zhichu100.com +zhicms.cc +zhidao91.com +zhidaoanli.com +zhidaoketang.com +zhidesoft.com +zhideyimai.com +zhidian3g.com +zhidieyun.com +zhiding0603.com +zhidiy.com +zhidj.com +zhidmai.com +zhiduopc.com +zhidx.com +zhifa.cc +zhifang.com +zhifashengfa.com +zhifeishengwu.com +zhifoukeji.com +zhiftype.com +zhifufu.com +zhifujie.com +zhifure.com +zhifutui.com +zhifuzi.com +zhigou.com +zhiguagua.com +zhiguang.me +zhigudata.com +zhihe.mobi +zhihejia.com +zhihemobi.com +zhihengwangchen.com +zhihjf.com +zhihone.com +zhihu.com +zhihu.dev +zhihu66.com +zhihudsp.com +zhihuiduijian.com +zhihuiep.com +zhihuihuiwu.com +zhihuiji.com +zhihuinanzhan.com +zhihuirenshe.com +zhihuishitang.net +zhihuishu.com +zhihuiya.com +zhihuizhangyu.com +zhihuizp.com +zhihuoseo.com +zhiji.com +zhijia.com +zhijiang.biz +zhijiangames.com +zhijianhutong.com +zhijiaoyi.com +zhijiapro.com +zhijidoc.com +zhijieketang.com +zhijin.com +zhijinwang.com +zhijl.com +zhijuke.com +zhikao100.com +zhiketong.com +zhiketong.net +zhikubao.net +zhilandaren.com +zhilehuo.com +zhileng.com +zhili-hr.com +zhilian.com +zhilianfm.com +zhiliangren.com +zhilianhttp.com +zhiliaoke.com +zhiliaomj.com +zhilii.com +zhilingshidai.com +zhilong.me +zhilongtech.com +zhiluo.net +zhimacangku.com +zhimace.com +zhimantian.com +zhimaruanjian.com +zhimatech.com +zhimawenda.com +zhimax.com +zhimg.com +zhimi.com +zhimoe.com +zhinengdayi.com +zhinengshe.com +zhinengxia.com +zhinet.com +zhinews.com +zhinikefu.com +zhiniu8.com +zhipan.net +zhipeix.com +zhipiaoduixian8.com +zhipin.com +zhipingke.com +zhiqiang.org +zhiqiapp.com +zhiqu.org +zhiquansheng.com +zhiquanxia.com +zhiquyuan.com +zhiread.com +zhiren.com +zhiren.ren +zhirenhr.com +zhiribao.com +zhiru.com +zhirui-inv.com +zhiruyi.com +zhisanzhao.com +zhisheji.com +zhishi.life +zhishichong.com +zhishifenzi.com +zhishihao.com +zhishikoo.com +zhishilin.com +zhishiniu.com +zhishisoft.com +zhishiwu.com +zhishizhan.net +zhishuedu.com +zhishutang.com +zhisiyun.com +zhitongcaijing.com +zhitoudsp.com +zhitouxing.com +zhituad.com +zhitui.com +zhiweidata.com +zhiweilaijiaoyu.com +zhiwo.com +zhiwuwang.com +zhixiaohuoke.com +zhixiaoren.com +zhixiaorenurl.com +zhixin-semi.com +zhixingapp.com +zhixingbus.com +zhixinlu.com +zhixuan.com +zhixue.com +zhixue.org +zhixueyun.com +zhiye.com +zhiyeapp.com +zhiyehaiwai.com +zhiyequan.com +zhiyi.com +zhiyicx.com +zhiyinghui.com +zhiyingtuan.com +zhiyinhao.com +zhiyinlou.com +zhiyinmedia.com +zhiyoo.com +zhiyoubao.com +zhiyuan-group.com +zhiyuanit.com +zhiyuanyun.com +zhiyujit.com +zhiyun-tech.com +zhizaoye.net +zhizaoyun.com +zhizhang.com +zhizhebuyan.com +zhizhen.com +zhizhi88.com +zhizhibaike.com +zhizhihu.com +zhizhizhi.com +zhizhonghl.com +zhizhoukeji.com +zhizhucms.com +zhizhuwu.com +zhizhuyx.com +zhizihuan.com +zhizihuan.net +zhiziyun.com +zhizunbao668.com +zhizunbo.com +zhizundns.com +zhizunlian.com +zhizunnews.com +zhizuobiao.com +zhizuobiaojiaoyu.com +zhizuoh5.com +zhizuotu.com +zhj9.com +zhjiameng.com +zhjj.org +zhjncb.com +zhjs.cc +zhjypco.com +zhk.me +zhku.com +zhl.com +zhld.com +zhlhh.com +zhliqi.com +zhlseo.com +zhlzw.com +zhmeiwen.com +zhmf.com +zhmold.com +zhmzjl.com +zhmzqi.com +zhnjw.com +zhnxcw.com +zhobang.com +zhong.com +zhong100.com +zhongan.com +zhongan.io +zhonganfengshang.com +zhonganinfo.com +zhongbaounion.com +zhongbingtongxin.com +zhongbowenwu.com +zhongboxinwen.com +zhongchaoyinshua.com +zhongchebaolian.com +zhongchoujia.com +zhongchouke.com +zhongchouyan.com +zhongchuang365.com +zhongchuanjukan.com +zhongda021.com +zhongdaonet.com +zhongdeng.com +zhongdengwang.com +zhongdi168.com +zhongdoulicai.com +zhongfenxian.com +zhongfenxiang.com +zhongfu.net +zhongguancun.com +zhongguobaiyin.com +zhongguoditu.com +zhongguofeng.com +zhongguohao123.com +zhongguohuo.com +zhongguojianmenguan.com +zhongguojie.org +zhongguojie.wang +zhongguojinrongtouziwang.com +zhongguojixiewang.com +zhongguomap.com +zhongguopeixun.net +zhongguose.com +zhongguoseo.net +zhongguoshici.com +zhongguosou.com +zhongguowangshi.com +zhongguoxianhua.com +zhongguoyimin.net +zhongguoym.com +zhongh.com +zhonghaitech.com +zhonghegame.com +zhonghhd.com +zhonghongwang.com +zhonghr.com +zhonghua-pe.com +zhonghuacar.com +zhonghuacpa.com +zhonghuadiancang.com +zhonghuaent.com +zhonghuamba.com +zhonghuameiwang.com +zhonghuanus.com +zhonghuaqiming.com +zhonghuasuan.com +zhonghuawuxia.com +zhonghuayuwenzhishiku.org +zhongjiangapp.com +zhongjie.com +zhongjijidian.com +zhongjintongsheng.com +zhongjitou.com +zhongkao.com +zhongkaohelp.com +zhongkerd.com +zhongkezhuyan.com +zhongkongbancn.com +zhongleny.com +zhonglewz.com +zhonglian.com +zhonglianfactoring.com +zhongliucls.com +zhongliuyiyuan.com +zhonglun.com +zhongman.com +zhongmian.com +zhongmingmao.me +zhongniu.com +zhongpaiwang.com +zhongqixin360.com +zhongrenbang.cc +zhongrongjz.com +zhongruigang.com +zhongruihuacheng.com +zhongruitech.com +zhongshang114.com +zhongshanpark.com +zhongshanyinyuetang.org +zhongshengdai.com +zhongshucan.com +zhongso.com +zhongsou.com +zhongsou.net +zhongtaitrust.com +zhongtieyintong.com +zhongtoufa.net +zhongtuobang.com +zhongwcs.com +zhongwei-info.com +zhongweijy.com +zhongwenhexinqikan.com +zhongwenqing.com +zhongwucan.com +zhongxiangdichan.net +zhongxing123.com +zhongxinwanka.com +zhongxunrunda.com +zhongxuntv.com +zhongyao1.com +zhongyaoyi.com +zhongye.net +zhongyegongkao.com +zhongyemba.com +zhongyidiantong.com +zhongyiiot.com +zhongyiju360.com +zhongyishangwu.com +zhongyoo.com +zhongyouex.com +zhongyougc.com +zhongyunjy.com +zhongzhao.com +zhongzhengzs.com +zhongzhide.com +zhongzhifaqian.com +zhongzhilin.com +zhongzhixin.com +zhongzhoutm.com +zhongzq.com +zhonzhu.com +zhopera.com +zhou1go.com +zhouao.com +zhoubochina.com +zhouchun.net +zhoudaosh.com +zhougong.com +zhouhoulin.com +zhoujiahong.com +zhoujianhui.com +zhoujiping.com +zhoulaoshi.club +zhoulingjie.com +zhoushangren.com +zhoushengfe.com +zhouxiao.me +zhouxingchi.info +zhouxuanyu.com +zhouyi.biz +zhouyi.cc +zhouyi.org +zhouyi114.com +zhouyigw.com +zhouyiju.com +zhouyuanchao.com +zhouzhuang.net +zhpanzi.com +zhqyue.com +zhrczp.com +zhrtc.com +zhs6.com +zhsan.com +zhsho.com +zhshw.com +zhskw.com +zhsyb.cc +zhtelecom.com +zhtmid.com +zhtzvip.com +zhu.cm +zhu360.com +zhu7jie.com +zhuainiu.com +zhuaishuan.com +zhuan16.com +zhuanfa.net +zhuanfou.com +zhuang520.com +zhuang666.com +zhuang99.com +zhuangji.net +zhuangjiba.com +zhuangjiyuan.com +zhuangku.com +zhuangle.cc +zhuangniu.net +zhuangpeitu.com +zhuangpin.com +zhuangxiaomi.com +zhuangxiu.com +zhuangxiu22.com +zhuangxiu567.com +zhuangxiu6.com +zhuangxiubao.com +zhuangxiuzhai.com +zhuangyi.com +zhuangzhuang.cf +zhuangzhuang.net +zhuanhuanqi.com +zhuaniao.com +zhuanile.com +zhuankeba.org +zhuanlichaxun.net +zhuanliqiao.com +zhuanmenmian.com +zhuannet.com +zhuanpinyin.com +zhuanqianer.com +zhuansoo.com +zhuanstatic.com +zhuantilan.com +zhuanyejun.com +zhuanyepeixun.com +zhuanyes.com +zhuanyezhidao.com +zhuanyun.cc +zhuanyun123.com +zhuanyuntang.com +zhuanzfx.com +zhuanzhi.ai +zhuanzhi.net +zhuanzhuan.com +zhuanzhuantui.com +zhuanzhuvpn.com +zhuashouru.com +zhuatang.com +zhuax.com +zhuaxia.com +zhuaying.com +zhuayou.com +zhuayoukong.com +zhuazi.com +zhubai.love +zhubaijia.com +zhubajie.com +zhubajie.la +zhubangbang.com +zhubao.com +zhubao668.com +zhubaojizhen.com +zhubaoq.com +zhubian.com +zhubiaoju.com +zhubijiao.com +zhubo123.com +zhubogu.com +zhuboqiang.com +zhuceshenzhengongsi.com +zhuceyou.com +zhucezn.com +zhuchao.cc +zhudai.com +zhudianquan.com +zhufaner.com +zhufengpeixun.com +zhufenqi.com +zhufushuo.com +zhuge.com +zhugeapi.com +zhugeapi.net +zhugefang.com +zhugeio.com +zhuhaily.com +zhuhaimy.com +zhuhd.win +zhuhongliang.com +zhuici.com +zhuici.net +zhuiguang.com +zhuihuodong.com +zhuimengzhu.com +zhuiqu.com +zhuishu.tw +zhuishu5.com +zhuishubang.com +zhuishushenqi.com +zhuishuwang.com +zhuiwan.org +zhuixinfan.com +zhuixingwang.com +zhuixue.net +zhuiyi.ai +zhuizhuiimg.com +zhuizhuiyoyo.com +zhuji.com +zhuji.la +zhuji.net +zhuji5.com +zhujia360.com +zhujian.org +zhujiangbeer.com +zhujiange.com +zhujiangrc.com +zhujiangroad.com +zhujib.com +zhujibank.com +zhujibiji.com +zhujiceping.com +zhujiwiki.com +zhujiwu.com +zhujiyou.com +zhuke.com +zhulang.com +zhulanli.com +zhuli.me +zhulincat.com +zhuliudai.com +zhuliuwu.com +zhulixiaolie.com +zhulogic.com +zhulong.com +zhulu86.com +zhumengwl.com +zhumu.me +zhuna.net +zhunc.vip +zhundao.net +zhundaoyun.com +zhuniu.com +zhunniao.com +zhuo.com +zhuobufan.com +zhuofan.net +zhuofansoft.com +zhuoguang.net +zhuohuamg.com +zhuojie.cc +zhuokearts.com +zhuoku.com +zhuolin.wang +zhuomogroup.com +zhuoquapp.com +zhuoqun.info +zhuoshigroup.com +zhuoshixiong.com +zhuotingwl.com +zhuotujiaoyu.com +zhuoxue.cc +zhuoyi.com +zhuoyicp.com +zhuoyigame.com +zhuoyigame.site +zhuoyixuan.com +zhuoyou.com +zhuoyouba.net +zhuoyuanxinfang.com +zhuoyue.wang +zhuoyuebbs.com +zhuoyuechenxing.com +zhuozhengsoft.com +zhuozhoufangchan.com +zhuozhuogame.com +zhuqinit.com +zhuqiyang.com +zhuque.me +zhushou001.com +zhushuiwen.com +zhust.com +zhutao.com +zhuti.com +zhuticlub.com +zhutihome.net +zhutix.com +zhutix.net +zhutizhijia.net +zhutools.com +zhutou.com +zhutousan.net +zhuwang.cc +zhuwang360.com +zhuwona.com +zhuxianfei.com +zhuxiaobang.com +zhuxuejy.com +zhuxuncn.com +zhuye.kim +zhuyeshouhushen.com +zhuyitai.com +zhuyixie.com +zhuyst.cc +zhuyuce.com +zhuyunfeng.com +zhuzhai.com +zhuzher.com +zhuzhichao.com +zhuzhouwang.com +zhuzi.me +zhuzihaoke.com +zhw2101024.com +zhwangart.com +zhwdw.com +zhwenku.com +zhwenxue.com +zhwlgzs.com +zhx-mall.com +zhxfei.com +zhxinuser.com +zhxuser.com +zhxww.net +zhxy1z.com +zhy333.com +zhybb.com +zhyccw.com +zhycn.com +zhyd.me +zhyfjj.com +zhyi828.com +zhyingxiao.com +zhyouliang.com +zhyx707.com +zhyxcc.com +zhyymall.com +zhyyz.com +zhzays.com +zhzjw.net +zhzyw.com +zhzyw.org +zhzzx.com +zi-han.net +zi.com +ziben365.com +ziboga.com +zicaitou.com +zichabaogao.com +zichanzhihuan.com +zichenit.com +zidan.chat +zidanduanxin.com +zidanduanxin.net +zidian8.com +zidoo.tv +zidootv.com +ziewje.com +zifandiaosu.com +zifeiwuya.com +zige365.com +zigeer.com +ziguhonglan.com +zihai029.com +zihai0351.com +zihai0535.com +zihai0591.com +zihai0595.com +zihai0755.com +zihai24.com +zihexin.net +zihu.com +zihua01.com +ziipoo.com +ziisp.com +zijgdw.com +ziji.cc +zijiayouly.com +zijieapi.com +zijiecdn.com +zijieimg.com +zijinfx.com +zijinji.com +zijinsuo.com +zijiren.net +zijizhang.com +zikao-zikao.com +zikao.gd +zikao365.com +zikao5.com +zikaocqi.com +zikaoshu.net +zikaoshu.vip +zikaosw.com +zike.com +zikeys.com +zikoo.com +ziku123.com +zikui-design.com +zikuinfo.com +zilanwl.com +zilhua.com +zilian8.com +ziliaoge.com +ziliaoh.com +zilongame.com +zilongshanren.com +ziluolanh.com +zimacaihang.com +zimilan.com +zimoapps.com +zimrilink.com +zimu.me +zimukeji.com +zimuku.net +zimushe.com +zimuzimu.com +zimuzu.tv +zine.la +zinewow.com +zing-api.com +zingke.com +zingqi.com +ziniao.com +ziningmeng.com +ziniusoft.com +zintao.com +zintow.com +zip118.com +zipadc.com +zipjpg.com +ziq.com +ziqiangxuetang.com +ziroom.com +ziroomapartment.com +ziroomstay.com +zisea.com +zisen.com +ziseyiliao.com +zisha.com +zishahuyu.com +zishapot.com +zishu010.com +zishuo.com +zishuogif.com +zishuovideo.com +zisia.org +zisuo.com +ziti.so +ziti163.com +zitiao.org +zitiaonc.com +zitichina.com +ziticq.com +zitiguanjia.com +zitijia.com +zitixiazai.org +zituo.net +zivers.com +zivoo.com +ziwanyouxi.com +ziweihuan.com +ziwojianding.net +ziwork.com +ziwoyou.net +ziwufang.com +zixia.com +zixiangsakesi.com +zixiaomao.com +zixigua.com +zixijiaoshi.com +zixike.cc +zixuedao.com +zixuejie.com +zixuekaoshi.net +zixuephp.net +zixuntop.com +ziy.cc +ziyadiaoyu.com +ziyainfo.com +ziyan666.com +ziyawang.com +ziye114.com +ziyesy.com +ziyexing.com +ziyimall.com +ziyou.com +ziyou.studio +ziyoufa.com +ziyouwu.com +ziyuan.tv +ziyuan605.com +ziyuanbu.com +ziyuangou.com +ziyuanku.com +ziyuanm.com +ziyuanmaow.com +ziyuantun.com +ziyuewentao.com +ziyun.com +ziyuyx.com +zizaike.com +zizhuauto.com +zizhupark.com +zizisi.com +zizizizizi.com +zizzs.com +zj-hhcy.com +zj-idc.com +zj.com +zj01.com +zj123.com +zj12378.com +zj186.com +zj2460.com +zj31.net +zj32.com +zj42.com +zj93zp.com +zj96596.com +zjabank.com +zjaf.net +zjaqxy.com +zjautoparts.com +zjbiz.net +zjbyte.com +zjca.org +zjcb.com +zjcbank.com +zjcdn.com +zjchina.org +zjchuguo.com +zjcic.net +zjciming.com +zjcio.org +zjckw.org +zjcnbank.com +zjcrjzj.com +zjcuhb.com +zjcxbank.com +zjdashi.com +zjdata.net +zjdh.org +zjdomain.com +zjdybank.com +zjdydlc.com +zjdyjob.com +zje.com +zjedps.com +zjedu.org +zjepe.com +zjfdc.net +zjft.com +zjgas.net +zjggcm.com +zjgjj.com +zjgmdf.com +zjgqt.org +zjgrrb.com +zjgslb.com +zjgt.com +zjguji.com +zjgwy.org +zjgwyw.org +zjgzcpa.com +zjhcbank.com +zjhee.com +zjhejiang.com +zjhim.com +zjhnrb.com +zjhualing.com +zjhui.net +zjhx520.com +zjhyrcb.com +zjhzyg.net +zji.net +zjiecode.com +zjiis.com +zjimpact.com +zjipc.com +zjj17u.com +zjj21.com +zjjbtl.com +zjjd.org +zjjdamuzhi.com +zjjgcyz.com +zjjlvxing.com +zjjlvyou8264.com +zjjr.com +zjjsbank.com +zjjsit.com +zjjta.com +zjjubao.com +zjjushu.com +zjjy.com +zjjyuntian.com +zjjzyxh.com +zjkangzh.com +zjkccb.com +zjkelan.com +zjkgjj.com +zjkings.com +zjknews.com +zjks.com +zjlcwg.com +zjldrcb.com +zjlottery.com +zjlsbz.com +zjlvjie.com +zjlxtx.com +zjmax.com +zjmi-mall.com +zjmobile.com +zjmoney.com +zjmrhpt.com +zjnad.com +zjnrcb.com +zjolcdn.com +zjoldns.com +zjosm.com +zjpcedu.com +zjphrcb.com +zjpost.com +zjpubservice.com +zjqbj.com +zjqimeng.com +zjqk110.com +zjqll.com +zjrc.com +zjrc.net +zjrcu.com +zjrjks.org +zjsaisi.com +zjscdb.com +zjscs.com +zjshuo.com +zjsight.com +zjsjdjhq.tokyo +zjsr.com +zjstv.com +zjsxlt.com +zjszbank.com +zjtcn.com +zjtdw.com +zjtlcb.com +zjtntd.com +zjtree.com +zjtxedu.org +zjugis.com +zjujournals.com +zjuqsc.com +zjut.cc +zjutkz.net +zjwater.com +zjwc168.com +zjwk.com +zjwmw.com +zjwxbank.com +zjxc.com +zjxf119.com +zjxhgd.com +zjxpp.com +zjxqyy.com +zjxsbank.com +zjyanxing.com +zjyari.com +zjycpx.com +zjydt.com +zjyiot.com +zjyiqiao.com +zjykjy.com +zjyyang.com +zjyygy.com +zjzdgj.com +zjzfcj.com +zjzg.com +zjzj.org +zjzjhotel.com +zjzs.net +zjzsxb.com +zjzydns.com +zk2013.com +zk528.com +zk5u.com +zk71.com +zkailun.com +zkbedu.com +zkbhj.com +zkck.com +zkcmg.com +zkcrm.com +zkcserv.com +zkcx.com +zkdt.net +zkecopro.com +zkeli.com +zkeys.com +zkgjy.net +zkh360.com +zkhb.group +zkhcsoft.com +zkhcsy.com +zkii.net +zking.com +zkjxt.com +zkl2333.com +zkoffcn.com +zkokh.com +zkpk.org +zkread.com +zkroom.com +zksoftwaresz.com +zksxdhg.com +zkteco.com +zkteco.xin +zktimecube.com +zktools.net +zktsg.com +zktw.com +zku.net +zkunet.com +zkungfu.com +zkuyun.com +zkx.cc +zkxblog.com +zkxlkj.net +zkxww.com +zkydib.com +zkyouxi.com +zkyxls.com +zkzhkj.com +zkzj.org +zl532.com +zl99.org +zlbaba.com +zlca.org +zlcool.com +zlfedu.com +zlfind.com +zlg.com +zlgmcu.com +zlgpy.com +zlgsj.com +zlhelp.com +zlhome.com +zlhui.com +zlibs.com +zliiii.com +zlimg.com +zlink-e.com +zlkb.net +zlketang.com +zllife.net +zllyun.com +zlog.cc +zlongad.com +zlongame.com +zlook.com +zlorz.com +zlqh.com +zlqiao.com +zlscn.net +zlservice.net +zlsin.com +zlsnet.com +zlsoft.com +zltianhen.com +zluren.com +zlvod.com +zlw.so +zlygu.com +zm1717.com +zmapp.com +zmaxfilm.com +zmaxhotels.cc +zmbg.com +zmccx.com +zmctc.com +zmdfdc.com +zmdz.com +zmeng.cc +zmeng123.com +zmengzhu.com +zmfx8.com +zmgov.com +zmgrcw.com +zmhkl.com +zmidc.com +zmifi.com +zmingcx.com +zmirrordemo.com +zmister.com +zmjiudian.com +zmlearn.com +zmmdn.com +zmndjm.com +zmnds.com +zmnedu.com +zmnoa.com +zmnrz.com +zmobuy.com +zmonster.me +zmpal.com +zmqlh.com +zmren.com +zmrenwu.com +zmrgame.com +zmsc.cc +zmsq.com +zmt.me +zmtiantang.com +zmtpc.com +zmtquan.com +zmumu.com +zmwang.wang +zmwo.com +zmxiaoqu.com +zmxiazai.com +zmxiu.com +zmye5vly.com +zmzapi.com +zmzapi.net +zmzjk.com +zmzjstu.com +zn8.com +znb.me +znba.net +znbo.com +znczz.com +zndata.com +zndns.com +znds.com +znds.net +zndsbbs.com +zndstec.com +zngm.com +znhospital.com +znimg.com +znj.com +znjchina.com +znjj.tv +znlzd.com +znpin.com +znqnet.com +znshuru.com +znsjw.com +zntec.net +zntvrom.com +zntx.cc +znvren.com +znwb.com +znyp.com +znyseo.com +znyshurufa.com +znyxb.com +znzbt.com +znznet.net +zo-l.net +zocai.com +zocodev.com +zodiac.wang +zoe360.com +zoebon.com +zoform.com +zofund.com +zohead.com +zoioo.com +zoker.io +zokogo.com +zokstar.com +zol-img.com +zol.com +zollty.com +zolsky.com +zolyol.com +zombiescat.com +zomiu.com +zomvip.com +zomzone.com +zon100.com +zone139.com +zoneben.com +zoneidc.com +zoneker.com +zonemore.com +zonen-tech.com +zonepp.com +zoneve.com +zongcaidarentilihaoya.com +zonghangsl.com +zongheng.com +zonghengche.com +zonghengke.com +zonglai.mobi +zongliwei.com +zongming.net +zongs365.com +zongshenmotor.com +zongtiku.com +zongxiutang.net +zongyiconverge.com +zongyifile.com +zongyigame.com +zongyijia.com +zongyimobile.com +zongyionline.com +zongyiphone.com +zongyixun.com +zonhen.com +zonst.com +zontes.com +zooao.com +zoocer.com +zoofon.com +zoogooy.com +zookingsoft.com +zookparts.com +zoom-china.com +zoom.us +zoomeye.org +zoomlion.com +zoopda.com +zoosnet.net +zoossoft.com +zoossoft.net +zootui.com +zooyoo.cc +zoroli.com +zorrowh.com +zou.la +zou114.com +zoubiao.com +zoucheng.cc +zoucz.com +zoues.com +zoujinvr.com +zoular.com +zoutu.com +zouzhenzhong.com +zouzhiqiang.com +zowoyoo.com +zoyoo.net +zp.do +zp0716.com +zp0737.com +zp365.com +zp515.com +zpad.cc +zpan.space +zpascal.net +zpaudit.com +zpedu.org +zpfdc.com +zphj1987.com +zpidc.com +zpjiashuo.com +zplayworld.com +zpluz.com +zpm.so +zpm.wiki +zppk.net +zppop.com +zppxba.com +zptong.com +zpzyb.com +zq12369.com +zq235.com +zq99y.com +zqbzs.cc +zqcloudgame.com +zqctqcz.com +zqfxj.com +zqgame.com +zqgreen.com +zqic.net +zqjjr.com +zqlian.com +zqlx.com +zqnf.com +zqsign.com +zqsos.com +zqtong.com +zquan.cc +zquan.org +zqvip8.cc +zqwzc.com +zqxinxi.com +zqxsc.com +zqzj.org +zqzyxx.com +zrahh.com +zrblog.net +zrbx.com +zrcaifu.com +zrcbank.com +zrfan.com +zring.com +zrj96.com +zrjhwenhua.com +zrmm.com +zrtech.org +zrtg.com +zrthink.com +zrway.com +zrwjk.com +zrxss.com +zry97.com +zrzyb.net +zs-e.com +zs-lzlj.com +zs-rh.com +zs0572.com +zs310.com +zs516.com +zs666.com +zs6y.com +zs8q.com +zsaber.com +zsacg.com +zsafw.com +zsapp.info +zsaxi.com +zsb353.com +zsbeike.com +zsbit.com +zsc.io +zscaishang.com +zsdk.cc +zsdlw.com +zsemall.com +zseoo.com +zsevent.com +zsezt.com +zsf.cool +zsfund.com +zsgd.com +zsgjs.com +zsglrj.com +zsgoodlighting.com +zsh.com +zsh8.com +zshield.net +zshl.com +zshlife.com +zshuoshao.online +zshzfzj.com +zsia.org +zsihuo.com +zsincer.com +zsite.com +zsj18.com +zsjingmi.com +zsjinqi.com +zsjuchuang.com +zsjxwj.com +zskoubei.com +zsksw.net +zslady.com +zsld86.com +zslin.com +zslp021.com +zslyyn12.com +zslyzjj11.com +zsmama.com +zsnchem.com +zsppsj.com +zsptdjy.com +zsr.cc +zsso03.com +zssph.com +zssxczxyey.com +zstack.io +zstczx.com +zstzs.com +zsucai.com +zsucai.net +zsufivehos.com +zsvsz.com +zswcn.com +zsweai.club +zswebao.shop +zswebao.xyz +zswhtl.com +zsxq.com +zsxq100.com +zsythink.net +zszq.com +zt-express.com +zt-info.com +zt1f.com +ztautoparts.com +ztbest.com +ztcadx.com +ztch.ltd +ztcia.com +ztcj365.com +ztdad.com +zte.net +ztedevice.com +ztedevices.com +ztedu8.com +ztemap.com +ztems.com +ztestin.com +ztfans.com +ztfssc.com +ztgame.com +ztgy.org +zthxcf.com +ztinfoga.com +ztjoin.com +ztjy61.com +ztjystore.com +ztkm.com +ztky.com +ztmao.com +ztms.net +ztnews.net +zto.com +zto.jp +zto56.com +ztpay.org +ztqqt.com +ztrhmall.com +ztrong.com +ztrskj.com +ztsafe.com +ztsfc.com +ztt.cc +zttx-exp.com +zttx.com +ztu-crm.com +ztupic.com +ztups.com +ztvcar.com +ztvx8.com +ztww.net +ztxz.cc +ztzy.com +zu1k.com +zuan-cheng.com +zuanbi8.com +zuanchuang.org +zuanchuang9.com +zuanke8.com +zuankezu.com +zuanshi.com +zuanshitoupiao.com +zuanshivpn.com +zuantao.cc +zuber.im +zubunet.com +zuche.com +zuchecdn.com +zuciwang.com +zucp.net +zudeapp.com +zudong.com +zufang.com +zufangbao.com +zufangzi.com +zugame.com +zugeliang01.com +zuhaoapp.com +zuhaofa.com +zuhaohao.com +zuhaowan.com +zuhaowan.net +zuhedaikuan.com +zuhuanhao.com +zui.com +zui365.com +zui88.com +zuiben.com +zuibook.com +zuichen.net +zuicool.com +zuidabao.com +zuidaima.com +zuidh.com +zuidongxi.com +zuifengyun.com +zuifuli.com +zuihaodaxue.com +zuihuimai.com +zuihuimai.net +zuiidea.com +zuijiao.net +zuijunshi.com +zuik.ren +zuikc.com +zuiku.com +zuikzy.com +zuilingxian.com +zuimeia.com +zuimeiqidai.com +zuimeitianqi.com +zuimeix.com +zuimoban.com +zuiniuwang.com +zuiqiangyingyu.net +zuirede.com +zuishidai.com +zuitang.com +zuitu.com +zuiwan.net +zuixiaoyao.com +zuixinchao.com +zuixingzuo.net +zuixu.com +zuixue.com +zuiyou.com +zuiyouxi.com +zuiyouzhi.com +zujuan.com +zujuanyi.com +zuk.com +zukang88.com +zuker.im +zulijian.com +zulinbao.com +zumbacn.com +zun.com +zun.gd +zun315.com +zun9.com +zunxiangqiming.com +zunxun.com +zunxun.net +zunzou.com +zuobaike.net +zuobin.net +zuocd1.group +zuoche.com +zuocheng.net +zuodanye.com +zuodao.com +zuodashi.com +zuodia.com +zuofanwang.com +zuogj.com +zuohaotu.com +zuohuodong.com +zuoji-scm.com +zuojiachubanshe.com +zuojiaju.com +zuojiawang.com +zuojing.com +zuojj.com +zuopinj.com +zuoqu.com +zuoqudashi.net +zuosa.com +zuoshipin.com +zuotishi.com +zuowen.com +zuowen8.com +zuowenck.com +zuowening.com +zuowenjun.com +zuowenku.net +zuowenren.com +zuowens.com +zuowenwang.net +zuowenxue.com +zuowenzhai.com +zuowenzhitiao.com +zuoxiaolong.com +zuoye5.com +zuoyebang.cc +zuoyebang.com +zuoyehezi.com +zuoyesou.com +zupig.com +zupuk.com +zupulu.com +zutianke.com +zutiyu.com +zuulee.com +zuxcgames.com +zuyunfei.com +zuyushop.com +zuzheyong.com +zuzhirenshi.com +zuzitech.com +zuzuche.com +zving.com +zvv.me +zvzee.com +zw110.com +zw3e.com +zw3w.com +zw808.com +zw885.com +zwads.com +zwbk.org +zwcad.com +zwcnw.com +zwcsm.com +zwda.com +zwdns.com +zwds.cc +zwdsty.com +zwdu.app +zwdu.com +zwduxs.com +zwechat.com +zwfw.com +zwgeek.com +zwhz.com +zwie2003.com +zwjczx.com +zwjhl.com +zwjk.com +zwjl.com +zwjl.net +zwkf.net +zwoptical.com +zwtianshangm.com +zwtkl8.com +zwtxipr.com +zwwdm.com +zwwltkl.com +zwwx.com +zwzsh.net +zwzyzx.com +zx-casting.com +zx-tour.com +zx0093.com +zx017.com +zx017.net +zx080.com +zx0818.com +zx100.com +zx10000.com +zx110.org +zx181.com +zx350zx.com +zx7b.com +zx8.cc +zx98.com +zxblinux.com +zxbzr.com +zxclqw.com +zxcmk.com +zxcoder.com +zxd.com +zxdb999.com +zxdoo.com +zxdu.net +zxdyo.com +zxdyw.com +zxe-china.com +zxerp.com +zxgongshui.com +zxgzs.com +zxgzw.com +zxh.site +zxhgroup.com +zxhong.com +zxhsd.com +zxiaoxiang.com +zxicrm.com +zxinc.org +zxinzxw.com +zxip.com +zxjg66.com +zxjsq.net +zxlearning.com +zxlib.com +zxlmx.com +zxmall.com +zxmn2018.com +zxmseed.com +zxmxd.com +zxnic.net +zxnrh.com +zxopen.com +zxpmq.com +zxrtb.com +zxs-coffee.com +zxsg88.com +zxshe.com +zxsmd.com +zxswjx.com +zxsygs.com +zxt2007.com +zxtang.com +zxtjd.com +zxtnetwork.com +zxttax.com +zxw114.com +zxw51.com +zxwcbj.com +zxwindow.com +zxwstong.com +zxwyouxi.com +zxxk.com +zxxww.com +zxxxkj.com +zxzhijia.com +zxzj.me +zxzlf.com +zxzyl.com +zxzyy.com +zy-cam.com +zy2071.com +zy728.com +zy91.com +zyan.cc +zyautoe.com +zybang.com +zybang1.com +zybird.com +zyboe.com +zybuluo.com +zyc918.com +zyccc.com +zycits.com +zyclps.com +zycmfw.com +zycsc.com +zyctd.com +zycultura.com +zydhgm.com +zydsy.com +zye.cc +zyea.com +zyecp.com +zyexhibition.com +zyeye.net +zyfchina.com +zyfj.com +zygames.com +zyge.net +zygg.cc +zygj.net +zygx.wang +zyh365.com +zyhao.com +zyhbxs.com +zyhcjl.com +zyhh.me +zyhot.com +zyiis.net +zyip.com +zyjoygame.com +zyjyyun.com +zyjz-sh.com +zykjgame.com +zyku.net +zyl.me +zyloushi.com +zymc1.com +zymkcdn.com +zymreal.com +zymxp.com +zyoffice.com +zyoogame.com +zyops.com +zyou100.com +zyoung.me +zyplayer.com +zyq366.com +zyqc.cc +zyqccs.com +zyrj.org +zyrmw.com +zyrykbiandao.com +zys.me +zysheji.net +zyt8.com +zytuozhan.com +zytxgame.com +zyucan.com +zyue.com +zyw1040.com +zywxpress.com +zyxr.com +zyxuan.org +zyxzcm.com +zyyda.com +zyyfy.com +zyzaojiao.com +zyzg.com +zyzhan.com +zyzhyl.com +zyzj.org +zyzj360.com +zyzjmz.org +zyzkb.net +zyzw.com +zyzxgy.com +zyzxs.com +zz-news.com +zz-qq.com +zz-zigzag.com +zz21.com +zz314.com +zz618.com +zz91.com +zz96269.com +zzay.net +zzbaike.com +zzbbs.com +zzbd.org +zzbq.org +zzbs.org +zzbtv.com +zzcangzhou.com +zzccom.com +zzccyq1.com +zzcm1.com +zzcm2.com +zzcm5.com +zzcodes.net +zzcomm.com +zzcszx.com +zzd.pub +zzdengji.com +zzdh.net +zzdz666.com +zzect.com +zzenglish.net +zzetao.com +zzfcj.com +zzfcw.com +zzfly.net +zzfriend.com +zzgcjyzx.com +zzgdapp.com +zzgjj.com +zzgm.net +zzgryl.com +zzhaofang.com +zzhaoz.com +zzhlzc.com +zzhybz.com +zzidc.com +zzit.org +zzjaz.com +zzjc5.com +zzjunzhi.com +zzjunzhuo.com +zzjxbg.com +zzkiss000.com +zzliot.com +zzllq.com +zzloop.com +zzlz.net +zzm8.com +zzmama.net +zzmscg.com +zzmyt.com +zznah001.com +zzobokj.com +zzpd8.com +zzpuke.com +zzqklm.com +zzqxs.com +zzrbl.com +zzrseng.com +zzsf.com +zzsggzy.com +zzsgjj.com +zzssjx.com +zzsteel.com +zzstep.com +zzt9.com +zztline.com +zztongyun.com +zztoutiao.net +zztxkj.com +zzvips.com +zzwanshou.com +zzwenxue.com +zzwhtg.com +zzwljc.com +zzwms.com +zzwqqx.com +zzwro.com +zzxdc.com +zzxw.net +zzxy.net +zzyas.com +zzyb.org +zzydb.com +zzyedu.org +zzyichen.net +zzyilou.com +zzyiquan.com +zzyjs.com +zzyjsmba.com +zzyyrl.com +zzyzan.com +zzz4.com +zzzdm.com +zzzj.com +zzzla.com +zzzsxx.com +zzzyb.com +zzzyk.com +zzzzaaaa.com +zzzzhong.com +zzzzmall.com +zzzzzz.me diff --git a/luci-app-passwall/root/usr/share/passwall/rules/chnroute b/luci-app-passwall/root/usr/share/passwall/rules/chnroute new file mode 100644 index 000000000..b050abc91 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/chnroute @@ -0,0 +1,8632 @@ +1.0.1.0/24 +1.0.2.0/23 +1.0.32.0/19 +1.0.8.0/21 +1.1.0.0/24 +1.1.10.0/23 +1.1.12.0/22 +1.1.16.0/20 +1.1.2.0/23 +1.1.32.0/19 +1.1.4.0/22 +1.1.8.0/24 +1.1.9.0/24 +1.10.0.0/21 +1.10.11.0/24 +1.10.12.0/22 +1.10.16.0/20 +1.10.32.0/19 +1.10.64.0/18 +1.10.8.0/23 +1.116.0.0/15 +1.118.0.0/16 +1.119.0.0/17 +1.119.128.0/17 +1.12.0.0/14 +1.180.0.0/14 +1.184.0.0/15 +1.188.0.0/14 +1.192.0.0/13 +1.2.0.0/23 +1.2.10.0/23 +1.2.12.0/22 +1.2.16.0/20 +1.2.2.0/24 +1.2.32.0/19 +1.2.4.0/24 +1.2.5.0/24 +1.2.6.0/23 +1.2.64.0/18 +1.2.8.0/24 +1.2.9.0/24 +1.202.0.0/15 +1.204.0.0/14 +1.24.0.0/13 +1.3.0.0/16 +1.4.1.0/24 +1.4.16.0/20 +1.4.2.0/23 +1.4.32.0/19 +1.4.4.0/24 +1.4.5.0/24 +1.4.6.0/23 +1.4.64.0/18 +1.4.8.0/21 +1.45.0.0/16 +1.48.0.0/15 +1.50.0.0/16 +1.51.0.0/16 +1.56.0.0/13 +1.68.0.0/14 +1.8.0.0/16 +1.80.0.0/13 +1.88.0.0/14 +1.92.0.0/15 +1.94.0.0/15 +101.0.0.0/22 +101.1.0.0/22 +101.101.100.0/24 +101.101.102.0/23 +101.101.104.0/21 +101.101.112.0/20 +101.101.64.0/19 +101.102.100.0/23 +101.102.102.0/24 +101.102.104.0/21 +101.102.112.0/20 +101.102.64.0/19 +101.104.0.0/14 +101.110.116.0/22 +101.110.120.0/21 +101.110.64.0/19 +101.110.96.0/20 +101.120.0.0/14 +101.124.0.0/15 +101.126.0.0/16 +101.128.0.0/22 +101.128.16.0/20 +101.128.32.0/19 +101.128.8.0/21 +101.129.0.0/16 +101.130.0.0/15 +101.132.0.0/14 +101.144.0.0/12 +101.16.0.0/12 +101.192.0.0/14 +101.196.0.0/16 +101.197.0.0/16 +101.198.0.0/15 +101.2.172.0/22 +101.200.0.0/15 +101.203.128.0/19 +101.203.160.0/21 +101.203.172.0/22 +101.203.176.0/20 +101.204.0.0/14 +101.224.0.0/13 +101.232.0.0/15 +101.234.64.0/21 +101.234.76.0/22 +101.234.80.0/20 +101.234.96.0/19 +101.236.0.0/14 +101.240.0.0/14 +101.244.0.0/16 +101.245.0.0/16 +101.246.0.0/15 +101.248.0.0/15 +101.251.0.0/22 +101.251.128.0/17 +101.251.16.0/20 +101.251.32.0/19 +101.251.64.0/18 +101.251.8.0/21 +101.252.0.0/15 +101.254.0.0/16 +101.33.128.0/17 +101.34.0.0/15 +101.36.0.0/18 +101.36.128.0/17 +101.36.64.0/19 +101.37.0.0/16 +101.38.0.0/15 +101.4.0.0/14 +101.40.0.0/15 +101.42.0.0/15 +101.45.0.0/16 +101.46.0.0/15 +101.48.0.0/15 +101.50.12.0/22 +101.50.56.0/22 +101.50.8.0/22 +101.52.0.0/16 +101.53.100.0/22 +101.54.0.0/16 +101.55.224.0/21 +101.64.0.0/13 +101.72.0.0/14 +101.76.0.0/15 +101.78.0.0/22 +101.78.32.0/19 +101.80.0.0/12 +101.96.0.0/21 +101.96.128.0/17 +101.96.16.0/20 +101.96.8.0/22 +101.99.96.0/19 +103.1.168.0/22 +103.1.20.0/22 +103.1.24.0/22 +103.1.72.0/22 +103.1.8.0/22 +103.1.88.0/22 +103.10.0.0/22 +103.10.140.0/22 +103.10.16.0/22 +103.10.84.0/22 +103.100.0.0/22 +103.100.116.0/22 +103.100.140.0/22 +103.100.144.0/22 +103.100.236.0/22 +103.100.240.0/22 +103.100.248.0/22 +103.100.252.0/22 +103.100.32.0/22 +103.100.40.0/22 +103.100.48.0/22 +103.100.52.0/22 +103.100.56.0/22 +103.100.60.0/22 +103.100.64.0/22 +103.100.68.0/22 +103.100.88.0/22 +103.101.12.0/22 +103.101.120.0/22 +103.101.124.0/22 +103.101.144.0/22 +103.101.148.0/22 +103.101.153.0/24 +103.101.180.0/22 +103.101.184.0/22 +103.101.28.0/22 +103.101.4.0/22 +103.101.60.0/22 +103.101.8.0/22 +103.102.168.0/22 +103.102.172.0/22 +103.102.180.0/22 +103.102.184.0/22 +103.102.188.0/22 +103.102.192.0/22 +103.102.196.0/22 +103.102.200.0/22 +103.102.208.0/22 +103.102.212.0/22 +103.102.76.0/22 +103.102.80.0/22 +103.103.12.0/22 +103.103.16.0/22 +103.103.176.0/22 +103.103.188.0/22 +103.103.200.0/22 +103.103.204.0/22 +103.103.220.0/22 +103.103.224.0/22 +103.103.228.0/22 +103.103.232.0/22 +103.103.248.0/22 +103.103.252.0/22 +103.103.36.0/22 +103.103.68.0/22 +103.103.72.0/22 +103.104.0.0/22 +103.104.104.0/22 +103.104.152.0/22 +103.104.168.0/22 +103.104.172.0/22 +103.104.188.0/22 +103.104.198.0/23 +103.104.252.0/22 +103.104.36.0/22 +103.104.4.0/22 +103.104.40.0/22 +103.104.64.0/22 +103.105.0.0/22 +103.105.116.0/22 +103.105.12.0/22 +103.105.132.0/22 +103.105.16.0/22 +103.105.180.0/22 +103.105.184.0/22 +103.105.200.0/22 +103.105.204.0/22 +103.105.220.0/22 +103.105.23.0/24 +103.105.4.0/22 +103.105.60.0/22 +103.106.120.0/22 +103.106.128.0/22 +103.106.132.0/22 +103.106.160.0/22 +103.106.188.0/22 +103.106.196.0/22 +103.106.202.0/23 +103.106.212.0/22 +103.106.244.0/22 +103.106.252.0/22 +103.106.36.0/22 +103.106.40.0/22 +103.106.44.0/22 +103.106.60.0/22 +103.106.68.0/22 +103.106.96.0/22 +103.107.0.0/22 +103.107.108.0/22 +103.107.164.0/22 +103.107.168.0/22 +103.107.188.0/22 +103.107.192.0/22 +103.107.208.0/22 +103.107.212.0/22 +103.107.216.0/22 +103.107.220.0/22 +103.107.28.0/22 +103.107.32.0/22 +103.107.44.0/22 +103.107.72.0/22 +103.107.8.0/24 +103.108.160.0/22 +103.108.164.0/22 +103.108.184.0/23 +103.108.188.0/23 +103.108.192.0/22 +103.108.196.0/22 +103.108.208.0/22 +103.108.212.0/22 +103.108.224.0/22 +103.108.244.0/22 +103.108.251.0/24 +103.108.52.0/22 +103.109.106.0/23 +103.109.20.0/22 +103.109.248.0/22 +103.109.48.0/22 +103.109.88.0/22 +103.11.16.0/22 +103.11.168.0/22 +103.11.180.0/22 +103.110.116.0/22 +103.110.127.0/24 +103.110.128.0/23 +103.110.132.0/22 +103.110.136.0/22 +103.110.152.0/22 +103.110.156.0/22 +103.110.188.0/22 +103.110.204.0/22 +103.110.80.0/23 +103.110.92.0/22 +103.111.172.0/22 +103.111.252.0/22 +103.111.64.0/22 +103.112.108.0/22 +103.112.112.0/22 +103.112.116.0/22 +103.112.140.0/22 +103.112.172.0/22 +103.112.184.0/22 +103.112.208.0/22 +103.112.28.0/22 +103.112.68.0/22 +103.112.72.0/22 +103.112.88.0/22 +103.112.92.0/22 +103.112.96.0/22 +103.113.144.0/22 +103.113.220.0/22 +103.113.232.0/22 +103.113.236.0/22 +103.113.4.0/22 +103.113.92.0/22 +103.114.100.0/22 +103.114.132.0/22 +103.114.148.0/22 +103.114.156.0/22 +103.114.176.0/22 +103.114.212.0/22 +103.114.236.0/22 +103.114.240.0/22 +103.114.28.0/22 +103.114.4.0/22 +103.114.68.0/22 +103.114.72.0/22 +103.115.120.0/22 +103.115.148.0/22 +103.115.16.0/22 +103.115.204.0/23 +103.115.248.0/22 +103.115.40.0/22 +103.115.44.0/22 +103.115.48.0/22 +103.115.52.0/22 +103.115.56.0/22 +103.115.60.0/22 +103.115.64.0/22 +103.115.68.0/22 +103.115.92.0/22 +103.116.120.0/22 +103.116.128.0/22 +103.116.132.0/23 +103.116.148.0/22 +103.116.184.0/22 +103.116.20.0/22 +103.116.206.0/23 +103.116.220.0/22 +103.116.224.0/22 +103.116.228.0/22 +103.116.40.0/22 +103.116.64.0/22 +103.116.72.0/22 +103.116.76.0/22 +103.116.92.0/22 +103.117.132.0/22 +103.117.136.0/22 +103.117.16.0/22 +103.117.188.0/22 +103.117.220.0/22 +103.117.72.0/22 +103.117.88.0/22 +103.118.173.0/24 +103.118.192.0/22 +103.118.196.0/22 +103.118.200.0/22 +103.118.204.0/22 +103.118.208.0/22 +103.118.212.0/22 +103.118.216.0/22 +103.118.220.0/22 +103.118.240.0/22 +103.118.244.0/22 +103.118.248.0/22 +103.118.252.0/22 +103.118.36.0/22 +103.118.52.0/22 +103.118.56.0/22 +103.118.60.0/22 +103.118.64.0/22 +103.118.68.0/22 +103.118.72.0/22 +103.118.88.0/22 +103.119.0.0/22 +103.119.104.0/22 +103.119.115.0/24 +103.119.12.0/22 +103.119.156.0/22 +103.119.16.0/22 +103.119.180.0/22 +103.119.200.0/22 +103.119.224.0/22 +103.119.28.0/22 +103.119.44.0/22 +103.12.136.0/22 +103.12.184.0/22 +103.12.232.0/22 +103.12.32.0/22 +103.12.68.0/22 +103.12.92.0/22 +103.120.100.0/22 +103.120.140.0/22 +103.120.196.0/22 +103.120.224.0/22 +103.120.52.0/22 +103.120.72.0/22 +103.120.88.0/22 +103.120.96.0/22 +103.121.160.0/22 +103.121.164.0/22 +103.121.250.0/24 +103.121.252.0/22 +103.121.52.0/22 +103.121.92.0/22 +103.122.176.0/22 +103.122.192.0/22 +103.122.240.0/22 +103.122.48.0/22 +103.123.116.0/22 +103.123.160.0/22 +103.123.176.0/22 +103.123.200.0/22 +103.123.204.0/22 +103.123.208.0/22 +103.123.212.0/22 +103.123.4.0/22 +103.123.56.0/22 +103.123.88.0/22 +103.123.92.0/22 +103.124.212.0/22 +103.124.216.0/22 +103.124.24.0/22 +103.124.48.0/22 +103.124.64.0/22 +103.125.132.0/22 +103.125.164.0/22 +103.125.196.0/22 +103.125.20.0/22 +103.125.236.0/22 +103.125.248.0/22 +103.125.44.0/22 +103.126.0.0/22 +103.126.100.0/22 +103.126.124.0/22 +103.126.128.0/22 +103.126.132.0/22 +103.126.16.0/22 +103.126.208.0/22 +103.126.44.0/22 +103.129.52.0/22 +103.13.12.0/22 +103.13.124.0/22 +103.13.144.0/22 +103.13.196.0/22 +103.13.220.0/22 +103.13.244.0/22 +103.130.132.0/22 +103.130.152.0/24 +103.130.160.0/22 +103.130.228.0/22 +103.131.152.0/22 +103.131.168.0/22 +103.131.176.0/22 +103.131.20.0/22 +103.131.224.0/22 +103.131.228.0/22 +103.131.240.0/22 +103.131.36.0/22 +103.132.104.0/22 +103.132.108.0/22 +103.132.112.0/22 +103.132.116.0/22 +103.132.120.0/22 +103.132.160.0/22 +103.132.164.0/22 +103.132.188.0/22 +103.132.208.0/22 +103.132.212.0/22 +103.132.234.0/23 +103.132.60.0/22 +103.132.64.0/22 +103.132.68.0/22 +103.132.72.0/22 +103.132.76.0/22 +103.132.80.0/22 +103.133.12.0/22 +103.133.128.0/22 +103.133.136.0/22 +103.133.176.0/22 +103.133.232.0/22 +103.133.40.0/22 +103.134.12.0/24 +103.134.196.0/22 +103.135.124.0/22 +103.135.148.0/22 +103.135.156.0/22 +103.135.160.0/22 +103.135.164.0/22 +103.135.176.0/22 +103.135.184.0/22 +103.135.192.0/22 +103.135.196.0/22 +103.135.236.0/22 +103.135.80.0/22 +103.136.128.0/22 +103.136.232.0/22 +103.137.136.0/23 +103.137.149.0/24 +103.137.180.0/22 +103.137.236.0/22 +103.137.58.0/23 +103.137.60.0/24 +103.137.76.0/22 +103.138.12.0/23 +103.138.134.0/23 +103.138.156.0/23 +103.138.2.0/23 +103.138.208.0/23 +103.138.220.0/23 +103.138.246.0/23 +103.138.248.0/23 +103.138.80.0/22 +103.139.0.0/23 +103.139.113.0/24 +103.139.134.0/23 +103.139.136.0/23 +103.139.172.0/23 +103.139.2.0/23 +103.139.204.0/23 +103.139.212.0/23 +103.139.22.0/23 +103.14.100.0/22 +103.14.132.0/22 +103.14.136.0/22 +103.14.156.0/22 +103.14.240.0/22 +103.14.84.0/22 +103.140.126.0/23 +103.140.14.0/23 +103.140.140.0/23 +103.140.144.0/23 +103.140.152.0/23 +103.140.192.0/23 +103.140.228.0/23 +103.140.70.0/23 +103.140.8.0/23 +103.141.10.0/23 +103.141.128.0/23 +103.141.186.0/23 +103.141.242.0/23 +103.141.58.0/23 +103.142.102.0/23 +103.142.122.0/23 +103.142.128.0/23 +103.142.140.0/23 +103.142.154.0/23 +103.142.156.0/23 +103.142.172.0/23 +103.142.180.0/23 +103.142.186.0/23 +103.142.190.0/23 +103.142.220.0/23 +103.142.230.0/24 +103.142.234.0/23 +103.142.238.0/23 +103.142.248.0/23 +103.142.28.0/23 +103.142.58.0/23 +103.142.82.0/23 +103.142.96.0/23 +103.143.120.0/23 +103.143.124.0/23 +103.143.132.0/23 +103.143.134.0/23 +103.143.16.0/23 +103.143.174.0/23 +103.143.18.0/23 +103.143.228.0/23 +103.143.31.0/24 +103.143.74.0/23 +103.144.108.0/23 +103.144.136.0/23 +103.144.148.0/23 +103.144.158.0/23 +103.144.240.0/23 +103.144.40.0/23 +103.144.52.0/23 +103.144.66.0/23 +103.144.70.0/23 +103.144.72.0/23 +103.145.106.0/23 +103.145.122.0/23 +103.145.188.0/23 +103.145.190.0/23 +103.145.38.0/23 +103.145.40.0/23 +103.145.42.0/23 +103.145.60.0/23 +103.145.72.0/23 +103.145.80.0/23 +103.145.86.0/23 +103.145.92.0/23 +103.145.94.0/23 +103.145.98.0/23 +103.146.124.0/23 +103.146.126.0/23 +103.146.138.0/23 +103.146.230.0/23 +103.146.236.0/23 +103.146.252.0/23 +103.146.6.0/23 +103.146.72.0/23 +103.146.88.0/23 +103.146.90.0/23 +103.147.12.0/23 +103.147.124.0/23 +103.147.198.0/23 +103.147.206.0/23 +103.148.174.0/23 +103.149.110.0/23 +103.149.132.0/23 +103.149.144.0/23 +103.149.156.0/23 +103.149.17.0/24 +103.149.181.0/24 +103.149.210.0/23 +103.149.214.0/23 +103.149.220.0/23 +103.149.242.0/23 +103.149.244.0/23 +103.149.246.0/23 +103.149.248.0/23 +103.149.44.0/23 +103.149.6.0/23 +103.15.16.0/22 +103.15.200.0/22 +103.15.4.0/22 +103.15.8.0/22 +103.15.96.0/22 +103.150.122.0/23 +103.150.126.0/23 +103.150.128.0/23 +103.150.130.0/23 +103.150.146.0/23 +103.150.164.0/23 +103.150.172.0/23 +103.150.180.0/23 +103.150.200.0/23 +103.150.210.0/23 +103.150.214.0/23 +103.150.216.0/23 +103.150.24.0/23 +103.150.244.0/23 +103.150.66.0/23 +103.150.72.0/23 +103.151.138.0/23 +103.151.142.0/23 +103.151.148.0/23 +103.151.150.0/23 +103.151.158.0/23 +103.151.178.0/23 +103.151.206.0/23 +103.151.216.0/23 +103.151.228.0/23 +103.151.4.0/23 +103.151.44.0/23 +103.152.112.0/23 +103.152.120.0/23 +103.152.122.0/23 +103.152.132.0/23 +103.152.14.0/23 +103.152.152.0/23 +103.152.168.0/23 +103.152.170.0/23 +103.152.186.0/23 +103.152.190.0/23 +103.152.192.0/23 +103.152.200.0/23 +103.152.208.0/23 +103.152.224.0/23 +103.152.226.0/23 +103.152.24.0/23 +103.152.246.0/23 +103.152.250.0/23 +103.152.28.0/23 +103.152.30.0/23 +103.152.56.0/23 +103.152.76.0/23 +103.152.98.0/23 +103.153.100.0/23 +103.153.114.0/23 +103.153.122.0/23 +103.153.128.0/23 +103.153.132.0/23 +103.153.138.0/23 +103.153.146.0/23 +103.153.160.0/23 +103.153.36.0/23 +103.153.4.0/23 +103.153.98.0/23 +103.154.162.0/23 +103.154.164.0/23 +103.154.168.0/23 +103.154.18.0/23 +103.154.242.0/23 +103.154.30.0/23 +103.154.32.0/23 +103.154.40.0/23 +103.154.66.0/23 +103.155.100.0/23 +103.155.110.0/23 +103.155.120.0/23 +103.155.14.0/23 +103.155.16.0/23 +103.155.214.0/23 +103.155.248.0/23 +103.155.34.0/23 +103.155.48.0/23 +103.155.76.0/23 +103.156.104.0/23 +103.156.158.0/23 +103.156.174.0/23 +103.156.186.0/23 +103.156.228.0/23 +103.156.24.0/23 +103.156.28.0/23 +103.156.68.0/23 +103.156.78.0/23 +103.157.138.0/23 +103.157.174.0/23 +103.157.212.0/23 +103.157.234.0/23 +103.157.254.0/23 +103.157.30.0/23 +103.158.0.0/23 +103.158.16.0/23 +103.158.190.0/23 +103.158.200.0/23 +103.158.224.0/23 +103.158.8.0/23 +103.159.122.0/23 +103.159.124.0/23 +103.159.134.0/23 +103.159.142.0/23 +103.159.80.0/23 +103.16.108.0/22 +103.16.124.0/22 +103.16.52.0/22 +103.16.80.0/22 +103.16.84.0/22 +103.16.88.0/22 +103.160.112.0/23 +103.160.114.0/23 +103.160.244.0/23 +103.160.254.0/23 +103.160.32.0/23 +103.160.34.0/23 +103.161.102.0/23 +103.161.138.0/23 +103.161.14.0/23 +103.161.208.0/23 +103.161.220.0/23 +103.161.254.0/23 +103.162.10.0/23 +103.162.116.0/23 +103.162.32.0/23 +103.162.38.0/23 +103.163.180.0/23 +103.163.28.0/23 +103.163.32.0/23 +103.163.46.0/23 +103.163.74.0/23 +103.164.178.0/23 +103.164.226.0/23 +103.164.32.0/23 +103.164.4.0/23 +103.164.40.0/23 +103.164.42.0/23 +103.164.64.0/23 +103.164.76.0/23 +103.165.110.0/23 +103.165.44.0/23 +103.165.52.0/23 +103.165.82.0/23 +103.166.138.0/23 +103.166.20.0/23 +103.166.242.0/23 +103.166.246.0/23 +103.166.50.0/23 +103.166.52.0/23 +103.166.54.0/23 +103.166.84.0/23 +103.167.0.0/23 +103.167.36.0/23 +103.168.170.0/23 +103.168.98.0/23 +103.169.108.0/23 +103.169.162.0/23 +103.169.202.0/23 +103.169.216.0/23 +103.169.50.0/23 +103.169.62.0/23 +103.17.120.0/22 +103.17.136.0/22 +103.17.160.0/22 +103.17.204.0/22 +103.17.228.0/22 +103.17.40.0/22 +103.17.64.0/22 +103.170.134.0/23 +103.170.210.0/23 +103.170.212.0/23 +103.170.4.0/23 +103.170.72.0/23 +103.171.166.0/23 +103.171.214.0/23 +103.171.32.0/23 +103.172.160.0/23 +103.172.191.0/24 +103.172.32.0/23 +103.173.102.0/23 +103.173.182.0/23 +103.173.184.0/23 +103.174.94.0/23 +103.175.114.0/23 +103.175.118.0/23 +103.175.14.0/23 +103.175.98.0/23 +103.176.222.0/23 +103.176.244.0/23 +103.176.52.0/23 +103.177.136.0/23 +103.177.162.0/23 +103.177.28.0/23 +103.177.44.0/23 +103.177.70.0/23 +103.178.240.0/23 +103.178.56.0/23 +103.179.76.0/23 +103.179.78.0/23 +103.18.192.0/22 +103.18.208.0/22 +103.18.212.0/22 +103.18.224.0/22 +103.180.108.0/23 +103.180.226.0/23 +103.181.164.0/23 +103.181.234.0/23 +103.183.122.0/23 +103.183.124.0/23 +103.183.26.0/23 +103.183.66.0/23 +103.184.44.0/23 +103.184.46.0/23 +103.184.60.0/23 +103.185.228.0/23 +103.185.78.0/23 +103.185.80.0/23 +103.186.4.0/23 +103.19.12.0/22 +103.19.232.0/22 +103.19.40.0/22 +103.19.44.0/22 +103.19.64.0/22 +103.19.68.0/22 +103.19.72.0/22 +103.192.0.0/22 +103.192.100.0/22 +103.192.104.0/22 +103.192.108.0/22 +103.192.112.0/22 +103.192.12.0/22 +103.192.128.0/22 +103.192.132.0/22 +103.192.136.0/22 +103.192.140.0/22 +103.192.144.0/22 +103.192.16.0/22 +103.192.164.0/22 +103.192.188.0/22 +103.192.20.0/22 +103.192.208.0/22 +103.192.212.0/22 +103.192.216.0/22 +103.192.24.0/22 +103.192.252.0/22 +103.192.28.0/22 +103.192.4.0/22 +103.192.48.0/22 +103.192.52.0/22 +103.192.56.0/22 +103.192.8.0/22 +103.192.84.0/22 +103.192.88.0/22 +103.192.92.0/22 +103.192.96.0/22 +103.193.120.0/22 +103.193.140.0/22 +103.193.160.0/22 +103.193.188.0/22 +103.193.192.0/22 +103.193.212.0/22 +103.193.216.0/22 +103.193.220.0/22 +103.193.224.0/22 +103.193.228.0/22 +103.193.232.0/22 +103.193.236.0/22 +103.193.240.0/22 +103.193.40.0/22 +103.193.44.0/22 +103.194.16.0/22 +103.195.104.0/22 +103.195.112.0/22 +103.195.148.0/22 +103.195.152.0/22 +103.195.160.0/22 +103.196.168.0/22 +103.196.204.0/22 +103.196.64.0/22 +103.196.72.0/22 +103.196.88.0/22 +103.196.92.0/22 +103.196.96.0/22 +103.197.180.0/22 +103.197.228.0/22 +103.198.124.0/22 +103.198.156.0/22 +103.198.180.0/22 +103.198.196.0/22 +103.198.20.0/22 +103.198.216.0/22 +103.198.220.0/22 +103.198.224.0/22 +103.198.228.0/22 +103.198.232.0/22 +103.198.236.0/22 +103.198.240.0/22 +103.198.244.0/22 +103.198.60.0/22 +103.198.64.0/22 +103.198.72.0/22 +103.199.164.0/22 +103.199.196.0/22 +103.199.228.0/22 +103.199.248.0/22 +103.199.252.0/22 +103.2.108.0/22 +103.2.156.0/22 +103.2.164.0/22 +103.2.200.0/22 +103.2.204.0/22 +103.2.208.0/22 +103.2.212.0/22 +103.20.112.0/22 +103.20.12.0/22 +103.20.128.0/22 +103.20.160.0/22 +103.20.248.0/22 +103.20.32.0/22 +103.20.44.0/22 +103.20.68.0/22 +103.200.136.0/22 +103.200.140.0/22 +103.200.144.0/22 +103.200.148.0/22 +103.200.152.0/22 +103.200.156.0/22 +103.200.160.0/22 +103.200.164.0/22 +103.200.168.0/22 +103.200.172.0/22 +103.200.176.0/22 +103.200.180.0/22 +103.200.184.0/22 +103.200.188.0/22 +103.200.192.0/22 +103.200.220.0/22 +103.200.224.0/22 +103.200.228.0/22 +103.200.232.0/22 +103.200.236.0/22 +103.200.240.0/22 +103.200.244.0/22 +103.200.248.0/22 +103.200.252.0/22 +103.200.28.0/22 +103.200.52.0/22 +103.200.64.0/22 +103.200.68.0/22 +103.201.0.0/22 +103.201.100.0/22 +103.201.104.0/22 +103.201.108.0/22 +103.201.112.0/22 +103.201.116.0/22 +103.201.12.0/22 +103.201.120.0/22 +103.201.152.0/22 +103.201.156.0/22 +103.201.16.0/22 +103.201.160.0/22 +103.201.164.0/22 +103.201.168.0/22 +103.201.172.0/22 +103.201.176.0/22 +103.201.180.0/22 +103.201.184.0/22 +103.201.188.0/22 +103.201.192.0/22 +103.201.196.0/22 +103.201.20.0/22 +103.201.200.0/22 +103.201.204.0/22 +103.201.208.0/22 +103.201.212.0/22 +103.201.216.0/22 +103.201.220.0/22 +103.201.224.0/22 +103.201.228.0/22 +103.201.232.0/22 +103.201.236.0/22 +103.201.240.0/22 +103.201.244.0/22 +103.201.248.0/22 +103.201.252.0/22 +103.201.28.0/22 +103.201.32.0/22 +103.201.36.0/22 +103.201.4.0/22 +103.201.40.0/22 +103.201.44.0/22 +103.201.48.0/22 +103.201.52.0/22 +103.201.56.0/22 +103.201.60.0/22 +103.201.64.0/22 +103.201.76.0/22 +103.201.8.0/22 +103.201.80.0/22 +103.201.84.0/22 +103.201.88.0/22 +103.201.92.0/22 +103.201.96.0/22 +103.202.0.0/22 +103.202.100.0/22 +103.202.104.0/22 +103.202.108.0/22 +103.202.112.0/22 +103.202.116.0/22 +103.202.12.0/22 +103.202.120.0/22 +103.202.124.0/22 +103.202.128.0/22 +103.202.132.0/22 +103.202.136.0/22 +103.202.140.0/22 +103.202.144.0/22 +103.202.152.0/22 +103.202.156.0/22 +103.202.16.0/22 +103.202.160.0/22 +103.202.164.0/22 +103.202.168.0/22 +103.202.172.0/22 +103.202.176.0/22 +103.202.180.0/22 +103.202.184.0/22 +103.202.188.0/22 +103.202.192.0/22 +103.202.196.0/22 +103.202.20.0/22 +103.202.200.0/21 +103.202.212.0/22 +103.202.228.0/22 +103.202.236.0/22 +103.202.24.0/22 +103.202.240.0/22 +103.202.244.0/22 +103.202.248.0/22 +103.202.252.0/22 +103.202.28.0/22 +103.202.32.0/22 +103.202.36.0/22 +103.202.4.0/22 +103.202.40.0/22 +103.202.44.0/22 +103.202.56.0/22 +103.202.60.0/22 +103.202.64.0/22 +103.202.68.0/22 +103.202.72.0/22 +103.202.76.0/22 +103.202.8.0/22 +103.202.80.0/22 +103.202.84.0/22 +103.202.88.0/22 +103.202.92.0/22 +103.202.96.0/22 +103.203.0.0/22 +103.203.100.0/22 +103.203.104.0/22 +103.203.108.0/22 +103.203.112.0/22 +103.203.116.0/22 +103.203.12.0/22 +103.203.120.0/22 +103.203.124.0/22 +103.203.128.0/22 +103.203.140.0/22 +103.203.16.0/22 +103.203.164.0/22 +103.203.168.0/22 +103.203.192.0/22 +103.203.20.0/22 +103.203.200.0/22 +103.203.212.0/22 +103.203.216.0/22 +103.203.24.0/22 +103.203.28.0/22 +103.203.32.0/22 +103.203.4.0/22 +103.203.56.0/22 +103.203.8.0/22 +103.203.96.0/22 +103.204.112.0/22 +103.204.136.0/22 +103.204.140.0/22 +103.204.144.0/22 +103.204.148.0/22 +103.204.152.0/22 +103.204.196.0/22 +103.204.232.0/22 +103.204.236.0/22 +103.204.24.0/22 +103.204.72.0/22 +103.204.88.0/22 +103.205.108.0/22 +103.205.116.0/22 +103.205.120.0/22 +103.205.136.0/22 +103.205.162.0/24 +103.205.188.0/22 +103.205.192.0/22 +103.205.196.0/22 +103.205.200.0/22 +103.205.236.0/22 +103.205.248.0/22 +103.205.252.0/22 +103.205.4.0/22 +103.205.40.0/22 +103.205.44.0/22 +103.205.52.0/22 +103.205.8.0/22 +103.206.0.0/22 +103.206.148.0/22 +103.206.44.0/22 +103.207.104.0/22 +103.207.184.0/22 +103.207.188.0/22 +103.207.192.0/22 +103.207.196.0/22 +103.207.200.0/22 +103.207.204.0/22 +103.207.208.0/22 +103.207.212.0/22 +103.207.220.0/22 +103.207.228.0/22 +103.207.232.0/22 +103.207.48.0/22 +103.208.12.0/22 +103.208.16.0/22 +103.208.28.0/22 +103.208.40.0/22 +103.208.44.0/22 +103.208.48.0/22 +103.209.112.0/22 +103.209.136.0/22 +103.209.200.0/22 +103.209.208.0/22 +103.209.216.0/22 +103.21.112.0/22 +103.21.116.0/22 +103.21.136.0/22 +103.21.140.0/22 +103.21.176.0/22 +103.21.208.0/22 +103.21.240.0/22 +103.210.0.0/22 +103.210.156.0/22 +103.210.160.0/22 +103.210.164.0/22 +103.210.168.0/22 +103.210.172.0/22 +103.210.176.0/22 +103.210.180.0/22 +103.210.184.0/22 +103.210.188.0/22 +103.210.216.0/22 +103.210.96.0/22 +103.211.100.0/22 +103.211.156.0/22 +103.211.164.0/22 +103.211.192.0/22 +103.211.220.0/22 +103.211.224.0/22 +103.211.248.0/22 +103.211.44.0/22 +103.211.96.0/22 +103.212.0.0/22 +103.212.100.0/22 +103.212.104.0/22 +103.212.108.0/22 +103.212.12.0/22 +103.212.148.0/22 +103.212.164.0/22 +103.212.196.0/22 +103.212.200.0/22 +103.212.228.0/22 +103.212.252.0/22 +103.212.32.0/22 +103.212.4.0/22 +103.212.44.0/22 +103.212.48.0/22 +103.212.8.0/22 +103.212.84.0/22 +103.213.132.0/22 +103.213.136.0/22 +103.213.140.0/22 +103.213.144.0/22 +103.213.148.0/22 +103.213.152.0/22 +103.213.156.0/22 +103.213.160.0/22 +103.213.164.0/22 +103.213.168.0/22 +103.213.172.0/22 +103.213.176.0/22 +103.213.180.0/22 +103.213.184.0/22 +103.213.188.0/22 +103.213.248.0/22 +103.213.40.0/22 +103.213.44.0/22 +103.213.48.0/22 +103.213.52.0/22 +103.213.56.0/22 +103.213.60.0/22 +103.213.64.0/22 +103.213.68.0/22 +103.213.72.0/22 +103.213.76.0/22 +103.213.80.0/22 +103.213.84.0/22 +103.213.88.0/22 +103.213.92.0/22 +103.213.96.0/22 +103.214.168.0/22 +103.214.212.0/22 +103.214.240.0/22 +103.214.244.0/22 +103.214.48.0/22 +103.214.84.0/22 +103.215.100.0/22 +103.215.104.0/22 +103.215.108.0/22 +103.215.116.0/22 +103.215.120.0/22 +103.215.140.0/22 +103.215.28.0/22 +103.215.32.0/22 +103.215.36.0/22 +103.215.44.0/22 +103.215.48.0/22 +103.216.108.0/22 +103.216.12.0/22 +103.216.136.0/22 +103.216.152.0/22 +103.216.16.0/22 +103.216.20.0/22 +103.216.224.0/22 +103.216.228.0/22 +103.216.24.0/22 +103.216.240.0/22 +103.216.244.0/22 +103.216.248.0/22 +103.216.252.0/22 +103.216.28.0/22 +103.216.32.0/22 +103.216.36.0/22 +103.216.4.0/22 +103.216.40.0/22 +103.216.44.0/22 +103.216.64.0/22 +103.216.8.0/22 +103.217.0.0/22 +103.217.12.0/22 +103.217.16.0/22 +103.217.168.0/22 +103.217.180.0/22 +103.217.184.0/22 +103.217.188.0/22 +103.217.192.0/22 +103.217.196.0/22 +103.217.20.0/22 +103.217.200.0/22 +103.217.204.0/22 +103.217.24.0/22 +103.217.28.0/22 +103.217.32.0/22 +103.217.36.0/22 +103.217.4.0/22 +103.217.40.0/22 +103.217.44.0/22 +103.217.48.0/22 +103.217.52.0/22 +103.217.56.0/22 +103.217.60.0/22 +103.217.8.0/22 +103.218.12.0/22 +103.218.16.0/22 +103.218.192.0/22 +103.218.196.0/22 +103.218.20.0/22 +103.218.200.0/22 +103.218.204.0/22 +103.218.208.0/22 +103.218.212.0/22 +103.218.216.0/22 +103.218.28.0/22 +103.218.32.0/22 +103.218.36.0/22 +103.218.40.0/22 +103.218.44.0/22 +103.218.48.0/22 +103.218.52.0/22 +103.218.56.0/22 +103.218.60.0/22 +103.218.64.0/22 +103.218.68.0/22 +103.218.72.0/22 +103.218.76.0/22 +103.218.8.0/22 +103.218.80.0/22 +103.218.84.0/22 +103.218.88.0/22 +103.218.92.0/22 +103.219.100.0/22 +103.219.176.0/22 +103.219.184.0/22 +103.219.24.0/22 +103.219.28.0/22 +103.219.32.0/22 +103.219.36.0/22 +103.219.64.0/22 +103.219.84.0/22 +103.219.88.0/22 +103.219.92.0/22 +103.219.96.0/22 +103.22.0.0/22 +103.22.100.0/22 +103.22.104.0/22 +103.22.108.0/22 +103.22.112.0/22 +103.22.116.0/22 +103.22.12.0/22 +103.22.120.0/22 +103.22.124.0/22 +103.22.16.0/22 +103.22.188.0/22 +103.22.20.0/22 +103.22.228.0/22 +103.22.24.0/22 +103.22.252.0/22 +103.22.28.0/22 +103.22.32.0/22 +103.22.36.0/22 +103.22.4.0/22 +103.22.40.0/22 +103.22.44.0/22 +103.22.48.0/22 +103.22.52.0/22 +103.22.56.0/22 +103.22.60.0/22 +103.22.64.0/22 +103.22.68.0/22 +103.22.72.0/22 +103.22.76.0/22 +103.22.8.0/22 +103.22.80.0/22 +103.22.84.0/22 +103.22.88.0/22 +103.22.92.0/22 +103.220.100.0/22 +103.220.104.0/22 +103.220.108.0/22 +103.220.116.0/22 +103.220.120.0/22 +103.220.124.0/22 +103.220.128.0/22 +103.220.132.0/22 +103.220.136.0/22 +103.220.140.0/22 +103.220.144.0/22 +103.220.148.0/22 +103.220.152.0/22 +103.220.160.0/22 +103.220.164.0/22 +103.220.168.0/22 +103.220.172.0/22 +103.220.176.0/22 +103.220.180.0/22 +103.220.184.0/22 +103.220.188.0/22 +103.220.192.0/22 +103.220.196.0/22 +103.220.200.0/22 +103.220.240.0/22 +103.220.244.0/22 +103.220.248.0/22 +103.220.252.0/22 +103.220.48.0/22 +103.220.52.0/22 +103.220.56.0/22 +103.220.60.0/22 +103.220.64.0/22 +103.220.92.0/22 +103.220.96.0/22 +103.221.0.0/22 +103.221.100.0/22 +103.221.104.0/22 +103.221.108.0/22 +103.221.112.0/22 +103.221.116.0/22 +103.221.12.0/22 +103.221.120.0/22 +103.221.124.0/22 +103.221.128.0/22 +103.221.132.0/22 +103.221.136.0/22 +103.221.140.0/22 +103.221.144.0/22 +103.221.148.0/22 +103.221.152.0/22 +103.221.156.0/22 +103.221.16.0/22 +103.221.160.0/22 +103.221.164.0/22 +103.221.168.0/22 +103.221.172.0/22 +103.221.176.0/22 +103.221.180.0/22 +103.221.184.0/22 +103.221.188.0/22 +103.221.192.0/22 +103.221.196.0/22 +103.221.20.0/22 +103.221.200.0/22 +103.221.204.0/22 +103.221.24.0/22 +103.221.28.0/22 +103.221.32.0/22 +103.221.36.0/22 +103.221.4.0/22 +103.221.40.0/22 +103.221.44.0/22 +103.221.48.0/22 +103.221.8.0/22 +103.221.88.0/22 +103.221.92.0/22 +103.221.96.0/22 +103.222.0.0/22 +103.222.100.0/22 +103.222.104.0/22 +103.222.108.0/22 +103.222.112.0/22 +103.222.116.0/22 +103.222.12.0/22 +103.222.120.0/22 +103.222.124.0/22 +103.222.128.0/22 +103.222.132.0/22 +103.222.136.0/22 +103.222.140.0/22 +103.222.144.0/22 +103.222.148.0/22 +103.222.152.0/22 +103.222.156.0/22 +103.222.16.0/22 +103.222.160.0/22 +103.222.164.0/22 +103.222.168.0/22 +103.222.172.0/22 +103.222.176.0/22 +103.222.180.0/22 +103.222.184.0/22 +103.222.188.0/22 +103.222.192.0/22 +103.222.196.0/22 +103.222.200.0/22 +103.222.204.0/22 +103.222.208.0/22 +103.222.212.0/22 +103.222.216.0/22 +103.222.220.0/22 +103.222.224.0/22 +103.222.228.0/22 +103.222.232.0/22 +103.222.24.0/22 +103.222.240.0/22 +103.222.244.0/22 +103.222.28.0/22 +103.222.32.0/22 +103.222.36.0/22 +103.222.4.0/22 +103.222.40.0/22 +103.222.44.0/22 +103.222.48.0/22 +103.222.52.0/22 +103.222.56.0/22 +103.222.60.0/22 +103.222.64.0/22 +103.222.68.0/22 +103.222.72.0/22 +103.222.76.0/22 +103.222.8.0/22 +103.222.80.0/22 +103.222.84.0/22 +103.222.88.0/22 +103.222.92.0/22 +103.222.96.0/22 +103.223.100.0/22 +103.223.104.0/22 +103.223.108.0/22 +103.223.112.0/22 +103.223.116.0/22 +103.223.120.0/22 +103.223.124.0/22 +103.223.128.0/22 +103.223.132.0/22 +103.223.140.0/22 +103.223.144.0/22 +103.223.148.0/22 +103.223.152.0/22 +103.223.156.0/22 +103.223.16.0/22 +103.223.160.0/22 +103.223.164.0/22 +103.223.168.0/22 +103.223.172.0/22 +103.223.176.0/22 +103.223.180.0/22 +103.223.188.0/22 +103.223.192.0/22 +103.223.196.0/22 +103.223.20.0/22 +103.223.200.0/22 +103.223.204.0/22 +103.223.208.0/22 +103.223.212.0/22 +103.223.216.0/22 +103.223.220.0/22 +103.223.224.0/22 +103.223.228.0/22 +103.223.232.0/22 +103.223.236.0/22 +103.223.24.0/22 +103.223.240.0/22 +103.223.244.0/22 +103.223.248.0/22 +103.223.252.0/22 +103.223.28.0/22 +103.223.32.0/22 +103.223.36.0/22 +103.223.40.0/22 +103.223.44.0/22 +103.223.48.0/22 +103.223.52.0/22 +103.223.56.0/22 +103.223.60.0/22 +103.223.64.0/22 +103.223.68.0/22 +103.223.72.0/22 +103.223.76.0/22 +103.223.80.0/22 +103.223.84.0/22 +103.223.88.0/22 +103.223.92.0/22 +103.223.96.0/22 +103.224.0.0/22 +103.224.220.0/22 +103.224.224.0/22 +103.224.228.0/22 +103.224.232.0/22 +103.224.40.0/22 +103.224.44.0/22 +103.224.60.0/22 +103.224.80.0/22 +103.225.84.0/22 +103.226.132.0/22 +103.226.156.0/22 +103.226.16.0/22 +103.226.180.0/22 +103.226.196.0/22 +103.226.40.0/22 +103.226.56.0/22 +103.226.60.0/22 +103.226.80.0/22 +103.227.100.0/22 +103.227.120.0/22 +103.227.132.0/22 +103.227.136.0/22 +103.227.196.0/22 +103.227.204.0/22 +103.227.212.0/22 +103.227.228.0/22 +103.227.48.0/22 +103.227.72.0/22 +103.227.76.0/22 +103.227.80.0/22 +103.228.12.0/22 +103.228.136.0/22 +103.228.160.0/22 +103.228.176.0/22 +103.228.204.0/22 +103.228.208.0/22 +103.228.228.0/22 +103.228.232.0/22 +103.228.88.0/22 +103.229.136.0/22 +103.229.148.0/22 +103.229.172.0/22 +103.229.20.0/22 +103.229.212.0/22 +103.229.216.0/22 +103.229.220.0/22 +103.229.228.0/22 +103.229.236.0/22 +103.229.240.0/22 +103.229.60.0/22 +103.23.160.0/22 +103.23.164.0/22 +103.23.176.0/22 +103.23.228.0/22 +103.23.56.0/22 +103.23.8.0/22 +103.230.0.0/22 +103.230.196.0/22 +103.230.200.0/22 +103.230.204.0/22 +103.230.212.0/22 +103.230.236.0/22 +103.230.28.0/22 +103.230.44.0/22 +103.230.96.0/22 +103.231.16.0/22 +103.231.180.0/22 +103.231.184.0/22 +103.231.20.0/22 +103.231.244.0/22 +103.231.64.0/22 +103.231.68.0/22 +103.232.144.0/22 +103.232.188.0/22 +103.232.212.0/22 +103.232.4.0/22 +103.233.104.0/22 +103.233.128.0/22 +103.233.136.0/22 +103.233.228.0/22 +103.233.4.0/22 +103.233.44.0/22 +103.233.52.0/22 +103.234.0.0/22 +103.234.128.0/22 +103.234.172.0/22 +103.234.180.0/22 +103.234.20.0/22 +103.234.244.0/22 +103.234.56.0/22 +103.235.128.0/22 +103.235.132.0/22 +103.235.136.0/22 +103.235.140.0/22 +103.235.144.0/22 +103.235.148.0/22 +103.235.16.0/22 +103.235.184.0/22 +103.235.192.0/22 +103.235.200.0/22 +103.235.220.0/22 +103.235.224.0/22 +103.235.228.0/22 +103.235.232.0/22 +103.235.236.0/22 +103.235.240.0/22 +103.235.244.0/22 +103.235.248.0/22 +103.235.252.0/22 +103.235.48.0/22 +103.235.56.0/22 +103.235.60.0/22 +103.235.80.0/22 +103.235.84.0/22 +103.236.0.0/22 +103.236.12.0/22 +103.236.120.0/22 +103.236.16.0/22 +103.236.184.0/22 +103.236.20.0/22 +103.236.220.0/22 +103.236.232.0/22 +103.236.24.0/22 +103.236.240.0/22 +103.236.244.0/22 +103.236.248.0/22 +103.236.252.0/22 +103.236.28.0/22 +103.236.32.0/22 +103.236.36.0/22 +103.236.4.0/22 +103.236.40.0/22 +103.236.44.0/22 +103.236.48.0/22 +103.236.52.0/22 +103.236.56.0/22 +103.236.60.0/22 +103.236.64.0/22 +103.236.68.0/22 +103.236.72.0/22 +103.236.76.0/22 +103.236.8.0/22 +103.236.80.0/22 +103.236.84.0/22 +103.236.88.0/22 +103.236.92.0/22 +103.236.96.0/22 +103.237.0.0/22 +103.237.12.0/22 +103.237.152.0/22 +103.237.176.0/22 +103.237.180.0/22 +103.237.184.0/22 +103.237.188.0/22 +103.237.192.0/22 +103.237.196.0/22 +103.237.200.0/22 +103.237.204.0/22 +103.237.208.0/22 +103.237.212.0/22 +103.237.216.0/22 +103.237.220.0/22 +103.237.224.0/22 +103.237.228.0/22 +103.237.232.0/22 +103.237.236.0/22 +103.237.24.0/22 +103.237.240.0/22 +103.237.244.0/22 +103.237.248.0/22 +103.237.252.0/22 +103.237.28.0/22 +103.237.4.0/22 +103.237.68.0/22 +103.237.8.0/22 +103.237.88.0/22 +103.238.0.0/22 +103.238.132.0/22 +103.238.140.0/22 +103.238.144.0/22 +103.238.16.0/22 +103.238.160.0/22 +103.238.164.0/22 +103.238.168.0/22 +103.238.172.0/22 +103.238.176.0/22 +103.238.180.0/22 +103.238.184.0/22 +103.238.188.0/22 +103.238.196.0/22 +103.238.20.0/22 +103.238.204.0/22 +103.238.24.0/22 +103.238.252.0/22 +103.238.28.0/22 +103.238.32.0/22 +103.238.36.0/22 +103.238.4.0/22 +103.238.40.0/22 +103.238.44.0/22 +103.238.48.0/22 +103.238.52.0/22 +103.238.56.0/22 +103.238.88.0/22 +103.238.92.0/22 +103.238.96.0/22 +103.239.0.0/22 +103.239.152.0/22 +103.239.156.0/22 +103.239.176.0/22 +103.239.180.0/22 +103.239.184.0/22 +103.239.192.0/22 +103.239.196.0/22 +103.239.204.0/22 +103.239.208.0/22 +103.239.224.0/22 +103.239.244.0/22 +103.239.44.0/22 +103.239.68.0/22 +103.24.116.0/22 +103.24.128.0/22 +103.24.144.0/22 +103.24.176.0/22 +103.24.184.0/22 +103.24.220.0/22 +103.24.228.0/22 +103.24.24.0/22 +103.24.248.0/22 +103.24.252.0/22 +103.240.124.0/22 +103.240.16.0/22 +103.240.172.0/22 +103.240.188.0/22 +103.240.244.0/22 +103.240.36.0/22 +103.240.72.0/22 +103.240.84.0/22 +103.241.12.0/22 +103.241.160.0/22 +103.241.184.0/22 +103.241.188.0/22 +103.241.220.0/22 +103.241.72.0/22 +103.241.92.0/22 +103.241.96.0/22 +103.242.128.0/22 +103.242.132.0/22 +103.242.160.0/22 +103.242.168.0/22 +103.242.172.0/22 +103.242.176.0/22 +103.242.200.0/22 +103.242.212.0/22 +103.242.220.0/22 +103.242.240.0/22 +103.242.64.0/22 +103.243.136.0/22 +103.243.252.0/22 +103.244.116.0/22 +103.244.16.0/22 +103.244.164.0/22 +103.244.232.0/22 +103.244.252.0/22 +103.244.58.0/23 +103.244.60.0/22 +103.244.64.0/22 +103.244.68.0/22 +103.244.72.0/22 +103.244.76.0/22 +103.244.80.0/22 +103.244.84.0/22 +103.245.124.0/22 +103.245.128.0/22 +103.245.23.0/24 +103.245.52.0/22 +103.245.60.0/22 +103.245.80.0/22 +103.246.12.0/22 +103.246.120.0/22 +103.246.124.0/22 +103.246.132.0/22 +103.246.152.0/22 +103.246.156.0/22 +103.246.8.0/22 +103.247.168.0/22 +103.247.172.0/22 +103.247.176.0/22 +103.247.200.0/22 +103.247.212.0/22 +103.248.0.0/23 +103.248.100.0/22 +103.248.124.0/22 +103.248.152.0/22 +103.248.168.0/22 +103.248.192.0/22 +103.248.212.0/22 +103.248.224.0/22 +103.248.64.0/22 +103.249.104.0/22 +103.249.12.0/22 +103.249.128.0/22 +103.249.136.0/22 +103.249.144.0/22 +103.249.164.0/22 +103.249.168.0/22 +103.249.172.0/22 +103.249.176.0/22 +103.249.188.0/22 +103.249.192.0/22 +103.249.244.0/22 +103.249.252.0/22 +103.249.52.0/22 +103.249.8.0/22 +103.25.148.0/22 +103.25.156.0/22 +103.25.20.0/22 +103.25.216.0/22 +103.25.24.0/22 +103.25.28.0/22 +103.25.32.0/22 +103.25.36.0/22 +103.25.40.0/22 +103.25.48.0/22 +103.25.64.0/22 +103.25.68.0/22 +103.25.8.0/23 +103.250.104.0/22 +103.250.124.0/22 +103.250.180.0/22 +103.250.192.0/22 +103.250.216.0/22 +103.250.224.0/22 +103.250.236.0/22 +103.250.248.0/22 +103.250.252.0/22 +103.250.32.0/22 +103.251.124.0/22 +103.251.128.0/22 +103.251.160.0/22 +103.251.192.0/22 +103.251.204.0/22 +103.251.240.0/22 +103.251.32.0/22 +103.251.84.0/22 +103.251.96.0/22 +103.252.104.0/22 +103.252.172.0/22 +103.252.204.0/22 +103.252.208.0/22 +103.252.232.0/22 +103.252.248.0/22 +103.252.28.0/22 +103.252.36.0/22 +103.252.64.0/22 +103.252.96.0/22 +103.253.204.0/22 +103.253.220.0/22 +103.253.224.0/22 +103.253.232.0/22 +103.253.4.0/22 +103.253.60.0/22 +103.254.112.0/22 +103.254.176.0/22 +103.254.188.0/22 +103.254.196.0/24 +103.254.20.0/22 +103.254.220.0/22 +103.254.64.0/22 +103.254.68.0/22 +103.254.72.0/22 +103.254.76.0/22 +103.254.8.0/22 +103.255.136.0/22 +103.255.140.0/22 +103.255.184.0/22 +103.255.200.0/22 +103.255.212.0/22 +103.255.228.0/22 +103.255.56.0/22 +103.255.68.0/22 +103.255.88.0/22 +103.255.92.0/22 +103.26.0.0/22 +103.26.132.0/22 +103.26.156.0/22 +103.26.160.0/22 +103.26.228.0/22 +103.26.240.0/22 +103.26.64.0/22 +103.26.76.0/22 +103.27.12.0/22 +103.27.184.0/22 +103.27.208.0/22 +103.27.212.0/22 +103.27.24.0/22 +103.27.240.0/22 +103.27.4.0/22 +103.27.56.0/22 +103.27.96.0/22 +103.28.184.0/22 +103.28.204.0/22 +103.28.212.0/22 +103.28.4.0/22 +103.28.8.0/22 +103.29.128.0/22 +103.29.132.0/22 +103.29.136.0/22 +103.29.16.0/22 +103.3.100.0/22 +103.3.104.0/22 +103.3.108.0/22 +103.3.112.0/22 +103.3.116.0/22 +103.3.120.0/22 +103.3.124.0/22 +103.3.128.0/22 +103.3.132.0/22 +103.3.136.0/22 +103.3.140.0/22 +103.3.148.0/22 +103.3.152.0/22 +103.3.156.0/22 +103.3.84.0/22 +103.3.88.0/22 +103.3.92.0/22 +103.3.96.0/22 +103.30.148.0/22 +103.30.20.0/22 +103.30.200.0/22 +103.30.228.0/22 +103.30.236.0/22 +103.30.96.0/22 +103.31.0.0/22 +103.31.148.0/22 +103.31.160.0/22 +103.31.168.0/22 +103.31.200.0/22 +103.31.236.0/22 +103.31.48.0/22 +103.31.52.0/22 +103.31.56.0/22 +103.31.60.0/22 +103.31.64.0/22 +103.31.68.0/22 +103.32.0.0/22 +103.32.100.0/22 +103.32.104.0/22 +103.32.108.0/22 +103.32.112.0/22 +103.32.116.0/22 +103.32.12.0/22 +103.32.120.0/22 +103.32.124.0/22 +103.32.128.0/22 +103.32.132.0/22 +103.32.136.0/22 +103.32.140.0/22 +103.32.144.0/22 +103.32.148.0/22 +103.32.152.0/22 +103.32.156.0/22 +103.32.16.0/22 +103.32.160.0/22 +103.32.164.0/22 +103.32.168.0/22 +103.32.172.0/22 +103.32.176.0/22 +103.32.180.0/22 +103.32.184.0/22 +103.32.188.0/22 +103.32.192.0/22 +103.32.196.0/22 +103.32.20.0/22 +103.32.200.0/22 +103.32.204.0/22 +103.32.208.0/22 +103.32.212.0/22 +103.32.216.0/22 +103.32.220.0/22 +103.32.224.0/22 +103.32.228.0/22 +103.32.232.0/22 +103.32.236.0/22 +103.32.24.0/22 +103.32.240.0/22 +103.32.244.0/22 +103.32.248.0/22 +103.32.252.0/22 +103.32.28.0/22 +103.32.32.0/22 +103.32.36.0/22 +103.32.4.0/22 +103.32.40.0/22 +103.32.44.0/22 +103.32.48.0/22 +103.32.52.0/22 +103.32.56.0/22 +103.32.60.0/22 +103.32.64.0/22 +103.32.68.0/22 +103.32.72.0/22 +103.32.76.0/22 +103.32.8.0/22 +103.32.80.0/22 +103.32.84.0/22 +103.32.88.0/22 +103.32.92.0/22 +103.32.96.0/22 +103.33.0.0/22 +103.33.100.0/22 +103.33.104.0/22 +103.33.108.0/22 +103.33.112.0/22 +103.33.116.0/22 +103.33.12.0/22 +103.33.120.0/22 +103.33.124.0/22 +103.33.128.0/22 +103.33.132.0/22 +103.33.136.0/22 +103.33.140.0/22 +103.33.144.0/22 +103.33.148.0/22 +103.33.152.0/22 +103.33.156.0/22 +103.33.16.0/22 +103.33.160.0/22 +103.33.164.0/22 +103.33.168.0/22 +103.33.172.0/22 +103.33.176.0/22 +103.33.180.0/22 +103.33.184.0/22 +103.33.188.0/22 +103.33.192.0/22 +103.33.196.0/22 +103.33.20.0/22 +103.33.200.0/22 +103.33.204.0/22 +103.33.208.0/22 +103.33.212.0/22 +103.33.216.0/22 +103.33.220.0/22 +103.33.224.0/22 +103.33.228.0/22 +103.33.232.0/22 +103.33.236.0/22 +103.33.24.0/22 +103.33.240.0/22 +103.33.244.0/22 +103.33.248.0/22 +103.33.252.0/22 +103.33.28.0/22 +103.33.32.0/22 +103.33.36.0/22 +103.33.4.0/22 +103.33.40.0/22 +103.33.44.0/22 +103.33.48.0/22 +103.33.52.0/22 +103.33.56.0/22 +103.33.60.0/22 +103.33.64.0/22 +103.33.68.0/22 +103.33.72.0/22 +103.33.76.0/22 +103.33.8.0/22 +103.33.80.0/22 +103.33.84.0/22 +103.33.88.0/22 +103.33.92.0/22 +103.33.96.0/22 +103.34.0.0/22 +103.34.100.0/22 +103.34.104.0/22 +103.34.108.0/22 +103.34.112.0/22 +103.34.116.0/22 +103.34.12.0/22 +103.34.120.0/22 +103.34.124.0/22 +103.34.128.0/22 +103.34.132.0/22 +103.34.136.0/22 +103.34.140.0/22 +103.34.144.0/22 +103.34.148.0/22 +103.34.152.0/22 +103.34.156.0/22 +103.34.16.0/22 +103.34.160.0/22 +103.34.164.0/22 +103.34.168.0/22 +103.34.172.0/22 +103.34.176.0/22 +103.34.180.0/22 +103.34.184.0/22 +103.34.188.0/22 +103.34.192.0/22 +103.34.196.0/22 +103.34.20.0/22 +103.34.200.0/22 +103.34.204.0/22 +103.34.208.0/22 +103.34.212.0/22 +103.34.216.0/22 +103.34.220.0/22 +103.34.224.0/22 +103.34.228.0/22 +103.34.232.0/22 +103.34.236.0/22 +103.34.24.0/22 +103.34.240.0/22 +103.34.244.0/22 +103.34.248.0/22 +103.34.252.0/22 +103.34.28.0/22 +103.34.32.0/22 +103.34.36.0/22 +103.34.4.0/22 +103.34.40.0/22 +103.34.44.0/22 +103.34.48.0/22 +103.34.52.0/22 +103.34.56.0/22 +103.34.60.0/22 +103.34.64.0/22 +103.34.68.0/22 +103.34.72.0/22 +103.34.76.0/22 +103.34.8.0/22 +103.34.80.0/22 +103.34.84.0/22 +103.34.88.0/22 +103.34.92.0/22 +103.34.96.0/22 +103.35.0.0/22 +103.35.104.0/22 +103.35.116.0/22 +103.35.12.0/22 +103.35.16.0/22 +103.35.180.0/22 +103.35.20.0/22 +103.35.200.0/22 +103.35.220.0/22 +103.35.24.0/22 +103.35.28.0/22 +103.35.32.0/22 +103.35.36.0/22 +103.35.4.0/22 +103.35.40.0/22 +103.35.44.0/22 +103.35.48.0/22 +103.35.8.0/22 +103.36.132.0/22 +103.36.136.0/22 +103.36.160.0/22 +103.36.164.0/22 +103.36.168.0/22 +103.36.172.0/22 +103.36.176.0/22 +103.36.180.0/22 +103.36.184.0/22 +103.36.188.0/22 +103.36.192.0/22 +103.36.196.0/22 +103.36.200.0/22 +103.36.204.0/22 +103.36.208.0/22 +103.36.212.0/22 +103.36.216.0/22 +103.36.220.0/22 +103.36.224.0/22 +103.36.228.0/22 +103.36.232.0/22 +103.36.236.0/22 +103.36.240.0/22 +103.36.244.0/22 +103.36.28.0/22 +103.36.36.0/22 +103.36.56.0/22 +103.36.60.0/22 +103.36.64.0/22 +103.36.72.0/22 +103.36.96.0/22 +103.37.100.0/22 +103.37.104.0/22 +103.37.12.0/22 +103.37.136.0/22 +103.37.140.0/22 +103.37.144.0/22 +103.37.148.0/22 +103.37.152.0/22 +103.37.156.0/22 +103.37.16.0/22 +103.37.160.0/22 +103.37.164.0/22 +103.37.172.0/22 +103.37.176.0/22 +103.37.188.0/22 +103.37.208.0/22 +103.37.212.0/22 +103.37.216.0/22 +103.37.220.0/22 +103.37.24.0/22 +103.37.248.0/22 +103.37.252.0/22 +103.37.44.0/22 +103.37.52.0/22 +103.37.56.0/22 +103.37.72.0/22 +103.38.0.0/22 +103.38.116.0/22 +103.38.132.0/22 +103.38.140.0/22 +103.38.224.0/22 +103.38.228.0/22 +103.38.232.0/22 +103.38.32.0/22 +103.38.40.0/22 +103.38.44.0/22 +103.38.56.0/22 +103.38.76.0/22 +103.38.84.0/22 +103.38.92.0/22 +103.38.96.0/22 +103.39.100.0/22 +103.39.104.0/22 +103.39.108.0/22 +103.39.160.0/22 +103.39.164.0/22 +103.39.168.0/22 +103.39.172.0/22 +103.39.176.0/22 +103.39.180.0/22 +103.39.184.0/22 +103.39.188.0/22 +103.39.200.0/22 +103.39.204.0/22 +103.39.208.0/22 +103.39.212.0/22 +103.39.216.0/22 +103.39.220.0/22 +103.39.224.0/22 +103.39.228.0/22 +103.39.232.0/22 +103.39.64.0/22 +103.39.88.0/22 +103.4.168.0/22 +103.4.184.0/22 +103.4.224.0/22 +103.4.56.0/22 +103.40.100.0/22 +103.40.12.0/22 +103.40.16.0/22 +103.40.192.0/22 +103.40.20.0/22 +103.40.212.0/22 +103.40.220.0/22 +103.40.228.0/22 +103.40.232.0/22 +103.40.236.0/22 +103.40.24.0/22 +103.40.240.0/22 +103.40.244.0/22 +103.40.248.0/22 +103.40.252.0/22 +103.40.28.0/22 +103.40.32.0/22 +103.40.36.0/22 +103.40.40.0/22 +103.40.44.0/22 +103.40.88.0/22 +103.41.0.0/22 +103.41.116.0/22 +103.41.140.0/22 +103.41.148.0/22 +103.41.152.0/22 +103.41.16.0/22 +103.41.160.0/22 +103.41.164.0/22 +103.41.220.0/22 +103.41.224.0/22 +103.41.228.0/22 +103.41.232.0/22 +103.41.52.0/22 +103.42.104.0/22 +103.42.180.0/22 +103.42.232.0/22 +103.42.24.0/22 +103.42.28.0/22 +103.42.32.0/22 +103.42.64.0/22 +103.42.68.0/22 +103.42.76.0/22 +103.42.8.0/22 +103.43.100.0/22 +103.43.104.0/22 +103.43.124.0/22 +103.43.16.0/22 +103.43.184.0/22 +103.43.192.0/22 +103.43.196.0/22 +103.43.208.0/22 +103.43.220.0/22 +103.43.224.0/22 +103.43.240.0/22 +103.43.84.0/22 +103.43.96.0/22 +103.44.120.0/22 +103.44.124.0/22 +103.44.132.0/22 +103.44.144.0/22 +103.44.168.0/22 +103.44.176.0/22 +103.44.180.0/22 +103.44.184.0/22 +103.44.188.0/22 +103.44.192.0/22 +103.44.196.0/22 +103.44.200.0/22 +103.44.204.0/22 +103.44.224.0/22 +103.44.236.0/22 +103.44.240.0/22 +103.44.244.0/22 +103.44.248.0/22 +103.44.252.0/22 +103.44.56.0/22 +103.44.80.0/22 +103.44.88.0/22 +103.45.0.0/22 +103.45.100.0/22 +103.45.104.0/22 +103.45.108.0/22 +103.45.112.0/22 +103.45.116.0/22 +103.45.12.0/22 +103.45.120.0/22 +103.45.124.0/22 +103.45.128.0/22 +103.45.132.0/22 +103.45.136.0/22 +103.45.140.0/22 +103.45.144.0/22 +103.45.148.0/22 +103.45.152.0/22 +103.45.156.0/22 +103.45.16.0/22 +103.45.160.0/22 +103.45.164.0/22 +103.45.168.0/22 +103.45.172.0/22 +103.45.176.0/22 +103.45.180.0/22 +103.45.184.0/22 +103.45.188.0/22 +103.45.192.0/22 +103.45.196.0/22 +103.45.20.0/22 +103.45.200.0/22 +103.45.204.0/22 +103.45.208.0/22 +103.45.212.0/22 +103.45.216.0/22 +103.45.220.0/22 +103.45.224.0/22 +103.45.24.0/22 +103.45.248.0/22 +103.45.28.0/22 +103.45.32.0/22 +103.45.36.0/22 +103.45.4.0/22 +103.45.40.0/22 +103.45.44.0/22 +103.45.48.0/22 +103.45.52.0/22 +103.45.56.0/22 +103.45.60.0/22 +103.45.72.0/22 +103.45.76.0/22 +103.45.8.0/22 +103.45.80.0/22 +103.45.84.0/22 +103.45.88.0/22 +103.45.92.0/22 +103.45.96.0/22 +103.46.0.0/22 +103.46.100.0/22 +103.46.104.0/22 +103.46.108.0/22 +103.46.112.0/22 +103.46.116.0/22 +103.46.12.0/22 +103.46.120.0/22 +103.46.124.0/22 +103.46.128.0/22 +103.46.132.0/22 +103.46.136.0/22 +103.46.152.0/22 +103.46.156.0/22 +103.46.16.0/22 +103.46.160.0/22 +103.46.164.0/22 +103.46.168.0/22 +103.46.172.0/22 +103.46.176.0/22 +103.46.180.0/22 +103.46.20.0/22 +103.46.24.0/22 +103.46.244.0/22 +103.46.248.0/22 +103.46.28.0/22 +103.46.32.0/22 +103.46.36.0/22 +103.46.40.0/22 +103.46.44.0/22 +103.46.48.0/22 +103.46.52.0/22 +103.46.56.0/22 +103.46.60.0/22 +103.46.64.0/22 +103.46.68.0/22 +103.46.72.0/22 +103.46.76.0/22 +103.46.80.0/22 +103.46.84.0/22 +103.46.88.0/22 +103.46.92.0/22 +103.46.96.0/22 +103.47.108.0/22 +103.47.116.0/22 +103.47.120.0/22 +103.47.136.0/22 +103.47.140.0/22 +103.47.20.0/22 +103.47.212.0/22 +103.47.36.0/22 +103.47.4.0/22 +103.47.40.0/22 +103.47.48.0/22 +103.47.80.0/22 +103.47.96.0/22 +103.48.144.0/22 +103.48.148.0/22 +103.48.152.0/22 +103.48.156.0/22 +103.48.202.0/23 +103.48.216.0/22 +103.48.220.0/22 +103.48.224.0/22 +103.48.228.0/22 +103.48.232.0/22 +103.48.236.0/22 +103.48.240.0/22 +103.48.244.0/22 +103.48.52.0/22 +103.48.92.0/22 +103.49.108.0/22 +103.49.12.0/22 +103.49.128.0/22 +103.49.176.0/22 +103.49.180.0/22 +103.49.196.0/22 +103.49.20.0/22 +103.49.72.0/22 +103.49.76.0/22 +103.49.92.0/22 +103.49.96.0/22 +103.5.152.0/22 +103.5.168.0/22 +103.5.192.0/22 +103.5.252.0/22 +103.5.36.0/22 +103.5.52.0/22 +103.5.56.0/22 +103.50.108.0/22 +103.50.112.0/22 +103.50.116.0/22 +103.50.120.0/22 +103.50.124.0/22 +103.50.132.0/22 +103.50.136.0/22 +103.50.140.0/22 +103.50.172.0/22 +103.50.176.0/22 +103.50.180.0/22 +103.50.184.0/22 +103.50.188.0/22 +103.50.192.0/22 +103.50.196.0/22 +103.50.200.0/22 +103.50.220.0/22 +103.50.224.0/22 +103.50.228.0/22 +103.50.232.0/22 +103.50.236.0/22 +103.50.240.0/22 +103.50.244.0/22 +103.50.248.0/22 +103.50.36.0/22 +103.50.44.0/22 +103.50.48.0/22 +103.50.52.0/22 +103.50.56.0/22 +103.50.60.0/22 +103.50.64.0/22 +103.50.68.0/22 +103.50.72.0/22 +103.52.100.0/22 +103.52.104.0/22 +103.52.160.0/22 +103.52.164.0/22 +103.52.172.0/22 +103.52.176.0/22 +103.52.184.0/22 +103.52.196.0/22 +103.52.40.0/22 +103.52.72.0/22 +103.52.76.0/22 +103.52.80.0/22 +103.52.84.0/22 +103.52.96.0/22 +103.53.100.0/22 +103.53.124.0/22 +103.53.128.0/22 +103.53.132.0/22 +103.53.136.0/22 +103.53.140.0/22 +103.53.144.0/22 +103.53.180.0/22 +103.53.204.0/22 +103.53.208.0/22 +103.53.212.0/22 +103.53.216.0/22 +103.53.236.0/22 +103.53.248.0/22 +103.53.64.0/22 +103.53.68.0/22 +103.53.92.0/22 +103.54.160.0/22 +103.54.164.0/22 +103.54.212.0/22 +103.54.240.0/22 +103.54.48.0/22 +103.54.8.0/22 +103.55.120.0/22 +103.55.152.0/22 +103.55.172.0/22 +103.55.204.0/22 +103.55.208.0/22 +103.55.228.0/22 +103.55.236.0/22 +103.55.24.0/22 +103.55.80.0/22 +103.56.100.0/22 +103.56.104.0/22 +103.56.140.0/22 +103.56.152.0/22 +103.56.16.0/22 +103.56.184.0/22 +103.56.20.0/22 +103.56.200.0/22 +103.56.32.0/22 +103.56.56.0/22 +103.56.60.0/22 +103.56.72.0/22 +103.56.76.0/22 +103.56.8.0/22 +103.57.12.0/22 +103.57.136.0/22 +103.57.196.0/22 +103.57.52.0/22 +103.57.56.0/22 +103.57.76.0/22 +103.58.24.0/22 +103.59.100.0/22 +103.59.112.0/22 +103.59.116.0/22 +103.59.120.0/22 +103.59.124.0/22 +103.59.128.0/22 +103.59.148.0/22 +103.59.164.0/22 +103.59.76.0/22 +103.6.108.0/22 +103.6.220.0/22 +103.6.228.0/22 +103.6.76.0/22 +103.60.164.0/22 +103.60.228.0/22 +103.60.236.0/22 +103.60.32.0/22 +103.60.44.0/22 +103.61.104.0/22 +103.61.140.0/22 +103.61.152.0/22 +103.61.156.0/22 +103.61.160.0/22 +103.61.172.0/22 +103.61.176.0/22 +103.61.188.0/22 +103.61.60.0/22 +103.62.100.0/22 +103.62.104.0/22 +103.62.108.0/22 +103.62.112.0/22 +103.62.116.0/22 +103.62.120.0/22 +103.62.124.0/22 +103.62.128.0/22 +103.62.132.0/22 +103.62.156.0/22 +103.62.160.0/22 +103.62.164.0/22 +103.62.168.0/22 +103.62.172.0/22 +103.62.176.0/22 +103.62.180.0/22 +103.62.184.0/22 +103.62.188.0/22 +103.62.192.0/22 +103.62.204.0/22 +103.62.208.0/22 +103.62.212.0/22 +103.62.216.0/22 +103.62.220.0/22 +103.62.224.0/22 +103.62.24.0/22 +103.62.52.0/22 +103.62.72.0/22 +103.62.76.0/22 +103.62.80.0/22 +103.62.84.0/22 +103.62.88.0/22 +103.62.96.0/22 +103.63.140.0/22 +103.63.144.0/22 +103.63.152.0/22 +103.63.160.0/22 +103.63.164.0/22 +103.63.168.0/22 +103.63.172.0/22 +103.63.176.0/22 +103.63.180.0/22 +103.63.184.0/22 +103.63.192.0/22 +103.63.196.0/22 +103.63.200.0/22 +103.63.204.0/22 +103.63.208.0/22 +103.63.240.0/22 +103.63.244.0/22 +103.63.248.0/22 +103.63.252.0/22 +103.63.32.0/22 +103.63.36.0/22 +103.63.40.0/22 +103.63.44.0/22 +103.63.48.0/22 +103.63.52.0/22 +103.63.56.0/22 +103.63.60.0/22 +103.63.64.0/22 +103.63.68.0/22 +103.63.72.0/22 +103.63.76.0/22 +103.63.80.0/22 +103.63.84.0/22 +103.63.88.0/22 +103.64.0.0/22 +103.64.100.0/22 +103.64.104.0/22 +103.64.108.0/22 +103.64.112.0/22 +103.64.116.0/22 +103.64.120.0/22 +103.64.124.0/22 +103.64.140.0/22 +103.64.144.0/22 +103.64.152.0/22 +103.64.156.0/22 +103.64.160.0/22 +103.64.164.0/22 +103.64.168.0/22 +103.64.172.0/22 +103.64.176.0/22 +103.64.180.0/22 +103.64.184.0/22 +103.64.188.0/22 +103.64.192.0/22 +103.64.196.0/22 +103.64.200.0/22 +103.64.204.0/22 +103.64.208.0/22 +103.64.212.0/22 +103.64.216.0/22 +103.64.220.0/22 +103.64.224.0/22 +103.64.228.0/22 +103.64.232.0/22 +103.64.236.0/22 +103.64.24.0/22 +103.64.240.0/22 +103.64.244.0/22 +103.64.248.0/22 +103.64.252.0/22 +103.64.28.0/22 +103.64.32.0/22 +103.64.36.0/22 +103.64.4.0/22 +103.64.40.0/22 +103.64.44.0/22 +103.64.48.0/22 +103.64.52.0/22 +103.64.56.0/22 +103.64.60.0/22 +103.64.64.0/22 +103.64.68.0/22 +103.64.72.0/22 +103.64.76.0/22 +103.64.80.0/22 +103.64.84.0/22 +103.64.88.0/22 +103.64.92.0/22 +103.64.96.0/22 +103.65.0.0/22 +103.65.100.0/22 +103.65.104.0/22 +103.65.108.0/22 +103.65.112.0/22 +103.65.12.0/22 +103.65.144.0/22 +103.65.148.0/22 +103.65.152.0/22 +103.65.156.0/22 +103.65.16.0/22 +103.65.160.0/22 +103.65.164.0/22 +103.65.168.0/22 +103.65.172.0/22 +103.65.36.0/22 +103.65.4.0/22 +103.65.40.0/22 +103.65.48.0/22 +103.65.52.0/22 +103.65.56.0/22 +103.65.60.0/22 +103.65.64.0/22 +103.65.68.0/22 +103.65.72.0/22 +103.65.76.0/22 +103.65.8.0/22 +103.65.80.0/22 +103.65.84.0/22 +103.65.88.0/22 +103.65.92.0/22 +103.66.108.0/22 +103.66.200.0/22 +103.66.216.0/22 +103.66.240.0/22 +103.66.244.0/22 +103.66.248.0/22 +103.66.252.0/22 +103.66.32.0/22 +103.66.40.0/22 +103.66.92.0/22 +103.67.0.0/22 +103.67.100.0/22 +103.67.104.0/22 +103.67.108.0/22 +103.67.112.0/22 +103.67.116.0/22 +103.67.120.0/22 +103.67.124.0/22 +103.67.128.0/22 +103.67.132.0/22 +103.67.136.0/22 +103.67.140.0/22 +103.67.144.0/22 +103.67.148.0/22 +103.67.172.0/22 +103.67.192.0/22 +103.67.212.0/22 +103.67.252.0/22 +103.67.4.0/22 +103.67.8.0/22 +103.68.100.0/22 +103.68.128.0/22 +103.68.192.0/22 +103.68.64.0/22 +103.68.88.0/22 +103.69.116.0/22 +103.69.132.0/22 +103.69.152.0/22 +103.69.16.0/22 +103.7.140.0/22 +103.7.212.0/22 +103.7.216.0/22 +103.7.220.0/22 +103.7.28.0/22 +103.70.148.0/22 +103.70.220.0/22 +103.70.224.0/22 +103.70.236.0/22 +103.70.252.0/22 +103.70.8.0/22 +103.71.0.0/22 +103.71.120.0/22 +103.71.124.0/22 +103.71.128.0/22 +103.71.144.0/22 +103.71.196.0/22 +103.71.200.0/22 +103.71.232.0/22 +103.71.48.0/22 +103.71.68.0/22 +103.71.72.0/22 +103.71.80.0/22 +103.71.84.0/22 +103.71.88.0/22 +103.72.112.0/22 +103.72.116.0/22 +103.72.12.0/22 +103.72.120.0/22 +103.72.124.0/22 +103.72.128.0/22 +103.72.132.0/22 +103.72.148.0/22 +103.72.16.0/22 +103.72.172.0/22 +103.72.180.0/22 +103.72.20.0/22 +103.72.224.0/22 +103.72.228.0/22 +103.72.232.0/22 +103.72.236.0/22 +103.72.24.0/22 +103.72.240.0/22 +103.72.244.0/22 +103.72.248.0/22 +103.72.252.0/22 +103.72.28.0/22 +103.72.32.0/22 +103.72.36.0/22 +103.72.40.0/22 +103.72.44.0/22 +103.72.48.0/22 +103.72.52.0/22 +103.73.0.0/22 +103.73.116.0/22 +103.73.12.0/22 +103.73.120.0/22 +103.73.128.0/22 +103.73.132.0/22 +103.73.136.0/22 +103.73.140.0/22 +103.73.144.0/22 +103.73.16.0/22 +103.73.168.0/22 +103.73.176.0/22 +103.73.20.0/22 +103.73.204.0/22 +103.73.208.0/22 +103.73.24.0/22 +103.73.240.0/22 +103.73.244.0/22 +103.73.248.0/22 +103.73.28.0/22 +103.73.4.0/22 +103.73.48.0/22 +103.73.8.0/22 +103.73.96.0/22 +103.74.124.0/22 +103.74.148.0/22 +103.74.152.0/22 +103.74.156.0/22 +103.74.204.0/22 +103.74.232.0/22 +103.74.24.0/22 +103.74.28.0/22 +103.74.32.0/22 +103.74.36.0/22 +103.74.40.0/22 +103.74.44.0/22 +103.74.48.0/22 +103.74.56.0/22 +103.74.60.0/22 +103.74.80.0/22 +103.75.104.0/22 +103.75.108.0/22 +103.75.112.0/22 +103.75.120.0/22 +103.75.128.0/22 +103.75.144.0/22 +103.75.152.0/22 +103.75.236.0/24 +103.75.88.0/22 +103.75.92.0/22 +103.76.216.0/22 +103.76.220.0/22 +103.76.224.0/22 +103.76.60.0/22 +103.76.64.0/22 +103.76.68.0/22 +103.76.72.0/22 +103.76.84.0/22 +103.76.92.0/22 +103.77.132.0/22 +103.77.148.0/22 +103.77.220.0/22 +103.77.28.0/22 +103.77.52.0/22 +103.77.56.0/22 +103.77.72.0/22 +103.77.88.0/22 +103.77.92.0/22 +103.78.124.0/22 +103.78.172.0/22 +103.78.176.0/22 +103.78.196.0/22 +103.78.228.0/22 +103.78.56.0/22 +103.78.60.0/22 +103.78.64.0/22 +103.78.68.0/22 +103.79.120.0/22 +103.79.136.0/22 +103.79.188.0/22 +103.79.192.0/22 +103.79.196.0/22 +103.79.200.0/22 +103.79.204.0/22 +103.79.208.0/22 +103.79.212.0/22 +103.79.24.0/22 +103.79.240.0/22 +103.79.28.0/22 +103.79.36.0/22 +103.79.40.0/22 +103.79.44.0/22 +103.79.52.0/22 +103.79.56.0/22 +103.79.60.0/22 +103.79.64.0/22 +103.79.68.0/22 +103.79.80.0/22 +103.79.84.0/22 +103.8.0.0/22 +103.8.108.0/22 +103.8.156.0/22 +103.8.200.0/22 +103.8.204.0/22 +103.8.220.0/22 +103.8.32.0/22 +103.8.4.0/22 +103.8.52.0/22 +103.8.68.0/22 +103.8.8.0/22 +103.80.176.0/22 +103.80.180.0/22 +103.80.184.0/22 +103.80.192.0/22 +103.80.200.0/22 +103.80.232.0/22 +103.80.24.0/22 +103.80.28.0/22 +103.80.44.0/22 +103.80.72.0/22 +103.81.120.0/22 +103.81.148.0/22 +103.81.16.0/22 +103.81.164.0/22 +103.81.168.0/22 +103.81.183.0/24 +103.81.184.0/22 +103.81.20.0/22 +103.81.200.0/22 +103.81.232.0/22 +103.81.4.0/22 +103.81.44.0/22 +103.81.48.0/22 +103.81.8.0/22 +103.81.96.0/22 +103.82.104.0/22 +103.82.224.0/22 +103.82.236.0/22 +103.82.52.0/22 +103.82.60.0/22 +103.82.68.0/22 +103.82.84.0/22 +103.83.112.0/22 +103.83.120.0/22 +103.83.180.0/22 +103.83.44.0/22 +103.83.52.0/22 +103.83.60.0/22 +103.83.64.0/22 +103.83.72.0/22 +103.84.0.0/22 +103.84.12.0/22 +103.84.136.0/22 +103.84.16.0/22 +103.84.20.0/22 +103.84.24.0/22 +103.84.28.0/22 +103.84.48.0/22 +103.84.64.0/22 +103.84.72.0/22 +103.84.92.0/22 +103.85.136.0/22 +103.85.144.0/22 +103.85.164.0/22 +103.85.168.0/22 +103.85.172.0/22 +103.85.176.0/22 +103.85.20.0/22 +103.85.224.0/22 +103.85.24.0/22 +103.85.44.0/22 +103.85.48.0/22 +103.85.84.0/22 +103.86.204.0/22 +103.86.208.0/22 +103.86.212.0/22 +103.86.216.0/22 +103.86.220.0/22 +103.86.224.0/22 +103.86.228.0/22 +103.86.232.0/22 +103.86.236.0/22 +103.86.240.0/22 +103.86.244.0/22 +103.86.248.0/22 +103.86.252.0/22 +103.86.28.0/22 +103.86.32.0/22 +103.86.44.0/22 +103.86.60.0/22 +103.86.80.0/22 +103.86.84.0/22 +103.87.0.0/22 +103.87.132.0/22 +103.87.180.0/22 +103.87.20.0/22 +103.87.224.0/22 +103.87.32.0/22 +103.87.4.0/22 +103.87.72.0/22 +103.87.96.0/22 +103.88.12.0/22 +103.88.16.0/22 +103.88.164.0/22 +103.88.176.0/22 +103.88.184.0/22 +103.88.188.0/22 +103.88.20.0/22 +103.88.212.0/22 +103.88.32.0/22 +103.88.36.0/22 +103.88.4.0/22 +103.88.60.0/22 +103.88.64.0/22 +103.88.72.0/22 +103.88.8.0/22 +103.88.96.0/22 +103.89.100.0/22 +103.89.104.0/22 +103.89.108.0/22 +103.89.112.0/22 +103.89.116.0/22 +103.89.148.0/22 +103.89.172.0/22 +103.89.184.0/22 +103.89.188.0/22 +103.89.192.0/22 +103.89.196.0/22 +103.89.200.0/22 +103.89.204.0/22 +103.89.208.0/22 +103.89.212.0/22 +103.89.216.0/22 +103.89.220.0/22 +103.89.224.0/22 +103.89.228.0/22 +103.89.28.0/22 +103.89.96.0/22 +103.9.108.0/22 +103.9.152.0/22 +103.9.192.0/22 +103.9.24.0/22 +103.9.248.0/22 +103.9.252.0/22 +103.9.8.0/22 +103.90.100.0/22 +103.90.104.0/22 +103.90.108.0/22 +103.90.112.0/22 +103.90.116.0/22 +103.90.120.0/22 +103.90.124.0/22 +103.90.128.0/22 +103.90.132.0/22 +103.90.152.0/22 +103.90.168.0/22 +103.90.173.0/24 +103.90.176.0/22 +103.90.188.0/22 +103.90.192.0/22 +103.90.52.0/22 +103.90.92.0/22 +103.91.108.0/22 +103.91.152.0/22 +103.91.176.0/22 +103.91.200.0/22 +103.91.208.0/22 +103.91.212.0/22 +103.91.219.0/24 +103.91.236.0/22 +103.91.252.0/22 +103.91.36.0/22 +103.91.40.0/22 +103.92.0.0/22 +103.92.108.0/22 +103.92.12.0/22 +103.92.124.0/22 +103.92.128.0/24 +103.92.132.0/22 +103.92.156.0/22 +103.92.164.0/22 +103.92.168.0/22 +103.92.172.0/22 +103.92.176.0/22 +103.92.180.0/22 +103.92.184.0/22 +103.92.188.0/22 +103.92.192.0/22 +103.92.236.0/22 +103.92.240.0/22 +103.92.244.0/22 +103.92.248.0/22 +103.92.252.0/22 +103.92.4.0/22 +103.92.48.0/22 +103.92.52.0/22 +103.92.56.0/22 +103.92.60.0/22 +103.92.64.0/22 +103.92.68.0/22 +103.92.72.0/22 +103.92.76.0/22 +103.92.8.0/22 +103.92.80.0/22 +103.92.86.0/24 +103.92.88.0/22 +103.93.0.0/22 +103.93.152.0/22 +103.93.180.0/22 +103.93.204.0/22 +103.93.28.0/22 +103.93.4.0/22 +103.93.76.0/22 +103.93.84.0/22 +103.94.116.0/22 +103.94.12.0/22 +103.94.160.0/22 +103.94.180.0/22 +103.94.20.0/22 +103.94.200.0/22 +103.94.28.0/22 +103.94.32.0/22 +103.94.36.0/22 +103.94.40.0/22 +103.94.44.0/22 +103.94.72.0/22 +103.94.88.0/22 +103.95.116.0/22 +103.95.128.0/22 +103.95.136.0/22 +103.95.140.0/22 +103.95.144.0/22 +103.95.152.0/22 +103.95.207.0/24 +103.95.216.0/22 +103.95.220.0/22 +103.95.224.0/22 +103.95.236.0/22 +103.95.240.0/22 +103.95.244.0/22 +103.95.248.0/22 +103.95.252.0/22 +103.95.28.0/22 +103.95.52.0/22 +103.95.64.0/22 +103.95.68.0/22 +103.95.88.0/22 +103.95.92.0/22 +103.96.0.0/22 +103.96.124.0/22 +103.96.136.0/22 +103.96.140.0/24 +103.96.148.0/22 +103.96.152.0/22 +103.96.156.0/22 +103.96.160.0/22 +103.96.164.0/22 +103.96.168.0/22 +103.96.172.0/22 +103.96.176.0/22 +103.96.180.0/22 +103.96.184.0/22 +103.96.188.0/22 +103.96.192.0/22 +103.96.196.0/22 +103.96.200.0/22 +103.96.204.0/22 +103.96.208.0/22 +103.96.212.0/22 +103.96.216.0/22 +103.96.8.0/22 +103.96.80.0/22 +103.97.112.0/22 +103.97.116.0/22 +103.97.12.0/22 +103.97.128.0/22 +103.97.144.0/22 +103.97.148.0/22 +103.97.16.0/22 +103.97.188.0/22 +103.97.192.0/22 +103.97.20.0/22 +103.97.228.0/23 +103.97.24.0/22 +103.97.28.0/22 +103.97.32.0/22 +103.97.36.0/22 +103.97.40.0/22 +103.97.56.0/22 +103.97.60.0/22 +103.97.64.0/22 +103.97.68.0/22 +103.97.72.0/22 +103.97.8.0/22 +103.97.80.0/22 +103.98.100.0/22 +103.98.124.0/22 +103.98.136.0/22 +103.98.140.0/22 +103.98.144.0/22 +103.98.164.0/22 +103.98.168.0/22 +103.98.180.0/22 +103.98.196.0/22 +103.98.216.0/22 +103.98.220.0/22 +103.98.224.0/22 +103.98.228.0/22 +103.98.232.0/22 +103.98.240.0/22 +103.98.244.0/22 +103.98.248.0/22 +103.98.252.0/22 +103.98.28.0/23 +103.98.40.0/22 +103.98.44.0/22 +103.98.48.0/22 +103.98.56.0/22 +103.98.80.0/22 +103.98.88.0/22 +103.98.92.0/22 +103.98.96.0/22 +103.99.104.0/22 +103.99.116.0/22 +103.99.120.0/22 +103.99.152.0/22 +103.99.220.0/22 +103.99.232.0/22 +103.99.236.0/22 +103.99.40.0/23 +103.99.52.0/22 +103.99.56.0/22 +103.99.60.0/22 +103.99.76.0/22 +106.0.0.0/24 +106.0.16.0/20 +106.0.2.0/23 +106.0.4.0/22 +106.0.44.0/22 +106.0.64.0/18 +106.0.8.0/21 +106.108.0.0/14 +106.11.0.0/16 +106.112.0.0/13 +106.12.0.0/14 +106.120.0.0/13 +106.16.0.0/12 +106.2.0.0/15 +106.224.0.0/12 +106.32.0.0/12 +106.4.0.0/14 +106.48.0.0/15 +106.50.0.0/16 +106.52.0.0/14 +106.56.0.0/13 +106.74.0.0/16 +106.75.0.0/16 +106.8.0.0/15 +106.80.0.0/12 +109.244.0.0/16 +110.152.0.0/14 +110.156.0.0/15 +110.16.0.0/14 +110.165.32.0/19 +110.166.0.0/15 +110.172.192.0/18 +110.173.0.0/19 +110.173.192.0/19 +110.173.32.0/20 +110.173.64.0/19 +110.173.96.0/19 +110.176.0.0/13 +110.184.0.0/13 +110.192.0.0/11 +110.228.0.0/14 +110.232.32.0/19 +110.236.0.0/15 +110.240.0.0/12 +110.34.40.0/22 +110.34.44.0/22 +110.40.0.0/14 +110.44.12.0/22 +110.44.144.0/20 +110.48.0.0/16 +110.51.0.0/16 +110.52.0.0/15 +110.56.0.0/13 +110.6.0.0/15 +110.64.0.0/15 +110.72.0.0/15 +110.75.0.0/17 +110.75.128.0/19 +110.75.160.0/19 +110.75.192.0/18 +110.76.0.0/19 +110.76.132.0/22 +110.76.156.0/22 +110.76.184.0/22 +110.76.192.0/18 +110.76.32.0/19 +110.77.0.0/17 +110.80.0.0/13 +110.88.0.0/14 +110.92.68.0/22 +110.93.32.0/19 +110.94.0.0/15 +110.96.0.0/11 +111.0.0.0/10 +111.112.0.0/15 +111.114.0.0/15 +111.116.0.0/15 +111.118.200.0/21 +111.119.128.0/19 +111.119.64.0/18 +111.120.0.0/14 +111.124.0.0/16 +111.126.0.0/15 +111.128.0.0/11 +111.160.0.0/13 +111.170.0.0/16 +111.172.0.0/14 +111.176.0.0/13 +111.186.0.0/15 +111.192.0.0/12 +111.208.0.0/14 +111.212.0.0/14 +111.221.128.0/17 +111.221.28.0/24 +111.222.0.0/16 +111.223.12.0/22 +111.223.16.0/22 +111.223.240.0/22 +111.223.248.0/22 +111.223.4.0/22 +111.223.8.0/22 +111.224.0.0/14 +111.228.0.0/14 +111.235.156.0/22 +111.235.160.0/19 +111.235.96.0/19 +111.66.0.0/16 +111.67.192.0/20 +111.68.64.0/19 +111.72.0.0/13 +111.85.0.0/16 +111.91.192.0/19 +111.92.248.0/22 +111.92.252.0/22 +112.0.0.0/10 +112.100.0.0/14 +112.109.128.0/17 +112.111.0.0/16 +112.112.0.0/14 +112.116.0.0/15 +112.122.0.0/15 +112.124.0.0/14 +112.128.0.0/14 +112.132.0.0/16 +112.137.48.0/21 +112.192.0.0/14 +112.224.0.0/11 +112.64.0.0/15 +112.66.0.0/15 +112.73.0.0/16 +112.74.0.0/15 +112.80.0.0/13 +112.88.0.0/13 +112.96.0.0/15 +112.98.0.0/15 +113.0.0.0/13 +113.11.192.0/19 +113.112.0.0/13 +113.12.0.0/14 +113.120.0.0/13 +113.128.0.0/15 +113.130.112.0/21 +113.130.96.0/20 +113.132.0.0/14 +113.136.0.0/13 +113.16.0.0/15 +113.18.0.0/16 +113.194.0.0/15 +113.197.100.0/22 +113.200.0.0/15 +113.202.0.0/16 +113.204.0.0/14 +113.208.128.0/17 +113.208.96.0/19 +113.209.0.0/16 +113.21.232.0/22 +113.21.236.0/22 +113.212.0.0/18 +113.212.100.0/22 +113.212.184.0/21 +113.212.88.0/22 +113.213.0.0/17 +113.214.0.0/15 +113.218.0.0/15 +113.220.0.0/14 +113.224.0.0/12 +113.24.0.0/14 +113.240.0.0/13 +113.248.0.0/14 +113.31.0.0/16 +113.44.0.0/14 +113.48.0.0/14 +113.52.160.0/19 +113.52.228.0/22 +113.54.0.0/15 +113.56.0.0/15 +113.58.0.0/16 +113.59.0.0/17 +113.59.224.0/22 +113.62.0.0/15 +113.64.0.0/11 +113.8.0.0/15 +113.96.0.0/12 +114.104.0.0/14 +114.110.0.0/20 +114.110.64.0/18 +114.111.0.0/19 +114.111.160.0/19 +114.112.0.0/14 +114.116.0.0/16 +114.117.0.0/17 +114.117.128.0/17 +114.118.0.0/16 +114.119.0.0/17 +114.119.192.0/21 +114.119.200.0/22 +114.119.204.0/22 +114.119.208.0/20 +114.119.224.0/19 +114.132.0.0/16 +114.135.0.0/16 +114.138.0.0/15 +114.141.128.0/18 +114.141.64.0/21 +114.141.80.0/22 +114.141.84.0/22 +114.196.0.0/15 +114.198.248.0/21 +114.208.0.0/14 +114.212.0.0/15 +114.214.0.0/16 +114.215.0.0/16 +114.216.0.0/13 +114.224.0.0/12 +114.240.0.0/12 +114.28.0.0/16 +114.31.64.0/22 +114.31.68.0/22 +114.54.0.0/15 +114.60.0.0/14 +114.64.0.0/14 +114.68.0.0/16 +114.79.64.0/18 +114.80.0.0/12 +114.96.0.0/13 +115.100.0.0/14 +115.104.0.0/14 +115.120.0.0/14 +115.124.16.0/20 +115.148.0.0/14 +115.152.0.0/15 +115.154.0.0/15 +115.156.0.0/15 +115.158.0.0/16 +115.159.0.0/16 +115.166.64.0/19 +115.168.0.0/14 +115.172.0.0/14 +115.180.0.0/15 +115.182.0.0/16 +115.183.0.0/16 +115.187.0.0/22 +115.187.12.0/22 +115.187.4.0/22 +115.187.8.0/22 +115.190.0.0/15 +115.192.0.0/11 +115.224.0.0/12 +115.24.0.0/14 +115.28.0.0/15 +115.31.64.0/22 +115.31.68.0/22 +115.31.72.0/22 +115.31.76.0/22 +115.32.0.0/14 +115.42.56.0/22 +115.44.0.0/15 +115.46.0.0/16 +115.47.0.0/16 +115.48.0.0/12 +115.69.64.0/20 +115.84.0.0/18 +115.84.192.0/19 +115.85.192.0/18 +116.0.24.0/21 +116.0.8.0/21 +116.1.0.0/16 +116.112.0.0/14 +116.116.0.0/15 +116.128.0.0/10 +116.13.0.0/16 +116.16.0.0/12 +116.192.0.0/16 +116.193.152.0/22 +116.193.16.0/20 +116.193.164.0/22 +116.193.176.0/21 +116.193.32.0/19 +116.194.0.0/15 +116.196.0.0/17 +116.196.128.0/18 +116.196.192.0/18 +116.197.160.0/22 +116.197.164.0/22 +116.198.0.0/16 +116.199.0.0/17 +116.199.128.0/19 +116.2.0.0/15 +116.204.0.0/17 +116.204.132.0/22 +116.204.168.0/22 +116.204.216.0/22 +116.204.232.0/22 +116.205.0.0/16 +116.206.176.0/22 +116.206.92.0/22 +116.207.0.0/16 +116.208.0.0/14 +116.212.160.0/20 +116.213.128.0/17 +116.213.44.0/22 +116.213.64.0/18 +116.214.128.0/17 +116.214.32.0/19 +116.214.64.0/20 +116.215.0.0/16 +116.216.0.0/14 +116.224.0.0/12 +116.242.0.0/15 +116.244.0.0/15 +116.246.0.0/15 +116.248.0.0/15 +116.251.64.0/18 +116.252.0.0/15 +116.254.104.0/22 +116.254.108.0/22 +116.254.128.0/17 +116.255.128.0/17 +116.4.0.0/14 +116.50.0.0/20 +116.52.0.0/14 +116.56.0.0/15 +116.58.128.0/20 +116.58.208.0/20 +116.60.0.0/14 +116.66.0.0/17 +116.66.176.0/22 +116.68.136.0/22 +116.68.140.0/22 +116.68.176.0/22 +116.68.180.0/22 +116.69.0.0/16 +116.70.0.0/17 +116.76.0.0/15 +116.78.0.0/15 +116.8.0.0/14 +116.85.0.0/16 +116.89.144.0/20 +116.89.240.0/22 +116.90.184.0/21 +116.90.80.0/20 +116.95.0.0/16 +117.100.0.0/15 +117.103.128.0/20 +117.103.16.0/20 +117.103.40.0/21 +117.103.72.0/21 +117.104.168.0/21 +117.106.0.0/15 +117.112.0.0/13 +117.120.128.0/17 +117.120.64.0/18 +117.121.0.0/17 +117.121.128.0/18 +117.121.192.0/21 +117.122.128.0/17 +117.124.0.0/14 +117.128.0.0/10 +117.21.0.0/16 +117.22.0.0/15 +117.24.0.0/13 +117.32.0.0/13 +117.40.0.0/14 +117.44.0.0/15 +117.48.0.0/14 +117.53.176.0/20 +117.53.48.0/20 +117.57.0.0/16 +117.58.0.0/17 +117.59.0.0/16 +117.60.0.0/14 +117.64.0.0/13 +117.72.0.0/15 +117.74.128.0/17 +117.74.64.0/20 +117.74.80.0/20 +117.75.0.0/16 +117.76.0.0/14 +117.8.0.0/13 +117.80.0.0/12 +118.102.16.0/20 +118.102.32.0/21 +118.103.164.0/22 +118.103.168.0/22 +118.103.172.0/22 +118.103.176.0/22 +118.107.180.0/22 +118.112.0.0/13 +118.120.0.0/14 +118.124.0.0/15 +118.126.0.0/16 +118.127.128.0/19 +118.132.0.0/14 +118.144.0.0/14 +118.178.0.0/16 +118.180.0.0/14 +118.184.0.0/17 +118.184.128.0/17 +118.186.0.0/15 +118.188.0.0/16 +118.190.0.0/16 +118.191.0.0/21 +118.191.12.0/24 +118.191.128.0/19 +118.191.16.0/21 +118.191.176.0/20 +118.191.192.0/20 +118.191.208.0/24 +118.191.216.0/22 +118.191.223.0/24 +118.191.224.0/24 +118.191.240.0/20 +118.191.64.0/20 +118.191.8.0/22 +118.191.80.0/22 +118.192.0.0/16 +118.193.0.0/21 +118.193.128.0/17 +118.193.48.0/21 +118.193.8.0/21 +118.193.96.0/19 +118.194.0.0/17 +118.194.128.0/18 +118.194.192.0/19 +118.194.224.0/22 +118.194.240.0/21 +118.195.0.0/17 +118.195.128.0/17 +118.196.0.0/14 +118.202.0.0/15 +118.204.0.0/14 +118.212.0.0/16 +118.213.0.0/16 +118.215.192.0/18 +118.224.0.0/14 +118.228.0.0/15 +118.230.0.0/16 +118.239.0.0/16 +118.24.0.0/15 +118.242.0.0/16 +118.244.0.0/14 +118.248.0.0/13 +118.26.0.0/19 +118.26.112.0/21 +118.26.120.0/21 +118.26.128.0/22 +118.26.133.0/24 +118.26.134.0/23 +118.26.136.0/21 +118.26.160.0/20 +118.26.188.0/22 +118.26.192.0/18 +118.26.32.0/22 +118.26.40.0/21 +118.26.48.0/21 +118.26.56.0/21 +118.26.64.0/19 +118.26.96.0/21 +118.28.0.0/15 +118.30.0.0/16 +118.31.0.0/16 +118.64.0.0/15 +118.66.0.0/16 +118.67.112.0/20 +118.72.0.0/13 +118.80.0.0/15 +118.84.0.0/15 +118.88.128.0/17 +118.88.32.0/19 +118.88.64.0/18 +118.89.0.0/16 +118.91.240.0/20 +119.0.0.0/15 +119.10.0.0/17 +119.108.0.0/15 +119.112.0.0/13 +119.120.0.0/13 +119.128.0.0/12 +119.144.0.0/14 +119.148.160.0/20 +119.148.176.0/20 +119.15.136.0/21 +119.151.192.0/18 +119.16.0.0/16 +119.160.200.0/21 +119.161.120.0/22 +119.161.124.0/22 +119.161.128.0/17 +119.162.0.0/15 +119.164.0.0/14 +119.176.0.0/12 +119.18.192.0/20 +119.18.208.0/21 +119.18.224.0/20 +119.18.240.0/20 +119.19.0.0/16 +119.2.0.0/19 +119.2.128.0/17 +119.20.0.0/14 +119.232.0.0/15 +119.235.128.0/18 +119.248.0.0/14 +119.252.240.0/20 +119.252.96.0/21 +119.253.0.0/16 +119.254.0.0/15 +119.27.128.0/19 +119.27.160.0/19 +119.27.192.0/18 +119.27.64.0/18 +119.28.0.0/15 +119.3.0.0/16 +119.30.48.0/20 +119.31.192.0/19 +119.32.0.0/14 +119.36.0.0/16 +119.37.0.0/17 +119.37.128.0/18 +119.37.192.0/18 +119.38.0.0/17 +119.38.128.0/18 +119.38.192.0/20 +119.38.208.0/20 +119.38.224.0/19 +119.39.0.0/16 +119.4.0.0/14 +119.40.0.0/18 +119.40.128.0/17 +119.40.64.0/20 +119.41.0.0/16 +119.42.0.0/19 +119.42.128.0/21 +119.42.136.0/21 +119.42.224.0/19 +119.44.0.0/15 +119.48.0.0/13 +119.57.0.0/16 +119.58.0.0/16 +119.59.128.0/17 +119.60.0.0/16 +119.61.0.0/16 +119.62.0.0/16 +119.63.32.0/19 +119.75.208.0/20 +119.78.0.0/15 +119.80.0.0/16 +119.82.208.0/20 +119.84.0.0/14 +119.88.0.0/14 +119.96.0.0/13 +120.0.0.0/12 +120.128.0.0/14 +120.132.0.0/17 +120.132.128.0/17 +120.133.0.0/16 +120.134.0.0/15 +120.136.128.0/18 +120.136.16.0/22 +120.136.20.0/22 +120.137.0.0/17 +120.143.128.0/19 +120.192.0.0/10 +120.24.0.0/14 +120.30.0.0/16 +120.31.0.0/16 +120.32.0.0/13 +120.40.0.0/14 +120.44.0.0/15 +120.46.0.0/16 +120.47.0.0/16 +120.48.0.0/15 +120.52.0.0/16 +120.53.0.0/16 +120.54.0.0/15 +120.64.0.0/14 +120.68.0.0/14 +120.72.128.0/17 +120.72.32.0/19 +120.76.0.0/14 +120.80.0.0/13 +120.88.8.0/21 +120.90.0.0/15 +120.92.0.0/16 +120.94.0.0/16 +120.95.0.0/16 +121.0.16.0/20 +121.0.8.0/21 +121.100.128.0/17 +121.101.0.0/18 +121.101.208.0/20 +121.16.0.0/13 +121.192.0.0/16 +121.193.0.0/16 +121.194.0.0/15 +121.196.0.0/14 +121.200.192.0/21 +121.201.0.0/16 +121.204.0.0/14 +121.224.0.0/12 +121.24.0.0/14 +121.248.0.0/14 +121.255.0.0/16 +121.28.0.0/15 +121.30.0.0/16 +121.31.0.0/16 +121.32.0.0/14 +121.36.0.0/16 +121.37.0.0/16 +121.38.0.0/15 +121.4.0.0/15 +121.40.0.0/14 +121.46.0.0/18 +121.46.128.0/17 +121.46.76.0/22 +121.47.0.0/16 +121.48.0.0/15 +121.50.8.0/21 +121.51.0.0/16 +121.52.160.0/19 +121.52.208.0/20 +121.52.224.0/19 +121.54.176.0/21 +121.54.188.0/22 +121.55.0.0/18 +121.56.0.0/15 +121.58.0.0/17 +121.58.136.0/21 +121.58.144.0/20 +121.58.160.0/21 +121.59.0.0/16 +121.60.0.0/14 +121.68.0.0/14 +121.76.0.0/15 +121.79.128.0/18 +121.8.0.0/13 +121.89.0.0/16 +121.91.104.0/21 +122.0.128.0/17 +122.0.64.0/18 +122.10.128.0/22 +122.10.132.0/23 +122.10.136.0/23 +122.10.164.0/22 +122.10.168.0/21 +122.10.176.0/20 +122.10.192.0/22 +122.10.200.0/21 +122.10.208.0/21 +122.10.216.0/22 +122.10.228.0/22 +122.10.232.0/21 +122.10.240.0/22 +122.102.0.0/20 +122.102.64.0/20 +122.102.80.0/20 +122.11.0.0/17 +122.112.0.0/18 +122.112.128.0/17 +122.112.64.0/18 +122.113.0.0/16 +122.114.0.0/16 +122.115.0.0/17 +122.115.128.0/19 +122.115.160.0/19 +122.115.192.0/19 +122.115.224.0/19 +122.119.0.0/16 +122.12.0.0/16 +122.128.100.0/22 +122.128.120.0/21 +122.13.0.0/16 +122.136.0.0/13 +122.14.0.0/17 +122.14.128.0/18 +122.14.192.0/18 +122.144.128.0/17 +122.152.192.0/18 +122.156.0.0/14 +122.188.0.0/14 +122.192.0.0/14 +122.198.0.0/16 +122.200.40.0/22 +122.200.44.0/22 +122.200.64.0/18 +122.201.48.0/20 +122.204.0.0/14 +122.224.0.0/12 +122.240.0.0/13 +122.248.24.0/21 +122.248.48.0/20 +122.255.64.0/21 +122.4.0.0/14 +122.48.0.0/16 +122.49.0.0/18 +122.51.0.0/16 +122.64.0.0/11 +122.8.0.0/17 +122.8.192.0/18 +122.9.0.0/16 +122.96.0.0/15 +123.0.128.0/18 +123.100.0.0/19 +123.101.0.0/16 +123.103.0.0/17 +123.108.128.0/20 +123.108.208.0/20 +123.112.0.0/12 +123.128.0.0/13 +123.136.80.0/20 +123.137.0.0/16 +123.138.0.0/15 +123.144.0.0/14 +123.148.0.0/16 +123.149.0.0/16 +123.150.0.0/15 +123.152.0.0/13 +123.160.0.0/14 +123.164.0.0/14 +123.168.0.0/14 +123.172.0.0/15 +123.174.0.0/15 +123.176.60.0/22 +123.176.80.0/20 +123.177.0.0/16 +123.178.0.0/15 +123.180.0.0/14 +123.184.0.0/14 +123.188.0.0/14 +123.196.0.0/15 +123.199.128.0/17 +123.206.0.0/15 +123.232.0.0/14 +123.242.0.0/17 +123.242.192.0/22 +123.242.196.0/22 +123.244.0.0/14 +123.249.0.0/16 +123.253.108.0/22 +123.253.240.0/22 +123.254.100.0/22 +123.254.96.0/22 +123.4.0.0/14 +123.49.128.0/17 +123.50.160.0/19 +123.52.0.0/14 +123.56.0.0/15 +123.58.0.0/20 +123.58.128.0/18 +123.58.16.0/20 +123.58.224.0/20 +123.58.240.0/20 +123.58.32.0/19 +123.58.64.0/19 +123.58.96.0/19 +123.59.0.0/16 +123.60.0.0/16 +123.61.0.0/16 +123.62.0.0/16 +123.64.0.0/11 +123.8.0.0/13 +123.96.0.0/15 +123.98.0.0/17 +123.99.128.0/17 +124.108.40.0/21 +124.108.8.0/21 +124.109.96.0/21 +124.112.0.0/15 +124.114.0.0/15 +124.116.0.0/16 +124.117.0.0/16 +124.118.0.0/15 +124.126.0.0/15 +124.128.0.0/13 +124.14.0.0/15 +124.147.128.0/17 +124.150.137.0/24 +124.151.0.0/16 +124.152.0.0/16 +124.16.0.0/15 +124.160.0.0/16 +124.161.0.0/16 +124.162.0.0/16 +124.163.0.0/16 +124.164.0.0/14 +124.172.0.0/15 +124.174.0.0/15 +124.192.0.0/15 +124.196.0.0/16 +124.20.0.0/16 +124.200.0.0/13 +124.21.0.0/20 +124.21.128.0/17 +124.21.16.0/20 +124.21.32.0/19 +124.21.64.0/18 +124.22.0.0/15 +124.220.0.0/14 +124.224.0.0/16 +124.225.0.0/16 +124.226.0.0/15 +124.228.0.0/14 +124.232.0.0/15 +124.234.0.0/15 +124.236.0.0/14 +124.240.0.0/17 +124.240.128.0/18 +124.242.0.0/16 +124.243.192.0/18 +124.248.0.0/17 +124.249.0.0/16 +124.250.0.0/15 +124.254.0.0/18 +124.28.192.0/18 +124.29.0.0/17 +124.31.0.0/16 +124.40.112.0/20 +124.40.128.0/18 +124.40.192.0/19 +124.40.240.0/22 +124.42.0.0/17 +124.42.128.0/17 +124.47.0.0/18 +124.6.64.0/18 +124.64.0.0/15 +124.66.0.0/17 +124.67.0.0/16 +124.68.0.0/15 +124.70.0.0/15 +124.72.0.0/16 +124.73.0.0/16 +124.74.0.0/15 +124.76.0.0/14 +124.88.0.0/16 +124.89.0.0/17 +124.89.128.0/17 +124.90.0.0/15 +124.92.0.0/14 +125.104.0.0/13 +125.112.0.0/12 +125.169.0.0/16 +125.171.0.0/16 +125.208.0.0/18 +125.210.0.0/16 +125.211.0.0/16 +125.213.0.0/17 +125.214.96.0/19 +125.215.0.0/18 +125.216.0.0/15 +125.218.0.0/16 +125.219.0.0/16 +125.220.0.0/15 +125.222.0.0/15 +125.254.128.0/18 +125.254.192.0/18 +125.31.192.0/18 +125.32.0.0/16 +125.33.0.0/16 +125.34.0.0/16 +125.35.0.0/17 +125.35.128.0/17 +125.36.0.0/14 +125.40.0.0/13 +125.58.128.0/17 +125.61.128.0/17 +125.62.0.0/18 +125.64.0.0/13 +125.72.0.0/16 +125.73.0.0/16 +125.74.0.0/15 +125.76.0.0/17 +125.76.128.0/17 +125.77.0.0/16 +125.78.0.0/15 +125.80.0.0/13 +125.88.0.0/13 +125.96.0.0/15 +125.98.0.0/16 +128.108.0.0/16 +129.204.0.0/16 +129.211.0.0/16 +129.28.0.0/16 +132.232.0.0/16 +134.175.0.0/16 +137.59.59.0/24 +137.59.88.0/22 +139.129.0.0/16 +139.148.0.0/16 +139.155.0.0/16 +139.159.0.0/16 +139.170.0.0/16 +139.176.0.0/16 +139.183.0.0/16 +139.186.0.0/16 +139.189.0.0/16 +139.196.0.0/14 +139.200.0.0/13 +139.208.0.0/13 +139.217.0.0/16 +139.219.0.0/16 +139.220.0.0/15 +139.224.0.0/16 +139.226.0.0/15 +139.5.108.0/22 +139.5.128.0/22 +139.5.160.0/22 +139.5.192.0/22 +139.5.204.0/22 +139.5.208.0/22 +139.5.212.0/22 +139.5.244.0/22 +139.5.56.0/22 +139.5.60.0/22 +139.5.80.0/22 +139.5.92.0/22 +139.9.0.0/16 +14.0.0.0/21 +14.0.12.0/22 +14.1.0.0/22 +14.1.108.0/22 +14.1.24.0/22 +14.1.96.0/22 +14.102.128.0/22 +14.102.156.0/22 +14.102.180.0/22 +14.103.0.0/16 +14.104.0.0/13 +14.112.0.0/12 +14.130.0.0/15 +14.134.0.0/15 +14.144.0.0/12 +14.16.0.0/12 +14.192.60.0/22 +14.192.76.0/22 +14.196.0.0/15 +14.204.0.0/15 +14.208.0.0/12 +140.143.0.0/16 +140.179.0.0/16 +140.205.0.0/16 +140.206.0.0/15 +140.210.0.0/17 +140.210.128.0/17 +140.224.0.0/16 +140.237.0.0/16 +140.240.0.0/16 +140.243.0.0/16 +140.246.0.0/16 +140.249.0.0/16 +140.250.0.0/16 +140.255.0.0/16 +140.75.0.0/16 +142.70.0.0/16 +142.86.0.0/16 +143.64.0.0/16 +144.0.0.0/16 +144.12.0.0/16 +144.123.0.0/16 +144.255.0.0/16 +144.48.156.0/22 +144.48.180.0/22 +144.48.184.0/22 +144.48.204.0/22 +144.48.208.0/22 +144.48.212.0/22 +144.48.220.0/22 +144.48.252.0/22 +144.48.64.0/22 +144.48.8.0/22 +144.48.88.0/22 +144.52.0.0/16 +144.7.0.0/16 +146.196.112.0/22 +146.196.116.0/22 +146.196.124.0/22 +146.196.56.0/22 +146.196.68.0/22 +146.196.72.0/22 +146.196.92.0/22 +146.56.192.0/18 +148.70.0.0/16 +149.41.0.0/16 +150.0.0.0/16 +150.115.0.0/16 +150.121.0.0/16 +150.122.0.0/16 +150.129.136.0/22 +150.129.192.0/22 +150.129.216.0/22 +150.129.252.0/22 +150.138.0.0/15 +150.158.0.0/16 +150.223.0.0/16 +150.242.0.0/22 +150.242.112.0/22 +150.242.116.0/22 +150.242.120.0/22 +150.242.152.0/22 +150.242.156.0/22 +150.242.160.0/22 +150.242.164.0/22 +150.242.168.0/22 +150.242.184.0/22 +150.242.188.0/22 +150.242.192.0/22 +150.242.212.0/22 +150.242.224.0/22 +150.242.232.0/22 +150.242.236.0/22 +150.242.240.0/22 +150.242.244.0/22 +150.242.248.0/22 +150.242.28.0/22 +150.242.4.0/22 +150.242.44.0/22 +150.242.48.0/22 +150.242.52.0/22 +150.242.56.0/22 +150.242.76.0/22 +150.242.8.0/22 +150.242.80.0/22 +150.242.92.0/22 +150.242.96.0/22 +150.248.0.0/16 +150.255.0.0/16 +152.104.128.0/17 +152.136.0.0/16 +153.0.0.0/16 +153.101.0.0/16 +153.118.0.0/15 +153.3.0.0/16 +153.34.0.0/15 +153.36.0.0/15 +153.99.0.0/16 +154.8.128.0/17 +157.0.0.0/16 +157.119.0.0/22 +157.119.12.0/22 +157.119.132.0/22 +157.119.136.0/22 +157.119.140.0/22 +157.119.144.0/22 +157.119.148.0/22 +157.119.152.0/22 +157.119.156.0/22 +157.119.16.0/22 +157.119.160.0/22 +157.119.164.0/22 +157.119.172.0/22 +157.119.192.0/22 +157.119.196.0/22 +157.119.240.0/22 +157.119.252.0/22 +157.119.28.0/22 +157.119.8.0/22 +157.122.0.0/16 +157.148.0.0/16 +157.156.0.0/16 +157.18.0.0/16 +157.255.0.0/16 +157.61.0.0/16 +158.60.0.0/16 +158.79.0.0/16 +159.226.0.0/16 +159.27.0.0/16 +159.75.0.0/16 +160.19.208.0/22 +160.19.212.0/22 +160.19.216.0/22 +160.20.48.0/22 +160.202.148.0/22 +160.202.152.0/22 +160.202.168.0/22 +160.202.212.0/22 +160.202.216.0/22 +160.202.220.0/22 +160.202.224.0/22 +160.202.228.0/22 +160.202.232.0/22 +160.202.236.0/22 +160.202.240.0/22 +160.202.244.0/22 +160.202.248.0/22 +160.202.252.0/22 +160.202.60.0/22 +160.238.64.0/22 +161.120.0.0/16 +161.189.0.0/16 +161.207.0.0/16 +162.105.0.0/16 +162.14.0.0/16 +163.0.0.0/16 +163.125.0.0/16 +163.142.0.0/16 +163.177.0.0/16 +163.179.0.0/16 +163.204.0.0/16 +163.228.0.0/16 +163.47.4.0/22 +163.53.0.0/22 +163.53.100.0/22 +163.53.104.0/22 +163.53.108.0/22 +163.53.112.0/22 +163.53.116.0/22 +163.53.12.0/22 +163.53.120.0/22 +163.53.124.0/22 +163.53.128.0/22 +163.53.132.0/22 +163.53.136.0/22 +163.53.160.0/22 +163.53.164.0/22 +163.53.168.0/22 +163.53.172.0/22 +163.53.188.0/22 +163.53.220.0/22 +163.53.240.0/22 +163.53.36.0/22 +163.53.4.0/22 +163.53.40.0/22 +163.53.44.0/22 +163.53.48.0/22 +163.53.52.0/22 +163.53.56.0/22 +163.53.60.0/22 +163.53.64.0/22 +163.53.8.0/22 +163.53.88.0/22 +163.53.92.0/22 +163.53.96.0/22 +164.52.0.0/17 +166.111.0.0/16 +167.139.0.0/16 +167.189.0.0/16 +167.220.244.0/22 +168.160.0.0/16 +170.179.0.0/16 +171.104.0.0/13 +171.112.0.0/14 +171.116.0.0/14 +171.120.0.0/13 +171.208.0.0/12 +171.34.0.0/15 +171.36.0.0/14 +171.40.0.0/13 +171.8.0.0/13 +171.80.0.0/14 +171.84.0.0/14 +171.88.0.0/13 +172.81.192.0/18 +175.0.0.0/12 +175.102.0.0/16 +175.106.128.0/17 +175.111.144.0/22 +175.111.148.0/22 +175.111.152.0/22 +175.111.156.0/22 +175.111.160.0/22 +175.111.164.0/22 +175.111.168.0/22 +175.111.172.0/22 +175.111.184.0/22 +175.146.0.0/15 +175.148.0.0/14 +175.152.0.0/14 +175.158.96.0/22 +175.16.0.0/13 +175.160.0.0/12 +175.176.156.0/22 +175.176.176.0/22 +175.176.188.0/22 +175.178.0.0/16 +175.184.128.0/18 +175.185.0.0/16 +175.186.0.0/15 +175.188.0.0/14 +175.24.0.0/16 +175.25.0.0/16 +175.26.0.0/16 +175.27.0.0/16 +175.30.0.0/15 +175.42.0.0/15 +175.44.0.0/16 +175.46.0.0/15 +175.48.0.0/12 +175.64.0.0/11 +180.129.128.0/17 +180.130.0.0/16 +180.136.0.0/13 +180.148.152.0/21 +180.148.16.0/21 +180.148.216.0/21 +180.148.224.0/19 +180.149.128.0/19 +180.149.236.0/22 +180.150.160.0/19 +180.152.0.0/13 +180.160.0.0/12 +180.178.112.0/22 +180.178.116.0/22 +180.178.192.0/18 +180.184.0.0/15 +180.186.0.0/16 +180.187.0.0/16 +180.188.0.0/17 +180.189.148.0/22 +180.200.252.0/22 +180.201.0.0/16 +180.202.0.0/15 +180.208.0.0/15 +180.210.212.0/22 +180.210.224.0/19 +180.212.0.0/15 +180.222.224.0/19 +180.223.0.0/16 +180.233.0.0/18 +180.233.144.0/22 +180.233.64.0/19 +180.235.112.0/22 +180.235.64.0/19 +180.76.0.0/16 +180.77.0.0/16 +180.78.0.0/15 +180.84.0.0/15 +180.86.0.0/16 +180.88.0.0/14 +180.94.120.0/22 +180.94.124.0/22 +180.94.56.0/21 +180.94.96.0/20 +180.95.128.0/17 +180.96.0.0/11 +182.112.0.0/12 +182.128.0.0/12 +182.144.0.0/13 +182.157.0.0/16 +182.16.144.0/22 +182.16.148.0/22 +182.16.192.0/19 +182.160.64.0/19 +182.174.0.0/15 +182.18.0.0/17 +182.200.0.0/13 +182.23.184.0/21 +182.23.200.0/21 +182.236.128.0/17 +182.237.24.0/22 +182.237.28.0/22 +182.238.0.0/16 +182.239.0.0/19 +182.240.0.0/13 +182.254.0.0/16 +182.255.32.0/22 +182.255.60.0/22 +182.32.0.0/12 +182.48.96.0/19 +182.49.0.0/16 +182.50.0.0/20 +182.50.112.0/20 +182.51.0.0/16 +182.54.0.0/17 +182.54.244.0/22 +182.61.0.0/16 +182.80.0.0/14 +182.84.0.0/14 +182.88.0.0/14 +182.92.0.0/16 +182.96.0.0/12 +183.0.0.0/10 +183.128.0.0/11 +183.160.0.0/13 +183.168.0.0/15 +183.170.0.0/16 +183.172.0.0/14 +183.182.0.0/19 +183.184.0.0/13 +183.192.0.0/10 +183.64.0.0/13 +183.78.160.0/22 +183.78.164.0/22 +183.78.180.0/22 +183.81.172.0/22 +183.81.180.0/22 +183.84.0.0/15 +183.91.128.0/22 +183.91.136.0/21 +183.91.144.0/20 +183.92.0.0/14 +185.203.36.0/22 +188.131.128.0/17 +192.102.204.0/23 +192.124.154.0/24 +192.140.128.0/22 +192.140.132.0/22 +192.140.136.0/22 +192.140.156.0/22 +192.140.160.0/22 +192.140.164.0/22 +192.140.168.0/22 +192.140.172.0/22 +192.140.176.0/22 +192.140.180.0/22 +192.140.184.0/22 +192.140.188.0/22 +192.140.192.0/22 +192.140.196.0/22 +192.140.200.0/22 +192.140.204.0/22 +192.140.208.0/22 +192.140.212.0/22 +192.144.128.0/17 +192.197.113.0/24 +192.51.188.0/24 +192.55.46.0/24 +192.55.68.0/22 +193.112.0.0/16 +198.175.100.0/22 +199.212.57.0/24 +202.0.100.0/23 +202.0.122.0/23 +202.0.176.0/22 +202.10.112.0/22 +202.10.116.0/22 +202.10.120.0/22 +202.10.124.0/22 +202.10.64.0/20 +202.100.0.0/21 +202.100.104.0/21 +202.100.112.0/20 +202.100.128.0/21 +202.100.136.0/21 +202.100.144.0/20 +202.100.16.0/20 +202.100.160.0/21 +202.100.168.0/21 +202.100.176.0/20 +202.100.192.0/21 +202.100.200.0/21 +202.100.208.0/20 +202.100.224.0/19 +202.100.32.0/19 +202.100.64.0/21 +202.100.72.0/21 +202.100.8.0/21 +202.100.80.0/20 +202.100.96.0/21 +202.101.0.0/18 +202.101.128.0/18 +202.101.192.0/19 +202.101.224.0/21 +202.101.232.0/21 +202.101.240.0/20 +202.101.64.0/19 +202.101.96.0/19 +202.102.0.0/19 +202.102.128.0/21 +202.102.136.0/21 +202.102.144.0/20 +202.102.160.0/19 +202.102.192.0/21 +202.102.200.0/21 +202.102.208.0/20 +202.102.224.0/21 +202.102.232.0/21 +202.102.240.0/20 +202.102.32.0/19 +202.102.64.0/18 +202.103.0.0/21 +202.103.104.0/21 +202.103.112.0/20 +202.103.128.0/18 +202.103.16.0/20 +202.103.192.0/19 +202.103.224.0/21 +202.103.232.0/21 +202.103.240.0/20 +202.103.32.0/19 +202.103.64.0/19 +202.103.8.0/21 +202.103.96.0/21 +202.104.0.0/15 +202.106.0.0/16 +202.107.0.0/17 +202.107.128.0/17 +202.108.0.0/16 +202.109.0.0/16 +202.110.0.0/18 +202.110.128.0/18 +202.110.192.0/18 +202.110.64.0/18 +202.111.0.0/17 +202.111.128.0/19 +202.111.160.0/19 +202.111.192.0/18 +202.112.0.0/16 +202.113.0.0/20 +202.113.128.0/18 +202.113.16.0/20 +202.113.192.0/19 +202.113.224.0/20 +202.113.240.0/20 +202.113.32.0/19 +202.113.64.0/18 +202.114.0.0/19 +202.114.128.0/17 +202.114.32.0/19 +202.114.64.0/18 +202.115.0.0/19 +202.115.128.0/17 +202.115.32.0/19 +202.115.64.0/18 +202.116.0.0/19 +202.116.128.0/17 +202.116.32.0/20 +202.116.48.0/20 +202.116.64.0/19 +202.116.96.0/19 +202.117.0.0/18 +202.117.128.0/17 +202.117.64.0/18 +202.118.0.0/19 +202.118.128.0/17 +202.118.32.0/19 +202.118.64.0/18 +202.119.0.0/19 +202.119.128.0/17 +202.119.32.0/19 +202.119.64.0/20 +202.119.80.0/20 +202.119.96.0/19 +202.12.1.0/24 +202.12.106.0/24 +202.12.111.0/24 +202.12.116.0/24 +202.12.17.0/24 +202.12.18.0/24 +202.12.19.0/24 +202.12.2.0/24 +202.12.72.0/24 +202.12.84.0/23 +202.12.96.0/24 +202.12.98.0/23 +202.120.0.0/18 +202.120.128.0/17 +202.120.64.0/18 +202.121.0.0/16 +202.122.0.0/21 +202.122.112.0/21 +202.122.120.0/21 +202.122.128.0/24 +202.122.132.0/24 +202.122.32.0/21 +202.122.64.0/19 +202.123.116.0/22 +202.123.120.0/22 +202.123.96.0/20 +202.124.16.0/21 +202.124.24.0/22 +202.125.107.0/24 +202.125.109.0/24 +202.125.112.0/20 +202.125.176.0/20 +202.127.0.0/23 +202.127.112.0/20 +202.127.12.0/22 +202.127.128.0/20 +202.127.144.0/20 +202.127.16.0/20 +202.127.160.0/21 +202.127.192.0/23 +202.127.194.0/23 +202.127.196.0/22 +202.127.2.0/24 +202.127.200.0/21 +202.127.208.0/24 +202.127.209.0/24 +202.127.212.0/22 +202.127.216.0/21 +202.127.224.0/19 +202.127.3.0/24 +202.127.4.0/24 +202.127.40.0/21 +202.127.48.0/20 +202.127.5.0/24 +202.127.6.0/23 +202.129.208.0/24 +202.130.0.0/19 +202.130.224.0/19 +202.130.39.0/24 +202.131.16.0/21 +202.131.208.0/20 +202.131.48.0/20 +202.133.32.0/20 +202.134.128.0/20 +202.134.208.0/22 +202.134.212.0/22 +202.134.216.0/22 +202.134.220.0/22 +202.134.58.0/24 +202.136.208.0/20 +202.136.224.0/20 +202.136.248.0/22 +202.136.48.0/20 +202.137.231.0/24 +202.14.104.0/23 +202.14.108.0/23 +202.14.111.0/24 +202.14.114.0/23 +202.14.118.0/23 +202.14.124.0/23 +202.14.127.0/24 +202.14.129.0/24 +202.14.135.0/24 +202.14.136.0/24 +202.14.149.0/24 +202.14.151.0/24 +202.14.157.0/24 +202.14.158.0/23 +202.14.169.0/24 +202.14.170.0/23 +202.14.172.0/22 +202.14.176.0/24 +202.14.184.0/23 +202.14.208.0/23 +202.14.213.0/24 +202.14.219.0/24 +202.14.220.0/24 +202.14.222.0/23 +202.14.225.0/24 +202.14.226.0/23 +202.14.231.0/24 +202.14.235.0/24 +202.14.236.0/23 +202.14.238.0/24 +202.14.239.0/24 +202.14.246.0/24 +202.14.251.0/24 +202.14.64.0/23 +202.14.69.0/24 +202.14.73.0/24 +202.14.74.0/23 +202.14.76.0/24 +202.14.78.0/23 +202.14.88.0/24 +202.14.97.0/24 +202.140.140.0/22 +202.140.144.0/22 +202.140.148.0/22 +202.140.152.0/22 +202.140.156.0/22 +202.141.160.0/19 +202.142.16.0/20 +202.143.100.0/22 +202.143.104.0/22 +202.143.16.0/20 +202.143.32.0/20 +202.143.4.0/22 +202.143.56.0/21 +202.144.196.0/22 +202.146.160.0/20 +202.146.186.0/24 +202.146.188.0/22 +202.146.196.0/22 +202.146.200.0/21 +202.147.144.0/20 +202.148.32.0/20 +202.148.64.0/19 +202.148.96.0/19 +202.149.160.0/19 +202.149.224.0/19 +202.149.32.0/19 +202.150.16.0/20 +202.150.192.0/20 +202.150.224.0/19 +202.150.32.0/20 +202.150.56.0/22 +202.151.0.0/22 +202.151.128.0/19 +202.151.33.0/24 +202.152.176.0/20 +202.153.0.0/22 +202.153.48.0/20 +202.153.7.0/24 +202.157.192.0/19 +202.158.160.0/19 +202.158.242.0/24 +202.160.140.0/22 +202.160.156.0/22 +202.160.176.0/20 +202.162.67.0/24 +202.162.75.0/24 +202.164.0.0/20 +202.164.96.0/19 +202.165.176.0/20 +202.165.208.0/20 +202.165.239.0/24 +202.165.240.0/23 +202.165.243.0/24 +202.165.245.0/24 +202.165.251.0/24 +202.165.252.0/22 +202.166.224.0/19 +202.168.128.0/22 +202.168.132.0/22 +202.168.136.0/22 +202.168.140.0/22 +202.168.160.0/20 +202.168.176.0/20 +202.168.80.0/22 +202.170.128.0/19 +202.170.216.0/21 +202.170.224.0/19 +202.171.216.0/21 +202.171.232.0/24 +202.171.235.0/24 +202.172.0.0/22 +202.172.7.0/24 +202.173.0.0/22 +202.173.112.0/22 +202.173.224.0/19 +202.173.6.0/24 +202.173.8.0/21 +202.174.124.0/22 +202.174.64.0/20 +202.176.224.0/19 +202.179.160.0/22 +202.179.164.0/22 +202.179.168.0/22 +202.179.172.0/22 +202.179.240.0/20 +202.180.128.0/19 +202.180.208.0/21 +202.181.112.0/20 +202.181.28.0/22 +202.181.8.0/22 +202.182.192.0/19 +202.182.32.0/20 +202.189.0.0/18 +202.189.184.0/21 +202.189.80.0/20 +202.191.0.0/24 +202.191.68.0/22 +202.191.72.0/21 +202.191.80.0/20 +202.192.0.0/13 +202.20.114.0/24 +202.20.117.0/24 +202.20.120.0/24 +202.20.125.0/24 +202.20.126.0/24 +202.20.127.0/24 +202.20.66.0/24 +202.20.79.0/24 +202.20.87.0/24 +202.20.88.0/23 +202.20.90.0/24 +202.20.94.0/23 +202.200.0.0/14 +202.204.0.0/14 +202.21.131.0/24 +202.21.132.0/24 +202.21.141.0/24 +202.21.142.0/24 +202.21.147.0/24 +202.21.148.0/24 +202.21.150.0/23 +202.21.152.0/23 +202.21.154.0/24 +202.21.156.0/24 +202.21.48.0/22 +202.21.52.0/22 +202.21.56.0/22 +202.21.60.0/22 +202.22.248.0/22 +202.22.252.0/22 +202.27.12.0/24 +202.27.136.0/23 +202.27.14.0/24 +202.3.128.0/23 +202.3.134.0/24 +202.36.226.0/24 +202.38.0.0/23 +202.38.128.0/23 +202.38.130.0/23 +202.38.132.0/23 +202.38.134.0/24 +202.38.135.0/24 +202.38.136.0/23 +202.38.138.0/24 +202.38.140.0/23 +202.38.142.0/23 +202.38.146.0/23 +202.38.149.0/24 +202.38.150.0/23 +202.38.152.0/23 +202.38.154.0/23 +202.38.156.0/24 +202.38.158.0/23 +202.38.160.0/23 +202.38.164.0/22 +202.38.168.0/23 +202.38.170.0/24 +202.38.171.0/24 +202.38.176.0/23 +202.38.184.0/21 +202.38.192.0/18 +202.38.2.0/23 +202.38.48.0/20 +202.38.64.0/19 +202.38.8.0/21 +202.38.96.0/19 +202.4.128.0/19 +202.4.252.0/22 +202.40.135.0/24 +202.40.136.0/24 +202.40.140.0/24 +202.40.143.0/24 +202.40.144.0/23 +202.40.15.0/24 +202.40.150.0/24 +202.40.155.0/24 +202.40.156.0/24 +202.40.158.0/23 +202.40.162.0/24 +202.40.4.0/23 +202.40.7.0/24 +202.41.11.0/24 +202.41.12.0/23 +202.41.128.0/24 +202.41.130.0/23 +202.41.152.0/21 +202.41.192.0/24 +202.41.196.0/22 +202.41.200.0/22 +202.41.240.0/20 +202.41.8.0/23 +202.43.144.0/20 +202.43.76.0/22 +202.44.129.0/24 +202.44.132.0/23 +202.44.146.0/23 +202.44.16.0/20 +202.44.48.0/22 +202.44.67.0/24 +202.44.74.0/24 +202.44.97.0/24 +202.45.0.0/23 +202.45.15.0/24 +202.45.16.0/20 +202.45.2.0/24 +202.46.128.0/24 +202.46.16.0/23 +202.46.18.0/24 +202.46.20.0/23 +202.46.224.0/20 +202.46.32.0/19 +202.47.100.0/22 +202.47.104.0/22 +202.47.108.0/22 +202.47.126.0/24 +202.47.128.0/24 +202.47.130.0/23 +202.47.82.0/23 +202.47.96.0/22 +202.5.208.0/22 +202.5.212.0/22 +202.5.216.0/22 +202.52.143.0/24 +202.52.144.0/24 +202.52.33.0/24 +202.52.34.0/24 +202.52.47.0/24 +202.53.140.0/24 +202.53.143.0/24 +202.57.192.0/22 +202.57.196.0/22 +202.57.200.0/22 +202.57.204.0/22 +202.57.212.0/22 +202.57.216.0/22 +202.57.240.0/20 +202.58.0.0/24 +202.58.101.0/24 +202.58.104.0/22 +202.58.112.0/22 +202.59.0.0/24 +202.59.1.0/24 +202.59.212.0/22 +202.59.236.0/24 +202.59.240.0/24 +202.6.103.0/24 +202.6.108.0/24 +202.6.110.0/23 +202.6.114.0/24 +202.6.176.0/20 +202.6.6.0/23 +202.6.66.0/23 +202.6.72.0/23 +202.6.87.0/24 +202.6.88.0/23 +202.6.92.0/23 +202.60.112.0/20 +202.60.132.0/22 +202.60.136.0/21 +202.60.144.0/20 +202.60.48.0/21 +202.60.96.0/21 +202.61.123.0/24 +202.61.127.0/24 +202.61.68.0/22 +202.61.76.0/22 +202.61.88.0/22 +202.62.112.0/22 +202.62.248.0/22 +202.62.252.0/24 +202.62.255.0/24 +202.63.160.0/19 +202.63.248.0/22 +202.63.253.0/24 +202.63.80.0/24 +202.63.81.0/24 +202.63.82.0/23 +202.63.84.0/22 +202.63.88.0/21 +202.65.0.0/21 +202.65.100.0/22 +202.65.104.0/22 +202.65.108.0/22 +202.65.8.0/23 +202.65.96.0/22 +202.66.168.0/22 +202.67.0.0/22 +202.69.16.0/20 +202.69.4.0/22 +202.70.0.0/19 +202.70.192.0/20 +202.70.96.0/20 +202.71.32.0/22 +202.71.36.0/22 +202.71.40.0/22 +202.71.44.0/22 +202.72.112.0/22 +202.72.116.0/22 +202.72.120.0/22 +202.72.124.0/22 +202.72.40.0/21 +202.72.80.0/20 +202.73.128.0/22 +202.73.240.0/22 +202.73.244.0/22 +202.73.248.0/22 +202.73.252.0/22 +202.74.254.0/23 +202.74.36.0/24 +202.74.42.0/24 +202.74.52.0/24 +202.74.8.0/21 +202.74.80.0/20 +202.75.208.0/20 +202.75.252.0/22 +202.76.252.0/22 +202.77.80.0/21 +202.77.92.0/22 +202.78.8.0/21 +202.79.224.0/21 +202.79.248.0/22 +202.8.0.0/24 +202.8.12.0/24 +202.8.120.0/22 +202.8.128.0/19 +202.8.192.0/20 +202.8.2.0/23 +202.8.24.0/24 +202.8.4.0/23 +202.8.77.0/24 +202.80.192.0/21 +202.80.200.0/21 +202.81.0.0/22 +202.81.176.0/22 +202.81.180.0/22 +202.81.184.0/22 +202.81.188.0/22 +202.83.252.0/22 +202.84.0.0/22 +202.84.16.0/23 +202.84.22.0/24 +202.84.24.0/21 +202.84.4.0/22 +202.84.8.0/21 +202.85.208.0/20 +202.86.249.0/24 +202.86.252.0/22 +202.87.80.0/20 +202.88.32.0/22 +202.89.108.0/22 +202.89.119.0/24 +202.89.232.0/21 +202.89.8.0/21 +202.89.96.0/22 +202.9.32.0/24 +202.9.34.0/23 +202.9.48.0/23 +202.9.51.0/24 +202.9.52.0/23 +202.9.54.0/24 +202.9.57.0/24 +202.9.58.0/23 +202.90.0.0/22 +202.90.100.0/22 +202.90.104.0/22 +202.90.108.0/22 +202.90.112.0/20 +202.90.16.0/22 +202.90.193.0/24 +202.90.196.0/24 +202.90.20.0/22 +202.90.205.0/24 +202.90.224.0/20 +202.90.24.0/22 +202.90.28.0/22 +202.90.37.0/24 +202.90.96.0/22 +202.91.0.0/22 +202.91.128.0/22 +202.91.176.0/20 +202.91.224.0/19 +202.91.36.0/22 +202.91.96.0/20 +202.92.0.0/22 +202.92.252.0/22 +202.92.48.0/20 +202.92.8.0/21 +202.93.0.0/22 +202.93.252.0/22 +202.94.68.0/24 +202.94.74.0/24 +202.94.81.0/24 +202.94.92.0/22 +202.95.240.0/21 +202.95.252.0/22 +202.96.0.0/18 +202.96.104.0/21 +202.96.112.0/20 +202.96.128.0/21 +202.96.136.0/21 +202.96.144.0/20 +202.96.160.0/21 +202.96.168.0/21 +202.96.176.0/20 +202.96.192.0/21 +202.96.200.0/21 +202.96.208.0/20 +202.96.224.0/21 +202.96.232.0/21 +202.96.240.0/20 +202.96.64.0/21 +202.96.72.0/21 +202.96.80.0/20 +202.96.96.0/21 +202.97.0.0/21 +202.97.112.0/20 +202.97.128.0/18 +202.97.16.0/20 +202.97.192.0/19 +202.97.224.0/21 +202.97.232.0/21 +202.97.240.0/20 +202.97.32.0/19 +202.97.64.0/19 +202.97.8.0/21 +202.97.96.0/20 +202.98.0.0/21 +202.98.104.0/21 +202.98.112.0/20 +202.98.128.0/19 +202.98.16.0/20 +202.98.160.0/21 +202.98.168.0/21 +202.98.176.0/20 +202.98.192.0/21 +202.98.200.0/21 +202.98.208.0/20 +202.98.224.0/21 +202.98.232.0/21 +202.98.240.0/20 +202.98.32.0/21 +202.98.40.0/21 +202.98.48.0/20 +202.98.64.0/19 +202.98.8.0/21 +202.98.96.0/21 +202.99.0.0/18 +202.99.104.0/21 +202.99.112.0/20 +202.99.128.0/19 +202.99.160.0/21 +202.99.168.0/21 +202.99.176.0/20 +202.99.192.0/21 +202.99.200.0/21 +202.99.208.0/20 +202.99.224.0/21 +202.99.232.0/21 +202.99.240.0/20 +202.99.64.0/19 +202.99.96.0/21 +203.0.10.0/23 +203.0.104.0/21 +203.0.114.0/23 +203.0.122.0/24 +203.0.128.0/24 +203.0.130.0/23 +203.0.132.0/22 +203.0.137.0/24 +203.0.142.0/24 +203.0.144.0/24 +203.0.146.0/24 +203.0.148.0/24 +203.0.150.0/23 +203.0.152.0/24 +203.0.177.0/24 +203.0.18.0/24 +203.0.224.0/24 +203.0.24.0/24 +203.0.4.0/22 +203.0.42.0/23 +203.0.45.0/24 +203.0.46.0/23 +203.0.81.0/24 +203.0.82.0/23 +203.0.90.0/23 +203.0.96.0/23 +203.1.100.0/22 +203.1.108.0/24 +203.1.18.0/24 +203.1.253.0/24 +203.1.254.0/24 +203.1.26.0/23 +203.1.4.0/22 +203.1.65.0/24 +203.1.66.0/23 +203.1.70.0/23 +203.1.76.0/23 +203.1.90.0/24 +203.1.97.0/24 +203.1.98.0/23 +203.10.125.0/24 +203.10.34.0/24 +203.10.56.0/24 +203.10.74.0/23 +203.10.84.0/22 +203.10.88.0/24 +203.10.95.0/24 +203.100.192.0/20 +203.100.32.0/20 +203.100.48.0/21 +203.100.58.0/24 +203.100.60.0/24 +203.100.63.0/24 +203.100.80.0/20 +203.100.96.0/19 +203.104.32.0/20 +203.105.128.0/19 +203.105.96.0/19 +203.107.0.0/17 +203.11.100.0/22 +203.11.109.0/24 +203.11.117.0/24 +203.11.122.0/24 +203.11.126.0/24 +203.11.136.0/22 +203.11.141.0/24 +203.11.142.0/23 +203.11.180.0/22 +203.11.208.0/22 +203.11.70.0/24 +203.11.76.0/22 +203.11.82.0/24 +203.11.84.0/22 +203.110.160.0/19 +203.110.208.0/20 +203.110.232.0/23 +203.110.234.0/24 +203.114.244.0/22 +203.114.80.0/22 +203.114.84.0/22 +203.114.88.0/22 +203.114.92.0/22 +203.118.192.0/19 +203.118.241.0/24 +203.118.248.0/22 +203.119.113.0/24 +203.119.114.0/23 +203.119.116.0/22 +203.119.120.0/21 +203.119.128.0/17 +203.119.24.0/21 +203.119.32.0/22 +203.119.80.0/22 +203.119.85.0/24 +203.12.100.0/23 +203.12.103.0/24 +203.12.114.0/24 +203.12.118.0/24 +203.12.130.0/24 +203.12.137.0/24 +203.12.16.0/24 +203.12.19.0/24 +203.12.196.0/22 +203.12.211.0/24 +203.12.219.0/24 +203.12.226.0/24 +203.12.24.0/24 +203.12.240.0/22 +203.12.57.0/24 +203.12.65.0/24 +203.12.66.0/24 +203.12.70.0/23 +203.12.87.0/24 +203.123.58.0/24 +203.128.224.0/21 +203.128.32.0/19 +203.128.96.0/19 +203.129.8.0/21 +203.13.173.0/24 +203.13.18.0/24 +203.13.224.0/23 +203.13.227.0/24 +203.13.233.0/24 +203.13.24.0/24 +203.13.44.0/23 +203.13.88.0/23 +203.13.92.0/22 +203.130.32.0/19 +203.132.32.0/19 +203.134.240.0/21 +203.135.112.0/20 +203.135.160.0/20 +203.135.96.0/20 +203.14.104.0/24 +203.14.114.0/23 +203.14.118.0/24 +203.14.162.0/24 +203.14.192.0/24 +203.14.194.0/23 +203.14.214.0/24 +203.14.231.0/24 +203.14.24.0/22 +203.14.246.0/24 +203.14.33.0/24 +203.14.56.0/24 +203.14.61.0/24 +203.14.62.0/24 +203.142.219.0/24 +203.142.224.0/19 +203.144.96.0/19 +203.145.0.0/19 +203.148.0.0/18 +203.148.64.0/20 +203.148.80.0/22 +203.148.86.0/23 +203.149.92.0/22 +203.15.0.0/20 +203.15.105.0/24 +203.15.112.0/21 +203.15.130.0/23 +203.15.149.0/24 +203.15.151.0/24 +203.15.156.0/22 +203.15.174.0/24 +203.15.20.0/23 +203.15.22.0/24 +203.15.227.0/24 +203.15.232.0/21 +203.15.240.0/23 +203.15.246.0/24 +203.15.87.0/24 +203.15.88.0/23 +203.152.128.0/19 +203.152.64.0/19 +203.153.0.0/22 +203.156.192.0/18 +203.158.16.0/21 +203.16.10.0/24 +203.16.12.0/23 +203.16.133.0/24 +203.16.16.0/21 +203.16.161.0/24 +203.16.162.0/24 +203.16.186.0/23 +203.16.228.0/24 +203.16.238.0/24 +203.16.240.0/24 +203.16.245.0/24 +203.16.27.0/24 +203.16.38.0/24 +203.16.49.0/24 +203.16.50.0/23 +203.16.58.0/24 +203.16.63.0/24 +203.160.104.0/21 +203.160.129.0/24 +203.160.192.0/19 +203.160.52.0/22 +203.161.0.0/22 +203.161.180.0/24 +203.161.183.0/24 +203.161.192.0/19 +203.166.160.0/19 +203.167.28.0/22 +203.168.0.0/19 +203.17.136.0/24 +203.17.164.0/24 +203.17.18.0/24 +203.17.187.0/24 +203.17.190.0/23 +203.17.2.0/24 +203.17.231.0/24 +203.17.233.0/24 +203.17.248.0/24 +203.17.249.0/24 +203.17.255.0/24 +203.17.28.0/24 +203.17.39.0/24 +203.17.56.0/24 +203.17.74.0/23 +203.17.88.0/23 +203.170.58.0/23 +203.171.0.0/22 +203.171.208.0/24 +203.171.224.0/20 +203.174.4.0/24 +203.174.6.0/24 +203.174.7.0/24 +203.174.96.0/19 +203.175.128.0/19 +203.175.192.0/18 +203.176.0.0/18 +203.176.168.0/21 +203.176.64.0/19 +203.18.100.0/23 +203.18.105.0/24 +203.18.107.0/24 +203.18.110.0/24 +203.18.129.0/24 +203.18.131.0/24 +203.18.132.0/23 +203.18.144.0/24 +203.18.153.0/24 +203.18.199.0/24 +203.18.2.0/23 +203.18.208.0/24 +203.18.211.0/24 +203.18.215.0/24 +203.18.31.0/24 +203.18.37.0/24 +203.18.4.0/24 +203.18.48.0/23 +203.18.52.0/24 +203.18.7.0/24 +203.18.72.0/22 +203.18.80.0/23 +203.18.87.0/24 +203.184.80.0/20 +203.185.189.0/24 +203.187.160.0/19 +203.189.0.0/23 +203.189.112.0/22 +203.189.192.0/19 +203.189.232.0/22 +203.189.240.0/22 +203.189.6.0/23 +203.19.1.0/24 +203.19.101.0/24 +203.19.111.0/24 +203.19.131.0/24 +203.19.133.0/24 +203.19.144.0/24 +203.19.147.0/24 +203.19.149.0/24 +203.19.156.0/24 +203.19.176.0/24 +203.19.178.0/23 +203.19.18.0/24 +203.19.208.0/24 +203.19.228.0/22 +203.19.233.0/24 +203.19.24.0/24 +203.19.242.0/24 +203.19.248.0/23 +203.19.255.0/24 +203.19.30.0/24 +203.19.32.0/21 +203.19.41.0/24 +203.19.44.0/23 +203.19.46.0/24 +203.19.58.0/24 +203.19.60.0/23 +203.19.64.0/24 +203.19.68.0/24 +203.19.72.0/24 +203.190.249.0/24 +203.190.96.0/20 +203.191.0.0/23 +203.191.133.0/24 +203.191.144.0/21 +203.191.152.0/21 +203.191.16.0/20 +203.191.2.0/24 +203.191.5.0/24 +203.191.64.0/18 +203.191.7.0/24 +203.192.0.0/19 +203.193.224.0/19 +203.194.120.0/21 +203.195.112.0/21 +203.195.128.0/17 +203.195.64.0/19 +203.196.0.0/21 +203.196.28.0/22 +203.196.8.0/21 +203.2.112.0/21 +203.2.126.0/23 +203.2.140.0/24 +203.2.150.0/24 +203.2.152.0/22 +203.2.156.0/23 +203.2.160.0/21 +203.2.180.0/23 +203.2.196.0/23 +203.2.209.0/24 +203.2.214.0/23 +203.2.226.0/23 +203.2.229.0/24 +203.2.236.0/23 +203.2.64.0/21 +203.2.73.0/24 +203.20.106.0/23 +203.20.115.0/24 +203.20.117.0/24 +203.20.118.0/23 +203.20.122.0/24 +203.20.126.0/23 +203.20.135.0/24 +203.20.136.0/21 +203.20.150.0/24 +203.20.17.0/24 +203.20.230.0/24 +203.20.232.0/24 +203.20.236.0/24 +203.20.40.0/23 +203.20.44.0/24 +203.20.48.0/24 +203.20.61.0/24 +203.20.65.0/24 +203.20.84.0/23 +203.20.89.0/24 +203.201.181.0/24 +203.201.182.0/24 +203.202.236.0/22 +203.205.128.0/17 +203.205.64.0/19 +203.207.112.0/20 +203.207.128.0/18 +203.207.192.0/21 +203.207.200.0/21 +203.207.208.0/20 +203.207.224.0/19 +203.207.64.0/20 +203.207.80.0/21 +203.207.88.0/22 +203.207.92.0/22 +203.207.96.0/20 +203.208.0.0/20 +203.208.16.0/22 +203.208.32.0/19 +203.209.224.0/19 +203.21.0.0/23 +203.21.10.0/24 +203.21.124.0/24 +203.21.136.0/23 +203.21.145.0/24 +203.21.18.0/24 +203.21.2.0/24 +203.21.206.0/24 +203.21.33.0/24 +203.21.34.0/24 +203.21.41.0/24 +203.21.44.0/24 +203.21.68.0/24 +203.21.8.0/24 +203.21.82.0/24 +203.21.96.0/22 +203.212.0.0/20 +203.212.80.0/20 +203.215.232.0/21 +203.217.164.0/22 +203.22.106.0/24 +203.22.122.0/23 +203.22.131.0/24 +203.22.163.0/24 +203.22.166.0/24 +203.22.170.0/24 +203.22.176.0/21 +203.22.194.0/24 +203.22.24.0/24 +203.22.242.0/23 +203.22.245.0/24 +203.22.246.0/24 +203.22.252.0/23 +203.22.28.0/23 +203.22.31.0/24 +203.22.68.0/24 +203.22.76.0/24 +203.22.78.0/24 +203.22.84.0/24 +203.22.87.0/24 +203.22.92.0/22 +203.22.99.0/24 +203.223.0.0/20 +203.223.16.0/21 +203.23.0.0/24 +203.23.107.0/24 +203.23.112.0/24 +203.23.130.0/24 +203.23.140.0/23 +203.23.172.0/24 +203.23.182.0/24 +203.23.186.0/23 +203.23.192.0/24 +203.23.197.0/24 +203.23.198.0/24 +203.23.204.0/22 +203.23.224.0/24 +203.23.226.0/23 +203.23.228.0/22 +203.23.249.0/24 +203.23.251.0/24 +203.23.47.0/24 +203.23.61.0/24 +203.23.62.0/23 +203.23.73.0/24 +203.23.85.0/24 +203.23.92.0/22 +203.23.98.0/24 +203.24.111.0/24 +203.24.112.0/24 +203.24.116.0/24 +203.24.122.0/23 +203.24.13.0/24 +203.24.145.0/24 +203.24.152.0/23 +203.24.157.0/24 +203.24.161.0/24 +203.24.167.0/24 +203.24.18.0/24 +203.24.186.0/23 +203.24.199.0/24 +203.24.202.0/24 +203.24.212.0/23 +203.24.217.0/24 +203.24.219.0/24 +203.24.244.0/24 +203.24.27.0/24 +203.24.43.0/24 +203.24.56.0/24 +203.24.58.0/24 +203.24.67.0/24 +203.24.74.0/24 +203.24.79.0/24 +203.24.80.0/23 +203.24.84.0/23 +203.24.86.0/24 +203.24.90.0/24 +203.25.100.0/24 +203.25.106.0/24 +203.25.131.0/24 +203.25.135.0/24 +203.25.138.0/24 +203.25.147.0/24 +203.25.153.0/24 +203.25.154.0/23 +203.25.164.0/24 +203.25.166.0/24 +203.25.174.0/23 +203.25.180.0/24 +203.25.182.0/24 +203.25.19.0/24 +203.25.191.0/24 +203.25.199.0/24 +203.25.20.0/23 +203.25.200.0/24 +203.25.202.0/23 +203.25.208.0/20 +203.25.229.0/24 +203.25.235.0/24 +203.25.236.0/24 +203.25.242.0/24 +203.25.46.0/24 +203.25.48.0/21 +203.25.64.0/23 +203.25.91.0/24 +203.25.99.0/24 +203.26.102.0/23 +203.26.115.0/24 +203.26.116.0/24 +203.26.12.0/24 +203.26.129.0/24 +203.26.143.0/24 +203.26.144.0/24 +203.26.148.0/23 +203.26.154.0/24 +203.26.158.0/23 +203.26.170.0/24 +203.26.173.0/24 +203.26.176.0/24 +203.26.185.0/24 +203.26.202.0/23 +203.26.210.0/24 +203.26.214.0/24 +203.26.222.0/24 +203.26.224.0/24 +203.26.228.0/24 +203.26.232.0/24 +203.26.34.0/24 +203.26.49.0/24 +203.26.50.0/24 +203.26.55.0/24 +203.26.56.0/23 +203.26.60.0/24 +203.26.65.0/24 +203.26.68.0/24 +203.26.76.0/24 +203.26.80.0/24 +203.26.84.0/24 +203.26.97.0/24 +203.27.0.0/24 +203.27.10.0/24 +203.27.102.0/24 +203.27.109.0/24 +203.27.117.0/24 +203.27.121.0/24 +203.27.122.0/23 +203.27.125.0/24 +203.27.15.0/24 +203.27.16.0/24 +203.27.20.0/24 +203.27.200.0/24 +203.27.202.0/24 +203.27.22.0/23 +203.27.233.0/24 +203.27.241.0/24 +203.27.250.0/24 +203.27.40.0/24 +203.27.45.0/24 +203.27.53.0/24 +203.27.65.0/24 +203.27.66.0/24 +203.27.81.0/24 +203.27.88.0/24 +203.28.10.0/24 +203.28.112.0/24 +203.28.12.0/24 +203.28.131.0/24 +203.28.136.0/24 +203.28.140.0/24 +203.28.145.0/24 +203.28.165.0/24 +203.28.169.0/24 +203.28.170.0/24 +203.28.178.0/23 +203.28.185.0/24 +203.28.187.0/24 +203.28.196.0/24 +203.28.226.0/23 +203.28.239.0/24 +203.28.33.0/24 +203.28.34.0/23 +203.28.43.0/24 +203.28.44.0/24 +203.28.54.0/24 +203.28.56.0/24 +203.28.73.0/24 +203.28.74.0/24 +203.28.76.0/24 +203.28.86.0/24 +203.28.88.0/24 +203.29.100.0/24 +203.29.103.0/24 +203.29.112.0/24 +203.29.120.0/22 +203.29.13.0/24 +203.29.14.0/24 +203.29.182.0/23 +203.29.187.0/24 +203.29.189.0/24 +203.29.190.0/24 +203.29.2.0/24 +203.29.205.0/24 +203.29.210.0/24 +203.29.217.0/24 +203.29.227.0/24 +203.29.231.0/24 +203.29.233.0/24 +203.29.234.0/24 +203.29.248.0/24 +203.29.254.0/23 +203.29.28.0/24 +203.29.46.0/24 +203.29.57.0/24 +203.29.61.0/24 +203.29.63.0/24 +203.29.69.0/24 +203.29.73.0/24 +203.29.8.0/23 +203.29.81.0/24 +203.29.90.0/24 +203.29.95.0/24 +203.3.105.0/24 +203.3.112.0/21 +203.3.120.0/24 +203.3.123.0/24 +203.3.135.0/24 +203.3.139.0/24 +203.3.143.0/24 +203.3.68.0/24 +203.3.72.0/23 +203.3.75.0/24 +203.3.80.0/21 +203.3.96.0/22 +203.30.111.0/24 +203.30.121.0/24 +203.30.123.0/24 +203.30.152.0/24 +203.30.156.0/24 +203.30.16.0/23 +203.30.162.0/24 +203.30.173.0/24 +203.30.175.0/24 +203.30.187.0/24 +203.30.194.0/24 +203.30.217.0/24 +203.30.220.0/24 +203.30.222.0/24 +203.30.232.0/23 +203.30.235.0/24 +203.30.240.0/23 +203.30.246.0/24 +203.30.25.0/24 +203.30.250.0/23 +203.30.27.0/24 +203.30.29.0/24 +203.30.66.0/24 +203.30.81.0/24 +203.30.87.0/24 +203.31.105.0/24 +203.31.106.0/24 +203.31.108.0/23 +203.31.124.0/24 +203.31.162.0/24 +203.31.174.0/24 +203.31.177.0/24 +203.31.181.0/24 +203.31.187.0/24 +203.31.189.0/24 +203.31.204.0/24 +203.31.220.0/24 +203.31.222.0/23 +203.31.225.0/24 +203.31.229.0/24 +203.31.248.0/23 +203.31.253.0/24 +203.31.45.0/24 +203.31.46.0/24 +203.31.49.0/24 +203.31.51.0/24 +203.31.54.0/23 +203.31.69.0/24 +203.31.72.0/24 +203.31.80.0/24 +203.31.85.0/24 +203.31.97.0/24 +203.32.102.0/24 +203.32.105.0/24 +203.32.130.0/24 +203.32.133.0/24 +203.32.140.0/24 +203.32.152.0/24 +203.32.186.0/23 +203.32.192.0/24 +203.32.196.0/24 +203.32.20.0/24 +203.32.203.0/24 +203.32.204.0/23 +203.32.212.0/24 +203.32.48.0/23 +203.32.56.0/24 +203.32.60.0/24 +203.32.62.0/24 +203.32.68.0/23 +203.32.76.0/24 +203.32.81.0/24 +203.32.84.0/23 +203.32.95.0/24 +203.33.100.0/24 +203.33.122.0/24 +203.33.129.0/24 +203.33.131.0/24 +203.33.145.0/24 +203.33.156.0/24 +203.33.158.0/23 +203.33.174.0/24 +203.33.185.0/24 +203.33.200.0/24 +203.33.202.0/23 +203.33.204.0/24 +203.33.206.0/23 +203.33.21.0/24 +203.33.214.0/23 +203.33.224.0/23 +203.33.226.0/24 +203.33.233.0/24 +203.33.243.0/24 +203.33.250.0/24 +203.33.26.0/24 +203.33.32.0/24 +203.33.4.0/24 +203.33.63.0/24 +203.33.64.0/24 +203.33.67.0/24 +203.33.68.0/24 +203.33.7.0/24 +203.33.73.0/24 +203.33.79.0/24 +203.33.8.0/21 +203.34.106.0/24 +203.34.113.0/24 +203.34.147.0/24 +203.34.150.0/24 +203.34.152.0/23 +203.34.161.0/24 +203.34.162.0/24 +203.34.187.0/24 +203.34.192.0/21 +203.34.204.0/22 +203.34.21.0/24 +203.34.232.0/24 +203.34.240.0/24 +203.34.242.0/24 +203.34.245.0/24 +203.34.251.0/24 +203.34.27.0/24 +203.34.39.0/24 +203.34.4.0/24 +203.34.48.0/23 +203.34.54.0/24 +203.34.56.0/23 +203.34.67.0/24 +203.34.69.0/24 +203.34.76.0/24 +203.34.92.0/24 +203.4.132.0/23 +203.4.134.0/24 +203.4.151.0/24 +203.4.152.0/22 +203.4.174.0/23 +203.4.180.0/24 +203.4.186.0/24 +203.4.205.0/24 +203.4.208.0/22 +203.4.227.0/24 +203.4.230.0/23 +203.5.11.0/24 +203.5.114.0/23 +203.5.118.0/24 +203.5.120.0/24 +203.5.172.0/24 +203.5.180.0/23 +203.5.182.0/24 +203.5.185.0/24 +203.5.186.0/24 +203.5.188.0/23 +203.5.190.0/24 +203.5.195.0/24 +203.5.21.0/24 +203.5.214.0/23 +203.5.218.0/23 +203.5.22.0/24 +203.5.4.0/23 +203.5.44.0/24 +203.5.46.0/23 +203.5.52.0/22 +203.5.56.0/23 +203.5.60.0/23 +203.5.7.0/24 +203.5.8.0/23 +203.55.10.0/24 +203.55.101.0/24 +203.55.109.0/24 +203.55.110.0/24 +203.55.116.0/23 +203.55.119.0/24 +203.55.128.0/23 +203.55.13.0/24 +203.55.146.0/23 +203.55.192.0/24 +203.55.196.0/24 +203.55.2.0/23 +203.55.218.0/23 +203.55.22.0/24 +203.55.221.0/24 +203.55.224.0/24 +203.55.30.0/24 +203.55.4.0/24 +203.55.93.0/24 +203.56.1.0/24 +203.56.110.0/24 +203.56.12.0/24 +203.56.121.0/24 +203.56.161.0/24 +203.56.169.0/24 +203.56.172.0/23 +203.56.175.0/24 +203.56.183.0/24 +203.56.185.0/24 +203.56.187.0/24 +203.56.192.0/24 +203.56.198.0/24 +203.56.201.0/24 +203.56.208.0/23 +203.56.210.0/24 +203.56.214.0/24 +203.56.216.0/24 +203.56.227.0/24 +203.56.228.0/24 +203.56.231.0/24 +203.56.232.0/24 +203.56.24.0/24 +203.56.240.0/24 +203.56.252.0/24 +203.56.254.0/24 +203.56.38.0/24 +203.56.4.0/24 +203.56.40.0/24 +203.56.46.0/24 +203.56.48.0/21 +203.56.68.0/23 +203.56.82.0/23 +203.56.84.0/23 +203.56.95.0/24 +203.57.101.0/24 +203.57.109.0/24 +203.57.12.0/23 +203.57.123.0/24 +203.57.157.0/24 +203.57.200.0/24 +203.57.202.0/24 +203.57.206.0/24 +203.57.222.0/24 +203.57.224.0/20 +203.57.246.0/23 +203.57.249.0/24 +203.57.253.0/24 +203.57.254.0/23 +203.57.28.0/24 +203.57.39.0/24 +203.57.46.0/24 +203.57.5.0/24 +203.57.58.0/24 +203.57.6.0/24 +203.57.61.0/24 +203.57.66.0/24 +203.57.69.0/24 +203.57.70.0/23 +203.57.73.0/24 +203.57.90.0/24 +203.6.131.0/24 +203.6.136.0/24 +203.6.138.0/23 +203.6.142.0/24 +203.6.150.0/23 +203.6.157.0/24 +203.6.159.0/24 +203.6.224.0/20 +203.6.248.0/23 +203.62.131.0/24 +203.62.139.0/24 +203.62.161.0/24 +203.62.197.0/24 +203.62.2.0/24 +203.62.228.0/22 +203.62.234.0/24 +203.62.246.0/24 +203.7.129.0/24 +203.7.138.0/23 +203.7.147.0/24 +203.7.150.0/23 +203.7.158.0/24 +203.7.192.0/23 +203.7.200.0/24 +203.76.160.0/22 +203.76.168.0/22 +203.76.208.0/22 +203.76.212.0/22 +203.76.216.0/22 +203.76.240.0/22 +203.76.244.0/22 +203.77.180.0/22 +203.78.156.0/22 +203.78.48.0/20 +203.79.0.0/20 +203.79.32.0/20 +203.8.0.0/24 +203.8.110.0/23 +203.8.115.0/24 +203.8.166.0/23 +203.8.169.0/24 +203.8.173.0/24 +203.8.184.0/24 +203.8.186.0/23 +203.8.190.0/23 +203.8.192.0/24 +203.8.197.0/24 +203.8.198.0/23 +203.8.203.0/24 +203.8.209.0/24 +203.8.210.0/23 +203.8.212.0/22 +203.8.217.0/24 +203.8.220.0/24 +203.8.23.0/24 +203.8.70.0/24 +203.8.8.0/24 +203.8.82.0/24 +203.8.86.0/23 +203.8.91.0/24 +203.80.129.0/24 +203.80.132.0/22 +203.80.136.0/21 +203.80.144.0/20 +203.80.32.0/20 +203.80.4.0/23 +203.80.57.0/24 +203.81.0.0/21 +203.81.16.0/20 +203.81.244.0/22 +203.82.0.0/23 +203.82.112.0/22 +203.82.116.0/22 +203.82.120.0/22 +203.82.124.0/22 +203.82.16.0/21 +203.82.224.0/22 +203.82.228.0/22 +203.82.232.0/22 +203.82.236.0/22 +203.83.0.0/22 +203.83.12.0/22 +203.83.224.0/20 +203.83.56.0/21 +203.83.8.0/22 +203.86.0.0/19 +203.86.250.0/24 +203.86.254.0/23 +203.86.32.0/19 +203.86.64.0/20 +203.86.80.0/20 +203.86.96.0/19 +203.88.192.0/19 +203.88.32.0/19 +203.89.0.0/22 +203.89.100.0/22 +203.89.133.0/24 +203.89.136.0/22 +203.89.144.0/24 +203.89.8.0/21 +203.9.100.0/23 +203.9.108.0/24 +203.9.158.0/24 +203.9.32.0/24 +203.9.36.0/23 +203.9.57.0/24 +203.9.63.0/24 +203.9.65.0/24 +203.9.70.0/23 +203.9.72.0/24 +203.9.75.0/24 +203.9.76.0/23 +203.9.96.0/22 +203.90.0.0/22 +203.90.12.0/22 +203.90.128.0/19 +203.90.160.0/19 +203.90.192.0/19 +203.90.8.0/22 +203.91.120.0/21 +203.91.32.0/19 +203.91.96.0/20 +203.92.0.0/22 +203.92.160.0/19 +203.92.6.0/24 +203.93.0.0/22 +203.93.10.0/23 +203.93.12.0/22 +203.93.128.0/21 +203.93.136.0/22 +203.93.140.0/24 +203.93.141.0/24 +203.93.142.0/23 +203.93.144.0/20 +203.93.16.0/20 +203.93.160.0/19 +203.93.192.0/18 +203.93.32.0/19 +203.93.4.0/22 +203.93.64.0/18 +203.93.8.0/24 +203.93.9.0/24 +203.94.0.0/22 +203.94.16.0/20 +203.94.4.0/22 +203.94.8.0/21 +203.95.0.0/21 +203.95.112.0/20 +203.95.128.0/18 +203.95.200.0/22 +203.95.204.0/22 +203.95.208.0/22 +203.95.224.0/19 +203.95.96.0/20 +203.99.16.0/20 +203.99.8.0/21 +203.99.80.0/20 +204.52.191.0/24 +210.12.0.0/18 +210.12.128.0/18 +210.12.192.0/18 +210.12.64.0/18 +210.13.0.0/18 +210.13.128.0/17 +210.13.64.0/18 +210.14.112.0/20 +210.14.128.0/19 +210.14.160.0/19 +210.14.192.0/19 +210.14.224.0/19 +210.14.64.0/19 +210.15.0.0/19 +210.15.128.0/18 +210.15.32.0/19 +210.15.64.0/19 +210.15.96.0/19 +210.16.104.0/22 +210.16.128.0/18 +210.185.192.0/18 +210.192.96.0/19 +210.2.0.0/20 +210.2.16.0/20 +210.21.0.0/17 +210.21.128.0/17 +210.22.0.0/16 +210.23.32.0/19 +210.25.0.0/16 +210.26.0.0/15 +210.28.0.0/14 +210.32.0.0/14 +210.36.0.0/14 +210.40.0.0/13 +210.5.0.0/19 +210.5.128.0/20 +210.5.144.0/20 +210.5.56.0/21 +210.51.0.0/16 +210.52.0.0/18 +210.52.128.0/17 +210.52.64.0/18 +210.53.0.0/17 +210.53.128.0/17 +210.56.192.0/19 +210.7.56.0/22 +210.7.60.0/22 +210.72.0.0/17 +210.72.128.0/19 +210.72.160.0/19 +210.72.192.0/18 +210.73.0.0/19 +210.73.128.0/17 +210.73.32.0/19 +210.73.64.0/18 +210.74.0.0/19 +210.74.128.0/19 +210.74.160.0/19 +210.74.192.0/18 +210.74.32.0/19 +210.74.64.0/19 +210.74.96.0/19 +210.75.0.0/16 +210.76.0.0/19 +210.76.128.0/17 +210.76.32.0/19 +210.76.64.0/18 +210.77.0.0/16 +210.78.0.0/19 +210.78.128.0/19 +210.78.160.0/19 +210.78.192.0/18 +210.78.32.0/19 +210.78.64.0/18 +210.79.224.0/19 +210.79.64.0/18 +210.82.0.0/15 +210.87.128.0/20 +210.87.144.0/20 +210.87.160.0/19 +211.100.0.0/16 +211.101.0.0/18 +211.101.128.0/17 +211.101.64.0/18 +211.102.0.0/16 +211.103.0.0/17 +211.103.128.0/17 +211.136.0.0/14 +211.140.0.0/15 +211.142.0.0/17 +211.142.128.0/17 +211.143.0.0/16 +211.144.0.0/15 +211.146.0.0/16 +211.147.0.0/16 +211.148.0.0/14 +211.152.0.0/15 +211.154.0.0/16 +211.155.0.0/18 +211.155.128.0/17 +211.155.64.0/19 +211.155.96.0/19 +211.156.0.0/14 +211.160.0.0/14 +211.164.0.0/14 +211.64.0.0/14 +211.68.0.0/15 +211.70.0.0/15 +211.80.0.0/16 +211.81.0.0/16 +211.82.0.0/16 +211.83.0.0/16 +211.84.0.0/15 +211.86.0.0/15 +211.88.0.0/16 +211.89.0.0/16 +211.90.0.0/15 +211.92.0.0/15 +211.94.0.0/15 +211.96.0.0/15 +211.98.0.0/16 +211.99.0.0/18 +211.99.128.0/17 +211.99.64.0/19 +211.99.96.0/19 +212.129.128.0/17 +212.64.0.0/17 +218.0.0.0/16 +218.1.0.0/16 +218.10.0.0/16 +218.100.128.0/17 +218.100.88.0/21 +218.100.96.0/19 +218.104.0.0/17 +218.104.128.0/19 +218.104.160.0/19 +218.104.192.0/21 +218.104.200.0/21 +218.104.208.0/20 +218.104.224.0/19 +218.105.0.0/16 +218.106.0.0/15 +218.108.0.0/16 +218.109.0.0/16 +218.11.0.0/16 +218.12.0.0/16 +218.13.0.0/16 +218.14.0.0/15 +218.16.0.0/14 +218.185.192.0/19 +218.185.240.0/21 +218.192.0.0/16 +218.193.0.0/16 +218.194.0.0/16 +218.195.0.0/16 +218.196.0.0/14 +218.2.0.0/15 +218.20.0.0/16 +218.200.0.0/14 +218.204.0.0/15 +218.206.0.0/15 +218.21.0.0/17 +218.21.128.0/17 +218.22.0.0/15 +218.24.0.0/15 +218.240.0.0/14 +218.244.0.0/15 +218.246.0.0/15 +218.249.0.0/16 +218.26.0.0/16 +218.27.0.0/16 +218.28.0.0/15 +218.30.0.0/15 +218.4.0.0/15 +218.56.0.0/14 +218.6.0.0/16 +218.60.0.0/15 +218.62.0.0/17 +218.62.128.0/17 +218.63.0.0/16 +218.64.0.0/15 +218.66.0.0/16 +218.67.0.0/17 +218.67.128.0/17 +218.68.0.0/15 +218.7.0.0/16 +218.70.0.0/15 +218.72.0.0/14 +218.76.0.0/15 +218.78.0.0/15 +218.8.0.0/15 +218.80.0.0/14 +218.84.0.0/14 +218.88.0.0/13 +218.96.0.0/15 +218.98.0.0/17 +218.98.128.0/18 +218.98.192.0/19 +218.98.224.0/19 +218.99.0.0/16 +219.128.0.0/12 +219.144.0.0/14 +219.148.0.0/16 +219.149.0.0/17 +219.149.128.0/18 +219.149.192.0/18 +219.150.0.0/19 +219.150.112.0/20 +219.150.128.0/17 +219.150.32.0/19 +219.150.64.0/19 +219.150.96.0/20 +219.151.0.0/19 +219.151.128.0/17 +219.151.32.0/19 +219.151.64.0/18 +219.152.0.0/15 +219.154.0.0/15 +219.156.0.0/15 +219.158.0.0/17 +219.158.128.0/17 +219.159.0.0/18 +219.159.128.0/17 +219.159.64.0/18 +219.216.0.0/15 +219.218.0.0/15 +219.220.0.0/16 +219.221.0.0/16 +219.222.0.0/15 +219.224.0.0/15 +219.226.0.0/16 +219.227.0.0/16 +219.228.0.0/15 +219.230.0.0/15 +219.232.0.0/14 +219.236.0.0/15 +219.238.0.0/15 +219.242.0.0/15 +219.244.0.0/14 +219.72.0.0/16 +219.82.0.0/16 +219.83.128.0/17 +219.90.68.0/22 +219.90.72.0/22 +219.90.76.0/22 +220.101.192.0/18 +220.112.0.0/14 +220.152.128.0/17 +220.154.0.0/15 +220.158.240.0/22 +220.160.0.0/11 +220.192.0.0/15 +220.194.0.0/15 +220.196.0.0/14 +220.200.0.0/13 +220.231.0.0/18 +220.231.128.0/17 +220.232.64.0/18 +220.234.0.0/16 +220.242.0.0/15 +220.247.136.0/21 +220.248.0.0/14 +220.252.0.0/16 +221.0.0.0/15 +221.10.0.0/16 +221.11.0.0/17 +221.11.128.0/18 +221.11.192.0/19 +221.11.224.0/19 +221.12.0.0/17 +221.12.128.0/18 +221.122.0.0/15 +221.128.128.0/17 +221.129.0.0/16 +221.13.0.0/18 +221.13.128.0/17 +221.13.64.0/19 +221.13.96.0/19 +221.130.0.0/15 +221.133.224.0/19 +221.136.0.0/16 +221.137.0.0/16 +221.14.0.0/15 +221.172.0.0/14 +221.176.0.0/13 +221.192.0.0/15 +221.194.0.0/16 +221.195.0.0/16 +221.196.0.0/15 +221.198.0.0/16 +221.199.0.0/19 +221.199.128.0/18 +221.199.192.0/20 +221.199.224.0/19 +221.199.32.0/20 +221.199.48.0/20 +221.199.64.0/18 +221.2.0.0/16 +221.200.0.0/14 +221.204.0.0/15 +221.206.0.0/16 +221.207.0.0/18 +221.207.128.0/17 +221.207.64.0/18 +221.208.0.0/14 +221.212.0.0/16 +221.213.0.0/16 +221.214.0.0/15 +221.216.0.0/13 +221.224.0.0/13 +221.232.0.0/14 +221.236.0.0/15 +221.238.0.0/16 +221.239.0.0/17 +221.239.128.0/17 +221.3.0.0/17 +221.3.128.0/17 +221.4.0.0/16 +221.5.0.0/17 +221.5.128.0/17 +221.6.0.0/16 +221.7.0.0/19 +221.7.128.0/17 +221.7.32.0/19 +221.7.64.0/19 +221.7.96.0/19 +221.8.0.0/15 +222.125.0.0/16 +222.126.128.0/17 +222.128.0.0/14 +222.132.0.0/14 +222.136.0.0/13 +222.16.0.0/15 +222.160.0.0/15 +222.162.0.0/16 +222.163.0.0/19 +222.163.128.0/17 +222.163.32.0/19 +222.163.64.0/18 +222.168.0.0/15 +222.170.0.0/15 +222.172.0.0/17 +222.172.128.0/17 +222.173.0.0/16 +222.174.0.0/15 +222.176.0.0/13 +222.18.0.0/15 +222.184.0.0/13 +222.192.0.0/14 +222.196.0.0/15 +222.198.0.0/16 +222.199.0.0/16 +222.20.0.0/15 +222.200.0.0/14 +222.204.0.0/15 +222.206.0.0/15 +222.208.0.0/13 +222.216.0.0/15 +222.218.0.0/16 +222.219.0.0/16 +222.22.0.0/16 +222.220.0.0/15 +222.222.0.0/15 +222.23.0.0/16 +222.24.0.0/15 +222.240.0.0/13 +222.248.0.0/16 +222.249.0.0/17 +222.249.128.0/19 +222.249.160.0/20 +222.249.176.0/20 +222.249.192.0/18 +222.26.0.0/15 +222.28.0.0/14 +222.32.0.0/11 +222.64.0.0/13 +222.72.0.0/15 +222.74.0.0/16 +222.75.0.0/16 +222.76.0.0/14 +222.80.0.0/15 +222.82.0.0/16 +222.83.0.0/17 +222.83.128.0/17 +222.84.0.0/16 +222.85.0.0/17 +222.85.128.0/17 +222.86.0.0/15 +222.88.0.0/15 +222.90.0.0/15 +222.92.0.0/14 +223.0.0.0/15 +223.112.0.0/14 +223.116.0.0/15 +223.120.128.0/17 +223.121.128.0/17 +223.122.128.0/17 +223.123.0.0/16 +223.124.0.0/14 +223.128.0.0/15 +223.144.0.0/12 +223.160.0.0/14 +223.166.0.0/15 +223.192.0.0/15 +223.198.0.0/15 +223.2.0.0/15 +223.20.0.0/15 +223.201.0.0/16 +223.202.0.0/15 +223.208.0.0/14 +223.212.0.0/15 +223.214.0.0/15 +223.220.0.0/15 +223.223.176.0/20 +223.223.192.0/20 +223.240.0.0/13 +223.248.0.0/14 +223.252.128.0/17 +223.254.0.0/16 +223.255.0.0/17 +223.255.236.0/22 +223.255.252.0/23 +223.27.184.0/22 +223.29.208.0/22 +223.29.252.0/22 +223.4.0.0/14 +223.64.0.0/11 +223.8.0.0/13 +223.96.0.0/12 +27.0.128.0/22 +27.0.132.0/22 +27.0.160.0/22 +27.0.164.0/22 +27.0.188.0/22 +27.0.204.0/22 +27.0.208.0/22 +27.0.212.0/22 +27.103.0.0/16 +27.106.128.0/18 +27.106.204.0/22 +27.109.124.0/22 +27.109.32.0/19 +27.112.0.0/18 +27.112.112.0/22 +27.112.116.0/22 +27.112.80.0/20 +27.113.128.0/18 +27.115.0.0/17 +27.116.44.0/22 +27.121.120.0/21 +27.121.72.0/21 +27.128.0.0/15 +27.131.220.0/22 +27.144.0.0/16 +27.148.0.0/14 +27.152.0.0/13 +27.16.0.0/12 +27.184.0.0/13 +27.192.0.0/11 +27.224.0.0/14 +27.34.232.0/21 +27.36.0.0/14 +27.40.0.0/13 +27.50.128.0/17 +27.50.40.0/21 +27.54.152.0/21 +27.54.192.0/18 +27.54.72.0/21 +27.8.0.0/13 +27.98.208.0/20 +27.98.224.0/19 +27.99.128.0/17 +36.0.0.0/22 +36.0.128.0/17 +36.0.16.0/20 +36.0.32.0/19 +36.0.64.0/18 +36.0.8.0/21 +36.1.0.0/16 +36.128.0.0/10 +36.16.0.0/12 +36.192.0.0/11 +36.248.0.0/14 +36.254.0.0/16 +36.255.116.0/22 +36.255.128.0/22 +36.255.164.0/22 +36.255.172.0/22 +36.255.176.0/22 +36.32.0.0/14 +36.36.0.0/16 +36.37.0.0/19 +36.37.36.0/23 +36.37.39.0/24 +36.37.40.0/21 +36.37.48.0/20 +36.4.0.0/14 +36.40.0.0/13 +36.48.0.0/15 +36.51.0.0/16 +36.56.0.0/13 +36.96.0.0/11 +39.0.0.0/24 +39.0.128.0/17 +39.0.16.0/20 +39.0.2.0/23 +39.0.32.0/19 +39.0.4.0/22 +39.0.64.0/18 +39.0.8.0/21 +39.104.0.0/14 +39.108.0.0/16 +39.128.0.0/10 +39.64.0.0/11 +39.96.0.0/13 +40.125.128.0/17 +40.126.64.0/18 +40.72.0.0/15 +42.0.0.0/22 +42.0.128.0/17 +42.0.16.0/21 +42.0.24.0/22 +42.0.32.0/19 +42.0.8.0/21 +42.1.0.0/19 +42.1.128.0/17 +42.1.32.0/20 +42.1.48.0/21 +42.1.56.0/22 +42.100.0.0/14 +42.120.0.0/15 +42.122.0.0/16 +42.123.0.0/19 +42.123.128.0/17 +42.123.36.0/22 +42.123.40.0/21 +42.123.48.0/20 +42.123.64.0/18 +42.128.0.0/12 +42.156.0.0/19 +42.156.128.0/17 +42.156.36.0/22 +42.156.40.0/21 +42.156.48.0/20 +42.156.64.0/18 +42.157.0.0/16 +42.158.0.0/16 +42.159.0.0/16 +42.160.0.0/12 +42.176.0.0/13 +42.184.0.0/15 +42.186.0.0/16 +42.187.0.0/18 +42.187.112.0/21 +42.187.120.0/22 +42.187.128.0/17 +42.187.64.0/19 +42.187.96.0/20 +42.192.0.0/15 +42.194.0.0/21 +42.194.12.0/22 +42.194.128.0/17 +42.194.16.0/20 +42.194.32.0/19 +42.194.64.0/18 +42.194.8.0/22 +42.195.0.0/16 +42.196.0.0/14 +42.201.0.0/17 +42.202.0.0/15 +42.204.0.0/14 +42.208.0.0/12 +42.224.0.0/12 +42.240.0.0/17 +42.240.128.0/17 +42.242.0.0/15 +42.244.0.0/14 +42.248.0.0/13 +42.4.0.0/14 +42.48.0.0/15 +42.50.0.0/16 +42.51.0.0/16 +42.52.0.0/14 +42.56.0.0/14 +42.62.0.0/17 +42.62.128.0/19 +42.62.160.0/20 +42.62.180.0/22 +42.62.184.0/21 +42.63.0.0/16 +42.80.0.0/15 +42.83.128.0/17 +42.83.64.0/20 +42.83.80.0/22 +42.83.88.0/21 +42.83.96.0/19 +42.84.0.0/14 +42.88.0.0/13 +42.96.108.0/22 +42.96.112.0/20 +42.96.128.0/17 +42.96.64.0/19 +42.96.96.0/21 +42.97.0.0/16 +42.99.0.0/18 +42.99.112.0/22 +42.99.120.0/21 +42.99.64.0/19 +42.99.96.0/20 +43.136.0.0/13 +43.144.0.0/13 +43.160.0.0/11 +43.195.0.0/16 +43.196.0.0/15 +43.224.100.0/22 +43.224.12.0/22 +43.224.144.0/22 +43.224.160.0/22 +43.224.176.0/22 +43.224.184.0/22 +43.224.200.0/22 +43.224.204.0/22 +43.224.208.0/22 +43.224.212.0/22 +43.224.216.0/22 +43.224.24.0/22 +43.224.240.0/22 +43.224.44.0/22 +43.224.52.0/22 +43.224.56.0/22 +43.224.64.0/22 +43.224.68.0/22 +43.224.72.0/22 +43.224.80.0/22 +43.225.120.0/22 +43.225.124.0/22 +43.225.172.0/22 +43.225.180.0/22 +43.225.208.0/22 +43.225.216.0/22 +43.225.220.0/22 +43.225.224.0/22 +43.225.228.0/22 +43.225.232.0/22 +43.225.236.0/22 +43.225.240.0/22 +43.225.244.0/22 +43.225.252.0/22 +43.225.76.0/22 +43.225.84.0/22 +43.226.100.0/22 +43.226.104.0/22 +43.226.108.0/22 +43.226.112.0/22 +43.226.116.0/22 +43.226.120.0/22 +43.226.128.0/22 +43.226.132.0/22 +43.226.136.0/22 +43.226.140.0/22 +43.226.144.0/22 +43.226.148.0/22 +43.226.152.0/22 +43.226.156.0/22 +43.226.160.0/22 +43.226.164.0/22 +43.226.168.0/22 +43.226.172.0/22 +43.226.176.0/22 +43.226.180.0/22 +43.226.184.0/22 +43.226.188.0/22 +43.226.192.0/22 +43.226.196.0/22 +43.226.200.0/22 +43.226.204.0/22 +43.226.208.0/22 +43.226.212.0/22 +43.226.236.0/22 +43.226.240.0/22 +43.226.244.0/22 +43.226.248.0/22 +43.226.252.0/22 +43.226.32.0/22 +43.226.36.0/22 +43.226.40.0/22 +43.226.44.0/22 +43.226.48.0/22 +43.226.52.0/22 +43.226.56.0/22 +43.226.60.0/22 +43.226.64.0/22 +43.226.68.0/22 +43.226.72.0/22 +43.226.76.0/22 +43.226.80.0/22 +43.226.84.0/22 +43.226.88.0/22 +43.226.92.0/22 +43.226.96.0/22 +43.227.0.0/22 +43.227.100.0/22 +43.227.104.0/22 +43.227.136.0/22 +43.227.140.0/22 +43.227.144.0/22 +43.227.152.0/22 +43.227.156.0/22 +43.227.160.0/22 +43.227.164.0/22 +43.227.168.0/22 +43.227.172.0/22 +43.227.176.0/22 +43.227.180.0/22 +43.227.188.0/22 +43.227.192.0/22 +43.227.196.0/22 +43.227.200.0/22 +43.227.204.0/22 +43.227.208.0/22 +43.227.212.0/22 +43.227.216.0/22 +43.227.220.0/22 +43.227.232.0/22 +43.227.248.0/22 +43.227.252.0/22 +43.227.32.0/22 +43.227.36.0/22 +43.227.4.0/22 +43.227.40.0/22 +43.227.44.0/22 +43.227.48.0/22 +43.227.52.0/22 +43.227.56.0/22 +43.227.60.0/22 +43.227.64.0/22 +43.227.68.0/22 +43.227.72.0/22 +43.227.76.0/22 +43.227.8.0/22 +43.227.80.0/22 +43.227.84.0/22 +43.227.88.0/22 +43.227.92.0/22 +43.227.96.0/22 +43.228.0.0/22 +43.228.100.0/22 +43.228.116.0/22 +43.228.12.0/22 +43.228.120.0/22 +43.228.132.0/22 +43.228.136.0/22 +43.228.148.0/22 +43.228.152.0/22 +43.228.16.0/22 +43.228.188.0/22 +43.228.20.0/22 +43.228.204.0/22 +43.228.24.0/22 +43.228.240.0/22 +43.228.28.0/22 +43.228.32.0/22 +43.228.36.0/22 +43.228.4.0/22 +43.228.40.0/22 +43.228.44.0/22 +43.228.48.0/22 +43.228.52.0/22 +43.228.56.0/22 +43.228.60.0/22 +43.228.64.0/22 +43.228.68.0/22 +43.228.76.0/22 +43.228.8.0/22 +43.229.120.0/22 +43.229.136.0/22 +43.229.140.0/22 +43.229.144.0/22 +43.229.168.0/22 +43.229.172.0/22 +43.229.176.0/22 +43.229.180.0/22 +43.229.184.0/22 +43.229.188.0/22 +43.229.192.0/22 +43.229.196.0/22 +43.229.216.0/22 +43.229.220.0/22 +43.229.232.0/22 +43.229.236.0/22 +43.229.40.0/22 +43.229.48.0/22 +43.229.56.0/22 +43.229.96.0/22 +43.230.124.0/22 +43.230.136.0/22 +43.230.20.0/22 +43.230.220.0/22 +43.230.224.0/22 +43.230.228.0/22 +43.230.232.0/22 +43.230.236.0/22 +43.230.240.0/22 +43.230.244.0/22 +43.230.248.0/22 +43.230.252.0/22 +43.230.32.0/22 +43.230.68.0/22 +43.230.72.0/22 +43.230.84.0/22 +43.231.100.0/22 +43.231.104.0/22 +43.231.108.0/22 +43.231.136.0/22 +43.231.140.0/22 +43.231.144.0/22 +43.231.148.0/22 +43.231.152.0/22 +43.231.156.0/22 +43.231.160.0/22 +43.231.164.0/22 +43.231.168.0/22 +43.231.172.0/22 +43.231.176.0/22 +43.231.180.0/22 +43.231.32.0/22 +43.231.36.0/22 +43.231.40.0/22 +43.231.44.0/22 +43.231.80.0/22 +43.231.84.0/22 +43.231.88.0/22 +43.231.92.0/22 +43.231.96.0/22 +43.236.0.0/22 +43.236.100.0/22 +43.236.104.0/22 +43.236.108.0/22 +43.236.112.0/22 +43.236.116.0/22 +43.236.12.0/22 +43.236.120.0/22 +43.236.124.0/22 +43.236.128.0/22 +43.236.132.0/22 +43.236.136.0/22 +43.236.140.0/22 +43.236.144.0/22 +43.236.148.0/22 +43.236.152.0/22 +43.236.156.0/22 +43.236.16.0/22 +43.236.160.0/22 +43.236.164.0/22 +43.236.168.0/22 +43.236.172.0/22 +43.236.176.0/22 +43.236.180.0/22 +43.236.184.0/22 +43.236.188.0/22 +43.236.192.0/22 +43.236.196.0/22 +43.236.20.0/22 +43.236.200.0/22 +43.236.204.0/22 +43.236.208.0/22 +43.236.212.0/22 +43.236.216.0/22 +43.236.220.0/22 +43.236.224.0/22 +43.236.228.0/22 +43.236.232.0/22 +43.236.236.0/22 +43.236.24.0/22 +43.236.240.0/22 +43.236.244.0/22 +43.236.248.0/22 +43.236.252.0/22 +43.236.28.0/22 +43.236.32.0/22 +43.236.36.0/22 +43.236.4.0/22 +43.236.40.0/22 +43.236.44.0/22 +43.236.48.0/22 +43.236.52.0/22 +43.236.56.0/22 +43.236.60.0/22 +43.236.64.0/22 +43.236.68.0/22 +43.236.72.0/22 +43.236.76.0/22 +43.236.8.0/22 +43.236.80.0/22 +43.236.84.0/22 +43.236.88.0/22 +43.236.92.0/22 +43.236.96.0/22 +43.237.0.0/22 +43.237.100.0/22 +43.237.104.0/22 +43.237.108.0/22 +43.237.112.0/22 +43.237.116.0/22 +43.237.12.0/22 +43.237.120.0/22 +43.237.124.0/22 +43.237.128.0/22 +43.237.132.0/22 +43.237.136.0/22 +43.237.140.0/22 +43.237.144.0/22 +43.237.148.0/22 +43.237.152.0/22 +43.237.156.0/22 +43.237.16.0/22 +43.237.160.0/22 +43.237.164.0/22 +43.237.168.0/22 +43.237.172.0/22 +43.237.176.0/22 +43.237.180.0/22 +43.237.184.0/22 +43.237.188.0/22 +43.237.192.0/22 +43.237.20.0/22 +43.237.200.0/22 +43.237.204.0/22 +43.237.208.0/22 +43.237.212.0/22 +43.237.216.0/22 +43.237.220.0/22 +43.237.224.0/22 +43.237.228.0/22 +43.237.232.0/22 +43.237.236.0/22 +43.237.24.0/22 +43.237.240.0/22 +43.237.244.0/22 +43.237.248.0/22 +43.237.252.0/22 +43.237.28.0/22 +43.237.32.0/22 +43.237.36.0/22 +43.237.4.0/22 +43.237.40.0/22 +43.237.44.0/22 +43.237.48.0/22 +43.237.52.0/22 +43.237.56.0/22 +43.237.60.0/22 +43.237.64.0/22 +43.237.68.0/22 +43.237.72.0/22 +43.237.76.0/22 +43.237.8.0/22 +43.237.80.0/22 +43.237.84.0/22 +43.237.88.0/22 +43.237.92.0/22 +43.237.96.0/22 +43.238.0.0/22 +43.238.100.0/22 +43.238.104.0/22 +43.238.108.0/22 +43.238.112.0/22 +43.238.116.0/22 +43.238.12.0/22 +43.238.120.0/22 +43.238.124.0/22 +43.238.128.0/22 +43.238.132.0/22 +43.238.136.0/22 +43.238.140.0/22 +43.238.144.0/22 +43.238.148.0/22 +43.238.152.0/22 +43.238.156.0/22 +43.238.16.0/22 +43.238.160.0/22 +43.238.164.0/22 +43.238.168.0/22 +43.238.172.0/22 +43.238.176.0/22 +43.238.180.0/22 +43.238.184.0/22 +43.238.188.0/22 +43.238.192.0/22 +43.238.196.0/22 +43.238.20.0/22 +43.238.200.0/22 +43.238.204.0/22 +43.238.208.0/22 +43.238.212.0/22 +43.238.216.0/22 +43.238.220.0/22 +43.238.224.0/22 +43.238.228.0/22 +43.238.232.0/22 +43.238.236.0/22 +43.238.24.0/22 +43.238.240.0/22 +43.238.244.0/22 +43.238.248.0/22 +43.238.252.0/22 +43.238.28.0/22 +43.238.32.0/22 +43.238.36.0/22 +43.238.4.0/22 +43.238.40.0/22 +43.238.44.0/22 +43.238.48.0/22 +43.238.52.0/22 +43.238.56.0/22 +43.238.60.0/22 +43.238.64.0/22 +43.238.68.0/22 +43.238.72.0/22 +43.238.76.0/22 +43.238.8.0/22 +43.238.80.0/22 +43.238.84.0/22 +43.238.88.0/22 +43.238.92.0/22 +43.238.96.0/22 +43.239.0.0/22 +43.239.116.0/22 +43.239.120.0/22 +43.239.16.0/22 +43.239.172.0/22 +43.239.176.0/22 +43.239.20.0/22 +43.239.24.0/22 +43.239.28.0/22 +43.239.32.0/22 +43.239.36.0/22 +43.239.4.0/22 +43.239.40.0/22 +43.239.44.0/22 +43.239.48.0/22 +43.239.8.0/21 +43.240.0.0/22 +43.240.124.0/22 +43.240.128.0/22 +43.240.132.0/22 +43.240.136.0/22 +43.240.144.0/22 +43.240.156.0/22 +43.240.160.0/22 +43.240.164.0/22 +43.240.168.0/22 +43.240.172.0/22 +43.240.176.0/22 +43.240.180.0/22 +43.240.184.0/22 +43.240.188.0/22 +43.240.192.0/22 +43.240.196.0/22 +43.240.200.0/22 +43.240.204.0/22 +43.240.208.0/22 +43.240.212.0/22 +43.240.216.0/22 +43.240.220.0/22 +43.240.240.0/22 +43.240.244.0/22 +43.240.248.0/22 +43.240.252.0/22 +43.240.56.0/22 +43.240.60.0/22 +43.240.68.0/22 +43.240.72.0/22 +43.240.76.0/22 +43.240.84.0/22 +43.241.0.0/22 +43.241.112.0/22 +43.241.12.0/22 +43.241.16.0/22 +43.241.168.0/22 +43.241.172.0/22 +43.241.176.0/22 +43.241.180.0/22 +43.241.184.0/22 +43.241.20.0/22 +43.241.208.0/22 +43.241.212.0/22 +43.241.216.0/22 +43.241.220.0/22 +43.241.224.0/22 +43.241.228.0/22 +43.241.232.0/22 +43.241.236.0/22 +43.241.240.0/22 +43.241.248.0/22 +43.241.252.0/22 +43.241.4.0/22 +43.241.48.0/22 +43.241.76.0/22 +43.241.8.0/22 +43.241.80.0/22 +43.241.84.0/22 +43.241.88.0/22 +43.241.92.0/22 +43.242.12.0/22 +43.242.144.0/22 +43.242.148.0/22 +43.242.152.0/22 +43.242.156.0/22 +43.242.16.0/22 +43.242.160.0/22 +43.242.164.0/22 +43.242.168.0/22 +43.242.180.0/22 +43.242.188.0/22 +43.242.192.0/22 +43.242.196.0/22 +43.242.20.0/22 +43.242.204.0/22 +43.242.216.0/22 +43.242.220.0/22 +43.242.24.0/22 +43.242.252.0/22 +43.242.28.0/22 +43.242.44.0/22 +43.242.48.0/22 +43.242.52.0/22 +43.242.56.0/22 +43.242.60.0/22 +43.242.64.0/22 +43.242.72.0/22 +43.242.76.0/22 +43.242.8.0/22 +43.242.80.0/22 +43.242.84.0/22 +43.242.88.0/22 +43.242.92.0/22 +43.242.96.0/22 +43.243.12.0/22 +43.243.128.0/22 +43.243.136.0/22 +43.243.144.0/22 +43.243.148.0/22 +43.243.156.0/22 +43.243.16.0/22 +43.243.180.0/22 +43.243.228.0/22 +43.243.232.0/22 +43.243.244.0/22 +43.243.4.0/22 +43.243.8.0/22 +43.243.88.0/22 +43.246.0.0/22 +43.246.112.0/22 +43.246.12.0/22 +43.246.16.0/22 +43.246.20.0/22 +43.246.212.0/22 +43.246.228.0/22 +43.246.24.0/22 +43.246.28.0/22 +43.246.32.0/22 +43.246.36.0/22 +43.246.4.0/22 +43.246.40.0/22 +43.246.44.0/22 +43.246.48.0/22 +43.246.52.0/22 +43.246.56.0/22 +43.246.60.0/22 +43.246.64.0/22 +43.246.68.0/22 +43.246.72.0/22 +43.246.76.0/22 +43.246.8.0/22 +43.246.80.0/22 +43.246.84.0/22 +43.246.88.0/22 +43.246.92.0/22 +43.246.96.0/22 +43.247.100.0/22 +43.247.108.0/22 +43.247.112.0/22 +43.247.148.0/22 +43.247.152.0/22 +43.247.176.0/22 +43.247.180.0/22 +43.247.184.0/22 +43.247.188.0/22 +43.247.196.0/22 +43.247.200.0/22 +43.247.204.0/22 +43.247.208.0/22 +43.247.212.0/22 +43.247.216.0/22 +43.247.220.0/22 +43.247.224.0/22 +43.247.228.0/22 +43.247.232.0/22 +43.247.236.0/22 +43.247.240.0/22 +43.247.244.0/22 +43.247.248.0/22 +43.247.252.0/22 +43.247.4.0/22 +43.247.44.0/22 +43.247.48.0/22 +43.247.68.0/22 +43.247.76.0/22 +43.247.8.0/22 +43.247.84.0/22 +43.247.88.0/22 +43.247.92.0/22 +43.247.96.0/22 +43.248.0.0/22 +43.248.100.0/22 +43.248.104.0/22 +43.248.108.0/22 +43.248.112.0/22 +43.248.116.0/22 +43.248.120.0/22 +43.248.124.0/22 +43.248.128.0/22 +43.248.132.0/22 +43.248.136.0/22 +43.248.140.0/22 +43.248.144.0/22 +43.248.148.0/22 +43.248.176.0/22 +43.248.180.0/22 +43.248.184.0/22 +43.248.188.0/22 +43.248.192.0/22 +43.248.196.0/22 +43.248.20.0/22 +43.248.200.0/22 +43.248.204.0/22 +43.248.208.0/22 +43.248.228.0/22 +43.248.232.0/22 +43.248.244.0/22 +43.248.28.0/22 +43.248.4.0/22 +43.248.48.0/22 +43.248.76.0/22 +43.248.80.0/22 +43.248.84.0/22 +43.248.88.0/22 +43.248.92.0/22 +43.248.96.0/22 +43.249.120.0/22 +43.249.132.0/22 +43.249.136.0/22 +43.249.144.0/22 +43.249.148.0/22 +43.249.152.0/22 +43.249.156.0/22 +43.249.160.0/22 +43.249.164.0/22 +43.249.168.0/22 +43.249.192.0/22 +43.249.236.0/22 +43.249.4.0/22 +43.249.8.0/22 +43.250.100.0/22 +43.250.104.0/22 +43.250.108.0/22 +43.250.112.0/22 +43.250.116.0/22 +43.250.12.0/22 +43.250.128.0/22 +43.250.144.0/22 +43.250.148.0/22 +43.250.16.0/22 +43.250.160.0/22 +43.250.168.0/22 +43.250.172.0/22 +43.250.176.0/22 +43.250.20.0/22 +43.250.200.0/22 +43.250.212.0/22 +43.250.216.0/22 +43.250.220.0/22 +43.250.236.0/22 +43.250.244.0/22 +43.250.28.0/22 +43.250.32.0/22 +43.250.36.0/22 +43.250.4.0/22 +43.250.72.0/22 +43.250.96.0/22 +43.251.100.0/22 +43.251.116.0/22 +43.251.192.0/22 +43.251.232.0/22 +43.251.236.0/22 +43.251.244.0/22 +43.251.36.0/22 +43.251.4.0/22 +43.251.8.0/22 +43.252.224.0/22 +43.252.48.0/22 +43.252.56.0/22 +43.254.0.0/22 +43.254.100.0/22 +43.254.104.0/22 +43.254.112.0/22 +43.254.116.0/22 +43.254.128.0/22 +43.254.136.0/22 +43.254.140.0/22 +43.254.144.0/22 +43.254.148.0/22 +43.254.152.0/22 +43.254.156.0/22 +43.254.168.0/22 +43.254.172.0/22 +43.254.180.0/22 +43.254.184.0/22 +43.254.188.0/22 +43.254.192.0/22 +43.254.196.0/22 +43.254.200.0/22 +43.254.208.0/22 +43.254.220.0/22 +43.254.224.0/22 +43.254.228.0/22 +43.254.232.0/22 +43.254.236.0/22 +43.254.24.0/22 +43.254.240.0/22 +43.254.248.0/22 +43.254.252.0/22 +43.254.36.0/22 +43.254.4.0/22 +43.254.44.0/22 +43.254.52.0/22 +43.254.64.0/22 +43.254.72.0/22 +43.254.8.0/22 +43.254.84.0/22 +43.254.88.0/22 +43.254.92.0/22 +43.255.0.0/22 +43.255.144.0/22 +43.255.16.0/22 +43.255.168.0/22 +43.255.176.0/22 +43.255.184.0/22 +43.255.192.0/22 +43.255.200.0/22 +43.255.204.0/22 +43.255.208.0/22 +43.255.212.0/22 +43.255.224.0/22 +43.255.228.0/22 +43.255.232.0/22 +43.255.244.0/22 +43.255.4.0/22 +43.255.48.0/22 +43.255.64.0/22 +43.255.68.0/22 +43.255.72.0/22 +43.255.76.0/22 +43.255.8.0/22 +43.255.84.0/22 +43.255.96.0/22 +45.112.132.0/22 +45.112.188.0/22 +45.112.208.0/22 +45.112.212.0/22 +45.112.216.0/22 +45.112.220.0/22 +45.112.228.0/22 +45.112.232.0/22 +45.112.236.0/22 +45.113.12.0/22 +45.113.144.0/22 +45.113.148.0/22 +45.113.16.0/22 +45.113.168.0/22 +45.113.176.0/22 +45.113.184.0/22 +45.113.20.0/22 +45.113.200.0/22 +45.113.204.0/22 +45.113.208.0/22 +45.113.212.0/22 +45.113.216.0/22 +45.113.220.0/22 +45.113.24.0/22 +45.113.240.0/22 +45.113.252.0/22 +45.113.28.0/22 +45.113.40.0/22 +45.113.52.0/22 +45.113.56.0/22 +45.113.72.0/22 +45.114.0.0/22 +45.114.12.0/22 +45.114.124.0/22 +45.114.136.0/22 +45.114.196.0/22 +45.114.200.0/22 +45.114.228.0/22 +45.114.252.0/22 +45.114.32.0/22 +45.114.40.0/22 +45.114.52.0/22 +45.114.96.0/22 +45.115.100.0/22 +45.115.120.0/22 +45.115.132.0/22 +45.115.144.0/22 +45.115.156.0/22 +45.115.164.0/22 +45.115.200.0/22 +45.115.212.0/22 +45.115.228.0/22 +45.115.236.0/22 +45.115.244.0/22 +45.115.248.0/22 +45.115.44.0/22 +45.116.100.0/22 +45.116.140.0/22 +45.116.152.0/22 +45.116.16.0/22 +45.116.208.0/22 +45.116.24.0/22 +45.116.32.0/22 +45.116.36.0/22 +45.116.52.0/22 +45.116.96.0/22 +45.117.124.0/22 +45.117.20.0/22 +45.117.252.0/22 +45.117.68.0/22 +45.117.8.0/22 +45.119.104.0/22 +45.119.116.0/22 +45.119.232.0/22 +45.119.52.0/22 +45.119.60.0/22 +45.119.64.0/22 +45.119.68.0/22 +45.119.72.0/22 +45.120.100.0/22 +45.120.140.0/22 +45.120.164.0/22 +45.120.240.0/22 +45.121.172.0/22 +45.121.176.0/22 +45.121.212.0/22 +45.121.240.0/22 +45.121.244.0/22 +45.121.248.0/22 +45.121.252.0/22 +45.121.52.0/22 +45.121.64.0/22 +45.121.68.0/22 +45.121.72.0/22 +45.121.92.0/22 +45.121.96.0/22 +45.122.0.0/22 +45.122.104.0/22 +45.122.108.0/22 +45.122.112.0/22 +45.122.116.0/22 +45.122.12.0/22 +45.122.16.0/22 +45.122.160.0/22 +45.122.164.0/22 +45.122.168.0/22 +45.122.172.0/22 +45.122.176.0/22 +45.122.180.0/22 +45.122.184.0/22 +45.122.188.0/22 +45.122.192.0/22 +45.122.196.0/22 +45.122.20.0/22 +45.122.200.0/22 +45.122.204.0/22 +45.122.208.0/22 +45.122.212.0/22 +45.122.216.0/22 +45.122.24.0/22 +45.122.28.0/22 +45.122.32.0/22 +45.122.36.0/22 +45.122.4.0/22 +45.122.40.0/22 +45.122.60.0/22 +45.122.64.0/22 +45.122.68.0/22 +45.122.72.0/22 +45.122.76.0/22 +45.122.8.0/22 +45.122.80.0/22 +45.122.84.0/22 +45.122.88.0/22 +45.122.92.0/22 +45.122.96.0/21 +45.123.120.0/22 +45.123.128.0/22 +45.123.132.0/22 +45.123.136.0/22 +45.123.148.0/22 +45.123.152.0/22 +45.123.156.0/22 +45.123.164.0/22 +45.123.168.0/22 +45.123.172.0/22 +45.123.176.0/22 +45.123.180.0/22 +45.123.184.0/22 +45.123.204.0/22 +45.123.212.0/22 +45.123.224.0/22 +45.123.228.0/22 +45.123.232.0/22 +45.123.236.0/22 +45.123.240.0/22 +45.123.244.0/22 +45.123.248.0/22 +45.123.252.0/22 +45.123.28.0/22 +45.123.32.0/22 +45.123.36.0/22 +45.123.44.0/22 +45.123.48.0/22 +45.123.52.0/22 +45.123.56.0/22 +45.123.60.0/22 +45.123.64.0/22 +45.123.68.0/22 +45.123.72.0/22 +45.123.76.0/22 +45.123.80.0/22 +45.123.84.0/22 +45.123.88.0/22 +45.124.0.0/22 +45.124.100.0/22 +45.124.124.0/22 +45.124.172.0/22 +45.124.176.0/22 +45.124.20.0/22 +45.124.208.0/22 +45.124.248.0/22 +45.124.28.0/22 +45.124.32.0/22 +45.124.36.0/22 +45.124.44.0/22 +45.124.68.0/22 +45.124.76.0/22 +45.124.80.0/22 +45.125.100.0/22 +45.125.104.0/22 +45.125.12.0/22 +45.125.136.0/22 +45.125.16.0/22 +45.125.24.0/22 +45.125.44.0/22 +45.125.52.0/22 +45.125.56.0/22 +45.125.76.0/22 +45.125.80.0/22 +45.125.84.0/22 +45.125.88.0/22 +45.125.92.0/22 +45.125.96.0/22 +45.126.100.0/22 +45.126.108.0/22 +45.126.112.0/22 +45.126.116.0/22 +45.126.120.0/22 +45.126.212.0/22 +45.126.220.0/22 +45.126.48.0/22 +45.126.52.0/22 +45.127.12.0/22 +45.127.128.0/22 +45.127.144.0/22 +45.127.148.0/22 +45.127.156.0/22 +45.127.216.0/22 +45.127.8.0/22 +45.127.96.0/22 +45.248.100.0/22 +45.248.104.0/22 +45.248.108.0/22 +45.248.128.0/22 +45.248.132.0/22 +45.248.204.0/22 +45.248.208.0/22 +45.248.212.0/22 +45.248.216.0/22 +45.248.220.0/22 +45.248.224.0/22 +45.248.228.0/22 +45.248.232.0/22 +45.248.236.0/22 +45.248.240.0/22 +45.248.244.0/22 +45.248.248.0/22 +45.248.252.0/22 +45.248.8.0/22 +45.248.80.0/22 +45.248.84.0/22 +45.248.88.0/22 +45.248.96.0/22 +45.249.0.0/22 +45.249.112.0/22 +45.249.12.0/22 +45.249.16.0/22 +45.249.188.0/22 +45.249.192.0/22 +45.249.196.0/22 +45.249.20.0/22 +45.249.200.0/22 +45.249.204.0/22 +45.249.208.0/22 +45.249.212.0/22 +45.249.24.0/22 +45.249.28.0/22 +45.249.32.0/22 +45.249.36.0/22 +45.249.4.0/22 +45.250.104.0/22 +45.250.108.0/22 +45.250.112.0/22 +45.250.116.0/22 +45.250.12.0/22 +45.250.120.0/22 +45.250.124.0/22 +45.250.128.0/22 +45.250.132.0/22 +45.250.136.0/22 +45.250.140.0/22 +45.250.144.0/22 +45.250.148.0/22 +45.250.152.0/22 +45.250.16.0/22 +45.250.164.0/22 +45.250.180.0/22 +45.250.184.0/22 +45.250.188.0/22 +45.250.192.0/22 +45.250.28.0/22 +45.250.32.0/22 +45.250.36.0/22 +45.250.40.0/22 +45.250.76.0/22 +45.250.80.0/22 +45.250.84.0/22 +45.250.88.0/22 +45.250.92.0/22 +45.250.96.0/22 +45.251.0.0/22 +45.251.100.0/22 +45.251.120.0/22 +45.251.124.0/22 +45.251.136.0/22 +45.251.140.0/22 +45.251.144.0/22 +45.251.148.0/22 +45.251.152.0/22 +45.251.156.0/22 +45.251.16.0/22 +45.251.160.0/22 +45.251.164.0/22 +45.251.168.0/22 +45.251.172.0/22 +45.251.176.0/22 +45.251.180.0/22 +45.251.184.0/22 +45.251.188.0/22 +45.251.192.0/22 +45.251.196.0/22 +45.251.20.0/22 +45.251.200.0/22 +45.251.204.0/22 +45.251.208.0/22 +45.251.212.0/22 +45.251.216.0/22 +45.251.220.0/22 +45.251.224.0/22 +45.251.240.0/22 +45.251.52.0/22 +45.251.8.0/22 +45.251.84.0/22 +45.251.88.0/22 +45.251.92.0/22 +45.251.96.0/22 +45.252.0.0/22 +45.252.100.0/22 +45.252.104.0/22 +45.252.108.0/22 +45.252.112.0/22 +45.252.116.0/22 +45.252.12.0/22 +45.252.120.0/22 +45.252.124.0/22 +45.252.128.0/22 +45.252.132.0/22 +45.252.136.0/22 +45.252.140.0/22 +45.252.144.0/22 +45.252.148.0/22 +45.252.152.0/22 +45.252.156.0/22 +45.252.16.0/22 +45.252.160.0/22 +45.252.164.0/22 +45.252.168.0/22 +45.252.172.0/22 +45.252.176.0/22 +45.252.192.0/22 +45.252.196.0/22 +45.252.20.0/22 +45.252.200.0/22 +45.252.204.0/22 +45.252.208.0/22 +45.252.212.0/22 +45.252.216.0/22 +45.252.220.0/22 +45.252.224.0/22 +45.252.228.0/22 +45.252.232.0/22 +45.252.24.0/22 +45.252.28.0/22 +45.252.32.0/22 +45.252.36.0/22 +45.252.4.0/22 +45.252.40.0/22 +45.252.44.0/22 +45.252.48.0/22 +45.252.60.0/22 +45.252.8.0/22 +45.252.84.0/22 +45.252.88.0/22 +45.252.92.0/22 +45.252.96.0/22 +45.253.0.0/22 +45.253.100.0/22 +45.253.104.0/22 +45.253.108.0/22 +45.253.112.0/22 +45.253.116.0/22 +45.253.12.0/22 +45.253.120.0/22 +45.253.132.0/22 +45.253.136.0/22 +45.253.140.0/22 +45.253.144.0/22 +45.253.148.0/22 +45.253.152.0/22 +45.253.156.0/22 +45.253.16.0/22 +45.253.160.0/22 +45.253.164.0/22 +45.253.168.0/22 +45.253.172.0/22 +45.253.176.0/22 +45.253.180.0/22 +45.253.184.0/22 +45.253.188.0/22 +45.253.192.0/22 +45.253.196.0/22 +45.253.20.0/22 +45.253.200.0/22 +45.253.204.0/22 +45.253.208.0/22 +45.253.212.0/22 +45.253.216.0/22 +45.253.220.0/22 +45.253.224.0/22 +45.253.228.0/22 +45.253.232.0/22 +45.253.236.0/22 +45.253.24.0/22 +45.253.240.0/22 +45.253.244.0/22 +45.253.28.0/22 +45.253.32.0/22 +45.253.36.0/22 +45.253.4.0/22 +45.253.40.0/22 +45.253.44.0/22 +45.253.48.0/22 +45.253.52.0/22 +45.253.56.0/22 +45.253.60.0/22 +45.253.64.0/22 +45.253.68.0/22 +45.253.72.0/22 +45.253.76.0/22 +45.253.8.0/22 +45.253.80.0/22 +45.253.84.0/22 +45.253.92.0/22 +45.253.96.0/22 +45.254.0.0/22 +45.254.100.0/22 +45.254.104.0/22 +45.254.108.0/22 +45.254.112.0/22 +45.254.116.0/22 +45.254.12.0/22 +45.254.120.0/22 +45.254.124.0/22 +45.254.128.0/22 +45.254.132.0/22 +45.254.136.0/22 +45.254.140.0/22 +45.254.144.0/22 +45.254.148.0/22 +45.254.152.0/22 +45.254.156.0/22 +45.254.16.0/22 +45.254.160.0/22 +45.254.164.0/22 +45.254.168.0/22 +45.254.172.0/22 +45.254.176.0/22 +45.254.180.0/22 +45.254.184.0/22 +45.254.188.0/22 +45.254.192.0/22 +45.254.196.0/22 +45.254.20.0/22 +45.254.200.0/22 +45.254.204.0/22 +45.254.208.0/22 +45.254.212.0/22 +45.254.216.0/22 +45.254.220.0/22 +45.254.224.0/22 +45.254.228.0/22 +45.254.236.0/22 +45.254.24.0/22 +45.254.240.0/22 +45.254.248.0/22 +45.254.28.0/22 +45.254.4.0/22 +45.254.40.0/22 +45.254.48.0/22 +45.254.52.0/22 +45.254.56.0/22 +45.254.60.0/22 +45.254.64.0/22 +45.254.68.0/22 +45.254.72.0/22 +45.254.76.0/22 +45.254.8.0/22 +45.254.80.0/22 +45.254.84.0/22 +45.254.88.0/22 +45.254.92.0/22 +45.254.96.0/22 +45.255.0.0/22 +45.255.100.0/22 +45.255.104.0/22 +45.255.108.0/22 +45.255.112.0/22 +45.255.116.0/22 +45.255.12.0/22 +45.255.120.0/22 +45.255.124.0/22 +45.255.132.0/22 +45.255.136.0/22 +45.255.140.0/22 +45.255.144.0/22 +45.255.148.0/22 +45.255.152.0/22 +45.255.156.0/22 +45.255.16.0/22 +45.255.160.0/22 +45.255.164.0/22 +45.255.168.0/22 +45.255.172.0/22 +45.255.176.0/22 +45.255.180.0/22 +45.255.184.0/22 +45.255.188.0/22 +45.255.192.0/22 +45.255.196.0/22 +45.255.20.0/22 +45.255.200.0/22 +45.255.204.0/22 +45.255.208.0/22 +45.255.212.0/22 +45.255.216.0/22 +45.255.220.0/22 +45.255.224.0/22 +45.255.228.0/22 +45.255.232.0/22 +45.255.236.0/22 +45.255.24.0/22 +45.255.240.0/22 +45.255.244.0/22 +45.255.248.0/22 +45.255.28.0/22 +45.255.32.0/22 +45.255.36.0/22 +45.255.4.0/22 +45.255.40.0/22 +45.255.44.0/22 +45.255.48.0/22 +45.255.52.0/22 +45.255.56.0/22 +45.255.60.0/22 +45.255.64.0/22 +45.255.68.0/22 +45.255.72.0/22 +45.255.76.0/22 +45.255.8.0/22 +45.255.80.0/22 +45.255.84.0/22 +45.255.88.0/22 +45.255.92.0/22 +45.255.96.0/22 +45.40.192.0/18 +45.65.16.0/22 +45.65.20.0/22 +45.65.24.0/22 +45.65.28.0/22 +47.92.0.0/14 +47.96.0.0/11 +49.112.0.0/13 +49.120.0.0/14 +49.128.0.0/24 +49.128.2.0/23 +49.128.4.0/22 +49.140.0.0/15 +49.152.0.0/14 +49.208.0.0/15 +49.210.0.0/15 +49.220.0.0/14 +49.232.0.0/14 +49.239.0.0/18 +49.239.192.0/18 +49.246.224.0/19 +49.4.0.0/14 +49.51.0.0/16 +49.52.0.0/14 +49.64.0.0/11 +52.130.0.0/15 +52.80.0.0/15 +52.82.0.0/15 +54.222.0.0/15 +58.100.0.0/15 +58.116.0.0/14 +58.128.0.0/13 +58.14.0.0/15 +58.144.0.0/16 +58.154.0.0/15 +58.16.0.0/16 +58.17.0.0/17 +58.17.128.0/17 +58.18.0.0/16 +58.19.0.0/16 +58.192.0.0/15 +58.194.0.0/15 +58.196.0.0/15 +58.198.0.0/15 +58.20.0.0/16 +58.200.0.0/13 +58.208.0.0/12 +58.21.0.0/16 +58.22.0.0/15 +58.24.0.0/15 +58.240.0.0/15 +58.242.0.0/15 +58.244.0.0/15 +58.246.0.0/15 +58.248.0.0/13 +58.30.0.0/15 +58.32.0.0/13 +58.40.0.0/15 +58.42.0.0/16 +58.43.0.0/16 +58.44.0.0/14 +58.48.0.0/13 +58.56.0.0/15 +58.58.0.0/16 +58.59.0.0/17 +58.59.128.0/17 +58.60.0.0/14 +58.65.232.0/21 +58.66.0.0/15 +58.68.128.0/17 +58.82.0.0/17 +58.83.0.0/17 +58.83.128.0/17 +58.87.64.0/18 +58.99.128.0/17 +59.107.0.0/17 +59.107.128.0/17 +59.108.0.0/15 +59.110.0.0/15 +59.151.0.0/17 +59.152.112.0/22 +59.152.116.0/22 +59.152.16.0/22 +59.152.20.0/22 +59.152.24.0/22 +59.152.28.0/22 +59.152.32.0/22 +59.152.36.0/22 +59.152.64.0/22 +59.152.68.0/22 +59.152.72.0/22 +59.152.76.0/22 +59.153.116.0/22 +59.153.136.0/22 +59.153.152.0/22 +59.153.164.0/22 +59.153.168.0/22 +59.153.172.0/22 +59.153.176.0/22 +59.153.180.0/22 +59.153.184.0/22 +59.153.188.0/22 +59.153.192.0/22 +59.153.32.0/22 +59.153.4.0/22 +59.153.60.0/22 +59.153.64.0/22 +59.153.68.0/22 +59.153.72.0/22 +59.153.92.0/22 +59.155.0.0/16 +59.172.0.0/15 +59.174.0.0/15 +59.191.0.0/17 +59.192.0.0/10 +59.32.0.0/13 +59.40.0.0/15 +59.42.0.0/16 +59.43.0.0/16 +59.44.0.0/14 +59.48.0.0/16 +59.49.0.0/17 +59.49.128.0/17 +59.50.0.0/16 +59.51.0.0/17 +59.51.128.0/17 +59.52.0.0/14 +59.56.0.0/14 +59.60.0.0/15 +59.62.0.0/15 +59.64.0.0/14 +59.68.0.0/14 +59.72.0.0/15 +59.74.0.0/15 +59.76.0.0/16 +59.77.0.0/16 +59.78.0.0/15 +59.80.0.0/15 +59.82.0.0/15 +60.0.0.0/13 +60.10.0.0/16 +60.11.0.0/16 +60.12.0.0/16 +60.13.0.0/18 +60.13.128.0/17 +60.13.64.0/18 +60.14.0.0/15 +60.16.0.0/13 +60.160.0.0/15 +60.162.0.0/15 +60.164.0.0/15 +60.166.0.0/15 +60.168.0.0/13 +60.176.0.0/12 +60.194.0.0/15 +60.200.0.0/14 +60.204.0.0/16 +60.205.0.0/16 +60.206.0.0/15 +60.208.0.0/13 +60.216.0.0/15 +60.218.0.0/15 +60.220.0.0/14 +60.232.0.0/15 +60.235.0.0/16 +60.24.0.0/14 +60.245.128.0/17 +60.247.0.0/16 +60.252.0.0/16 +60.253.128.0/17 +60.255.0.0/16 +60.28.0.0/15 +60.30.0.0/16 +60.31.0.0/16 +60.55.0.0/16 +60.63.0.0/16 +60.8.0.0/15 +61.128.0.0/15 +61.130.0.0/15 +61.132.0.0/16 +61.133.0.0/17 +61.133.128.0/17 +61.134.0.0/18 +61.134.128.0/18 +61.134.192.0/18 +61.134.64.0/19 +61.134.96.0/19 +61.135.0.0/16 +61.136.0.0/18 +61.136.128.0/17 +61.136.64.0/18 +61.137.0.0/17 +61.137.128.0/17 +61.138.0.0/18 +61.138.128.0/18 +61.138.192.0/18 +61.138.64.0/18 +61.139.0.0/17 +61.139.128.0/18 +61.139.192.0/18 +61.14.212.0/22 +61.14.216.0/22 +61.14.220.0/22 +61.14.240.0/22 +61.14.244.0/22 +61.140.0.0/14 +61.144.0.0/14 +61.148.0.0/15 +61.150.0.0/15 +61.152.0.0/16 +61.153.0.0/16 +61.154.0.0/15 +61.156.0.0/16 +61.157.0.0/16 +61.158.0.0/17 +61.158.128.0/17 +61.159.0.0/18 +61.159.128.0/17 +61.159.64.0/18 +61.160.0.0/16 +61.161.0.0/18 +61.161.128.0/17 +61.161.64.0/18 +61.162.0.0/16 +61.163.0.0/16 +61.164.0.0/16 +61.165.0.0/16 +61.166.0.0/16 +61.167.0.0/16 +61.168.0.0/16 +61.169.0.0/16 +61.170.0.0/15 +61.172.0.0/14 +61.176.0.0/16 +61.177.0.0/16 +61.178.0.0/16 +61.179.0.0/16 +61.180.0.0/17 +61.180.128.0/17 +61.181.0.0/16 +61.182.0.0/16 +61.183.0.0/16 +61.184.0.0/14 +61.188.0.0/16 +61.189.0.0/17 +61.189.128.0/17 +61.190.0.0/15 +61.232.0.0/14 +61.236.0.0/15 +61.240.0.0/14 +61.28.0.0/20 +61.28.16.0/20 +61.28.32.0/19 +61.28.64.0/18 +61.29.128.0/18 +61.29.192.0/19 +61.29.224.0/20 +61.29.240.0/21 +61.29.248.0/22 +61.29.254.0/23 +61.4.176.0/20 +61.4.80.0/22 +61.4.84.0/22 +61.4.88.0/21 +61.45.128.0/18 +61.45.224.0/20 +61.47.128.0/18 +61.48.0.0/14 +61.52.0.0/15 +61.54.0.0/16 +61.55.0.0/16 +61.8.160.0/20 +61.87.192.0/18 +62.234.0.0/16 +68.79.0.0/18 +69.230.192.0/18 +69.231.128.0/18 +69.234.192.0/18 +69.235.128.0/18 +71.131.192.0/18 +71.132.0.0/18 +71.136.64.0/18 +71.137.0.0/18 +81.68.0.0/14 +82.156.0.0/15 +94.191.0.0/17 diff --git a/luci-app-passwall/root/usr/share/passwall/rules/chnroute6 b/luci-app-passwall/root/usr/share/passwall/rules/chnroute6 new file mode 100644 index 000000000..b562d356a --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/chnroute6 @@ -0,0 +1,1944 @@ +2001:250:2000::/35 +2001:250:4000::/34 +2001:250:8000::/33 +2001:250::/35 +2001:251::/32 +2001:252::/32 +2001:253::/32 +2001:254::/32 +2001:255::/32 +2001:256::/32 +2001:4438::/32 +2001:4510::/29 +2001:7fa:10::/48 +2001:7fa:5::/48 +2001:c68::/32 +2001:cc0::/32 +2001:da8::/32 +2001:da9::/32 +2001:daa::/32 +2001:dc7::/32 +2001:dd8:1::/48 +2001:dd8:1a::/48 +2001:dd8:5::/48 +2001:dd9::/48 +2001:df0:1bc0::/48 +2001:df0:2180::/48 +2001:df0:25c0::/48 +2001:df0:26c0::/48 +2001:df0:27e::/48 +2001:df0:2d80::/48 +2001:df0:2e00::/48 +2001:df0:2e80::/48 +2001:df0:423::/48 +2001:df0:59c0::/48 +2001:df0:85c0::/48 +2001:df0:8d40::/48 +2001:df0:9c0::/48 +2001:df0:9d40::/48 +2001:df0:b180::/48 +2001:df0:bf80::/48 +2001:df0:d880::/48 +2001:df1:4580::/48 +2001:df1:5280::/48 +2001:df1:5b80::/48 +2001:df1:6180::/48 +2001:df1:6b80::/48 +2001:df1:8b00::/48 +2001:df1:a100::/48 +2001:df1:bd80::/48 +2001:df1:c80::/48 +2001:df1:c900::/48 +2001:df1:d100::/48 +2001:df1:d180::/48 +2001:df1:da00::/48 +2001:df1:f480::/48 +2001:df1:f580::/48 +2001:df1:fd80::/48 +2001:df2:180::/48 +2001:df2:5780::/48 +2001:df2:5a80::/48 +2001:df2:80::/48 +2001:df2:a580::/48 +2001:df3:1480::/48 +2001:df3:2a80::/48 +2001:df3:3a80::/48 +2001:df3:a680::/48 +2001:df3:b100::/48 +2001:df3:b380::/48 +2001:df3:c380::/48 +2001:df3:c680::/48 +2001:df3:d880::/48 +2001:df3:ed80::/48 +2001:df3:ef80::/48 +2001:df4:1280::/48 +2001:df4:1500::/48 +2001:df4:1880::/48 +2001:df4:2780::/48 +2001:df4:2e80::/48 +2001:df4:2f00::/48 +2001:df4:3c80::/48 +2001:df4:3d80::/48 +2001:df4:4b80::/48 +2001:df4:4d80::/48 +2001:df4:880::/48 +2001:df4:a680::/48 +2001:df4:a980::/48 +2001:df4:c180::/48 +2001:df4:c580::/48 +2001:df4:c780::/48 +2001:df4:cf00::/48 +2001:df4:d80::/48 +2001:df4:de80::/48 +2001:df5:2080::/48 +2001:df5:5f80::/48 +2001:df5:7800::/48 +2001:df6:100::/48 +2001:df6:3d00::/48 +2001:df6:5d00::/48 +2001:df6:6800::/48 +2001:df6:9e80::/48 +2001:df6:9f80::/48 +2001:df6:df00::/48 +2001:df6:f400::/48 +2001:df7:1480::/48 +2001:df7:2b80::/48 +2001:df7:6600::/48 +2001:df7:ab00::/48 +2001:df7:e580::/48 +2001:df7:f080::/48 +2001:e08::/32 +2001:e18::/32 +2001:e80::/32 +2001:e88::/32 +2001:f38::/32 +2001:f88::/32 +2400:1040::/32 +2400:1160::/32 +2400:12c0::/32 +2400:1340::/32 +2400:1380::/32 +2400:15c0::/32 +2400:1640::/32 +2400:16c0::/32 +2400:1740::/32 +2400:17c0::/32 +2400:1840::/32 +2400:18c0::/32 +2400:1940::/32 +2400:19a0::/32 +2400:19c0::/32 +2400:1a40::/32 +2400:1ac0::/32 +2400:1b40::/32 +2400:1cc0::/32 +2400:1d40::/32 +2400:1dc0::/32 +2400:1e40::/32 +2400:1ec0::/32 +2400:1f40::/32 +2400:1fc0::/32 +2400:3040::/32 +2400:3140::/32 +2400:3160::/32 +2400:31c0::/32 +2400:3200::/32 +2400:3280::/32 +2400:32c0::/32 +2400:3340::/32 +2400:33c0::/32 +2400:3440::/32 +2400:34c0::/32 +2400:3540::/32 +2400:35c0::/32 +2400:3600::/32 +2400:3640::/32 +2400:3660::/32 +2400:36c0::/32 +2400:38c0::/32 +2400:39c0::/32 +2400:3a00::/32 +2400:3a40::/32 +2400:3b40::/32 +2400:3bc0::/32 +2400:3c40::/32 +2400:3cc0::/32 +2400:3e00::/32 +2400:3f40::/32 +2400:3f60::/32 +2400:3fc0::/32 +2400:4440::/32 +2400:44c0::/32 +2400:44e0::/32 +2400:4540::/32 +2400:4600::/32 +2400:4640::/32 +2400:46c0::/32 +2400:4740::/32 +2400:4920::/32 +2400:4bc0::/32 +2400:4e00::/32 +2400:4e40::/32 +2400:5080::/32 +2400:5280::/32 +2400:5400::/32 +2400:5580::/32 +2400:55c0::/32 +2400:55e0::/32 +2400:5600::/32 +2400:5640::/32 +2400:56c0::/32 +2400:57c0::/32 +2400:5840::/32 +2400:5a00::/32 +2400:5a40::/32 +2400:5a60::/32 +2400:5ac0::/32 +2400:5b40::/32 +2400:5bc0::/32 +2400:5c40::/32 +2400:5c80::/32 +2400:5cc0::/32 +2400:5e20::/32 +2400:5e80::/32 +2400:5ee0::/32 +2400:5f60::/32 +2400:5fc0::/32 +2400:6000::/32 +2400:6040::/32 +2400:60c0::/32 +2400:61c0::/32 +2400:6200::/32 +2400:6600::/32 +2400:6640::/32 +2400:66a0::/32 +2400:66c0::/32 +2400:66e0::/32 +2400:6740::/32 +2400:67a0::/32 +2400:67c0::/32 +2400:6840::/32 +2400:68c0::/32 +2400:6940::/32 +2400:69c0::/32 +2400:6a00::/32 +2400:6a40::/32 +2400:6ac0::/32 +2400:6b40::/32 +2400:6bc0::/32 +2400:6c40::/32 +2400:6cc0::/32 +2400:6d40::/32 +2400:6da0::/32 +2400:6dc0::/32 +2400:6e00::/32 +2400:6e40::/32 +2400:6ec0::/32 +2400:6f40::/32 +2400:6f80::/32 +2400:6fc0::/32 +2400:7040::/32 +2400:7100::/32 +2400:7140::/32 +2400:71c0::/32 +2400:7200::/32 +2400:7240::/32 +2400:72c0::/32 +2400:7340::/32 +2400:73c0::/32 +2400:7440::/32 +2400:74c0::/32 +2400:7540::/32 +2400:75c0::/32 +2400:7640::/32 +2400:7680::/32 +2400:76c0::/32 +2400:7740::/32 +2400:77c0::/32 +2400:79c0::/32 +2400:7ac0::/32 +2400:7bc0::/32 +2400:7f80::/32 +2400:7fc0::/32 +2400:8080::/32 +2400:8200::/32 +2400:82c0::/32 +2400:8580::/32 +2400:8600::/32 +2400:8780::/32 +2400:87c0::/32 +2400:8840::/32 +2400:8980::/32 +2400:89c0::/32 +2400:8e00::/32 +2400:8f00::/32 +2400:8fc0::/32 +2400:9040::/32 +2400:9340::/32 +2400:9580::/32 +2400:95c0::/32 +2400:9600::/32 +2400:98c0::/32 +2400:9a00::/32 +2400:9e00::/32 +2400:a040::/32 +2400:a380::/32 +2400:a480::/32 +2400:a780::/32 +2400:a8c0::/32 +2400:a900::/32 +2400:a980::/32 +2400:a981::/32 +2400:a982::/31 +2400:a984::/30 +2400:abc0::/32 +2400:ae00::/32 +2400:b200::/32 +2400:b2c0::/32 +2400:b500::/32 +2400:b600::/32 +2400:b6c0::/32 +2400:b700::/32 +2400:b8c0::/32 +2400:b9c0::/32 +2400:ba00::/32 +2400:ba40::/32 +2400:ba41::/32 +2400:bac0::/32 +2400:be00::/32 +2400:bf00::/32 +2400:c200::/32 +2400:c380::/32 +2400:c840::/32 +2400:c8c0::/32 +2400:c940::/32 +2400:c9c0::/32 +2400:ca40::/32 +2400:cac0::/32 +2400:cb40::/32 +2400:cb80::/32 +2400:cbc0::/32 +2400:cc40::/32 +2400:cc80::/32 +2400:ccc0::/32 +2400:cd40::/32 +2400:cdc0::/32 +2400:ce00::/32 +2400:ce40::/32 +2400:cf40::/32 +2400:cf80::/32 +2400:cfc0::/32 +2400:d0c0::/32 +2400:d100::/32 +2400:d1c0::/32 +2400:d200::/32 +2400:d300::/32 +2400:d440::/32 +2400:d600::/32 +2400:d6c0::/32 +2400:d780::/32 +2400:da00::/32 +2400:dd00::/28 +2400:dd40::/32 +2400:de00::/32 +2400:de80::/32 +2400:e0c0::/32 +2400:e5c0::/32 +2400:e680::/32 +2400:e880::/32 +2400:ebc0::/32 +2400:edc0::/32 +2400:ee00::/32 +2400:eec0::/32 +2400:ef40::/32 +2400:f480::/32 +2400:f5c0::/32 +2400:f7c0::/32 +2400:f840::/32 +2400:f980::/32 +2400:fac0::/32 +2400:fb40::/32 +2400:fbc0::/32 +2400:fc40::/32 +2400:fcc0::/32 +2400:fe00::/32 +2401:1000::/32 +2401:11c0::/32 +2401:1200::/32 +2401:12c0::/32 +2401:140::/32 +2401:15c0::/32 +2401:1740::/32 +2401:18c0::/32 +2401:1940::/32 +2401:19c0::/32 +2401:1a40::/32 +2401:1ac0::/32 +2401:1c0::/32 +2401:1d40::/32 +2401:1dc0::/32 +2401:1e00::/32 +2401:1ec0::/32 +2401:1f40::/32 +2401:2040::/32 +2401:2080::/32 +2401:23c0::/32 +2401:2600::/32 +2401:2780::/32 +2401:2980::/32 +2401:2a00::/32 +2401:2b40::/32 +2401:2e00::/32 +2401:3100::/32 +2401:3380::/32 +2401:33c0::/32 +2401:3440::/32 +2401:3480::/32 +2401:34c0::/32 +2401:3640::/32 +2401:3780::/32 +2401:3800::/32 +2401:3880::/32 +2401:3980::/32 +2401:3a00::/32 +2401:3a80::/32 +2401:3b80::/32 +2401:3c80::/32 +2401:3d80::/32 +2401:3e80::/32 +2401:3f80::/32 +2401:4080::/32 +2401:4180::/32 +2401:4280::/32 +2401:4380::/32 +2401:4480::/32 +2401:4580::/32 +2401:4680::/32 +2401:4780::/32 +2401:4880::/32 +2401:4a80::/32 +2401:4b00::/32 +2401:4f80::/32 +2401:5180::/32 +2401:540::/32 +2401:5680::/32 +2401:56c0::/32 +2401:59c0::/32 +2401:5b40::/32 +2401:5c80::/32 +2401:7180::/32 +2401:71c0::/32 +2401:7240::/32 +2401:7340::/32 +2401:7580::/32 +2401:7680::/32 +2401:7700::/32 +2401:7780::/32 +2401:7880::/32 +2401:7980::/32 +2401:7a00::/32 +2401:7a80::/32 +2401:7b80::/32 +2401:7bc0::/32 +2401:7c0::/32 +2401:7c80::/32 +2401:7cc0::/32 +2401:7d40::/32 +2401:7d80::/32 +2401:7e00::/32 +2401:7f80::/32 +2401:800::/32 +2401:80::/32 +2401:8200::/32 +2401:82c0::/32 +2401:8380::/32 +2401:8540::/32 +2401:8600::/32 +2401:8680::/32 +2401:8840::/32 +2401:8d00::/32 +2401:8f40::/32 +2401:8fc0::/32 +2401:9340::/32 +2401:9600::/32 +2401:96c0::/32 +2401:9740::/32 +2401:98c0::/32 +2401:9a00::/32 +2401:9ac0::/32 +2401:9b40::/32 +2401:9bc0::/32 +2401:9c0::/32 +2401:9dc0::/32 +2401:9e40::/32 +2401:9f80::/32 +2401:a00::/32 +2401:a140::/32 +2401:a180::/32 +2401:a340::/32 +2401:a3c0::/32 +2401:a40::/32 +2401:a4c0::/32 +2401:a540::/32 +2401:a5c0::/32 +2401:a640::/32 +2401:a940::/32 +2401:a980::/32 +2401:aa00::/32 +2401:aa40::/32 +2401:ac0::/32 +2401:acc0::/32 +2401:ad40::/32 +2401:adc0::/32 +2401:b040::/32 +2401:b180::/32 +2401:b340::/32 +2401:b400::/32 +2401:b40::/32 +2401:b480::/32 +2401:b4c0::/32 +2401:b540::/32 +2401:b580::/32 +2401:b600::/32 +2401:b680::/32 +2401:b6c0::/32 +2401:b7c0::/32 +2401:b940::/32 +2401:ba00::/32 +2401:ba40::/32 +2401:bb80::/32 +2401:bc0::/32 +2401:be00::/32 +2401:c200::/32 +2401:c40::/32 +2401:c540::/32 +2401:c600::/32 +2401:c640::/32 +2401:c6c0::/32 +2401:c840::/32 +2401:c8c0::/32 +2401:ca00::/32 +2401:cb80::/32 +2401:cc00::/32 +2401:cc0::/32 +2401:ce00::/32 +2401:cf40::/32 +2401:cfc0::/32 +2401:d0c0::/32 +2401:d140::/32 +2401:d180::/32 +2401:d2c0::/32 +2401:d340::/32 +2401:d40::/32 +2401:d780::/32 +2401:da00::/32 +2401:de00::/32 +2401:e00::/32 +2401:e080::/32 +2401:e0c0::/32 +2401:e140::/32 +2401:e240::/32 +2401:e2c0::/32 +2401:e340::/32 +2401:e6c0::/32 +2401:e840::/32 +2401:e8c0::/32 +2401:e940::/32 +2401:e9c0::/32 +2401:ec00::/32 +2401:ec40::/32 +2401:f300::/32 +2401:f7c0::/32 +2401:fa80::/32 +2401:fb80::/32 +2401:fc80::/32 +2401:fe80::/32 +2401:ffc0::/32 +2402:1000::/32 +2402:1440::/32 +2402:14c0::/32 +2402:1540::/32 +2402:1600::/32 +2402:1740::/32 +2402:19c0::/32 +2402:1ec0::/32 +2402:1f40::/32 +2402:1f80::/32 +2402:2000::/32 +2402:2280::/32 +2402:22c0::/32 +2402:2440::/32 +2402:24c0::/32 +2402:2540::/32 +2402:2640::/32 +2402:27c0::/32 +2402:2a00::/32 +2402:2b80::/32 +2402:2bc0::/32 +2402:2d00::/32 +2402:2d80::/32 +2402:2e80::/32 +2402:2f40::/32 +2402:3040::/32 +2402:3080::/32 +2402:3140::/32 +2402:3180::/32 +2402:31c0::/32 +2402:3240::/32 +2402:33c0::/32 +2402:39c0::/32 +2402:3a40::/32 +2402:3ac0::/32 +2402:3c00::/32 +2402:3e00::/32 +2402:3ec0::/32 +2402:3f80::/32 +2402:4140::/32 +2402:42c0::/32 +2402:4340::/32 +2402:43c0::/32 +2402:440::/32 +2402:4440::/32 +2402:4500::/32 +2402:4540::/32 +2402:4a00::/32 +2402:4a40::/32 +2402:4a80::/32 +2402:4ac0::/32 +2402:4b80::/32 +2402:4bc0::/32 +2402:4c40::/32 +2402:4d80::/32 +2402:4e00::/32 +2402:4ec0::/32 +2402:4f80::/32 +2402:50c0::/32 +2402:5140::/32 +2402:5180::/32 +2402:51c0::/32 +2402:5240::/32 +2402:52c0::/32 +2402:5340::/32 +2402:5880::/32 +2402:5940::/32 +2402:59c0::/32 +2402:5a40::/32 +2402:5b40::/32 +2402:5bc0::/32 +2402:5c0::/32 +2402:5d00::/32 +2402:5e00::/32 +2402:5e40::/32 +2402:5ec0::/32 +2402:5f40::/32 +2402:6280::/32 +2402:62c0::/32 +2402:64c0::/32 +2402:66c0::/32 +2402:6740::/32 +2402:67c0::/32 +2402:6a00::/32 +2402:6b40::/32 +2402:6bc0::/32 +2402:6e00::/32 +2402:6e80::/32 +2402:6ec0::/32 +2402:6f40::/32 +2402:6fc0::/32 +2402:7040::/32 +2402:7080::/32 +2402:70c0::/32 +2402:7140::/32 +2402:71c0::/32 +2402:7240::/32 +2402:72c0::/32 +2402:7540::/32 +2402:75c0::/32 +2402:7740::/32 +2402:7d00::/32 +2402:7d80::/32 +2402:8180::/32 +2402:8300::/32 +2402:8380::/32 +2402:840::/32 +2402:85c0::/32 +2402:8800::/32 +2402:8840::/32 +2402:8900::/32 +2402:8940::/32 +2402:89c0::/32 +2402:8b40::/32 +2402:8bc0::/32 +2402:8cc0::/32 +2402:8d40::/32 +2402:8f40::/32 +2402:8f80::/32 +2402:9240::/32 +2402:92c0::/32 +2402:93c0::/32 +2402:9440::/32 +2402:9480::/32 +2402:94c0::/32 +2402:9580::/32 +2402:95c0::/32 +2402:9680::/32 +2402:96c0::/32 +2402:9840::/32 +2402:98c0::/32 +2402:9940::/32 +2402:9a80::/32 +2402:9b80::/32 +2402:9f80::/32 +2402:9fc0::/32 +2402:a080::/32 +2402:a180::/32 +2402:a200::/32 +2402:a240::/32 +2402:a280::/32 +2402:a380::/32 +2402:a3c0::/32 +2402:a640::/32 +2402:a680::/32 +2402:a6c0::/32 +2402:a840::/32 +2402:a880::/32 +2402:a9c0::/32 +2402:aa80::/32 +2402:ab80::/32 +2402:ac0::/32 +2402:ae00::/32 +2402:ae40::/32 +2402:aec0::/32 +2402:af80::/32 +2402:afc0::/32 +2402:b080::/32 +2402:b200::/32 +2402:b380::/32 +2402:b3c0::/32 +2402:b440::/32 +2402:b6c0::/32 +2402:b880::/32 +2402:b8c0::/32 +2402:b940::/32 +2402:b980::/32 +2402:ba80::/32 +2402:bac0::/32 +2402:bbc0::/32 +2402:bf80::/32 +2402:c280::/32 +2402:c3c0::/32 +2402:c5c0::/32 +2402:c9c0::/32 +2402:cbc0::/32 +2402:cc40::/32 +2402:cc80::/32 +2402:cf00::/32 +2402:cf40::/32 +2402:d040::/32 +2402:d140::/32 +2402:d2c0::/32 +2402:d300::/32 +2402:d340::/32 +2402:d380::/32 +2402:d5c0::/32 +2402:d6c0::/32 +2402:d740::/32 +2402:d780::/32 +2402:d880::/32 +2402:d980::/32 +2402:da40::/32 +2402:db40::/32 +2402:dcc0::/32 +2402:de40::/32 +2402:dec0::/32 +2402:df40::/32 +2402:dfc0::/32 +2402:e00::/32 +2402:e040::/32 +2402:e0c0::/32 +2402:e140::/32 +2402:e2c0::/32 +2402:e3c0::/32 +2402:e480::/32 +2402:e540::/32 +2402:e680::/32 +2402:e740::/32 +2402:e780::/32 +2402:e7c0::/32 +2402:e880::/32 +2402:e980::/32 +2402:eb80::/32 +2402:ec80::/32 +2402:ed80::/32 +2402:ef40::/32 +2402:ef80::/32 +2402:f000::/32 +2402:f140::/32 +2402:f340::/32 +2402:f3c0::/32 +2402:f480::/32 +2402:f540::/32 +2402:f580::/32 +2402:f740::/32 +2402:f780::/32 +2402:f8c0::/32 +2402:f980::/32 +2402:f9c0::/32 +2402:fac0::/32 +2402:fc0::/32 +2402:fcc0::/32 +2402:ff40::/32 +2402:ffc0::/32 +2403:1180::/32 +2403:1340::/32 +2403:1440::/32 +2403:1580::/32 +2403:16c0::/32 +2403:17c0::/32 +2403:1980::/32 +2403:1a40::/32 +2403:1b80::/32 +2403:1c80::/32 +2403:1d80::/32 +2403:1dc0::/32 +2403:1e80::/32 +2403:1ec0::/32 +2403:1f80::/32 +2403:2040::/32 +2403:2080::/32 +2403:2180::/32 +2403:2240::/32 +2403:2280::/32 +2403:2380::/32 +2403:2440::/32 +2403:24c0::/32 +2403:2580::/32 +2403:25c0::/32 +2403:2680::/32 +2403:26c0::/32 +2403:2740::/32 +2403:2780::/32 +2403:28c0::/32 +2403:2940::/32 +2403:2a00::/32 +2403:2a40::/32 +2403:2ac0::/32 +2403:2b40::/32 +2403:2bc0::/32 +2403:2cc0::/32 +2403:2f40::/32 +2403:2fc0::/32 +2403:3040::/32 +2403:30c0::/32 +2403:3140::/32 +2403:3280::/32 +2403:32c0::/32 +2403:3380::/32 +2403:3480::/32 +2403:3580::/32 +2403:3640::/32 +2403:3680::/32 +2403:36c0::/32 +2403:3740::/32 +2403:3780::/32 +2403:37c0::/32 +2403:3840::/32 +2403:3880::/32 +2403:38c0::/32 +2403:3940::/32 +2403:3980::/32 +2403:39c0::/32 +2403:3a40::/32 +2403:3b40::/32 +2403:3b80::/32 +2403:3bc0::/32 +2403:3c40::/32 +2403:3c80::/32 +2403:3cc0::/32 +2403:3d40::/32 +2403:3d80::/32 +2403:3dc0::/32 +2403:3e80::/32 +2403:3ec0::/32 +2403:3f40::/32 +2403:3f80::/32 +2403:4080::/32 +2403:4180::/32 +2403:4240::/32 +2403:4280::/32 +2403:4300::/32 +2403:4380::/32 +2403:4580::/32 +2403:4680::/32 +2403:4780::/32 +2403:4840::/32 +2403:4880::/32 +2403:4980::/32 +2403:4a40::/32 +2403:4a80::/32 +2403:4b40::/32 +2403:4b80::/32 +2403:4c80::/32 +2403:4cc0::/32 +2403:4d40::/32 +2403:4d80::/32 +2403:4ec0::/32 +2403:5040::/32 +2403:5080::/32 +2403:50c0::/32 +2403:5280::/32 +2403:5380::/32 +2403:54c0::/32 +2403:5540::/32 +2403:5580::/32 +2403:5640::/32 +2403:5780::/32 +2403:58c0::/32 +2403:5980::/32 +2403:5a80::/32 +2403:5b40::/32 +2403:5b80::/32 +2403:5c80::/32 +2403:5d80::/32 +2403:5e40::/32 +2403:5e80::/32 +2403:5ec0::/32 +2403:5f80::/32 +2403:5fc0::/32 +2403:600::/32 +2403:6080::/32 +2403:6180::/32 +2403:6280::/32 +2403:62c0::/32 +2403:6380::/32 +2403:6580::/32 +2403:6680::/32 +2403:6740::/32 +2403:6780::/32 +2403:6880::/32 +2403:6980::/32 +2403:6a00::/32 +2403:6c80::/32 +2403:6d40::/32 +2403:6d80::/32 +2403:6e80::/32 +2403:6f40::/32 +2403:6fc0::/32 +2403:700::/32 +2403:7040::/32 +2403:7080::/32 +2403:7180::/32 +2403:7280::/32 +2403:7380::/32 +2403:7480::/32 +2403:7540::/32 +2403:7580::/32 +2403:76c0::/32 +2403:7700::/32 +2403:7840::/32 +2403:78c0::/32 +2403:7a80::/32 +2403:7b00::/32 +2403:7c0::/32 +2403:7d80::/32 +2403:7e80::/32 +2403:7f80::/32 +2403:800::/31 +2403:8080::/32 +2403:8180::/32 +2403:8280::/32 +2403:8380::/32 +2403:83c0::/32 +2403:8480::/32 +2403:8580::/32 +2403:8880::/32 +2403:8900::/32 +2403:8980::/32 +2403:8a40::/32 +2403:8a80::/32 +2403:8b00::/32 +2403:8b80::/32 +2403:8c00::/32 +2403:8c80::/32 +2403:8d00::/32 +2403:8d80::/32 +2403:9080::/32 +2403:9180::/32 +2403:9280::/32 +2403:9380::/32 +2403:9480::/32 +2403:9580::/32 +2403:9680::/32 +2403:9780::/32 +2403:980::/32 +2403:9880::/32 +2403:9a80::/32 +2403:9ac0::/32 +2403:9b00::/32 +2403:9b40::/32 +2403:9b80::/32 +2403:9c80::/32 +2403:9d00::/32 +2403:9d80::/32 +2403:9e40::/32 +2403:9e80::/32 +2403:9ec0::/32 +2403:9f80::/32 +2403:a100::/32 +2403:a140::/32 +2403:a200::/32 +2403:a300::/32 +2403:a480::/32 +2403:a580::/32 +2403:a680::/32 +2403:a6c0::/32 +2403:a780::/32 +2403:a80::/32 +2403:a880::/32 +2403:a940::/32 +2403:a980::/32 +2403:a9c0::/32 +2403:aa40::/32 +2403:aa80::/32 +2403:ab80::/32 +2403:ac00::/32 +2403:af80::/32 +2403:b080::/32 +2403:b180::/32 +2403:b280::/32 +2403:b380::/32 +2403:b400::/32 +2403:b480::/32 +2403:b580::/32 +2403:b680::/32 +2403:b780::/32 +2403:b80::/32 +2403:b880::/32 +2403:b980::/32 +2403:ba40::/32 +2403:c040::/32 +2403:c080::/32 +2403:c100::/32 +2403:c140::/32 +2403:c180::/32 +2403:c3c0::/32 +2403:c440::/32 +2403:c480::/32 +2403:c4c0::/32 +2403:c80::/32 +2403:c980::/32 +2403:cdc0::/32 +2403:cec0::/32 +2403:cf80::/32 +2403:d080::/32 +2403:d180::/32 +2403:d280::/32 +2403:d2c0::/32 +2403:d380::/32 +2403:d400::/32 +2403:d40::/32 +2403:d440::/32 +2403:d480::/32 +2403:d580::/32 +2403:d680::/32 +2403:d780::/32 +2403:d7c0::/32 +2403:d80::/32 +2403:d880::/32 +2403:d980::/32 +2403:d9c0::/32 +2403:da80::/32 +2403:dac0::/32 +2403:db00::/32 +2403:db80::/32 +2403:dc80::/32 +2403:dd80::/32 +2403:de80::/32 +2403:df80::/32 +2403:e080::/32 +2403:e180::/32 +2403:e280::/32 +2403:e300::/32 +2403:e480::/32 +2403:e500::/32 +2403:e580::/32 +2403:e640::/32 +2403:e680::/32 +2403:e700::/32 +2403:e780::/32 +2403:e7c0::/32 +2403:e80::/32 +2403:e880::/32 +2403:e980::/32 +2403:ea80::/32 +2403:eac0::/32 +2403:eb80::/32 +2403:ec80::/32 +2403:ed00::/32 +2403:ed40::/32 +2403:ed80::/32 +2403:ee80::/32 +2403:ef80::/32 +2403:f00::/32 +2403:f080::/32 +2403:f100::/32 +2403:f180::/32 +2403:f240::/32 +2403:f280::/32 +2403:f300::/32 +2403:f380::/32 +2403:f40::/32 +2403:f4c0::/32 +2403:f580::/32 +2403:f740::/32 +2403:f80::/32 +2403:f8c0::/32 +2403:f980::/32 +2403:fb00::/32 +2403:fb80::/32 +2403:fc0::/32 +2403:fc40::/32 +2403:fe40::/32 +2403:fe80::/32 +2403:fec0::/32 +2403:ff80::/32 +2403:ffc0::/32 +2404:100::/32 +2404:1080::/32 +2404:10c0::/32 +2404:1180::/32 +2404:14c0::/32 +2404:158::/32 +2404:1880::/32 +2404:1c80::/32 +2404:1cc0::/32 +2404:1d80::/32 +2404:1e80::/32 +2404:1f40::/32 +2404:21c0::/32 +2404:240::/32 +2404:280::/32 +2404:30c0::/32 +2404:3140::/32 +2404:31c0::/32 +2404:3240::/32 +2404:32c0::/32 +2404:3300::/32 +2404:3340::/32 +2404:3480::/32 +2404:35c0::/32 +2404:3640::/32 +2404:36c0::/32 +2404:3700::/32 +2404:3740::/32 +2404:37c0::/32 +2404:3840::/32 +2404:3940::/32 +2404:3b00::/32 +2404:3bc0::/32 +2404:3c40::/32 +2404:3f40::/32 +2404:4080::/32 +2404:41c0::/32 +2404:440::/32 +2404:4540::/32 +2404:4740::/32 +2404:480::/32 +2404:4bc0::/32 +2404:4d00::/32 +2404:4dc0::/32 +2404:51c0::/32 +2404:5640::/32 +2404:5a80::/32 +2404:5b00::/32 +2404:5d00::/32 +2404:5e80::/32 +2404:6000::/32 +2404:6100::/32 +2404:6380::/32 +2404:6500::/32 +2404:65c0::/32 +2404:680::/32 +2404:6a40::/32 +2404:6f80::/32 +2404:7100::/32 +2404:7180::/32 +2404:71c0::/32 +2404:7240::/32 +2404:74c0::/32 +2404:7600::/32 +2404:7740::/32 +2404:7940::/32 +2404:7d00::/32 +2404:8040::/32 +2404:80c0::/32 +2404:8140::/32 +2404:81c0::/32 +2404:8480::/32 +2404:8580::/32 +2404:8700::/32 +2404:8880::/32 +2404:8a80::/32 +2404:8b00::/32 +2404:8dc0::/32 +2404:9340::/32 +2404:9b80::/32 +2404:9c80::/32 +2404:a000::/32 +2404:a080::/32 +2404:a0c0::/32 +2404:a180::/32 +2404:a240::/32 +2404:a740::/32 +2404:a80::/32 +2404:b100::/32 +2404:b340::/32 +2404:b3c0::/32 +2404:b440::/32 +2404:b4c0::/32 +2404:b80::/32 +2404:b900::/32 +2404:bbc0::/32 +2404:bc0::/32 +2404:bc40::/32 +2404:c1c0::/32 +2404:c240::/32 +2404:c2c0::/32 +2404:c300::/32 +2404:c3c0::/32 +2404:c40::/32 +2404:c440::/32 +2404:c4c0::/32 +2404:c540::/32 +2404:c5c0::/32 +2404:c640::/32 +2404:c940::/32 +2404:c9c0::/32 +2404:cd00::/32 +2404:d040::/32 +2404:d080::/32 +2404:d140::/32 +2404:d280::/32 +2404:d3c0::/32 +2404:d480::/32 +2404:d640::/32 +2404:d6c0::/32 +2404:d7c0::/32 +2404:d80::/32 +2404:d840::/32 +2404:dd80::/32 +2404:df00::/32 +2404:e280::/32 +2404:e540::/32 +2404:e5c0::/32 +2404:e780::/32 +2404:e880::/32 +2404:e8c0::/32 +2404:eb80::/32 +2404:ec40::/32 +2404:ecc0::/32 +2404:edc0::/32 +2404:f00::/32 +2404:f040::/32 +2404:f4c0::/32 +2404:f7c0::/32 +2404:f80::/32 +2405:1080::/32 +2405:1180::/32 +2405:1280::/32 +2405:1380::/32 +2405:1480::/32 +2405:1580::/32 +2405:1680::/32 +2405:18c0::/32 +2405:1c80::/32 +2405:1d80::/32 +2405:1e80::/32 +2405:1f80::/32 +2405:1fc0::/32 +2405:2080::/32 +2405:2180::/32 +2405:2280::/32 +2405:2340::/32 +2405:2380::/32 +2405:2480::/32 +2405:24c0::/32 +2405:2580::/32 +2405:2680::/32 +2405:2780::/32 +2405:2880::/32 +2405:2980::/32 +2405:2a80::/32 +2405:2b80::/32 +2405:2bc0::/32 +2405:2c80::/32 +2405:2d80::/32 +2405:2e80::/32 +2405:2ec0::/32 +2405:2f40::/32 +2405:2f80::/32 +2405:3140::/32 +2405:31c0::/32 +2405:37c0::/32 +2405:3880::/32 +2405:3980::/32 +2405:39c0::/32 +2405:3a80::/32 +2405:3ac0::/32 +2405:3b00::/32 +2405:3b80::/32 +2405:3bc0::/32 +2405:3c40::/32 +2405:3c80::/32 +2405:3d80::/32 +2405:3e80::/32 +2405:3f40::/32 +2405:3f80::/32 +2405:4080::/32 +2405:4140::/32 +2405:4180::/32 +2405:41c0::/32 +2405:4280::/32 +2405:4380::/32 +2405:4480::/32 +2405:44c0::/32 +2405:4540::/32 +2405:4580::/32 +2405:4680::/32 +2405:4780::/32 +2405:480::/32 +2405:4880::/32 +2405:4980::/32 +2405:4a80::/32 +2405:4b80::/32 +2405:4d40::/32 +2405:4e80::/32 +2405:4f80::/32 +2405:5080::/32 +2405:5180::/32 +2405:5240::/32 +2405:5280::/32 +2405:52c0::/32 +2405:5380::/32 +2405:5480::/32 +2405:5580::/32 +2405:5680::/32 +2405:5780::/32 +2405:57c0::/32 +2405:580::/32 +2405:5880::/32 +2405:5980::/32 +2405:5a80::/32 +2405:5b80::/32 +2405:5c80::/32 +2405:5cc0::/32 +2405:5d40::/32 +2405:5d80::/32 +2405:5dc0::/32 +2405:5e80::/32 +2405:5f80::/32 +2405:6080::/32 +2405:6180::/32 +2405:6200::/32 +2405:66c0::/32 +2405:680::/32 +2405:6880::/32 +2405:68c0::/32 +2405:6940::/32 +2405:69c0::/32 +2405:6a80::/32 +2405:6b80::/32 +2405:6c0::/32 +2405:6c80::/32 +2405:6d80::/32 +2405:6e80::/32 +2405:6f00::/32 +2405:6f80::/32 +2405:7040::/32 +2405:7080::/32 +2405:7180::/32 +2405:7240::/32 +2405:7280::/32 +2405:7380::/32 +2405:7480::/32 +2405:7580::/32 +2405:7680::/32 +2405:7780::/32 +2405:780::/32 +2405:7880::/32 +2405:78c0::/32 +2405:7980::/32 +2405:79c0::/32 +2405:7a80::/32 +2405:7b80::/32 +2405:7c80::/32 +2405:7d40::/32 +2405:7f40::/32 +2405:7fc0::/32 +2405:80::/32 +2405:8280::/32 +2405:8480::/32 +2405:84c0::/32 +2405:8580::/32 +2405:8680::/32 +2405:8780::/32 +2405:880::/32 +2405:8880::/32 +2405:8980::/32 +2405:8a40::/32 +2405:8a80::/32 +2405:8ac0::/32 +2405:8b80::/32 +2405:8c80::/32 +2405:8d80::/32 +2405:8e80::/32 +2405:8f40::/32 +2405:8f80::/32 +2405:9080::/32 +2405:9180::/32 +2405:9280::/32 +2405:9300::/32 +2405:9340::/32 +2405:9380::/32 +2405:93c0::/32 +2405:940::/32 +2405:9480::/32 +2405:94c0::/32 +2405:9580::/32 +2405:9680::/32 +2405:9700::/32 +2405:9780::/32 +2405:97c0::/32 +2405:980::/32 +2405:9880::/32 +2405:9900::/32 +2405:9980::/32 +2405:99c0::/32 +2405:9a80::/32 +2405:9b00::/32 +2405:9b80::/32 +2405:9bc0::/32 +2405:9c0::/32 +2405:9e00::/32 +2405:a240::/32 +2405:a3c0::/32 +2405:a500::/32 +2405:a680::/32 +2405:a80::/32 +2405:a900::/32 +2405:a980::/32 +2405:aa80::/32 +2405:ab00::/32 +2405:ad00::/32 +2405:af00::/32 +2405:b100::/32 +2405:b300::/32 +2405:b7c0::/32 +2405:b80::/32 +2405:b880::/32 +2405:b980::/32 +2405:bb00::/32 +2405:bd00::/32 +2405:bd80::/32 +2405:bdc0::/32 +2405:be80::/32 +2405:bf00::/32 +2405:c040::/32 +2405:c280::/32 +2405:c380::/32 +2405:c480::/32 +2405:c500::/32 +2405:c580::/32 +2405:c680::/32 +2405:c780::/32 +2405:c80::/32 +2405:c880::/32 +2405:c980::/32 +2405:ca80::/32 +2405:cb80::/32 +2405:cc80::/32 +2405:cd80::/32 +2405:ce80::/32 +2405:d280::/32 +2405:d4c0::/32 +2405:d700::/32 +2405:d740::/32 +2405:d80::/32 +2405:d900::/32 +2405:df40::/32 +2405:e000::/32 +2405:e040::/32 +2405:e1c0::/32 +2405:e600::/32 +2405:e80::/32 +2405:ed40::/32 +2405:ee80::/32 +2405:ef40::/30 +2405:f340::/32 +2405:f380::/32 +2405:f3c0::/32 +2405:f580::/32 +2405:f6c0::/32 +2405:f80::/32 +2405:f940::/32 +2405:fdc0::/32 +2405:fe80::/32 +2405:fec0::/32 +2405:ff80::/32 +2406:1080::/32 +2406:1100::/32 +2406:1180::/32 +2406:1280::/32 +2406:1380::/32 +2406:140::/32 +2406:1480::/32 +2406:1580::/32 +2406:15c0::/32 +2406:1680::/32 +2406:1780::/32 +2406:1880::/32 +2406:1980::/32 +2406:1a80::/32 +2406:1b80::/32 +2406:1c80::/32 +2406:1d80::/32 +2406:1e40::/32 +2406:1e80::/32 +2406:1f80::/32 +2406:2080::/32 +2406:2640::/32 +2406:2700::/32 +2406:2780::/32 +2406:280::/32 +2406:2880::/32 +2406:2980::/32 +2406:2a80::/32 +2406:2b80::/32 +2406:2c40::/32 +2406:2c80::/32 +2406:2d80::/32 +2406:2e80::/32 +2406:2f80::/32 +2406:3080::/32 +2406:3180::/32 +2406:31c0::/32 +2406:3280::/32 +2406:3300::/32 +2406:3340::/32 +2406:3380::/32 +2406:3440::/32 +2406:3480::/32 +2406:34c0::/32 +2406:3580::/32 +2406:3640::/32 +2406:3680::/32 +2406:3700::/32 +2406:3780::/32 +2406:3880::/32 +2406:3980::/32 +2406:39c0::/32 +2406:3ac0::/32 +2406:3d80::/32 +2406:3e80::/32 +2406:3f80::/32 +2406:4080::/32 +2406:40::/32 +2406:40c0::/32 +2406:4180::/32 +2406:4280::/32 +2406:42c0::/32 +2406:4340::/32 +2406:4380::/32 +2406:43c0::/32 +2406:440::/32 +2406:4480::/32 +2406:4500::/32 +2406:4680::/32 +2406:4b80::/32 +2406:4c0::/32 +2406:4c80::/32 +2406:4d00::/32 +2406:4d80::/32 +2406:4e80::/32 +2406:4f00::/32 +2406:4f80::/32 +2406:5080::/32 +2406:50c0::/32 +2406:5180::/32 +2406:5280::/32 +2406:52c0::/32 +2406:5340::/32 +2406:5380::/32 +2406:5480::/32 +2406:5580::/32 +2406:5680::/32 +2406:5780::/32 +2406:5840::/32 +2406:5880::/32 +2406:5940::/32 +2406:5980::/32 +2406:5a40::/32 +2406:5ac0::/32 +2406:5b40::/32 +2406:5d80::/32 +2406:5e80::/32 +2406:5f80::/32 +2406:6080::/32 +2406:6100::/32 +2406:6180::/32 +2406:61c0::/30 +2406:61c4::/30 +2406:6280::/32 +2406:6300::/32 +2406:6340::/32 +2406:6380::/32 +2406:6480::/32 +2406:6500::/32 +2406:6580::/32 +2406:65c0::/32 +2406:6640::/32 +2406:6680::/32 +2406:6780::/32 +2406:6880::/32 +2406:6980::/32 +2406:6a80::/32 +2406:6b80::/32 +2406:6bc0::/32 +2406:6c80::/32 +2406:6d80::/32 +2406:6e80::/32 +2406:6f80::/32 +2406:7080::/32 +2406:7280::/32 +2406:7380::/32 +2406:7480::/32 +2406:7580::/32 +2406:7680::/32 +2406:7780::/32 +2406:7880::/32 +2406:7980::/32 +2406:7a80::/32 +2406:7b80::/32 +2406:7c0::/32 +2406:7c80::/32 +2406:7cc0::/32 +2406:7d00::/32 +2406:7d80::/32 +2406:7e80::/32 +2406:7f80::/32 +2406:7fc0::/32 +2406:8080::/32 +2406:80::/32 +2406:8180::/32 +2406:8280::/32 +2406:8380::/32 +2406:840::/32 +2406:8480::/32 +2406:8500::/32 +2406:8580::/32 +2406:8780::/32 +2406:880::/32 +2406:8880::/32 +2406:8980::/32 +2406:8a80::/32 +2406:8b80::/32 +2406:8c0::/32 +2406:8c80::/32 +2406:8d80::/32 +2406:8e80::/32 +2406:8f40::/32 +2406:8f80::/32 +2406:9180::/32 +2406:9200::/32 +2406:9280::/32 +2406:9380::/32 +2406:9480::/32 +2406:94c0::/32 +2406:9780::/32 +2406:9c0::/32 +2406:9d80::/32 +2406:9e40::/32 +2406:9e80::/32 +2406:9f80::/32 +2406:a080::/32 +2406:a180::/32 +2406:a280::/32 +2406:a380::/32 +2406:a480::/32 +2406:a580::/32 +2406:a680::/32 +2406:a780::/32 +2406:a7c0::/32 +2406:a880::/32 +2406:a8c0::/32 +2406:a980::/32 +2406:aa80::/32 +2406:aac0::/32 +2406:ab80::/32 +2406:ac80::/32 +2406:acc0::/32 +2406:ad40::/32 +2406:ad80::/32 +2406:ae80::/32 +2406:af80::/32 +2406:b080::/32 +2406:b640::/32 +2406:b880::/32 +2406:b980::/32 +2406:ba80::/32 +2406:bb80::/32 +2406:bc80::/32 +2406:bd40::/32 +2406:bd80::/32 +2406:bdc0::/32 +2406:be80::/32 +2406:bf80::/32 +2406:c080::/32 +2406:c0::/32 +2406:c180::/32 +2406:c280::/32 +2406:c340::/32 +2406:c480::/32 +2406:c580::/32 +2406:c680::/32 +2406:c780::/32 +2406:c880::/32 +2406:c900::/32 +2406:c980::/32 +2406:ca80::/32 +2406:cac0::/32 +2406:cb80::/32 +2406:cc80::/32 +2406:cd80::/32 +2406:ce80::/32 +2406:cf00::/32 +2406:cf01::/32 +2406:cf02::/31 +2406:cf80::/32 +2406:d080::/32 +2406:d140::/32 +2406:d180::/32 +2406:d280::/32 +2406:d2c0::/32 +2406:d380::/32 +2406:d440::/32 +2406:d480::/32 +2406:d580::/32 +2406:d680::/32 +2406:d780::/32 +2406:d80::/32 +2406:d880::/32 +2406:d980::/32 +2406:db80::/32 +2406:dc80::/32 +2406:dd00::/32 +2406:dd80::/32 +2406:de80::/32 +2406:df80::/32 +2406:e080::/32 +2406:e180::/32 +2406:e2c0::/32 +2406:e380::/32 +2406:e3c0::/32 +2406:e500::/32 +2406:e580::/32 +2406:e680::/32 +2406:e780::/32 +2406:e80::/32 +2406:e8c0::/32 +2406:ea40::/28 +2406:f280::/32 +2406:f300::/32 +2406:f4c0::/32 +2406:f7c0::/32 +2406:f80::/32 +2406:f980::/32 +2406:fc80::/32 +2406:fd80::/32 +2406:fe80::/32 +2406:ff00::/32 +2407:1180::/32 +2407:17c0::/32 +2407:1900::/32 +2407:1d00::/32 +2407:1e80::/32 +2407:2280::/32 +2407:2380::/32 +2407:23c0::/32 +2407:2440::/32 +2407:2780::/32 +2407:2840::/32 +2407:2ac0::/32 +2407:31c0::/32 +2407:3340::/32 +2407:3540::/32 +2407:3700::/32 +2407:3740::/32 +2407:37c0::/32 +2407:3900::/32 +2407:3f40::/32 +2407:43c0::/32 +2407:4440::/32 +2407:4580::/32 +2407:4680::/32 +2407:4740::/32 +2407:480::/32 +2407:4880::/32 +2407:4980::/32 +2407:4a80::/32 +2407:4c80::/32 +2407:4d80::/32 +2407:4e80::/32 +2407:4f00::/32 +2407:5380::/32 +2407:53c0::/32 +2407:5500::/32 +2407:5780::/32 +2407:580::/32 +2407:5840::/32 +2407:6040::/32 +2407:6580::/32 +2407:6c40::/32 +2407:7680::/32 +2407:7780::/32 +2407:7880::/32 +2407:7980::/32 +2407:7c80::/32 +2407:7d00::/32 +2407:7d80::/32 +2407:7e80::/32 +2407:8880::/32 +2407:8b80::/32 +2407:8f40::/32 +2407:9080::/32 +2407:9180::/32 +2407:94c0::/32 +2407:9680::/32 +2407:9980::/32 +2407:9b40::/32 +2407:9bc0::/32 +2407:9f00::/32 +2407:9f80::/32 +2407:a040::/32 +2407:a640::/32 +2407:a7c0::/32 +2407:a880::/32 +2407:a940::/32 +2407:ad80::/32 +2407:ae80::/32 +2407:af80::/32 +2407:b080::/32 +2407:b180::/32 +2407:b280::/32 +2407:b380::/32 +2407:b580::/32 +2407:b680::/32 +2407:b780::/32 +2407:b880::/32 +2407:b980::/32 +2407:ba00::/32 +2407:ba80::/32 +2407:bb80::/32 +2407:bc00::/32 +2407:bc80::/32 +2407:bd80::/32 +2407:bdc0::/32 +2407:be80::/32 +2407:bf80::/32 +2407:c080::/32 +2407:c380::/32 +2407:c400::/32 +2407:c480::/32 +2407:c580::/32 +2407:c680::/32 +2407:c780::/32 +2407:c880::/32 +2407:c900::/32 +2407:c980::/32 +2407:cb80::/32 +2407:cc0::/32 +2407:cc80::/32 +2407:cd80::/32 +2407:ce80::/32 +2407:cf00::/32 +2407:cf80::/32 +2407:d480::/32 +2407:d580::/32 +2407:d680::/32 +2407:d780::/32 +2407:d7c0::/32 +2407:d880::/32 +2407:d8c0::/32 +2407:d980::/32 +2407:d9c0::/32 +2407:da80::/32 +2407:db80::/32 +2407:dc80::/32 +2407:dd80::/32 +2407:de80::/32 +2407:df80::/32 +2407:dfc0::/32 +2407:e080::/32 +2407:e180::/32 +2407:e280::/32 +2407:e380::/32 +2407:e480::/32 +2407:e580::/32 +2407:e680::/32 +2407:e780::/32 +2407:e800::/32 +2407:ea80::/32 +2407:eb80::/32 +2407:ec40::/32 +2407:ec80::/32 +2407:ecc0::/32 +2407:ed80::/32 +2407:ee80::/32 +2407:ef80::/32 +2407:f080::/32 +2407:f180::/32 +2407:f280::/32 +2407:f380::/32 +2407:f40::/32 +2407:f480::/32 +2407:f580::/32 +2407:f680::/32 +2407:f780::/32 +2407:f880::/32 +2407:f980::/32 +2407:fa80::/32 +2407:fb80::/32 +2407:fc80::/32 +2407:fd80::/32 +2408:4000::/22 +2408:6000::/24 +2408:8000::/22 +2408:8400::/22 +2408:8800::/21 +2409:2000::/21 +2409:6000::/20 +2409:8000::/20 +240a:2000::/24 +240a:4000::/21 +240a:6000::/24 +240a:8000::/21 +240a:a000::/20 +240a:c000::/20 +240b:2000::/22 +240b:8000::/21 +240c:4000::/22 +240c:8000::/21 +240c::/28 +240c:c000::/20 +240d:4000::/21 +240d:8000::/24 +240e:1000::/20 +240e:100::/24 +240e:2000::/19 +240e:200::/23 +240e:400::/22 +240e:800::/21 +240e::/24 +240f:4000::/24 +240f:8000::/24 +240f:c000::/24 diff --git a/luci-app-passwall/root/usr/share/passwall/rules/direct_host b/luci-app-passwall/root/usr/share/passwall/rules/direct_host new file mode 100644 index 000000000..a8c4b370f --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/direct_host @@ -0,0 +1,27 @@ +apple.com +microsoft.com +dyndns.com +douyucdn.cn +douyucdn2.cn + +#steam +steamcontent.com +dl.steam.clngaa.com +dl.steam.ksyna.com +st.dl.bscstorage.net +st.dl.eccdnx.com +st.dl.pinyuncloud.com +cdn.mileweb.cs.steampowered.com.8686c.com +cdn-ws.content.steamchina.com +cdn-qc.content.steamchina.com +cdn-ali.content.steamchina.com +epicgames-download1-1251447533.file.myqcloud.com + +# Synology ddns +account.synology.com +checkip.dyndns.org +checkip.synology.com +checkipv6.dyndns.org +checkipv6.synology.com +checkport.synology.com +ddns.synology.com diff --git a/luci-app-passwall/root/usr/share/passwall/rules/direct_ip b/luci-app-passwall/root/usr/share/passwall/rules/direct_ip new file mode 100644 index 000000000..90293cda6 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/direct_ip @@ -0,0 +1,6 @@ +114.114.114.114 +114.114.115.115 +223.5.5.5 +223.6.6.6 +119.29.29.29 +180.76.76.76 diff --git a/luci-app-passwall/root/usr/share/passwall/rules/domains_excluded b/luci-app-passwall/root/usr/share/passwall/rules/domains_excluded new file mode 100644 index 000000000..1346a4f9f --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/domains_excluded @@ -0,0 +1,24 @@ +courier.push.apple.com +rbsxbxp-mim.vivox.com +rbsxbxp.www.vivox.com +rbsxbxp-ws.vivox.com +rbspsxp.www.vivox.com +rbspsxp-mim.vivox.com +rbspsxp-ws.vivox.com +rbswxp.www.vivox.com +rbswxp-mim.vivox.com +disp-rbspsp-5-1.vivox.com +disp-rbsxbp-5-1.vivox.com +proxy.rbsxbp.vivox.com +proxy.rbspsp.vivox.com +proxy.rbswp.vivox.com +rbswp.vivox.com +rbsxbp.vivox.com +rbspsp.vivox.com +rbspsp.www.vivox.com +rbswp.www.vivox.com +rbsxbp.www.vivox.com +rbsxbxp.vivox.com +rbspsxp.vivox.com +rbswxp.vivox.com +Mijia Cloud diff --git a/luci-app-passwall/root/usr/share/passwall/rules/gfwlist b/luci-app-passwall/root/usr/share/passwall/rules/gfwlist new file mode 100644 index 000000000..23806297a --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/gfwlist @@ -0,0 +1,12219 @@ +01.org +0emm.com +0plkijj.vip +0x0.st +100beatscheap.com +100classicbooks.com +1010.com.hk +10xfotolia.com +112263.com +114av.xyz +123-hp.com +123hplaserjet.com +128100.xyz +12diasdepresentesdeitunes.com +12diasderegalosdeitunes.cl +12diasderegalosdeitunes.co +12diasderegalosdeitunes.co.cr +12diasderegalosdeitunes.co.ni +12diasderegalosdeitunes.co.ve +12diasderegalosdeitunes.com +12diasderegalosdeitunes.com.co +12diasderegalosdeitunes.com.hn +12diasderegalosdeitunes.com.ni +12diasderegalosdeitunes.com.ve +12diasderegalosdeitunes.cr +12diasderegalosdeitunes.gt +12diasderegalosdeitunes.hn +12diasderegalosdeitunes.pe +12joursdecadeauxdeitunes.com +1337x.gd +1337x.is +1337x.st +1337x.to +1337x.tw +1337xto.to +1337xx.to +16fhgdty.xyz +177picyy.com +18comic.org +18novel.xyz +18p2p.com +1degree.com.au +1drv.com +1drv.ms +1e100.net +1jjdg2.vip +1jsa22.vip +1monsterbeatsbydreus.com +1pondo.tv +1to1computing.com.au +1to1conference.com.au +1ucrs.com +2013beatsbydrdreonline.com +2013beatsbydrdreshop.com +2013beatsbydreshop.com +2013beatshdcybermonday.com +2013cheapestbeats.com +2013newbeatsworld.com +2013pascherbeatsbydre.com +2014cheapbeatsbydre.com +20thcenturystudios.com.au +20thcenturystudios.com.br +20thcenturystudios.jp +21centuryaccess.com +2beatsdre.com +2buybeatsbydre.com +2ch.net +2drdrebeats.com +2k.com +2kcoretech.online +2kgames.com +2mdn.net +2o7.net +40shopping.com +466453.com +47gyosei.jp +47news.jp +4beatsbydre.com +4cdn.org +4chan.org +4channel.org +4ebaytraders.com +4gtv.tv +4myminicard.com +51dh.site +520aa.tv +5278.cc +52hyse.com +53world.com +53worldsweeps.com +54647.global +54647.io +54647.online +5beatsbydre.com +5ch.net +5i01.com +5lml.com +69story.com +69vj.com +721av.com +7mm.tv +8008206616.com +85tube.com +881903.com +8muses.com +90seconds.asia +91.51rmc.com +91porn.com +920share.com +928.plus +9anime.cz +9anime.id +9anime.to +9anime.ws +9cdn.net +9nation.com.au +9news.com.au +9now.com.au +9to5google.com +9to5mac.com +9to5terminal.com +9to5toys.com +a-hentai.tv +a.91gay.me +a.kslive.tv +a0pple.net +a2z.com +aaagradeheadphones.com +aacrjournals.org +aaex.uk +aanaan.com +aapl.tw +aavs.xyz +abc-studios.com +abc.com +abc.xyz +abcheadphones.com +abeatsbydrdre.com +abema.io +abema.tv +abematv.akamaized.net +aboutamazon.co.uk +aboutamazon.com +aboutamazon.com.au +aboutamazon.de +aboutamazon.es +aboutamazon.eu +aboutamazon.fr +aboutamazon.in +aboutamazon.it +aboutamazon.jp +aboutamazon.pl +aboutfacebook.com +aboutmcdonalds.com +aboutyourmini.com +abow.jp +ac-pocketcamp.com +academic.eb.com +academynetriders.com +accbusiness.com +accessfacebookfromschool.com +account-paypal.info +account-paypal.net +account-paypal.org +accountkit.com +accountpaypal.com +accountpaypal.net +accountpaypal.org +accuweather.com +acebooik.com +acebook.com +acer-group.com +acer.com +achat-followers-instagram.com +acheter-followers-instagram.com +acheterdesfollowersinstagram.com +acheterfollowersinstagram.com +achievementanalytics.com +aclweb.org +acm.org +acmvalidations.com +acmvalidationsaws.com +acpica.com +acrobat.com +acs.org +activelearnprimary.co.uk +activelearnprimary.com.au +activeteachonline.com +adaptivecards.io +adbecrsl.com +adblockplus.org +adcommerce.tv +addison-wesley.ch +addthis.com +addthiscdn.com +addthisedge.com +addtoany.com +adelaidenow.com.au +adgoogle.net +adguard-vpn.com +adguard.com +adhelpnews.com +adidas.at +adidas.be +adidas.ch +adidas.co.in +adidas.co.uk +adidas.com +adidas.com.sa +adidas.com.tw +adidas.cz +adidas.de +adidas.dk +adidas.hu +adidas.ie +adidas.it +adidas.nl +adidas.pl +adidas.ru +adidas.se +admeld.com +admob.com +adobe-aemassets-value.com +adobe-audience-finder.com +adobe-video-partner-finder.com +adobe.com +adobe.io +adobe.ly +adobeaemcloud.com +adobeaemcloud.net +adobeawards.com +adobecc.com +adobecce.com +adobeccstatic.com +adobecontent.io +adobecreativityawards.com +adobedc.net +adobedemo.com +adobedtm.com +adobeexchange.com +adobeexperienceawards.com +adobegov.com +adobehiddentreasures.com +adobejanus.com +adobeku.com +adobelanding.com +adobelogin.com +adobeoobe.com +adobeplatinumclub.com +adobepress.ch +adobeprojectm.com +adobesc.com +adobesign.com +adobesigncdn.com +adobespark.com +adobess.com +adobestock.com +adobetag.com +adobetarget.com +adobetcstrialdvd.com +adobetechcomm.com +adobetechcommcallback.com +adobetechcommdemo.com +adobexdplatform.com +ads-twitter.com +ads.pubmatic.com +ads.yahoo.com +adsense.com +adsensecustomsearchads.com +adsenseformobileapps.com +advancediddetection.com +adventuresbydisney.com +advertisercommunity.com +advertiserscommunity.com +adwords-community.com +adwords.com +adwordsexpress.com +adx.promo +aeasyshop.com +aerogard.com.au +aerogardcn.com +aesworkshops.com +afewmomentswith.com +afp.com +afpforum.com +agendaweek.com +agu.org +agzy1.com +ahegao.online +ahmia.fi +aiaa.org +aiasahi.jp +aibaobei.me +aimei133.com +aimsciences.org +air-nike-shoes.com +air-watch.com +airav.cc +airgonetworks.com +airhorn.solutions +airhornbot.com +airiti.com +airitilibrary.com +airmax360.com +airmay.com +airport-gov-cn.com +airport.brussels +airport.com +airport.eu +airsupportapp.com +airtunes.com +airtunes.info +airtunes.net +airwatchexpress.com +airwatchqa.com +airwick.at +airwick.be +airwick.ca +airwick.ch +airwick.cl +airwick.co.in +airwick.co.nz +airwick.co.uk +airwick.co.za +airwick.com +airwick.com.au +airwick.com.br +airwick.com.mx +airwick.com.tr +airwick.cz +airwick.de +airwick.dk +airwick.es +airwick.fi +airwick.fr +airwick.hr +airwick.hu +airwick.ie +airwick.it +airwick.jp +airwick.net +airwick.nl +airwick.no +airwick.pl +airwick.pt +airwick.ro +airwick.ru +airwick.se +airwick.si +airwick.sk +airwick.tv +airwick.us +airwickarabia.com +aiv-cdn.net +ajplus.net +ajtalk.com +ak1.net +aka-ai.com +aka-ai.net +aka.ms +akacrypto.net +akadeem.net +akadns.com +akadns6.net +akaeai.com +akafms.net +akahost.net +akaint.net +akam.net +akamaa.com +akamah.com +akamai-access.com +akamai-access.net +akamai-cdn.com +akamai-platform-internal.net +akamai-platform-staging.com +akamai-platform.net +akamai-regression.net +akamai-staging.net +akamai-sucks.net +akamai-thailand.com +akamai-thailand.net +akamai-trials.com +akamai.co.kr +akamai.com +akamai.net +akamaientrypoint.net +akamaietpcnctest.com +akamaietpcompromisedcnctest.com +akamaietpcompromisedmalwaretest.com +akamaietpmalwaretest.com +akamaietpphishingtest.com +akamaihd-staging.net +akamaihd.com +akamaihd.net +akamaimagicmath.net +akamainewzealand.com +akamaiphillipines.com +akamaiphillipines.net +akamaisingapore.net +akamaitech.com +akamaitech.net +akamaitechnologies.com +akamaitechnologies.net +akamaized-staging.net +akamaized.net +akamaizercentral.com +akamak.com +akamam.com +akamci.com +akami.com +akami.net +akamii.com +akamqi.com +akasha.world +akastream.com +akastream.net +akatns.net +albeats.com +alchemysynth.com +alexa.com +alexanderstreet.com +alfera.com.hk +alfera.com.my +alfera.in +alfera.my +alibabacloud.co.in +alibabacloud.com +alibabacloud.com.au +alibabacloud.com.hk +alibabacloud.com.my +alibabacloud.com.sg +alibabacloud.com.tw +alicloud.com +aliveipc.com +aliveitsm.com +aliveprofiler.com +alivercm.com +aliverewind.com +alivertsm.com +alivevm.com +alivevmax.com +alivevue.com +aljazeera.com +aljazeera.net +alphabet.asia +alphabet.at +alphabet.be +alphabet.biz +alphabet.ch +alphabet.co.hu +alphabet.co.uk +alphabet.co.za +alphabet.com +alphabet.com.es +alphabet.com.lv +alphabet.com.mx +alphabet.com.pl +alphabet.com.pt +alphabet.cz +alphabet.de +alphabet.es +alphabet.eu +alphabet.fr +alphabet.info +alphabet.jp +alphabet.lt +alphabet.lu +alphabet.lv +alphabet.mx +alphabet.no +alphabet.org.uk +alphabet.pl +alphabet.pt +alphabet.uk +alphabet.us +alphabetfinance.net +alphera-finance.co.in +alphera-finance.com.hk +alphera-finance.in +alphera.ca +alphera.co.in +alphera.co.nz +alphera.com +alphera.com.es +alphera.com.hk +alphera.com.my +alphera.de +alphera.es +alphera.ie +alphera.in +alphera.my +alphera.net +alpherafinance.com.hk +alpherafinancialservices.es +alpherafinancialservices.in +alpherafs.ca +alpherafs.co.nz +alpherafs.com.hk +alpherafs.com.my +alpherafs.ie +alpherafs.in +alpherafs.my +alpinelinux.org +altera.com +alteraforum.com +alteraforums.com +alteraforums.net +alterauserforum.com +alterauserforum.net +alterauserforums.com +alterauserforums.net +altmetric.com +am730.com.hk +amaaozn.com +amamanualofstyle.com +amazon-adsystem.com +amazon-fashions.com +amazon-jp-recruiting.com +amazon-lantern.com +amazon-launchpad.com +amazon.ae +amazon.ca +amazon.co.jp +amazon.co.uk +amazon.com +amazon.com.au +amazon.com.br +amazon.com.mx +amazon.com.tr +amazon.de +amazon.es +amazon.fr +amazon.in +amazon.it +amazon.jobs +amazon.jp +amazon.nl +amazon.red +amazon.sg +amazonalexavoxcon.com +amazonauthorinsights.com +amazonaws-china.com +amazonaws.co.uk +amazonaws.com +amazonaws.tv +amazonbusiness.org +amazonbusinessblog.com +amazondevicesupport.com +amazonfctours.com +amazonianblog.com +amazonimages.com +amazonlaunchpad.com +amazonliterarypartnership.com +amazonlumberyard.wang +amazonpay.com +amazonpay.in +amazonprimevideos.com +amazonsdi.com +amazonstudiosguilds.com +amazontrust.com +amazonvideo.cc +amazonvideo.com +amazonvideodirect.com +amazonworkdocs.com +amd.com +amdfanstore.com +amdigital.co.uk +ameba.jp +amebame.com +amebaownd.com +amebaowndme.com +ameblo.jp +americasvoice.news +amerikaninsesi.com +amerikaninsesi.org +amerikaovozi.com +amerikayidzayn.com +amerikiskhma.com +amiibo.com +amlg.io +amp.akamaized.net +amp.dev +amplifyapp.com +amplifyframework.com +ampproject.com +ampproject.net +ampproject.org +ams.org +ams02.space +amytele.com +amzn.com +amzn.to +amznl.com +anaconda.cloud +anaconda.com +anaconda.org +analytictech.com +anandtech.com +anatomy.tv +anb.org +android.com +androidify.com +andysparis.com +anfutong.com +angelbeats.jp +angle.com.tw +angulardart.org +anidom.com +anigema.jp +animedao-tv.com +animeidhentai.com +animezilla.com +ankarazirvesi2018.com +anm.co.uk +annstores.net +annualreviews.org +anthemgame.com +anthemthegame.com +ao3.org +aokwholesale.net +aomedia.org +aorus.com +ap.org +ap0le.com +apa.org +apache.org +apexlegends.com +apexprint.com.hk +api-extractor.com +api-p.videomarket.jp +api-priconne-redive.cygames.jp +api.ai +api.news +api.viu.now.com +apibay.org +apigee.com +apisof.net +apkmirror.com +apkpure.com +aple.com +aplestore.com +aplleipods.com +apnews.com +apole.com +app-dynamics.com +app-measurement.com +app-store.wang +app0le.com +appbridge.ca +appbridge.io +appbridge.it +appcenter.ms +appcloud.com +appdomain.cloud +appdynamics.co.uk +appdynamics.com +appdynamics.de +appdynamics.fr +appdynamics.info +appdynamics.jp +appdynamics.org +appe-store.com +appexchange.com +appl-e.com +appl.com +appl4e.com +appla.com +apple-cloudkit.com +apple-darwin.com +apple-darwin.net +apple-darwin.org +apple-dns.com +apple-dns.net +apple-enews.com +apple-expo.com +apple-expo.eu +apple-hk.com +apple-imac.com +apple-inc.net +apple-livephotoskit.com +apple-mapkit.com +apple-online.com +apple-pay.com +apple-pay.rs +apple-pay.wang +apple-store.net +apple-store.wang +apple-usa.net +apple-watch.com.ru +apple.ae +apple.at +apple.be +apple.bg +apple.bs +apple.ca +apple.ch +apple.cl +apple.cm +apple.co +apple.co.cr +apple.co.hu +apple.co.jp +apple.co.kr +apple.co.mz +apple.co.nz +apple.co.th +apple.co.uk +apple.cz +apple.de +apple.dk +apple.ee +apple.es +apple.eu +apple.fi +apple.fr +apple.hamburg +apple.hn +apple.hr +apple.hu +apple.ie +apple.in +apple.is +apple.it +apple.jo +apple.jp +apple.kr +apple.lk +apple.lt +apple.lv +apple.me +apple.my +apple.net +apple.net.gr +apple.news +apple.nl +apple.no +apple.pk +apple.pl +apple.pt +apple.ro +apple.rs +apple.ru +apple.sa +apple.se +apple.sg +apple.si +apple.sk +apple.so +apple.tt +apple.tw +apple.uk +apple.us +apple.xn--czr694b +apple.xn--fiqs8s +apple.xyz +appleaccount.net +appleafrica.com +appleantilles.com +appleappstore.net +appleappstore.tv +appleaustralia.com +appleaustralia.com.au +appleaustralia.net.au +applebk.net +applecarbon.com +applecard.tv +applecare.berlin +applecare.cc +applecare.eu +applecare.hamburg +applecare.wang +applecensorship.com +applecentar.co.rs +applecentar.rs +applecentre.com.au +applecentre.info +appleclassicipod.com +appleclub.com.hk +applecom.com +applecomputer-imac.com +applecomputer.co.in +applecomputer.co.nz +applecomputer.com +applecomputer.com.hk +applecomputer.com.tw +applecomputer.hu +applecomputer.kr +applecomputerimac.com +applecomputerinc.info +applecomputers.co.nz +applecoronavirus.com +appledaily.com +appledaily.com.hk +appledaily.com.tw +appledaily.hk +appledarwin.com +appledarwin.net +appleenews.com +appleexpo.eu +appleexpo.info +applefilmaker.com +applefilmmaker.com +applefinalcutproworld.com +applefinalcutproworld.net +applefinalcutproworld.org +applefruity.com +applehealth.com.hk +applehongkong.com +applehongkong.com.hk +appleid-applemx.com +appleid-applemx.us +appleid-iclou.com +appleid-uk.us +appleid.berlin +appleid.com +appleid.hamburg +appleid.hk +appleimac.com +appleinclegal.com +appleinsider.com +appleiphone.hu +appleiphone.net +appleiphonecell.com +appleipodsettlement.com +appleiservices.com +applelink.com +applemagickeyboard.com +applemalaysia.com.my +applemasters.info +applemusic.berlin +applemusic.co +applemusic.com +applemusic.com.au +applemusic.hamburg +applemusic.wang +applemusicconnect.com +applemusicfestival.com +applemx-icloud.com +applenews.berlin +applenews.hamburg +applenews.tv +applenewsformat.com +appleone.audio +appleone.blog +appleone.chat +appleone.cloud +appleone.club +appleone.community +appleone.film +appleone.guide +appleone.host +appleone.space +appleone.tech +appleone.website +appleonline.com +appleonline.net +appleoriginalproductions.com +appleos.tv +applepay.berlin +applepay.co.rs +applepay.com.tw +applepay.hamburg +applepay.hk +applepay.info +applepay.jp +applepay.rs +applepay.tv +applepaycash.net +applepaycash.tv +applepaymerchantsupplies.info +applepaysupplies.berlin +applepaysupplies.com +applepaysupplies.info +applepaysupplies.net +applepaysupplies.tv +applepencil.net +applepodcasts.com +applepremiumreseller.com.au +applepremiumresellers.com.au +applereach.com +applereach.net +apples-msk.ru +applescreensavers.com +applescript.info +appleshare.info +appleshop.co.uk +applestor.com +applestore.bg +applestore.cc +applestore.ch +applestore.cm +applestore.co.hu +applestore.co.jp +applestore.co.ug +applestore.co.uk +applestore.com +applestore.com.au +applestore.com.bn +applestore.com.ee +applestore.com.eg +applestore.com.gr +applestore.com.hk +applestore.com.hr +applestore.com.jo +applestore.com.my +applestore.com.ph +applestore.com.pl +applestore.com.pt +applestore.com.ro +applestore.com.ru +applestore.com.sn +applestore.com.tw +applestore.de +applestore.hk +applestore.kr +applestore.me +applestore.net +applestore.net.gr +applestore.ph +applestore.qa +applestore.sg +applestore.wang +applestoreonline.com +applestorepro.eu +applesurveys.com +appleswift.com +appletaiwan.com +appletips.net +appletv.com +appletv.fr +appletv.wang +appletvapp.apple +applewallet.com +applewallet.tv +applewatch.hk +applewatch.tv +applewatch.tw +applewatch.wang +applewatchedition.com +applewatchseries3.net +applewatchsport.com +appleweb.net +appleworldwidedeveloper.hb-api.omtrdc.net +appleworldwidedeveloper.sc.omtrdc.net +applexpo.net +applezh.com +applf.com +applfe.com +applicationinsights.io +applicationinsights.net +applle.com +applw.com +appmediagroup.com +approvedusedbmw.com +appsonebay.net +appspot.com +appsto.re +appstore.co.id +appstore.hk +appstore.my +appstore.ph +appule.com +appye.com +apress.com +aps.org +aptoide.com +apture.com +apyle.com +arabidopsis.org +aranzadi.es +arcgis.com +arcgisonline.com +archive.org +archiveofourown.com +archiveofourown.net +archiveofourown.org +archlinux.org +archlinuxarm.org +area120.com +arewereadyyet.com +areyoucreditwise.com +aria.ms +ark.to +arphic.com +arphic.com.cn +arphic.com.tw +artstation.com +artstationmedia.com +artstor.org +arxiv.org +as-hp.ca +asagaku.com +asahi.com +asahicom.jp +asahishimbun.sc.omtrdc.net +asakonet.co.jp +ascelibrary.org +asebay.com +asha.org +asianpornmovies.com +askfacebook.net +askfacebook.org +askubuntu.com +asm.org +asme.org +asminternational.org +asn-online.org +asp-cc.com +asp.net +aspbjournals.org +aspenpublishing.com +aspnetcdn.com +asproex.com +asproexapi.com +assetsadobe.com +assistirhentai.com +associates-amazon.com +assylum.com +astm.org +asto.re +asus.com +atandt.com +atdmt2.com +ateam-oracle.com +atlantaminidealers.com +atlasdmt.com +atlasonepoint.com +atlassian.com +atnext.com +atom.io +atscaleconference.com +att-bundles.com +att-idns.net +att-japan.com +att-mail.com +att-promotions.com +att-rsvp.com +att.com +att.jobs +att.net +att.tv +attalascom.com +attbelieves.com +attbusiness.net +attcenter.com +attcollaborate.com +attdns.com +attdns.net +attexperts.com +attglobal.net +attic.io +attinnovationspace.com +attinternetservice.com +attjoy.com +attnetclient.com +attonlineoffers.com +attproxy.com +attpublicpolicy.com +attpurchasing.com +attsavings.com +attspecial.com +attssl.com +attstadium.com +attsuppliers.com +atttvnow.com +attuverseoffers.com +attuverseonline.com +attvoip.com +attwatchtv.com +attwifi.com +attwirelessinternet.com +attwirelessonline.com +attwirelesssolutions.com +atypi.org +aucheapbeats.com +audible.com +audiencenetwork.com +audiencenetwork.tv +audio-ak-spotify-com.akamaized.net +audiobeatsau.com +audiobeatsbydre.com +audiomonsterbeatsonline.com +auricularemonsterbeats.com +auricularesbeatsbaratosshop.com +auricularesbeatsmarkt.com +ausbeatsbydrdre.com +authorxml.com +authy.com +autodesk.com +autodraw.com +automobile.fr +av01.tv +av1688.cc +av6k.com +avatargarenanow-a.akamaihd.net +avbebe.com +avfox.cc +avgle.com +avh.world +avinetworks.com +avinin.com +avmoo.casa +avmoo.com +avmoo.cyou +avn.com +avpanda.cc +avsee01.tv +avseesee.com +avsforum.com +avxde.org +avxhm.is +avxhm.se +avxlive.icu +awayoutgame.com +aweencore.com +awetv.com +aws-iot-hackathon.com +awsautopilot.com +awsautoscaling.com +awsbraket.com +awscommandlineinterface.com +awsedstart.com +awseducate.com +awseducate.net +awseducate.org +awsloft-johannesburg.com +awsloft-stockholm.com +awssecworkshops.com +awsstatic.com +awsthinkbox.com +awstrust.com +axios.com +ayudanintendo.com +azadiradio.com +azadliq.org +azathabar.com +azatliq.org +azattyk.org +azattyq.org +azatutyun.am +aznude.com +azure-dns.com +azure-dns.info +azure-dns.net +azure-dns.org +azure-mobile.net +azure-sphere.com +azure-test.net +azure.com +azure.microsoft.com +azure.net +azurecomcdn.net +azurecontainer.io +azurecosmos.net +azurecosmosdb.com +azurecosmosdb.info +azurecosmosdb.net +azuredatabricks.net +azuredevopslaunch.com +azuredigitaltwin.com +azuredigitaltwins.com +azuredigitaltwins.net +azuredns-prd.info +azuredns-prd.org +azureedge-test.net +azureedge.net +azureiotcentral.com +azureiotsolutions.com +azureiotsuite.com +azuremarketplace.microsoft.com +azureplanetscale.info +azureplanetscale.net +azureserviceprofiler.com +azuresmartspaces.net +azurestackvalidation.com +azurewebsites.net +baazee.com +babble.com +babyzone.com +badaas.com +badgen.net +bag-glasses1.com +bahamut.akamaized.net +bahamut.com.tw +baicaonetwork.com +baltimorebmw.com +bamgrid.com +bandag.cc +bandag.com +bandcamp.com +bandgirlz.com +bandpage.com +bandwagonhost.com +bangbros.com +banned.video +barefootnetworks.com +barkadahansasmartone.com +barrons-advisor.com +barrons-conferences.com +barrons.com +baselinestudy.com +baselinestudy.org +bastillepost.com +bastropfirestone.com +baterias-hp.com +battle.net +battlebreakers.com +battlefield.com +battlefield1943.com +battlefield3.com +battlefield4.com +battlefield5.com +battlefieldbadcompany2.com +battlefieldheroes.com +battlefieldv.com +battlefront2.com +battlefrontii.com +battlelog.com +baxsound.com +bayareabmw.com +bayvoice.net +bazel.build +bbc.co.uk +bbc.com +bbc.in +bbc.net.uk +bbcfmt.s.llnwi.net +bbci.co.uk +bbcmedia.co.uk +bbcpersian.com +bbcverticals.com +bbestmall.com +bbg.gov +bbgevent.com +bbgwatch.com +bbhub.io +bbthat.com +bby.com +bbycastatic.ca +bbycloud.com +bbycontent.com +bbycontent.net +bbyintl.com +bbystatic.com +bbyurl.us +bcbits.com +bcicdn.com +bcove.video +bcovlive-a.akamaihd.net +bcovlive.io +bcrncdn.com +bcsecure01-a.akamaihd.net +bcvp0rtal.com +bdn.dev +beatbd.com +beatbydre2013.com +beatbydreheadphonesonsale.com +beatbydrekopen.com +beatbydremonster.com +beatbydreuk2014.com +beatdrdres.com +beatfactoryoutlets.com +beatmonstersaustralia.net +beats-by-dre-australia.com +beats-bydrdre.net +beats-bydre-mall.com +beats-bydrecheapsale.com +beats-bydreoutletonline.com +beats-bydreoutletsale.com +beats-bydreoutletsale.net +beats-bydreoutletssale.net +beats-bydrestore.com +beats-bydreuk.com +beats-deal.com +beats-dre-us.com +beats-headphones-buy-cheap.com +beats-headphones.us +beats-sale.com +beats-seller.com +beats-soaho.com +beats1.cc +beats1.tv +beats123.com +beats4.net +beats4outlets.com +beats4salecheap.com +beatsallsale.com +beatsaudifonos.com +beatsaudiobydre.com +beatsaudiobydre.net +beatsaudios.net +beatsbeatsmonster.com +beatsbestdeals.com +beatsblackfridaydeals.net +beatsblackfridayretails.com +beatsboxingdayuksale.com +beatsbydrdre-headphones.com +beatsbydrdre-officials5.com +beatsbydrdre-online.com +beatsbydrdre-onsale.com +beatsbydrdre-store.com +beatsbydrdre-store.us +beatsbydrdre4sale.com +beatsbydrdrebiz.com +beatsbydrdrecustom.com +beatsbydrdredanmark.com +beatsbydrdremall.com +beatsbydrdreoutlet.com +beatsbydrdres.com +beatsbydrdresale.net +beatsbydrdrestore.com +beatsbydrdreus.com +beatsbydre-beatsheadphone.com +beatsbydre-chen.com +beatsbydre-club.com +beatsbydre-headphones.com +beatsbydre-headphonesshop.com +beatsbydre-mall.com +beatsbydre-outlet.com +beatsbydre-outletsale.net +beatsbydre-outletstore.com +beatsbydre-sell.com +beatsbydre-store.com +beatsbydre-studio.com +beatsbydre-us.com +beatsbydre.jp +beatsbydre2081.com +beatsbydre411.com +beatsbydre4usales.com +beatsbydreauofficial.com +beatsbydreausale.net +beatsbydreaustralia-sale.com +beatsbydreaustraliaonline.com +beatsbydreaustraliaonlines.com +beatsbydreaustraliasales.com +beatsbydrebeatsby.com +beatsbydreblackfriday2013.com +beatsbydreblackfridaypro.com +beatsbydreboxingdayca.com +beatsbydrecasquesfr.com +beatsbydrecheap-outletstore.com +beatsbydrecheaper.com +beatsbydrecheaponlinesales.com +beatsbydrecolors.com +beatsbydrecustomwireless.com +beatsbydrecybermondaydeals2013.com +beatsbydrecybermondaydeals2013.net +beatsbydredanmarks.com +beatsbydredealsblackfriday.com +beatsbydredealscybermonday.com +beatsbydrediscount.com +beatsbydrediscountonline.net +beatsbydredr.com +beatsbydreexecutivesale.com +beatsbydreformall2013-nl.com +beatsbydreforsalesonline.com +beatsbydreforshop2013-nl.com +beatsbydreforstore.com +beatsbydreforyououtlet.com +beatsbydrefr.com +beatsbydrefrcasquepascher.com +beatsbydrefriday.com +beatsbydregot.com +beatsbydrehd.com +beatsbydrehd.net +beatsbydreheadphones-nz.com +beatsbydreheadphonesolo.com +beatsbydrehut.com +beatsbydreinexpensive.com +beatsbydreireland-sales.com +beatsbydreirelandonlines.com +beatsbydreirelandsale.com +beatsbydreirelandsonline.com +beatsbydremall2013.com +beatsbydremonsteraustralia.com +beatsbydrenls.com +beatsbydrenorge1.net +beatsbydreofficialdanmark.com +beatsbydreoksale.com +beatsbydreol.com +beatsbydreonlie2013-nl.com +beatsbydreonlines-ireland.com +beatsbydreonlines-uk.com +beatsbydreonlinesale-nz.com +beatsbydreoordopjes.com +beatsbydreoslo.com +beatsbydreoutletsale.com +beatsbydreoutletscheap.com +beatsbydrerealstore.com +beatsbydres-shop.com +beatsbydresale-uk.com +beatsbydresalemall2013.com +beatsbydresaleonlines-nz.com +beatsbydresales.us +beatsbydresalesonline-australia.com +beatsbydresdanmark.net +beatsbydreshop-uk.com +beatsbydreshops.net +beatsbydresingapores.com +beatsbydresingaporesale.com +beatsbydresold.com +beatsbydresolohdonline-canada.com +beatsbydresonline-nz.com +beatsbydrespeakers.com +beatsbydressale.com +beatsbydressolo.com +beatsbydresstudio.com +beatsbydrestorevip.com +beatsbydrestudio-australia.com +beatsbydrestudio.com +beatsbydretoutlet.com +beatsbydreuk.com +beatsbydreuk.net +beatsbydreus.com +beatsbydrevipde.com +beatsbydrew.com +beatsbydrsmonsterinusa.com +beatsbymusic.net +beatsbysdrbre.com +beatsbysdrdres.com +beatscasque-france.com +beatscheap-nz.com +beatscheap-uk.com +beatscheapforsale.com +beatscollection2014.com +beatscustomblackfriday.com +beatsdanmark2013.com +beatsdrdre-headphones.com +beatsdrdre-it.com +beatsdrdre-solo.com +beatsdrdre2014.com +beatsdrdrecuffie.net +beatsdrdrekaufenschweiz.net +beatsdrdreneon.com +beatsdre-monster.com +beatsdre.net +beatsdre4cheap.com +beatsdrecheap.com +beatsdredreheadphones.com +beatsdreforsale.com +beatsdreinau.com +beatsdremonster-uk.com +beatsdrenewcolorful4usale.com +beatsdreoutletsale.com +beatsdresale2013.com +beatsdresalestore.com +beatsdresolo2013.com +beatsdreus.com +beatsearbudsheadphoness.com +beatselectronic.net +beatselectronics.com +beatselectronicsllc.tt.omtrdc.net +beatsep.com +beatsep.net +beatsfacstore.com +beatsfactoroutlets.com +beatsfactorycollection.com +beatsfactoryoutles.com +beatsforcheap-usa.com +beatsforme.com +beatsfranceofficiel.com +beatsheadphones-discount.com +beatsheadphones1.com +beatsheadphones2u.com +beatsheadphonesale.com +beatsheadphonesdealer.com +beatsheadphonesforcheap.net +beatsheadphonesonline.com +beatsheadphoness.com +beatsheadphonestudio.com +beatsheadphonesusamall.com +beatshopuk.com +beatsincanada.com +beatsinsingapore.com +beatsireland.net +beatsjoy.com +beatsmonstersales.com +beatsmusic.com +beatsmusic.wang +beatsneon.com +beatsnzsale.com +beatsodre.com +beatsofdre-usa.com +beatsonblackfriday2013.com +beatsone.net +beatsoutlet.net +beatsoutletanytime.com +beatsoutletonlines.com +beatspascher-bydre.com +beatspascher-fr.net +beatspascher.net +beatspaschers.net +beatspillnewcolor.com +beatspills.com +beatspromonsterjp.com +beatspromotions.com +beatssales.com +beatssaleus.com +beatssaustraliabuy.com +beatssbyaustralia.com +beatssbydredanmark.com +beatsshop-uk.com +beatsshop-usa.com +beatsshopstore.com +beatssingapores.com +beatssingaporeshop.com +beatsstudiohodetelefoner.com +beatsstudiosite.com +beatstoreusa.com +beatsua.com +beatswholesale.us +beatswirelesscheap.com +beatswirelesscuffie.com +beatthatquote.com +beautyandthebeastmusical.co.uk +bebepremium3.com.bo +beck-online.beck.de +becomeindex.com +beddit.tv +beeg.com +begin-trade.com +behance.net +beibao.com +beijingnike.com +bejeweledstars.com +bejewled-stars.com +bellsouth.net +benghuai.com +benliton.com +bentobox.tv +berkanawireless.com +berkeley.edu +bestbeats4u.com +bestbhy.com +bestbuy-audio.com +bestbuy-communityrelations.com +bestbuy-giftcard.info +bestbuy-int.com +bestbuy-jobs.com +bestbuy.ca +bestbuy.com +bestbuy.com.mx +bestbuy.info +bestbuy24x7solutions.com +bestbuybusiness.com +bestbuybusinessadvantageaccount.com +bestbuycanada.ca +bestbuycanada.com +bestbuycanadaltd.ca +bestbuycharityclassic.com +bestbuycoffeemakers.com +bestbuyethics.com +bestbuyforbusiness.ca +bestbuygsm.com +bestbuyideax.com +bestbuyphotoworkshoptours.com +bestbuyrewards.com +bestbuyrewardzone.ca +bestbuys.com +bestbuysgeeksquad.com +bestbuysolutions.net +bestbuystores.com +bestbuytradein.com +bestbuyus.com +besthentaitube.com +bestiphonestuff.com +bestmallawards.com +bestrecipes.com.au +bestshoesale2014.net +besztbuy.com +beth.games +bethesda.net +bethesdagamestudios.com +bethsoft.com +betterexplained.com +betternike.com +bextbuy.com +beyondcore.com +bgov.com +bgr.in +bh3.com +bidbay.com +bidi.net.uk +bidorbuyindia.com +bidvestbank.co.za +bienvenuechezbestbuy.ca +bigbeans.solutions +bigbigchannel.com.hk +bigbigshop.com +bigbuckbunny.org +bigcharts.com +bighead.group +biitii.com +bill-safe.com +billmelater.com +billmelater.info +billmelater.net +billpoint.com +billpoint.info +billpoint.tv +billpoint.us +billpointnewzealand.com +binads.com +binance.cc +binance.charity +binance.cloud +binance.co +binance.com +binance.info +binance.me +binance.net +binance.org +binance.us +binance.vision +binanceapi.com +binancezh.be +binancezh.biz +binancezh.cc +binancezh.co +binancezh.com +binancezh.info +binancezh.ink +binancezh.kim +binancezh.link +binancezh.live +binancezh.mobi +binancezh.net +binancezh.pro +binancezh.sh +binancezh.top +bing.net +bingads.com +bingagencyawards.com +bingapistatistics.com +bingsandbox.com +bingvisualsearch.com +bingworld.com +binoculus.com +bintray.com +biologists.com +biomedcentral.com +bioone.org +biorxiv.org +bioware.com +biowarestore.com +bisq.io +bisq.network +bit.ly +bitballoon.com +bitbank.cc +bitbucket.org +bitcoin.org +bitfinex.com +bitflyer.com +bitflyer.jp +bitly.com +bitly.is +bitmex.com +bitnami.com +bitnamiapp.com +bitnamistudio.com +bitquick.co +bitsquare.io +bitstamp.net +bitstream.com +bittrex.com +bitvise.com +bitwarden.com +blackboxgames.com +blackfridaydrebeatsnew.com +blackfridaydrebeatsshop.com +blackstonespoliceservice.com +blazor.net +blender.org +blink.org +blinkload.zone +blizzak-juken.jp +blizzard.com +blizzard.nefficient.co.kr +blizzardgearstore.com +blizzcon-a.akamaihd.net +blogblog.com +blogebay.com +blogger.com +blogoverflow.com +blogspot.ae +blogspot.al +blogspot.am +blogspot.ba +blogspot.be +blogspot.bg +blogspot.bj +blogspot.ca +blogspot.cf +blogspot.ch +blogspot.cl +blogspot.co.at +blogspot.co.id +blogspot.co.il +blogspot.co.ke +blogspot.co.nz +blogspot.co.uk +blogspot.co.za +blogspot.com +blogspot.com.ar +blogspot.com.au +blogspot.com.br +blogspot.com.by +blogspot.com.co +blogspot.com.cy +blogspot.com.ee +blogspot.com.eg +blogspot.com.es +blogspot.com.mt +blogspot.com.ng +blogspot.com.tr +blogspot.com.uy +blogspot.cv +blogspot.cz +blogspot.de +blogspot.dk +blogspot.fi +blogspot.fr +blogspot.gr +blogspot.hk +blogspot.hr +blogspot.hu +blogspot.ie +blogspot.in +blogspot.is +blogspot.it +blogspot.jp +blogspot.kr +blogspot.li +blogspot.lt +blogspot.lu +blogspot.md +blogspot.mk +blogspot.mx +blogspot.my +blogspot.nl +blogspot.no +blogspot.pe +blogspot.pt +blogspot.qa +blogspot.re +blogspot.ro +blogspot.rs +blogspot.ru +blogspot.se +blogspot.sg +blogspot.si +blogspot.sk +blogspot.sn +blogspot.td +blogspot.tw +blogspot.ug +blogspot.vn +bloomberg.cn +bloomberg.co.jp +bloomberg.co.kr +bloomberg.com +bloomberg.com.br +bloomberg.fm +bloomberg.tv +bloombergapps.com +bloombergarcade.com +bloombergbeta.com +bloombergbna.com +bloombergbreakaway.com +bloombergbriefs.com +bloombergchina.com +bloombergenvironment.com +bloombergforeducation.com +bloomberggovernment.com +bloombergindices.com +bloombergindustry.com +bloomberglabs.com +bloomberglaw.com +bloomberglive.com +bloomberglp.com +bloombergmedia.com +bloombergnext.com +bloombergpolarlake.com +bloombergprep.com +bloombergquint.com +bloombergradio.com +bloombergsef.com +bloombergspace.com +bloombergstatus.com +bloombergsurvey.com +bloombergtax.com +bloombergtax1.com +bloombergtaxtech.com +bloombergtradingchallenge.com +bloombergtv.mn +bloombergvault.com +bloombergview.com +bloommicroventures.com +bloomsburycollections.com +bloomsburydesignlibrary.com +blpcareers.com +blpevents.com +blpprofessional.com +blubrry.com +bluefootcms.com +bluehatil.com +bluehatnights.com +bluemix.com +bluemix.net +blz-contentstack.com +blzddist1-a.akamaihd.net +blzddistkr1-a.akamaihd.net +blzmedia-a.akamaihd.net +blznav.akamaized.net +bmia.org +bmj.com +bml.info +bmw-abudhabi.com +bmw-adventskalender.com +bmw-albania.com +bmw-antilles.fr +bmw-art-journey.com +bmw-arts-design.com +bmw-asia.com +bmw-auslieferungszentrum.com +bmw-authority-vehicles.com +bmw-bahrain.com +bmw-businessdrive.com +bmw-calgary.ca +bmw-carit.de +bmw-classic.com +bmw-clubs-international.com +bmw-connected-drive.com +bmw-connecteddrive.ae +bmw-connecteddrive.at +bmw-connecteddrive.be +bmw-connecteddrive.bg +bmw-connecteddrive.ca +bmw-connecteddrive.ch +bmw-connecteddrive.co.nz +bmw-connecteddrive.co.uk +bmw-connecteddrive.co.za +bmw-connecteddrive.com +bmw-connecteddrive.com.au +bmw-connecteddrive.com.br +bmw-connecteddrive.com.cy +bmw-connecteddrive.com.hr +bmw-connecteddrive.com.kw +bmw-connecteddrive.com.mt +bmw-connecteddrive.cz +bmw-connecteddrive.de +bmw-connecteddrive.dk +bmw-connecteddrive.ee +bmw-connecteddrive.es +bmw-connecteddrive.fi +bmw-connecteddrive.fr +bmw-connecteddrive.gr +bmw-connecteddrive.hu +bmw-connecteddrive.ie +bmw-connecteddrive.it +bmw-connecteddrive.jp +bmw-connecteddrive.kr +bmw-connecteddrive.lt +bmw-connecteddrive.lu +bmw-connecteddrive.lv +bmw-connecteddrive.mx +bmw-connecteddrive.my +bmw-connecteddrive.nl +bmw-connecteddrive.no +bmw-connecteddrive.pl +bmw-connecteddrive.pt +bmw-connecteddrive.ro +bmw-connecteddrive.ru +bmw-connecteddrive.se +bmw-connecteddrive.sg +bmw-connecteddrive.si +bmw-connecteddrive.sk +bmw-connecteddrive.tw +bmw-corporate-sales.com +bmw-diplomatic-sales.com +bmw-driving-center.co.kr +bmw-drivingexperience.com +bmw-dubai.com +bmw-eg.com +bmw-fleet.net +bmw-ghana.com +bmw-golfsport.com +bmw-group.com +bmw-group.net +bmw-grouparchiv.de +bmw-grouparchives.com +bmw-gta.ca +bmw-i-pure-impulse.com +bmw-i.jp +bmw-int1.com +bmw-iraq.com +bmw-jordan.com +bmw-konzernarchiv.de +bmw-ksa.com +bmw-kuwait.com +bmw-lao.la +bmw-lebanon.com +bmw-m-safetycar.com +bmw-m.com +bmw-mdrivetour.com +bmw-me.com +bmw-military-sales.com +bmw-motorcycle.com +bmw-motorcycles.vn +bmw-motorrad-abudhabi.com +bmw-motorrad-authorities.com +bmw-motorrad-dubai.com +bmw-motorrad-motorsport.com +bmw-motorrad-now-or-never.com +bmw-motorrad-service-inclusive.com +bmw-motorrad-test-ride.com +bmw-motorrad.at +bmw-motorrad.be +bmw-motorrad.bg +bmw-motorrad.bh +bmw-motorrad.bo +bmw-motorrad.ca +bmw-motorrad.ch +bmw-motorrad.cl +bmw-motorrad.co +bmw-motorrad.co.id +bmw-motorrad.co.kr +bmw-motorrad.co.nz +bmw-motorrad.co.th +bmw-motorrad.co.uk +bmw-motorrad.co.za +bmw-motorrad.com +bmw-motorrad.com.ar +bmw-motorrad.com.au +bmw-motorrad.com.br +bmw-motorrad.com.do +bmw-motorrad.com.hr +bmw-motorrad.com.mx +bmw-motorrad.com.my +bmw-motorrad.com.pe +bmw-motorrad.com.py +bmw-motorrad.com.tr +bmw-motorrad.cr +bmw-motorrad.cz +bmw-motorrad.de +bmw-motorrad.dk +bmw-motorrad.dz +bmw-motorrad.ec +bmw-motorrad.ee +bmw-motorrad.es +bmw-motorrad.fi +bmw-motorrad.fr +bmw-motorrad.gr +bmw-motorrad.gt +bmw-motorrad.hu +bmw-motorrad.in +bmw-motorrad.it +bmw-motorrad.jp +bmw-motorrad.lu +bmw-motorrad.ma +bmw-motorrad.nl +bmw-motorrad.no +bmw-motorrad.pa +bmw-motorrad.pl +bmw-motorrad.pt +bmw-motorrad.ro +bmw-motorrad.rs +bmw-motorrad.ru +bmw-motorrad.sa +bmw-motorrad.se +bmw-motorrad.si +bmw-motorrad.sk +bmw-motorrad.sv +bmw-motorrad.tw +bmw-motorrad.ua +bmw-motorrad.uy +bmw-motorsport.com +bmw-mountains.com +bmw-museum.com +bmw-museum.net +bmw-nigeria.com +bmw-oman.com +bmw-ottawa.ca +bmw-pakistan.com +bmw-plant-munich.com +bmw-pma.com.sg +bmw-powertrain.com +bmw-product-highlights.com +bmw-qatar.com +bmw-routes.com +bmw-rp.com +bmw-rrdays.com +bmw-saudiarabia.com +bmw-security-vehicles.com +bmw-special-sales.com +bmw-sports.com +bmw-sudan.com +bmw-tahiti.com +bmw-tunisia.com +bmw-vancouver.ca +bmw-voli.me +bmw-welt.com +bmw-welt.net +bmw-welt.tv +bmw-werk-berlin.de +bmw-world.com +bmw-world.net +bmw-world.tv +bmw-worldfinal.com +bmw-yachtsport.com +bmw-yeg.ca +bmw-yemen.com +bmw.am +bmw.at +bmw.az +bmw.ba +bmw.bb +bmw.be +bmw.bg +bmw.bm +bmw.bs +bmw.by +bmw.ca +bmw.cc +bmw.ch +bmw.cl +bmw.co.ao +bmw.co.cr +bmw.co.id +bmw.co.il +bmw.co.jp +bmw.co.ke +bmw.co.kr +bmw.co.nz +bmw.co.th +bmw.co.uk +bmw.co.za +bmw.com +bmw.com.ar +bmw.com.au +bmw.com.bd +bmw.com.bn +bmw.com.bo +bmw.com.br +bmw.com.co +bmw.com.cy +bmw.com.do +bmw.com.ec +bmw.com.ge +bmw.com.gt +bmw.com.kh +bmw.com.ky +bmw.com.mk +bmw.com.mo +bmw.com.mt +bmw.com.mx +bmw.com.my +bmw.com.ni +bmw.com.pa +bmw.com.pe +bmw.com.ph +bmw.com.py +bmw.com.sg +bmw.com.sv +bmw.com.tr +bmw.com.tw +bmw.com.uy +bmw.com.ve +bmw.cw +bmw.cz +bmw.de +bmw.dk +bmw.dz +bmw.ee +bmw.es +bmw.fi +bmw.fr +bmw.gp +bmw.gr +bmw.hn +bmw.hr +bmw.ht +bmw.hu +bmw.ie +bmw.in +bmw.is +bmw.it +bmw.kg +bmw.kz +bmw.lc +bmw.lk +bmw.lt +bmw.lu +bmw.lv +bmw.ly +bmw.ma +bmw.md +bmw.mn +bmw.mq +bmw.mu +bmw.nc +bmw.nl +bmw.no +bmw.pl +bmw.ps +bmw.pt +bmw.re +bmw.ro +bmw.rs +bmw.se +bmw.si +bmw.sk +bmw.sn +bmw.tm +bmw.tt +bmw.ua +bmw.uz +bmw.vn +bmwarchiv.at +bmwarchiv.de +bmwartjourney.com +bmwasia.com +bmwauslieferungszentrum.com +bmwbikes.com +bmwbkk.de +bmwccrc.ca +bmwcenternet.com +bmwchampionship.com +bmwchampionshipusa.com +bmwcharitygolf.com +bmwcitychallenge.com +bmwclassic.com +bmwcolorado.com +bmwconnecteddrive.com +bmwcustomapparel.com +bmwdcsnet.net +bmwdealercareers.com +bmwdealerdirect.com +bmwdelawarevalley.com +bmwfilms.com +bmwgroup-classic-heart.com +bmwgroup-classic.com +bmwgroup-gaad.com +bmwgroup-plants.com +bmwgroup-posdigital.com +bmwgroup-werke.com +bmwgroup.at +bmwgroup.com +bmwgroup.jobs +bmwgroup.net +bmwgroupclassic.com +bmwgroupdesignworks.com +bmwgroupdirect.com +bmwgroupfs.com +bmwgroupinfobahn.com +bmwgroupna.com +bmwhk.com +bmwi.ca +bmwi.jp +bmwiventures.com +bmwjamaica.com +bmwlat.com +bmwlifestyle.ca +bmwm.com +bmwmagazine.com +bmwmagazine.de +bmwmass.com +bmwmass.net +bmwmc.net +bmwmontreal.ca +bmwmotorcycles.com +bmwmotorcycleusa.com +bmwmotorrad.co.kr +bmwmotorrad.com.au +bmwmotorrad.com.ph +bmwmotorrad.com.sg +bmwmotorradhk.com +bmwmotorshowblog.com +bmwmotorsport.com +bmwmperformance.com +bmwmuseum.net +bmwmyanmar.com +bmwofannapolis.com +bmwofcentralpa.com +bmwoftulsa.com +bmwondemandusa.com +bmworegon.com +bmwperformancecenter.com +bmwpittsburgh.com +bmwproductnews.com +bmwsafari.com +bmwsfl.com +bmwsfl.net +bmwshop.ca +bmwspecialoffers.ca +bmwsports.com +bmwstartupgarage.com +bmwstep.com +bmwstepconnections.com +bmwsummerschool.com +bmwtampabay.com +bmwusa.com +bmwusaservice.com +bmwusatires.com +bmwusfactory.com +bmwusrideracademy.com +bmwvalueservice.com +bmwwholesaleconnect.com +bmwworld.com +bmwworld.net +bmwworld.tv +bmwzentrum.com +bnbstatic.com +bnef.com +bnetcmsus-a.akamaihd.net +bnetproduct-a.akamaihd.net +bnetshopus.akamaized.net +bnext.com.tw +bodyandsoul.com.au +bollywoodlife.com +boltdns.net +bongacams.com +book.com.tw +bookclubcorner.com +bookclubgirl.com +booking.com +bookmybridgestonetyre.com +bookonsky.net +books.com.tw +booksinprint.com +bookstagram.com +booth.pm +bootstrapcdn.com +borderlessprepaid.com +boringcompany.com +boslife.biz +boslife.net +bossae.com +botframework.com +botorch.org +botstop.com +bowenpress.com +bowsersinsidestory.com +boxofficemojo.com +boxun.com +boylove.cc +boylove.com +boyloves.cc +braeburncapital.com +braintreegateway.com +braintreegateway.tv +braintreepayments.com +braintreepayments.info +braintreepayments.org +braintreepayments.tv +braintreepaymentsolutions.com +braintreeps.com +branchportal.com +brand-protection-team.com +brandeasygo.com +brandelectronic.com +brandproducts1688.com +brands098.com +braventures.com +braveux.com +brazilpartneruniversity.com +brazzers.com +breakdown.me +breitbart.com +brepolis.net +brew.sh +brewmp.com +briantreepayments.net +briantreepayments.tv +bridge-studio.co.uk +bridgestone-asiapacific.com +bridgestone-bandag.com +bridgestone-brand.com +bridgestone-business-service.jp +bridgestone-korea.co.kr +bridgestone-plt-eng.com +bridgestone-tac-oman.com +bridgestone.cl +bridgestone.co.cr +bridgestone.co.id +bridgestone.co.in +bridgestone.co.jp +bridgestone.co.th +bridgestone.com +bridgestone.com.ar +bridgestone.com.br +bridgestone.com.co +bridgestone.com.mx +bridgestone.com.sg +bridgestone.com.tw +bridgestone.com.vn +bridgestoneamericas.com +bridgestonearena.com +bridgestonecntc.com +bridgestonecomercial.cl +bridgestonecomercial.co.cr +bridgestonecomercial.com.ar +bridgestonecomercial.com.br +bridgestonecomercial.com.co +bridgestonecomercial.com.mx +bridgestonegolf.com +bridgestonegz.com +bridgestonela.com +bridgestonemarketing.com +bridgestonemerchandise.com +bridgestonenationalfleet.com +bridgestoneperformance.com +bridgestoneperformancemedia.net +bridgestonerapiddelivery.com +bridgestonerewards.com +bridgestonesyb.com +bridgestonetire.ca +bridgestonetire.com +bridgestonetyre.com.my +bridgestonevan.com +bridgestonewx.com +brightcove.com +brightcove.imgix.net +brightcove.net +brightcove.services +brightcovecdn.com +brill.com +brilliant.org +brocaproject.com +bronto.com +brotli.org +browserleaks.com +bs-adreview.com +bs-awh.ne.jp +bstatic.com +bsw.co.jp +bsw.jp +btcbox.co.jp +btdig.com +btec.co.uk +btt804.com +btt904.com +bttzyw.com +bttzyw.net +buck.build +buckbuild.com +bucketeer.jp +budatt.com +buddymedia.com +bugzilla.org +builtfromebay.com +bumpshare.com +bumptop.ca +bumptop.com +bumptop.net +bumptop.org +bumptunes.com +burstly.net +burstlyrewards.com +business-i.jp +businesscatalyst.com +businessfocus.io +businessinsider.co.za +businessinsider.com +businessinsider.com.au +businessinsider.com.pl +businessinsider.de +businessinsider.es +businessinsider.fr +businessinsider.in +businessinsider.jp +businessinsider.mx +businessinsider.my +businessinsider.nl +businessinsider.sg +businesstoday.com.tw +businesswebwise.com +businessweek.com +businessweekly.com.tw +businessweekmag.com +buy-from-shanghai.com +buyaapl.com +buyaapl.net +buyaltera.com +buyaple.com +buybeatsbydre-uk.com +buybeatsheadphonesbydre.com +buycheapbeatsbus.com +buycheapbeatsbydre.com +buycheapbeatsbydreshop.com +buycheapbeatsdreuk.com +buydrdrebeatbox.com +buyfast-paysmart.net +buyingfacebooklikes.com +buyitnow.com +buyitnow.net +buyitnow.org +buyitnow.tv +buyitnowshop.net +buymeacoff.ee +buymeacoffee.com +buyminibeatbox.com +buynikechina.com +buyoculus.com +buyonlineheadphones.com +buypass-ssl.com +buypass.com +buypass.no +buypass.se +buyshoponly.com +buzzardflapper.com +buzzav.com +bvdinfo.com +bwbx.io +bwh1.net +bwh8.net +bwh88.net +bybeatsdre.com +bydrebeats.com +bypasscensorship.org +byspotify.com +byteoversea.com +c-ij.com +c-span.org +c-spanvideo.org +cableav.tv +cabletv.com.hk +cabletvdirectv.com +cafr.ca +caijinglengyan.com +caime.xyz +cairn.info +cairnspost.com.au +calendarserver.org +calgon.at +calgon.be +calgon.ch +calgon.co.uk +calgon.com +calgon.com.tr +calgon.de +calgon.es +calgon.fr +calgon.ie +calgon.it +calgon.nl +calgon.pt +calgon.ru +calgon.tv +calgoncarbon-china.com +calgoncarbon.com +calgonit.com +callersbane.com +callhulu.com +calvappd.me +cam4.com +cambiaip.org +cambridge.org +cambridgedigital.net +cambridgemaths.org +cambridgeschoolshakespeare.com +camelot-europe.com +camelotherald.com +camelotherald.net +camelphat.com +camelspaceeffect.com +campushp.com +campuslondon.com +camwhores.tv +canada-beatsbydre.com +canon-cee.com +canon-cmos-sensors.com +canon-cna.com +canon-ebm.com.hk +canon-emea.com +canon-emirates.ae +canon-europa.com +canon-europe.com +canon-me.com +canon-ois.qa +canon-se.com.tw +canon.am +canon.at +canon.az +canon.ba +canon.be +canon.bg +canon.ca +canon.ch +canon.co.il +canon.co.uk +canon.co.za +canon.com +canon.com.al +canon.com.au +canon.com.by +canon.com.cy +canon.com.hk +canon.com.mk +canon.com.mt +canon.com.my +canon.com.tr +canon.com.tw +canon.cz +canon.de +canon.dk +canon.ee +canon.es +canon.fi +canon.fr +canon.ge +canon.gr +canon.hr +canon.hu +canon.ie +canon.it +canon.kz +canon.lt +canon.lu +canon.lv +canon.me +canon.net +canon.nl +canon.no +canon.pl +canon.pt +canon.ro +canon.rs +canon.ru +canon.se +canon.si +canon.sk +canon.tj +canon.ua +canon.uz +canonfoundation.org +canonical.com +canonproprinters.com +capitalgames.com +capitaliq.com +carbon.com +carcare-and-tireshop.jp +card.io +carebay.com +careerfundas.com +careerjournal.com +careersatfb.com +carekit.org +cargigileads.com +carstagram.com +cas.org +cash.app +cash2.com +cashbycashapp.com +cashify.com +cashify.net +cashpassport.ca +cashpassport.co.za +cashpassport.com +cashpassport.com.br +cashpassport.net +cashpassportglobe.com +casimages.com +casoneexchange.com +casque-fr.com +casquebeatsbydrdresolohd.com +casquebeatsdocteurdre.com +casquebeatsdre2013.com +casquebeatsenligne.com +casquebeatsfracheter.com +casquebeatsmer.net +casquebeatsofficiel-fr.com +casquebeatspascher2013.com +casquebeatssolo.net +casquedrdrebeatssfr.com +casquemonsterbeats.com +casquemonsterbeatsbydre2013.com +casquesbeatsaudio.com +castro.fm +catalina.hk +cbs.com +cbsaavideo.com +cbscorporation.com +cbsi.com +cbsi.live.ott.irdeto.com +cbsi.video +cbsiam.com +cbsig.net +cbsimg.net +cbsinteractive.com +cbsistatic.com +cbsivideo.com +cbsnews.com +cbsplaylistserver.aws.syncbak.com +cbspressexpress.com +cbsservice.aws.syncbak.com +cbssports.com +cbsstatic.com +cbssvideo.com +ccdc.cam.ac.uk +cciernslabs.com +cciesecuritylabs.com +ccievoicelabs.com +ccna5.net +ccnsite.com +ccpsx.com +ccstatic.org +cdkworkshop.com +cdn-terapeak.com +cdn77.com +cdn77.org +cdn77.scoreuniverse.com +cdngarenanow-a.akamaihd.net +cdninstagram.com +cdnjs.com +cdnlab.live +cdnpure.com +cebay.com +ceicdata.com +celebgramme.com +celeron.com +celeron.net +cell.com +cencoastbmw.com +centos.org +centralvalidation.com +centrino.com +centrino.net +cepacol.ca +cepacol.com +cern.ch +certificate-transparency.org +cex.io +cfblob.com +cfna.com +ch9.ms +championshipseriesleague.com +change.org +chargenow.com +chargenowusa.com +charlestonroadregistry.com +charlotte-anime.jp +charticulator.com +chatango.com +chatter.com +chaturbate.com +cheap-beats-by-dre.net +cheap-beatsbydre.com +cheap-nike.com +cheapbagshoes.com +cheapbeats.us +cheapbeats365.com +cheapbeats4sale.net +cheapbeatsaustraliasale.com +cheapbeatsbus.com +cheapbeatsbydr.com +cheapbeatsbydrdrepro.com +cheapbeatsbydre-au.com +cheapbeatsbydre99.com +cheapbeatsbydrefau.com +cheapbeatsbydremall.com +cheapbeatsbydremonster.com +cheapbeatsbydrenz.net +cheapbeatsbydreonsale.com +cheapbeatsbydreoutlet-nz.com +cheapbeatsbydreoutlet.com +cheapbeatsbydreoutlets2013.com +cheapbeatsbydresale.com +cheapbeatsbydreshop.com +cheapbeatsbydrestudioedition.com +cheapbeatsbydrestudioutlet.com +cheapbeatsdrdresolo.com +cheapbeatsdrestudios.com +cheapbeatsheadphone2014.com +cheapbeatsheadphones.us +cheapbeatsie.com +cheapbeatsla.com +cheapbeatssale4u.com +cheapbeatsshopbydre.com +cheapcustombeatsbydre.com +cheapdrdrebeats8.com +cheapdrdrebeatsca.com +cheapdrebeats8.net +cheaperbeatsbydresale.com +cheapestbeatsdrdre.com +cheapheadphonesland.com +cheapheadphonessale.com +cheapheadsetmall.com +cheapheadsetshop.com +cheapmonsterbeatsbydrdre.com +cheapmonsterbeatsheadsets.com +cheapmonsterbeatssale.com +cheapmonsterbeatsusa.us +cheapmonstersbeatsonsale.com +cheapnewbeatsbydre.com +cheapnikedunks.com +cheapnikeoutlet.com +cheapsalemonster.com +cheapshoesvip.com +cheapwireless04.com +cheapwirelessbeats.com +cheerwholesale.us +chemnetbase.com +chicagolandbmw.com +chickstagram.com +chihair-straightener.com +chillingo.com +chimeforchange.org +china-facebook.com +chinaclothesstore.com +chinadecoding.com +chinadigitaltimes.net +chinaeconomicreview.com +chinapower.csis.org +chinapress.com.my +chinatimes.com +chinatimes.com.tw +chips.com +chocolatey.org +choicereviews.org +chomp.com +chrome.com +chromebook.com +chromecast.com +chromeos.dev +chromium.org +chronicle.security +chroniclesec.com +cht.com.tw +chtf.org.tw +chuokoron.jp +ciattackers.com +cilk.com +cilk.net +cinemax.com +cios.org +cisco-returns.com +cisco-warrantyfinder.com +cisco.com +cisco.evergage.com +cisco.mobi +ciscoccservice.com +ciscoconnectcloud.com +ciscoconnectcloud.net +ciscoconnectcloud.org +ciscocontest.com +ciscoerate.com +ciscofax.com +ciscoinvestments.com +ciscojabbervideo.net +ciscokinetic.com +ciscoknowledgenetwork.com +ciscolearningsociety.org +ciscolearningsystem.com +ciscolive.com +ciscolivehls-i.akamaihd.net +cisconetapp.com +cisconetspace.com +cisconetspace.info +cisconetspace.net +ciscopartnermarketing.com +ciscopowercube.com +ciscopress.ch +ciscoprice.com +ciscoresearch.com +ciscosoftware.com +ciscospark.ca +ciscospark.com +ciscospark.jp +ciscotaccc.com +ciscotr.com +ciscoturk.net +ciscovideo.com +ciscowebseminars.com +cispaletter.com +cispaletter.org +citizenlab.ca +citizenlab.org +citylab.com +cixp.net +ck101.com +ckcdn.com +ckck.fun +clannad-movie.jp +clarivate.com +classicnike.com +clco.cc +clearasil.us +clearlinux.org +click-url.com +clickedu.co.uk +clickserver.googleads.com +clinicalkey.com +clojure.org +cloudapp.net +cloudappsecurity.com +cloudburstresearch.com +cloudc.one +cloudchoose.com +cloudcone.com +cloudcone.net +cloudconvert.com +cloudcraze.com +cloudcredibility.com +cloudflare-dns.com +cloudflare-ipfs.com +cloudflare-quic.com +cloudflare.com +cloudflare.net +cloudflareapps.com +cloudflarebolt.com +cloudflareclient.com +cloudflareinsights.com +cloudflareok.com +cloudflareresolve.com +cloudflaressl.com +cloudflarestatus.com +cloudflarestream.com +cloudflaretest.com +cloudflarewarp.com +cloudfront.net +cloudfunctions.net +cloudhealthtech.com +cloudimage.io +cloudimg.io +cloudinary.com +cloudinary.net +cloudinsights.com +cloudlive.com +cloudlock.com +cloudn.me +cloudrobotics.com +cloudsync-prod.s3.amazonaws.com +cloudvolumes.com +cloupia.com +cloupia.net +clubhouseapi.com +clusterconnection.com +cmhalq.com +cmmedia.com.tw +cmpaas.com +cmu.edu +cna.com.tw +cnbc.com +cnbcfm.com +cncrivals.com +cnet.com +cnivogue.com.au +cnix-gov-cn.com +cnn.com +cnn.io +cnn.it +cnnarabic.com +cnnikebrand.com +cnnlabs.com +cnnmoney.ch +cnnmoney.com +cnnmoneystream.com +cnnpolitics.com +cnpmjs.org +cnshopin.com +cnyes.com +cobatt.com +cobrasearch.com +cochranelibrary.com +code.org +codecademy.com +codei.sh +codeish.co +codeish.io +codespot.com +codethemicrobit.com +coinbase.com +coinone.co.kr +coinonecore.com +coinonecorp.com +collective99.com +collector.xhamster.com +collegejournal.com +collins.co.uk +collins.in +colorprotechnology.com +cometotheduckside.com +commandandconquer.com +comments.app +commerceos.com +como-hackearfacebook.com +comodo.com +comodo.net +comodoca.com +comodoca2.com +comodoca3.com +comodoca4.com +compaq.org +compass.is +componentkit.org +compose-spec.io +compresspdf.new +computer.org +computingreviews.com +comsoc.org +conair.me +conda.io +connaissancesfinancierespratiques.ca +connect-in-canada.com +connectcommerce.hk +connectcommerce.info +connectcommerce.tv +connected-drive.com +connectedcommerce.com +connectedcommerce.tv +connectionsacademy.com +connectionseducation.com +connectionslearning.com +conquerwithcharacter.com +conscrypt.com +conscrypt.org +consul.io +containersonaws.com +contentful.com +contest.com +convrgencegame.com +cookiechoices.org +cooliphonecasesstore.com +coolloud.org.tw +coolmonster.net +coova.com +coova.net +coova.org +cordcloud.org +coreduo.com +coreextreme.com +coreml.net +coreoptics.net +corepublishingsolutions.com +coronavirusnow.com +corporatecashpassport.com +cortanaanalytics.com +cortanaskills.com +cosmosdb.info +cosmosdb.net +costco-static.com +costco.com +costcobusinessdelivery.com +cotolia.com +cotweet.com +coupang.com +coupangcdn.com +couriermail.com.au +coursera-for-business.org +coursera.community +coursera.help +coursera.org +covid19-rx.org +covid19rx.org +cowboom.com +cozydrdrebeats.com +cpan.org +cpedge.com +cqcorea.com +craigslist.org +crates.io +createspace.com +creativecloud.com +creativecommons.engineering +creativecommons.org +creativesdk.com +crececonebay.com +creditcardsbay.com +cricketcountry.com +crit-staging.com +crmdynint-gcc.com +crmdynint.com +crossborderexpansion.com +crossfitfirestone.com +crossmediapanel.com +crosswalk-project.com +crosswalk-project.net +crowdtangle.com +crr.com +crunchyroll.com +crysis.jp +cs.co +cs4hs.com +csifund.org +csis-prod.s3.amazonaws.com +csis.org +cslpldyb.me +cstatic.net +ctan.org +ctee.com.tw +ctfassets.net +ctitv.com.tw +ctv.com.tw +ctwant.com +ctyun.online +cuffiesaldi.com +cup.com.hk +cups.org +curbed.com +currently.com +currently.net +currenttime.tv +cursecdn.com +curseforge.com +custom-iphonecase.com +custombeatsbydrebuy.com +custombeatsdeals.com +custombeatsforcheap.com +custombeatsny.com +custombeatssbydreus.com +customdrdrebeats.com +customizedbeatbydre.com +customizedbeatsbydre.com +customizedbeatsdre.com +customnikeshoes.com +cutt.ly +cw.com.tw +cyber-bay.info +cyber-bay.org +cybermondaybeats4sale.com +cybertrust.co.jp +cybertrust.ne.jp +cygames.co.jp +cygames.jp +cygwin.com +cylink.pro +cylink0122.icu +cython.org +d100.net +d1k2us671qcoau.cloudfront.net +d29vzk4ow07wi7.cloudfront.net +d2anahhhmp1ffz.cloudfront.net +da-files.com +dacebook.com +dailym.ai +dailymail.co.uk +dailymail.com +dailymail.com.au +dailymail.dk +dailymailonline.com +dailytelegraph.com.au +dajiyuan.com +dajiyuan.eu +dandalinvoa.com +dandanzan.cc +danemarket.com +danmarkbeatsbydrdre.com +daoc.net +darivoa.com +darkageofcamelot.com +darkness-risen.com +dart.dev +dartlang.org +dartpad.dev +dartsearch.net +darwinsource.com +darwinsource.org +darwinsourcecode.com +dashwood360.com +dat.foundation +data.com +databank.worldbank.org +database.asahi.com +dataliberation.org +datalore.io +datasheets360.com +david-laserscanner.com +dawngate.com +dawngatechronicles.com +daytonbmw.com +daytontrucktires.com +dazn-api.com +dazn.com +dazndn.com +db.tt +dba.dk +dcard.io +dcard.tw +dctbeatsbydre.com +ddg.co +ddg.gg +ddh.gg +dditsadn.com +dditscdn.com +deadspacegame.com +dealbay.com +dealerspeed.net +dealsbeatsblackfriday.com +dealtime.com +dealtree.org +debian.org +debug.com +debugproject.com +deepfreeze.co.uk +deepfreeze.com +deepfreeze.com.br +deepfreeze.eu +deepfreeze.net +deepfreeze.tech +deepl.com +deepmind.com +degruyter.com +delicious.com.au +dell-brand.com +dell.com +dellcdn.com +deluxe.com.hk +delvenetworks.com +demandware.com +demdex.net +democracy.earth +demonoid.is +demoprint.com +dengeamerika.com +dengiamerika.com +deno.land +dentalhypotheses.com +dependabot.com +deps.dev +deps.info +desertbmw.com +designeriphonescases.com +desk.com +desktopmovie.com +desktopmovie.net +desktopmovie.org +desktopmovies.net +desktopmovies.org +detaliczny.com +dettol-prize.com +dettol.at +dettol.be +dettol.ch +dettol.cl +dettol.co.id +dettol.co.in +dettol.co.ke +dettol.co.nz +dettol.co.uk +dettol.com +dettol.com.au +dettol.com.bd +dettol.com.br +dettol.com.eg +dettol.com.hk +dettol.com.my +dettol.com.ng +dettol.com.sg +dettol.cz +dettol.fr +dettol.hu +dettol.ie +dettol.net +dettol.nl +dettol.pk +dettol.pl +dettol.pt +dettol.ru +dettolarabia.com +dettolcleannaija.com +dettolsitishield.co.in +dettolthailand.com +deutschewelle.h-cdn.com +dev-guardianapis.com +dev-theguardian.com +devcon.org +developer-advisor.com +developer.microsoft.com +developer.mozilla.org +developers.facebook.com +developria.com +deviantart.com +deviantart.net +device-manager.us +devm2m.com +devopsassessment.net +devopsms.com +devsitetest.how +devtools-paypal.com +dewitwithdurex.com +dfp6rglgjqszk.cloudfront.net +dgg.gg +diablo3.com +diabloimmortal.com +dialga.com +dialogflow.com +dice.se +dicela.com +dicela.net +dictate.ms +didce.com +diddykongracing.com +dierectv.com +digicert-cn.com +digicert.com +digital-id.ch +digital-rb.com +digitalassetlinks.org +digitalcertvalidation.com +digitalhub.com +digitalid.ch +digitalocean.com +digitaloceanspaces.com +digitalpack.com +dilcdn.com +dirctv.com +direcpath.com +direcpath.net +directtv-deals.tv +directtv-dish.com +directtv.net +directtvdeals.tv +directtvreviews.com +directv-4-you.com +directv-newyork.com +directv.com +directvadsales.com +directvatlantaga.com +directvboston.com +directvbundles.com +directvbusiness.com +directvbusinessmarket.com +directvcincinnatioh.com +directvcinema.com +directvconnect.com +directvcookevilletn.com +directvcrossvilletn.com +directvdealer.com +directvdeals.com +directvdealsnow.com +directvdsl.tv +directvforhotels.com +directvgrandslam.com +directvhouston.com +directvinternet.com +directvkentucky.com +directvlebanontn.com +directvlosangeles.com +directvmetropolisil.com +directvmonitoring.com +directvmurfreesborotn.com +directvnewhampshire.com +directvnow.com +directvoffercodes.com +directvonline.com +directvplans.com +directvpomise.com +directvpromise.com +directvpromotions.com +directvrebate.com +directvrichmond.com +directvsavings.com +directvsports.com +directvsundayticket.com +direectv.com +diretv.com +dis.gd +discord-activities.com +discord.co +discord.com +discord.design +discord.dev +discord.gg +discord.gift +discord.gifts +discord.media +discord.new +discord.store +discord.tools +discordactivities.com +discordapp.com +discordapp.io +discordapp.net +discordcdn.com +discordmerch.com +discordpartygames.com +discordsays.com +discordstatus.com +discountbeatsbydre-us.com +discountbeatsstore.com +dishworld.com +disney-asia.com +disney-discount.com +disney-plus.net +disney-portal.my.onetrust.com +disney-studio.com +disney-studio.net +disney.asia +disney.be +disney.bg +disney.ca +disney.ch +disney.co.il +disney.co.jp +disney.co.kr +disney.co.th +disney.co.uk +disney.co.za +disney.com +disney.com.au +disney.com.br +disney.com.hk +disney.com.tw +disney.cz +disney.de +disney.dk +disney.es +disney.fi +disney.fr +disney.gr +disney.hu +disney.id +disney.in +disney.io +disney.it +disney.my +disney.my.sentry.io +disney.nl +disney.no +disney.ph +disney.pl +disney.pt +disney.ro +disney.ru +disney.se +disney.sg +disneyadsales.com +disneyarena.com +disneyaulani.com +disneybaby.com +disneycareers.com +disneychannelonstage.com +disneychannelroadtrip.com +disneycruisebrasil.com +disneyenconcert.com +disneyiejobs.com +disneyinflight.com +disneyinternational.com +disneyinternationalhd.com +disneyjunior.com +disneyjuniortreataday.com +disneylatino.com +disneymagicmoments.co.il +disneymagicmoments.co.uk +disneymagicmoments.co.za +disneymagicmoments.de +disneymagicmoments.es +disneymagicmoments.fr +disneymagicmoments.gen.tr +disneymagicmoments.gr +disneymagicmoments.it +disneymagicmoments.pl +disneymagicmomentsme.com +disneyme.com +disneymeetingsandevents.com +disneymovieinsiders.com +disneymusicpromotion.com +disneynewseries.com +disneynow.com +disneypeoplesurveys.com +disneyplus.bn5x.net +disneyplus.com +disneyplus.com.ssl.sc.omtrdc.net +disneyredirects.com +disneysrivieraresort.com +disneystore.com +disneystreaming.com +disneysubscription.com +disneytickets.co.uk +disneyturkiye.com.tr +disneytvajobs.com +disneyworld-go.com +disp.cc +disqus.com +disquscdn.com +disqusservice.com +djreprints.com +dkbeatsbydre.com +dkk37.com +dkr.com +dkrecttv.com +dl-iphone.com +dl.begellhouse.com +dlercloud.com +dlercloud.me +dlercloud.org +dleris.best +dlfacebook.com +dlgarenanow-a.akamaihd.net +dlib.eastview.com +dlmobilegarena-a.akamaihd.net +dmed.technology +dmgmediaprivacy.co.uk +dmm-extension.com +dmm.co.jp +dmm.com +dmmapis.com +dnai.in +dnaindia.com +dnaspaces.io +dndbeyond.com +dns.sb +dnsvisa.com +dobendan.de +doceapower.com +docker.com +docker.io +dockerizer.com +docs.com +docs.rs +documentforce.com +dogatch.jp +dogecoin.com +doi.info +doi.org +dokusho-ojikan.jp +dollarfotoclub.com +dollarphotoclub.com +dollarphotosclub.com +dombosco.com.br +donkeykongcountryreturns.com +dontbubble.us +donttrack.us +doom.com +doom9.org +dot-mac.de +dot.net +dotcernpilot.info +dotdeb.org +dotfacebook.com +dotfacebook.net +dotherex.com +dotmac.de +doubleclick.com +doubleclick.net +doujin-freee.com +douwriteright.com +douya.org +dowjones.com +dowjones.io +dowjoneson.com +download.91porn005.me +download.i91av.org +downloadsforipod.com +draftjs.org +dragonage.com +dragonagekeep.com +dragonagemovie.com +dragoniscoming.com +drbeatsukmart.com +drbl.in +drdre-beats.com +drdrebeats-chen.com +drdrebeats-headphone.com +drdrebeats-usa.com +drdrebeatsale.com +drdrebeatsbillig.com +drdrebeatsdesale.com +drdrebeatsdiscount.com +drdrebeatsforu.com +drdrebeatsretail2013.com +drdrebeatssale7.com +drdrebeatsuk.com +drdrefnac.com +drdreheadphonebeats.com +drdreheadphonekey.com +drdreheadphonesusstore.com +drdremonster-beats.com +drdremonsterdre.com +drdreprobeatssale.com +dreambmw.ca +dreamforce.com +dreamteamfc.com +dreamtoplay.com +dreamworks.com +drebeats-australia.com +drebeats-france.com +drebeats-monster.com +drebeats-monsteraustralia.com +drebeats-monsterusa.com +drebeats-singapore.com +drebeats-singapore.net +drebeats-singaporecheap.com +drebeats-singaporecheap.net +drebeats-solo.com +drebeats-studio.com +drebeatsaustralia-cheap.com +drebeatsaustralia-cheap.net +drebeatsbuy.com +drebeatsbydreoutlet.com +drebeatscanada.com +drebeatsdeutschland.net +drebeatsforsaleus.com +drebeatsheadphones-nz.com +drebeatshome.com +drebeatsoldes.com +drebeatsoutletstore.com +drebeatspill.com +drebeatssite.com +drebeatssolocybermondaysale.com +drebeatsstudio2013.com +drebeatstudio.com +drebyby.com +dremonsterbeatsoutlets.com +dreprobeats.com +dreprofy.com +dribbble.com +driving.co.uk +drmario-world.com +dronedj.com +dropbox-dns.com +dropbox.com +dropbox.tech +dropboxapi.com +dropboxbusiness.com +dropboxcaptcha.com +dropboxforum.com +dropboxforums.com +dropboxinsiders.com +dropboxmail.com +dropboxpartners.com +dropboxstatic.com +dropboxusercontent.com +ds-linear-abematv.akamaized.net +ds-vod-abematv.akamaized.net +dssott.com +dtci.co +dtci.technology +dtlgalleryint.cloudapp.net +dtsell.com +dtv2009offers.com +dtvce.com +duck.co +duck.com +duckduckco.com +duckduckco.de +duckduckgo.ca +duckduckgo.co +duckduckgo.co.uk +duckduckgo.com +duckduckgo.com.mx +duckduckgo.com.tw +duckduckgo.de +duckduckgo.dk +duckduckgo.in +duckduckgo.jp +duckduckgo.ke +duckduckgo.mx +duckduckgo.nl +duckduckgo.org +duckduckgo.pl +duckduckgo.sg +duckduckgo.uk +duckduckhack.com +duckgo.com +ducksear.ch +duckside.com +dukgo.com +dungeonkeeper.cn +dungeonkeeper.com +dungeonkeeper.com.cn +durex-shop.ch +durex-shopline.com +durex-slovenia.si +durex.at +durex.be +durex.cl +durex.co.id +durex.co.il +durex.co.nz +durex.co.th +durex.co.uk +durex.co.za +durex.com +durex.com.au +durex.com.bd +durex.com.co +durex.com.hr +durex.com.my +durex.com.ng +durex.com.pe +durex.com.ph +durex.com.pk +durex.com.sg +durex.com.tr +durex.cz +durex.de +durex.dk +durex.ee +durex.es +durex.fi +durex.fr +durex.hu +durex.ie +durex.it +durex.jp +durex.lv +durex.mx +durex.nl +durex.no +durex.pl +durex.pt +durex.ro +durex.ru +durex.se +durex.us +durexcam.com +durexcanada.com +durexchina.com +durexindia.com +durexloveclub.com +durexukraine.com +durexusa.com +duyaoss.com +duyaossr.com +dvdstudiopro.biz +dvdstudiopro.com +dvdstudiopro.info +dvdstudiopro.net +dvdstudiopro.org +dvdstudiopro.us +dvh30n.vip +dw.com +dynacw.co.jp +dynacw.com +dynacw.com.cn +dynacw.com.hk +dynacw.com.tw +dynafleetonline.com +dynamics.com +dyncdn.me +e-bay.com +e-bay.it +e-bay.net +e-hentai.org +ea-anz-press.com +ea.com +ea.tt.omtrdc.net +eaaccess.com +eaassets-a.akamaihd.net +eablackbox.com +eac-cdn.com +eacashcard.com +eachpay.com +eachpay.net +eacodigos.com +eafootballworld.com +eakorea.co.kr +eamirrorsedge.com +eamobile.com +eamythic.com +eamythic.net +eanordic.com +eaplay.com +earngeek.com +earphonescheapest.com +earpod.net +easic.com +easports.com +easports.jp +easportsactive.com +easportsactiveonline.com +easportsfootball.com +easportsfootballclub.com +easportsmma.com +easportsworld.com +eastore.com +easttouch.com.hk +eastweek.com.hk +easy.ac +easyanticheat.net +easylist.to +easynike.com +eater.com +ebahy.com +ebay-25-assets.s3-us-west-1.amazonaws.com +ebay-authenticate.net +ebay-confirm.com +ebay-course.com +ebay-cz.com +ebay-delivery.com +ebay-discoveries.com +ebay-fashion.com +ebay-inc.com +ebay-inc.net +ebay-inc.org +ebay-online.com +ebay-sales.com +ebay-stories.com +ebay-us.com +ebay-vacation.com +ebay.at +ebay.be +ebay.ca +ebay.ch +ebay.co.nz +ebay.co.uk +ebay.co.ve +ebay.co.za +ebay.com +ebay.com.ar +ebay.com.au +ebay.com.ec +ebay.com.hk +ebay.com.mt +ebay.com.my +ebay.com.ph +ebay.com.sg +ebay.de +ebay.es +ebay.fr +ebay.ie +ebay.in +ebay.it +ebay.jp +ebay.lt +ebay.mn +ebay.nl +ebay.org +ebay.ph +ebay.pk +ebay.pl +ebay.sg +ebay.us +ebay.vn +ebay25.com +ebay68.com +ebaya.com +ebayads.com +ebayads.net +ebayadvertising.com +ebayanunsios.net +ebayauction.com +ebayaustralia.com +ebayauthenticate.com.cn +ebaybags.com +ebaybank.com +ebaybenefits.com +ebayboutique.com +ebayca.com +ebayca.org +ebaycafe.com +ebaycar.com +ebaycareers.com +ebaycbt.co.kr +ebaycdn.net +ebaychina.net +ebayclassifieds.com +ebayclassifieds.info +ebayclassifieds.org +ebayclassifieds.tv +ebayclassifiedsgroup.com +ebayclassifiedsgroup.info +ebayclassifiedsgroup.org +ebayclassifies.com +ebayclub.com +ebaycoins.com +ebaycom.com +ebaycommercenetwork.com +ebaycourse.com +ebayd.com +ebayde.com +ebaydlassifieds.com +ebaydts.com +ebayedu.com +ebayeletro.com +ebayenterprise.com +ebayenterprise.info +ebayenterprise.net +ebayenterprise.tv +ebayetc.com +ebayexpress.sg +ebayfashion.com +ebayfashion.net +ebayforcharity.org +ebayforeclosure.org +ebayfrance.com +ebayglobalshipping.com +ebaygroup.com +ebayhabit.com +ebayheels.com +ebayhots.com +ebayimg.com +ebayinc.com +ebayinc.net +ebayinc.org +ebayincconnectedcommerce.net +ebayinkblog.com +ebayinternetsalestax.com +ebayit.com +ebayjewelry.com +ebayjob.com +ebayla.org +ebaylisting.com +ebaylocal.net +ebaylocationsdevacances.com +ebaymag.com +ebaymainstreet.com +ebaymall.com +ebaymarketplace.net +ebaymotors.ca +ebaymotors.com +ebaymotors.org +ebaymotorsblog.com +ebaynow.com +ebaynyc.com +ebayon.com +ebayon.net +ebayoncampus.com +ebayopen.com +ebayopensource.com +ebayopensource.net +ebaypakistan.net +ebaypark.com +ebayparts.com +ebayprivacycenter.com +ebayradio.com +ebayrtm.com +ebayseller.com +ebayshoesstore.com +ebayshop.com +ebayshop111.com +ebayshopping.org +ebaysocial.com +ebaysocial.ru +ebaysoho.com +ebaysohos.com +ebaystatic.com +ebaystore.com +ebaystore77.com +ebaystyle.com +ebaysweden.com +ebayt.com +ebaytechblog.com +ebaytopratedseller.net +ebaytrading.com +ebaytradingassistant.com +ebaytv.org +ebayuae.net +ebayvakantiehuizen.com +ebayvalet.com +ebayvietnam.net +ebayworlds.com +ebayy.com +ebc.net.tw +ebi.ac.uk +ebookforipad.com +ebsco.com +ebscohost.com +ebuyheadphones.com +ecapi-pchome.cdn.hinet.net +ecgapp.net +echocdn.com +echosign.com +ecimg.tw +ecoforme.jp +economist.com +economistgroup.com +economistgroupcareers.com +ecpa.fr +edcity.hk +edgedatg.com +edgefonts.net +edisebay.com +editorx.com +edninfo.com +edu-research.org +eduplus.hk +edx-cdn.org +edx.org +eebay.com +eenike.com +eff.org +efproject.net +egghead.io +egmontbooks.co.uk +egta.com +ehgt.org +ehtracker.org +ehwiki.org +einstein.com +eiu.com +ekhindi.com +ekhokavkaza.com +elasticbeanstalk.com +elderscrolls.com +electrek.co +electricluxury.com +electrochem.org +electronicarts.com +electronicarts.fr +electronjs.org +element.io +elephantsdream.org +elgaronline.com +elib.maruzen.co.jp +elifesciences.org +elite.com +elixir-lang.org +elrepo.org +els-cdn.com +elsevier-ae.com +elsevier.com +elsevier.io +emac.co.in +emac.in +emagic.de +embase.com +embed-cdn.com +embed.ly +embedly.com +embl-hamburg.de +embl.de +embl.fr +embl.it +embl.org +emblstatic.net +embs.org +emcs.org +emerald.com +emojipedia.org +emome.net +ems-ph.org +enablementadobe.com +enanyang.my +encoretvb.com +enfa.co.id +enfa.com.vn +enfaaplus.com +enfababy.com +enfabebe.com +enfabebe.com.br +enfabebe.com.co +enfabebe.com.do +enfabebe.com.ec +enfabebe.com.mx +enfabebe.com.pe +enfabebe.com.ve +enfabebe3.com.ar +enfagrow.co.in +enfagrow.com.bn +enfagrow.com.my +enfagrow.com.ph +enfagrow.com.sg +enfagrow4.com +enfamama.com.ar +enfamama.com.ph +enfamil.ca +enfamil.com +enfamil.es +enfamil.pl +enfamil.pt +enfasmart.com +engineeringvillage.com +enpirion.com +enspireformula.com +enteentegeh.de +entermediadb.net +entermediadb.org +enterprisepaging.com +enterprisessl.com +entrust.net +entrustdatacard.com +epicbrowser.com +epicgames.com +epicreads.com +epigeum.com +epinions.com +episodic.com +epoch.cloud +epoch.org.il +epochbuy.com +epochcar.com +epochhk.com +epochmall.com +epochmediagroup.com +epochshop.com +epochstories.com +epochtime.com +epochtimes-bg.com +epochtimes-romania.com +epochtimes.co.il +epochtimes.co.kr +epochtimes.co.uk +epochtimes.com +epochtimes.com.au +epochtimes.com.br +epochtimes.com.sg +epochtimes.com.tw +epochtimes.com.ua +epochtimes.cz +epochtimes.de +epochtimes.eu +epochtimes.fr +epochtimes.it +epochtimes.jp +epochtimes.nl +epochtimes.pl +epochtimes.ru +epochtimes.se +epochtimeshk.org +epochtimestr.com +epochweek.com +epochweekly.com +eporner.com +eprc.com.hk +eprintsw.com +erabaru.net +eracom.com.tw +erlang.org +erogames.com +es-visiontimes.com +esbeatsbydrebuy.com +escandinavia-arg.com +escape.com.au +escapestudios.co.uk +esm.run +esmarthealth.com +esp32.com +esp8266.com +espadoldettol.com.ar +espn.co.uk +espn.com +espn.hb.omtrdc.net +espn.net +espncdn.com +espndotcom.tt.omtrdc.net +espnqa.com +espressif.com +esri.com +etbc.com.hk +etheadphones.com +ethereum.foundation +ethereum.org +etnet.com.hk +etpress.com.hk +ettoday.net +ettrade.com.hk +etviet.com +etvonline.hk +etwealth.com +eu-consumer-empowerment.com +eubluecardvisa.com +eurekaselect.com +euroipad.com +europalibera.org +europepmc.org +eventsinfocus.org +evernote.com +evise.com +evropaelire.org +eworld.com +exacttarget.com +exascale-tech.com +excedo.com +excitebots.com +exec-appointments.com +exhentai.org +experience-vmware.com +experiencebillmelater.com +expertmaker.com +exploreintel.com +expresswifi.com +ext-twitch.tv +extensionworkshop.com +eyny.com +f-droid.org +f8.com +faacebok.com +faacebook.com +faasbook.com +facbebook.com +facbeok.com +facboo.com +facbook.com +facbool.com +facboox.com +faccebook.com +faccebookk.com +facdbook.com +facdebook.com +face-book.com +faceabook.com +facebboc.com +facebbook.com +facebboook.com +facebcook.com +facebdok.com +facebgook.com +facebhook.com +facebkkk.com +facebo-ok.com +faceboak.com +facebock.com +facebocke.com +facebof.com +faceboik.com +facebok.com +facebokbook.com +facebokc.com +facebokk.com +facebokok.com +faceboks.com +facebol.com +facebolk.com +facebomok.com +faceboo.com +facebooa.com +faceboob.com +faceboobok.com +facebooc.com +faceboock.com +facebood.com +facebooe.com +faceboof.com +facebooi.com +facebooik.com +facebooik.org +facebooj.com +facebook-corp.com +facebook-covid-19.com +facebook-ebook.com +facebook-forum.com +facebook-hardware.com +facebook-inc.com +facebook-login.com +facebook-newsroom.com +facebook-newsroom.org +facebook-pmdcenter.com +facebook-pmdcenter.net +facebook-pmdcenter.org +facebook-privacy.com +facebook-program.com +facebook-studio.com +facebook-support.org +facebook-texas-holdem.com +facebook-texas-holdem.net +facebook.br +facebook.ca +facebook.cc +facebook.com +facebook.design +facebook.hu +facebook.in +facebook.net +facebook.nl +facebook.org +facebook.se +facebook.shop +facebook.tv +facebook.us +facebook.wang +facebook123.org +facebook30.com +facebook30.net +facebook30.org +facebook4business.com +facebookads.com +facebookadvertisingsecrets.com +facebookappcenter.info +facebookappcenter.net +facebookappcenter.org +facebookatschool.com +facebookawards.com +facebookblueprint.net +facebookbrand.com +facebookbrand.net +facebookcanadianelectionintegrityinitiative.com +facebookcareer.com +facebookcheats.com +facebookck.com +facebookclub.com +facebookcom.com +facebookconnect.com +facebookconsultant.org +facebookcoronavirus.com +facebookcovers.org +facebookcredits.info +facebookdating.net +facebookdevelopergarage.com +facebookdusexe.org +facebookemail.com +facebookenespanol.com +facebookexchange.com +facebookexchange.net +facebookfacebook.com +facebookflow.com +facebookgames.com +facebookgraphsearch.com +facebookgraphsearch.info +facebookgroups.com +facebookhome.cc +facebookhome.com +facebookhome.info +facebookhub.com +facebooki.com +facebookinc.com +facebookland.com +facebooklikeexchange.com +facebooklive.com +facebooklivestaging.net +facebooklivestaging.org +facebooklogin.com +facebooklogin.info +facebookloginhelp.net +facebooklogs.com +facebookmail.com +facebookmail.tv +facebookmanager.info +facebookmarketing.info +facebookmarketingpartner.com +facebookmarketingpartners.com +facebookmobile.com +facebookmsn.com +facebooknews.com +facebooknfl.com +facebooknude.com +facebookofsex.com +facebookook.com +facebookpaper.com +facebookpay.com +facebookphonenumber.net +facebookphoto.com +facebookphotos.com +facebookpmdcenter.com +facebookpoke.net +facebookpoke.org +facebookpoker.info +facebookpokerchips.info +facebookporn.net +facebookporn.org +facebookporno.net +facebookportal.com +facebooks.com +facebooksafety.com +facebooksecurity.net +facebookshop.com +facebooksignup.net +facebooksite.net +facebookstories.com +facebookstudios.net +facebookstudios.org +facebooksupplier.com +facebooksuppliers.com +facebookswagemea.com +facebookswagstore.com +facebooksz.com +facebookthreads.net +facebooktv.net +facebooktv.org +facebookvacation.com +facebookw.com +facebookwork.com +facebookworld.com +facebool.com +facebool.info +facebooll.com +faceboom.com +faceboon.com +faceboonk.com +faceboooik.com +faceboook.com +faceboop.com +faceboot.com +faceboox.com +facebopk.com +facebpook.com +facebuk.com +facebuok.com +facebvook.com +facebyook.com +facebzook.com +facecbgook.com +facecbook.com +facecbook.org +facecook.com +facecook.org +facedbook.com +faceebok.com +faceebook.com +faceebot.com +facegbok.com +facegbook.com +faceid99.com +faceid99.net +faceidglobal.com +faceobk.com +faceobok.com +faceobook.com +faceook.com +facerbooik.com +facerbook.com +facesbooc.com +facesounds.com +facetime.net +facetook.com +facevbook.com +facewbook.co +facewook.com +facfacebook.com +facfebook.com +faciometrics.com +fackebook.com +facnbook.com +facrbook.com +factograph.info +factwire.org +facultyopinions.com +facvebook.com +facwebook.com +facxebook.com +fadebook.com +faebok.com +faebook.com +faebookc.com +faeboook.com +faecebok.com +faesebook.com +fafacebook.com +faicbooc.com +fairmarket.com +famifun.com.tw +family.co.jp +family.com.tw +familymart.com.my +familymart.com.ph +famima.vn +famosascalvas.com +fanatical.com +fanbox.cc +fandango.com +fandom.com +fandom.zendesk.com +fanhaodian.com +fantv.hk +fapster.xxx +farfetch-apps.com +farfetch-contents.com +farfetch.com +farfetch.net +faronics.ca +faronics.co.uk +faronics.com +faronics.com.au +faronics.com.sg +faronics.eu +faronics.kayako.com +faronics.tech +faronicslabs.com +faronicswise.co.uk +faronicswise.com +fasebokk.com +fasebook.com +faseboox.com +fashionnike.com +fast.com +fastlane.ci +fastlane.tools +fastly-terrarium.com +fastly.com +fastly.net +fastlylabs.com +fastlylb.net +faststone.org +fasttext.cc +fasttrackreadysupport.com +favebook.com +faycbok.com +fb.careers +fb.com +fb.me +fbacebook.com +fbbmarket.com +fbboostyourbusiness.com +fbcdn-a.akamaihd.net +fbcdn.com +fbcdn.net +fbf8.com +fbfeedback.com +fbhome.com +fbidb.io +fbinc.com +fbinfer.com +fbinnovation.com +fblitho.com +fbmarketing.com +fbmessenger.com +fbredex.com +fbreg.com +fbrell.com +fbrpms.com +fbsbx.com +fbsbx.net +fbsupport-covid.net +fbthirdpartypixel.com +fbthirdpartypixel.net +fbthirdpartypixel.org +fburl.com +fbworkmail.com +fcacebook.com +fcaebook.com +fcebook.com +fcebookk.com +fcfacebook.com +fdacebook.info +fdiintelligence.com +feacboo.com +feacbook.com +feacbooke.com +feacebook.com +fecbbok.com +fecbooc.com +fecbook.com +feceboock.com +fecebook.net +feceboox.com +fececbook.com +fedoraforum.org +fedoramagazine.org +fedoraproject.org +feedburner.com +feedly.com +femalefounderscomp.com +feook.com +ferabook.com +fescebook.com +fesebook.com +ffacebook.com +fffdm.com +fflick.com +fflnk.net +ffmpeg.org +ffotolia.com +ffprofile.com +fgacebook.com +ficeboock.com +fifastreet.com +fifastreet3.com +fightforux.com +figma.com +filipino-music.net +finalcutpro.com +financeleadsonline.com +financialadvisoriq.com +financialsoccer.ca +findacard.com +findercdn.me +findmybeats.com +findmyipad.com +findyourlimits.com +finenike.com +finish.at +finish.bg +finish.co.kr +finish.co.nz +finish.co.uk +finish.co.za +finish.com.hr +finish.com.tr +finish.de +finish.es +finish.fr +finish.gr +finish.hu +finish.lv +finish.pl +finish.pt +finish.ro +finish.si +finish.sk +finisharabia.com +finishbrasil.com.br +finishdishwashing.ca +finishdishwashing.com +finishinfo.be +finishinfo.cl +finishinfo.com +finishinfo.com.ar +finishinfo.com.au +finishinfo.cz +finishinfo.fi +finishinfo.it +finishinfo.jp +finishinfo.nl +finishinfo.no +finishinfo.ru +finishinfo.se +finishkilpailu.fi +finishwin.be +finlitsummit.org +fiotolia.com +fire-emblem-heroes.com +firebaseapp.com +firebaseio.com +fireemblemawakening.com +firefox.com +firefoxusercontent.com +fireside.fm +firesidegatherings.com +firestone.cl +firestone.co.cr +firestone.com.ar +firestone.com.br +firestone.com.co +firestone.com.mx +firestonebpco.com +firestonecomercial.cl +firestonecomercial.co.cr +firestonecomercial.com.ar +firestonecomercial.com.br +firestonecomercial.com.co +firestonecomercial.com.mx +firestonecompleteautocare.com +firestonedrivestore.com +firestoneip.com +firestonerewards.com +firestonetire.ca +firestonetire.com +firewire.cl +firewire.eu +firstsearch.oclc.org +fixtracking.com +flathub.org +flatmates.com.au +flatpak.org +flic.kr +flickr.com +flickr.net +flipnotestudio.com +flipshare.com +flipwithsurface.com +flirt4free.com +flow.dev +flow.org +flowtype.org +fluidpreview.com +flutter.dev +flutterapp.com +fmcebook.com +fnacebook.com +fnlondon.com +foampositeshoes.com +foftolia.com +follasian.com +fonolia.com +fontawesome.com +fontbook.com +fontexplorerx.com +fonts.com +fonts.net +fontshop-prod-responsive-images.s3.amazonaws.com +fontshop.com +fontsinuse.com +foofle.com +footseen.com +forbes.com +forbesimg.com +force.com +forgecdn.net +fortawesome.com +forthebadge.com +forthethrone.com +fortnite.com +fortuneinsight.com +forzamotorsport.net +forzaracingchampionship.com +forzarc.com +fosebook.com +fotiolia.com +fotoiia.com +fotolia-noticias.com +fotolia.cc +fotolia.com +fotolia.tv +fotolja.com +foundationdb.org +fox-corporation.com +fox-news.com +fox.com +fox.tv +fox10.tv +fox10news.com +fox10phoenix.com +fox11.com +fox13memphis.com +fox13news.com +fox23.com +fox23maine.com +fox247.com +fox247.tv +fox26.com +fox26houston.com +fox28media.com +fox29.com +fox2detroit.com +fox2news.com +fox32.com +fox32chicago.com +fox35orlando.com +fox38corpuschristi.com +fox42kptm.com +fox46.com +fox46charlotte.com +fox47.com +fox49.tv +fox4news.com +fox51tns.net +fox5atlanta.com +fox5dc.com +fox5ny.com +fox5storm.com +fox6now.com +fox7.com +fox7austin.com +fox9.com +foxacrossamerica.com +foxaffiliateportal.com +foxandfriends.com +foxbet.com +foxbusiness.com +foxbusiness.tv +foxbusinessgo.com +foxcanvasroom.com +foxcareers.com +foxcharlotte.com +foxcincy.com +foxcincy.jobs +foxcincy.net +foxcollegesports.com +foxcorporation.com +foxcreativeuniversity.com +foxcredit.com +foxcredit.org +foxd.tv +foxdcg.com +foxdeportes.com +foxdeportes.net +foxdeportes.tv +foxdigitalmovies.com +foxdoua.com +foxentertainment.com +foxest.com +foxfaq.com +foxfdm.com +foxfiles.com +foxinc.com +foxkansas.com +foxla.com +foxla.tv +foxlexington.com +foxmediacloud.com +foxnation.com +foxnebraska.com +foxneo.com +foxneodigital.com +foxnetworks.info +foxnetworksinfo.com +foxnews.cc +foxnews.com +foxnews.net +foxnews.org +foxnews.tv +foxnewsaffiliates.com +foxnewsaroundtheworld.com +foxnewsb2b.com +foxnewschannel.com +foxnewsgo.net +foxnewsgo.org +foxnewsgo.tv +foxnewshealth.com +foxnewslatino.com +foxnewsmagazine.com +foxnewsnetwork.com +foxnewsopinion.com +foxnewsplayer-a.akamaihd.net +foxnewspodcasts.com +foxnewspolitics.com +foxnewsradio.com +foxnewsrundown.com +foxnewssunday.com +foxon.com +foxphiladelphia.com +foxplus.com +foxpoker.com +foxrad.io +foxredeem.com +foxrelease.com +foxrichmond.com +foxrobots.com +foxsmallbusinesscenter.com +foxsmallbusinesscenter.net +foxsmallbusinesscenter.org +foxsoccer.net +foxsoccer.tv +foxsoccermatchpass.com +foxsoccerplus.com +foxsoccerplus.net +foxsoccerplus.tv +foxsoccershop.com +foxsports-chicago.com +foxsports-newyork.com +foxsports-world.com +foxsports.cl +foxsports.co +foxsports.co.ve +foxsports.com +foxsports.com.ar +foxsports.com.bo +foxsports.com.br +foxsports.com.co +foxsports.com.ec +foxsports.com.gt +foxsports.com.mx +foxsports.com.pe +foxsports.com.py +foxsports.com.uy +foxsports.com.ve +foxsports.gt +foxsports.info +foxsports.net +foxsports.net.br +foxsports.pe +foxsports.sv +foxsports.uy +foxsports2.com +foxsportsflorida.com +foxsportsgo.com +foxsportsla.com +foxsportsnetmilwaukee.com +foxsportsneworleans.com +foxsportsracing.com +foxsportssupports.com +foxsportsuniversity.com +foxsportsworld.com +foxstudiolot.com +foxsuper6.com +foxtel.com +foxtel.com.au +foxtelevisionstations.com +foxtv.com +foxtvdvd.com +foxuv.com +foxweatherwatch.com +fpacebook.com +fptolia.com +fqcebook.com +fr-beatsbydrestore.com +fracebook.com +fragrancebay.com +francecasquebeatssolde.com +francemail.com +frcasquesbeats.com +free-aa.com +free-sns.com +freeb.com +freebasics.com +freebasics.net +freebeacon.com +freebrowser.org +freebs.com +freebsd.org +freecodecamp.org +freedirecttvspecial.com +freedomplatform.tv +freefacebook.com +freefacebook.net +freefacebookads.net +freefblikes.com +freehulu.com +freenetproject.org +freenode.net +freessl.com +freeviewplus.net.au +freewechat.com +freindfeed.com +frescolib.org +friendbook.info +friendfed.com +friendfeed-api.com +friendfeed-media.com +friendfeed.com +friendfeedmedia.com +frishoes.com +frontiersin.org +froogle.com +frostbite.com +fsacebok.com +fscebook.com +fsdn.com +fse.tv +fssta.com +fstopimages.com +ft.com +ftadviser.com +ftcdn.net +ftchinese.com +fteproxy.org +ftiecla.com +ftv.com.tw +ftvnews.com.tw +fuchsia.dev +fujinkoron.jp +fundaiphone5s.com +fundfire.com +fundinginstitutional.com +fundpaypal.com +fundraisingwithfacebook.com +funimation.com +funnyfacebook.org +funnyordie.com +fury.blog +fury.co +fury.dev +fury.help +fury.io +futhead.com +futpromos.com +futunited.com +futureofbusinesssurvey.org +futureshop.ca +fxn.ws +fxnetwork.com +fxnetworks.com +fzdm.com +g-technology.com +g-tun.com +g-tvapp.com +g.co +g.dev +g.page +gab.com +gacebook.com +galaxyappstore.com +galaxymobile.jp +gale.com +galegroup.com +game-platform.net +gamebeforethegame.com +gamedownloads-rockstargames-com.akamaized.net +gameon-masters.com +gamepedia.com +gamer-cds.cdn.hinet.net +gamer.com.tw +gamer2-cds.cdn.hinet.net +gameroom.com +gamesstack.com +gameuxmasterguide.com +gaming-notebooks.com +gannett-cdn.com +gannett.com +gannettdigital.com +garena.co.id +garena.co.th +garena.com +garena.live +garena.my +garena.ph +garena.sg +garena.tv +garena.tw +garena.vn +garenanow.com +gateway.dev +gaypad.net +gbnews.uk +gcld-line.com +gclubs.com +gcr.io +gcrtires.com +gdansk-amazon.com +gears5.com +gearspop.com +gearstactics.com +geek-squad-support.com +geek-squad.net +geek-squad.org +geek-squads.net +geeksquad.ca +geeksquad.cc +geeksquad.com +geeksquad.net +geeksquad.tv +geeksquadcares.com +geeksquadcentral.com +geeksquadforums.com +geeksquadonline.com +geeksquadprotectionplan.org +geeksquadservices.org +geeksquadwebroot.org +geelongadvertiser.com.au +geforce.co.kr +geforce.co.uk +geforce.com +geforce.com.tw +gemfire.net +gemfury.com +gemini.yahoo.com +gen.lib.rus.ec +gendai.net +gentoo.org +geodesummit.com +geolytics.com +geoport.com +geotrust.com +geph.io +geraldoatlarge.com +gerritcodereview.com +get.app +get.dev +get.how +get.page +getadblock.com +getbootstrap.com +getboxer.com +getbraintree.com +getbumptop.com +getcomposer.org +getdirect.tv +getdrebeatssale.com +getdropbox.com +getfedora.org +geti2p.net +getlantern.org +getpocket.com +getprintersupports.com +gettr.com +gettyimages.ae +gettyimages.at +gettyimages.be +gettyimages.ca +gettyimages.ch +gettyimages.co.jp +gettyimages.co.nz +gettyimages.co.uk +gettyimages.com +gettyimages.com.au +gettyimages.com.br +gettyimages.com.mx +gettyimages.de +gettyimages.dk +gettyimages.es +gettyimages.fi +gettyimages.fr +gettyimages.hk +gettyimages.ie +gettyimages.in +gettyimages.it +gettyimages.nl +gettyimages.no +gettyimages.pt +gettyimages.se +getws1.com +getwsone.com +gfacecbook.com +gfashion.com +gfotolia.com +gfw.press +gfw.report +gfx.ms +gfycat.com +ggoogle.com +ggpht.com +ggsrv.com +ghcr.io +ghostgames.com +gigabyte.com +gigabyte2.azureedge.net +gigjam.com +ginzasonypark.jp +gipscorp.com +giratina.com +girlspoopingtube.com +gisplanning.com +git-scm.com +git.io +gitbook.com +gitbook.io +github-cloud.s3.amazonaws.com +github.blog +github.com +github.community +github.dev +github.io +githubapp.com +githubassets.com +githubhackathon.com +githubpreview.dev +githubstatus.com +githubuniverse.com +githubusercontent.com +gitlab-assets.oss-cn-hongkong.aliyuncs.com +gitlab-static.net +gitlab.com +gitlab.io +gitlab.net +gitstar.com +gitstar.net +gittigidiyor.net +gittigidiyorsikayet.com +glasamerike.net +global-sci.org +globaledu.org +globalriskregulator.com +globalsecurity.org +globalsign-media.com +globalsign.be +globalsign.ch +globalsign.co.uk +globalsign.com +globalsign.com.au +globalsign.com.hk +globalsign.com.sg +globalsign.es +globalsign.eu +globalsign.fr +globalsign.net +globalsign.nl +globalspec.com +globalvoices.org +globalvoicesonline.org +gloryofheracles.com +glyphsapp.com +gmail.com +gmnetworks.net +gmodules.com +gmoney.org +gnews.org +gnu.org +go-disneyworldgo.com +go-lang.com +go-lang.net +go-lang.org +go.com +go.dev +gobeatsye.com +gobianywhere.com +gobuyonlinestore.net +godaddy.com +godoc.org +goduckgo.com +gofundme.com +gog-statics.com +gog.com +gogle.com +gogo-load.com +gogoanime.vc +gogoanime.wiki +gogocdn.net +gogole.com +golang.com +golang.net +golang.org +goldcoastbulletin.com.au +goldnikeclub.com +golos-ameriki.ru +golosameriki.com +gonglchuangl.net +gonike.com +goo.gl +gooddaychicago.com +goodsdunk.net +googel.com +googil.com +googl.com +google-analytics.com +google-syndication.com +google.ad +google.ae +google.al +google.am +google.as +google.at +google.az +google.ba +google.be +google.berlin +google.bf +google.bg +google.bi +google.bj +google.bs +google.bt +google.by +google.ca +google.cat +google.cd +google.cf +google.cg +google.ch +google.ci +google.cl +google.cm +google.co.ao +google.co.bw +google.co.ck +google.co.cr +google.co.id +google.co.il +google.co.in +google.co.jp +google.co.ke +google.co.kr +google.co.ls +google.co.ma +google.co.mz +google.co.nz +google.co.th +google.co.tz +google.co.ug +google.co.uk +google.co.uz +google.co.ve +google.co.vi +google.co.za +google.co.zm +google.co.zw +google.com +google.com.af +google.com.ag +google.com.ai +google.com.ar +google.com.au +google.com.bd +google.com.bh +google.com.bn +google.com.bo +google.com.br +google.com.bz +google.com.co +google.com.cu +google.com.cy +google.com.do +google.com.ec +google.com.eg +google.com.et +google.com.fj +google.com.gh +google.com.gi +google.com.gt +google.com.hk +google.com.jm +google.com.kh +google.com.kw +google.com.lb +google.com.ly +google.com.mm +google.com.mt +google.com.mx +google.com.my +google.com.na +google.com.ng +google.com.ni +google.com.np +google.com.om +google.com.pa +google.com.pe +google.com.pg +google.com.ph +google.com.pk +google.com.pr +google.com.py +google.com.qa +google.com.sa +google.com.sb +google.com.sg +google.com.sl +google.com.sv +google.com.tj +google.com.tr +google.com.tw +google.com.ua +google.com.uy +google.com.vc +google.com.vn +google.cv +google.cz +google.de +google.dev +google.dj +google.dk +google.dm +google.dz +google.ee +google.es +google.fi +google.fm +google.fr +google.ga +google.ge +google.gg +google.gl +google.gm +google.gr +google.gy +google.hn +google.hr +google.ht +google.hu +google.ie +google.im +google.iq +google.is +google.it +google.je +google.jo +google.kg +google.ki +google.kz +google.la +google.li +google.lk +google.lt +google.lu +google.lv +google.md +google.me +google.mg +google.mk +google.ml +google.mn +google.ms +google.mu +google.mv +google.mw +google.ne +google.net +google.nl +google.no +google.nr +google.nu +google.org +google.pl +google.pn +google.ps +google.pt +google.ro +google.rs +google.ru +google.rw +google.sc +google.se +google.sh +google.si +google.sk +google.sm +google.sn +google.so +google.sr +google.st +google.td +google.tg +google.tl +google.tm +google.tn +google.to +google.tt +google.ventures +google.vg +google.vu +google.ws +googleacquisitionmigration.com +googleadapis.com +googleadservices.com +googleanalytics.com +googleapis.com +googleapps.com +googlearth.com +googleblog.com +googlebot.com +googlecapital.com +googlecert.net +googlecode.com +googlecommerce.com +googlecompare.co.uk +googledanmark.com +googledomains.com +googledrive.com +googlee.com +googleearth.com +googlefiber.net +googlefinland.com +googlemail.com +googlemaps.com +googleoptimize.com +googlepagecreator.com +googlephotos.com +googleplay.com +googleplus.com +googlesource.com +googlestore.com +googlesverige.com +googlesyndication.com +googletagmanager.com +googletagservices.com +googletraveladservices.com +googleusercontent.com +googleventures.com +googlevideo.com +googlr.com +goolge.com +gooogle.com +gopivotal.com +gopivotal.net +gordonmoore.com +gorin.jp +gosq.co +gosq.com +gostorego.com +gotcosmos.com +gotraffic.net +gouri.xyz +govforce.com +gpstheseries.com +gputechconf.co.kr +gputechconf.com +gputechconf.com.au +gputechconf.com.tw +gputechconf.eu +gputechconf.in +gputechconf.jp +grafolio.com +graneodin.com.mx +graph.org +graphengine.io +gravatar.com +gravitytank.com +greatergothammini.com +greatfire.org +greenend.org.uk +greenplum.net +gridaware.app +groups.com +grss-ieee.org +grupobmw.com +gscanada.info +gsccdn.com +gsearch.media +gslink.us +gsrc.io +gstatic.com +gsuite.com +gtv.org +gtv1.org +gtvmediagroupfairfund.com +gu-web.net +guambmw.com +guangming.com.my +guardianapis.com +guardianapps.co.uk +guardianproject.info +gucci.com +guccimuseo.com +guccitimeless.com +guim.co.uk +gumtree.sg +guo.media +gv.com +gvt0.com +gvt1.com +gvt2.com +gvt3.com +gvt5.com +gvt6.com +gvt7.com +gvt9.com +gwiki.net +gwins.org +gwktravelex.nl +hackday.com.au +hackerfacebook.com +hackerguardian.com +hackfacebook.com +hackfacebookid.com +hacklang.org +hacksear.ch +hackthedrive.com +hackyourconsole.com +half.com +half.tv +halfcanada.com +halfjapan.com +handbags-nike.com +handbagsoutletebay.com +hanime.tv +hanime1.me +hanzhen.xmulib.org +happymeal.co.nz +happymeal.com.au +harperacademic.com +harperapps.com +harpercollins.ca +harpercollins.co.in +harpercollins.co.uk +harpercollins.com +harpercollins.com.au +harpercollinsadvantage.com +harpercollinschildrensbooks.co.uk +harpercollinschristian.com +harpercollinsspeakersbureau.com +hashicorp.com +haskell.org +haskellstack.org +hath.network +haveibeenpwned.com +hawaiibmw.com +hayabusa.dev +hayabusa.io +hayabusa.media +hbabit.com +hbfile.net +hbo.com +hboasia.com +hbogo.com +hbogoasia.com +hbogoasia.hk +hbomax.com +hbomaxcdn.com +hbonow.com +hcaptcha.com +hcaptchastatus.com +hcpdts.com +hddirectv.com +hdrplusdata.org +headlinejobs.hk +headphonepubs.com +headphones-cool.com +headphones-dre.com +headphones-outlet-online.com +headphonesbeatsaudio.com +headphonesbeatsbydre.com +headphoneses.com +headphoneshome.com +headphoneshotsales.com +headphonesol.com +headphonesretailer.com +headphonessupply.com +headphonezip.com +heads4-ak-spotify-com.akamaized.net +headset987.com +healthreach.hk +heaven-burns-red.com +heavy-r.com +hebiphone.com +hegre.com +heinonline.org +hellokittybeats.com +hellosmartbook.com +hentai-for.net +hentai-fun.com +hentai-moon.com +hentai.io +hentai.tv +hentai0.com +hentai2012.com +hentaiathome.net +hentaicore.org +hentaidude.com +hentaifox.com +hentaigamer.org +hentaigasm.com +hentaihaven.com +hentaihaven.me +hentaihaven.red +hentaihaven.xxx +hentaiheroes.com +hentaimangaporn.com +hentaiplay.net +hentairead.com +hentaitube.online +hentaiverse.org +hentaiworld.eu +hentaiworld.tv +heptio.com +heraldsun.com.au +heroesofdragonage.com +heroesofthestorm.com +heroku-app.com +heroku-charge.com +heroku.co +heroku.com +heroku.me +herokuapp.com +herokucdn.com +herokucharge.com +herokussl.com +herringnetwork.com +heydoga.com +heywire.com +heyzo.com +hf-iphone.com +hhvm.com +hibdontire.com +hidive.com +hifacebook.info +highbolt.net +highdefinitionbeatsbydre.com +hightopnikes.com +highwirepress.com +himalaya-exchange.zendesk.com +himalaya.exchange +hindawi.com +hindiweb.com +hinet.net +hipaa6020.com +hipzoom.net +historyofdota.com +historyofdota.net +historyofdota.org +hitomi.la +hitun.io +hk01.com +hkbn.com.hk +hkbn.net +hkbnes.net +hkcircleapp.com +hkcitizenmedia.com +hkcnews.com +hkcsl.com +hkedcity.net +hkej.com +hket.com +hketgroup.com +hkgolden.com +hkgolden.media +hkgpao.com +hkheadline.com +hkopentv.com +hkreadingcity.net +hkt-enterprise.com +hkt-eye.com +hkt.com +hkteducation.com +hktpremier.com +hktshop.com +hm.com +hochi.news +hololens.com +homebrew.bintray.com +homedepot-static.com +homedepot.com +homephoneplus.com +hometrack.com.au +honawalaan.com +hongkongfp.com +honkaiimpact3.com +honkaistarrail.com +hooloo.tv +hoolu.com +hoolu.tv +hopstop.tv +hotbeatsonsale.com +hotmail.co +hotmail.com +hotmail.eu +hotmail.net +hotmail.org +hotmonsterbeats.com +hottestheadphonesonline.com +housing.com +housingcdn.com +howtogetmo.co.uk +howtohackfacebook-account.com +hoyolab.com +hoyoverse.com +hp-imagine.com +hp-infolab.com +hp-invent.com +hp-invent.info +hp-mns.com +hp-printing.com +hp-webplatform.com +hp-ww.com +hp.com +hp.company +hp.io +hp3d.com +hp3dmetals.com +hp3dprinter.com +hp3dsamplepromo.com +hpallinoneprinter.com +hpapplicationscenter.com +hpbestbuy.com +hpbluecarpet.com +hpbluecarpet.net +hpbuiltforlearning.com +hpbundle.com +hpcampus.com +hpcatridge.com +hpccp.com +hpceo.com +hpcmw.net +hpcodewarsbcn.com +hpcomputers.com +hpcomputerservices.com +hpconnected.com +hpconnected.net +hpconnected.org +hpconnected.us +hpconnectedstage.com +hpcontinuum.com +hpcpi.com +hpcu.org +hpcustomersupport.com +hpcustomersupport.net +hpdaas.com +hpdesignjetl25500.com +hpdesktopcomputer.com +hpdownloadstore.com +hpdreamcolor.com +hpdriver.com +hpdrivers.com +hpdrivers.org +hpeclipse.com +hpengage.com +hpeprint.com +hpeprintcenter.com +hpeurope.com +hpeventcenter.com +hpfaqs.com +hpfeedback.com +hpgift.com +hpgpas.com +hpgraphicspartners.com +hpiie.org +hpinc.info +hpinc.net +hpindigopress.com +hpinkjet.com +hpinstantink.ca +hpinstantink.com +hpjav.tv +hpkeyboard.com +hplaptop.com +hplaptopbattery.com +hplargeformatremote.com +hplatexknowledgecenter.com +hplfmedia.com +hplip.net +hplipopensource.com +hpmarketplace.com +hpmemorychips.com +hpmicrcartridge.com +hpmini.com +hpmobile.com +hpofficejetprinter.com +hponlinehelp.com +hponlineprinting.com +hppage5000.com +hppavillionlaptop.com +hpphotoscanners.com +hpprinterdrivers.com +hpprinterinstalls.com +hpprintersupplies.com +hpsalescentral.com +hpserver.com +hpservices.com +hpshooping.com +hpshop.com +hpshoping.com +hpshopping.hk +hpsignage.com +hpsmart.com +hpsmarts.com +hpsmartstage.com +hpsmartupdate.com +hpsoftware.com +hpspeaker.com +hpsprocket.com +hpstore-china.com +hpstore-emea.com +hpstore.com +hpstore.corpmerchandise.com +hpstorethailand.com +hpsupport.com +hpsuresupply.com +hptechventures.com +hpto.net +hptouch.com +hptouchpointmanager.com +hptrainingcenter.com +hpuae.com +hpuniversity.info +hpusertraining.com +hpveer.com +hpvirtualthin.com +hpwallart.com +hpwellnesscentral.com +hpwsn.com +hqporner.com +hrsaz.com +hsfacebook.com +hsxhr.cc +html5rocks.com +httpfacebook.com +httpsfacebook.com +httpwwwfacebook.com +hu1u.com +huanghuagang.org +huanyuju.com +huffingtonpost.ca +huffingtonpost.co.uk +huffingtonpost.co.za +huffingtonpost.com +huffingtonpost.com.au +huffingtonpost.com.mx +huffingtonpost.de +huffingtonpost.es +huffingtonpost.fr +huffingtonpost.gr +huffingtonpost.in +huffingtonpost.it +huffingtonpost.jp +huffingtonpost.kr +huffpost.com +huffpostarabi.com +huffpostbrasil.com +huffpostmaghreb.com +huloo.cc +huloo.tv +hulu.com +hulu.tv +hulu.us +huluaction.com +huluad.com +huluapp.com +huluasks.com +hulucall.com +hulufree.com +hulugans.com +hulugermany.com +hulugo.com +huluim.com +huluinstantmessenger.com +huluitaly.com +hulunet.com +hulunetwork.com +huluplus.com +hulupremium.com +hulupurchase.com +huluqa.com +hulurussia.com +huluspain.com +hulusports.com +hulustream.com +huluteam.com +hulutv.com +huluusa.com +humblebundle.com +hummingbird.ms +huobi.com +huobi.me +huobi.pro +huobi.sc +huobiasia.vip +huobigroup.com +huobitoken.com +hutao.cloud +hutpromos.com +hwgo.com +hwslabs.com +hxc10.vip +hxcsxs.pro +hyperscan.io +i-123-hp.com +i-book.com +i-book.net +i-cable.com +i-o-u.info +i-scmp.com +i.jeded.com +i.org +iaablog.com +iam.soy +iamakamai.com +iamakamai.net +iamremarkable.org +ibb.co +ibeats-uk.com +ibeatsbydre.cc +ibeatsbydre.com +ibm.com +ibm.eu +ibm.net +ibm.us +ibook.co.nz +ibook.com +ibook.eu +ibook.net +ibookpartner.com +ibooksauthor.com +ic.ac.uk +icashpassport.com.mx +icevirtuallibrary.com +ichat.co.in +ichineseporn.com +icloud-content.com +icloud-isupport.com +icloud.ch +icloud.com +icloud.de +icloud.ee +icloud.fi +icloud.fr +icloud.hu +icloud.ie +icloud.is +icloud.jp +icloud.lv +icloud.om +icloud.org +icloud.pt +icloud.ro +icloud.se +icloud.si +icloud.sk +icloud.vn +icloudads.net +icloudbox.net +icloudbrowser.net +icloude.com +icloudhome.com +icloudmail.net +icloudmusic.net +icloudnet.net +icloudo.com +icloudo.de +icloudo.net +icloudos.de +icloudos.net +icloudpay.net +icloudsecure.net +icloudsetup.com +icsd.fiz-karlsruhe.de +idelreal.org +identrust.co.uk +identrust.com +identrust.net +idnike.com +idservice.inc +idvd.eu +ie10.com +ie11.com +ie8.co +ie9.com +iebay.com +ieee-aess.org +ieee-cas.org +ieee-ccnc.org +ieee-ceda.org +ieee-ecce.org +ieee-edusociety.org +ieee-ies.org +ieee-ims.org +ieee-into-focus.org +ieee-isto.org +ieee-npss.org +ieee-pels.org +ieee-pes.org +ieee-ras.org +ieee-region6.org +ieee-sensors.org +ieee-tems.org +ieee-uffc.org +ieee-vics.org +ieee.ca +ieee.org +ieee.tv +ieeeaps.org +ieeecsc.org +ieeecss.org +ieeeday.org +ieeedeis.org +ieeefoundation.org +ieeemagnetics.org +ieeemce.org +ieeenano.org +ieeeoes.org +ieeer10.org +ieeer5.org +ieeer8.org +ieeesmc.org +ieeesystemscouncil.org +ieeeusa.org +ietf.org +ifontcloud.com +ig.me +igcdn.com +igi-global.com +ign.jp +ignites.com +ignitesasia.com +igniteseurope.com +igoogle.com +igoshopping.net +igpublish.com +igsonar.com +igtv.com +iijav.com +iina.io +ikea.com +ikea.net +ikids.com +ilecture.co.nz +ilife.eu +ilife.gr +ilife.wang +illianacomputerrecycling.com +ilongman.com +imac-applecomputer.com +imac.co +imac.co.nz +imac.com +imac.eu +imac.gr +imac.one +imac.rs +imacapplecomputer.com +imacsources.com +imagebam.com +imagecurl.com +imagecurl.org +images-amazon.com +imageshack.com +imageshack.us +imagetwist.com +imageworks.com +imaginecup.pl +imagineecommerce.com +imdb.com +imdb.to +imessage.tv +img-prod-cms-rt-microsoft-com.akamaized.net +img-s-msn-com.akamaized.net +imgbb.com +imgcrl.org +imgix.com +imgix.net +imgsmail.ru +imgur.com +imgurinc.com +immidio.com +immxd.com +imod.com +imonsterbeats.com +imovie.eu +imoviegallery.com +imoviestage.com +imperial.ac.uk +imperial.insendi.com +imperialbusiness.school +impermium.com +imstagram.com +imtagram.com +inasian.club +incentivetravelgifts.com +inclusivegrowthscore.com +ind.sh +indazn.com +indaznlab.com +independentoperatorcn.com +india.com +indiaipad.com +indiancolleges.com +industrialtoys.com +infolinker.com.tw +informs.org +infotimes.com.tw +infowars.com +infowarsmedia.com +infrapedia.com +ingads.com +ingka.com +ingka.dev +ingkacentres.com +inikesneakers.com +init.shop +initproducts.com +inkchoice.com +inlethd.com +inmediahk.net +innovations-i.com +inoreader.com +inside.com.tw +insidefilms.com +insidemacintosh.com +insider-intelligence.com +insider.com +insiderdevtour.com +insiderintelligence.com +insidevoa.com +instaadder.com +instachecker.com +instafallow.com +instafollower.com +instagainer.com +instagda.com +instagify.com +instagmania.com +instagor.com +instagram-brand.com +instagram-engineering.com +instagram-help.com +instagram-press.com +instagram-press.net +instagram.com +instagramci.com +instagramcn.com +instagramdi.com +instagramhashtags.net +instagramhilecim.com +instagramhilesi.org +instagramium.com +instagramizlenme.com +instagramkusu.com +instagramlogin.com +instagramm.com +instagramn.com +instagrampartners.com +instagramphoto.com +instagramq.com +instagramsepeti.com +instagramtakipcisatinal.net +instagramtakiphilesi.com +instagramtips.com +instagramtr.com +instagran.com +instagranm.com +instagrem.com +instagrm.com +instagtram.com +instagy.com +instamgram.com +instangram.com +instantink.com +instantssl.com +instanttelegram.com +instaplayer.net +instastyle.tv +instgram.com +instituteofwar.org +intagram.com +intagrm.com +intc.com +integral7.com +intel-research.net +intel-university-collaboration.net +intel.ac +intel.ae +intel.af +intel.ag +intel.ai +intel.ar +intel.at +intel.az +intel.ba +intel.bg +intel.bh +intel.bi +intel.bo +intel.bs +intel.by +intel.ca +intel.cc +intel.cg +intel.ch +intel.cl +intel.cm +intel.co.ae +intel.co.cr +intel.co.id +intel.co.il +intel.co.jp +intel.co.kr +intel.co.uk +intel.co.za +intel.com +intel.com.ar +intel.com.au +intel.com.bo +intel.com.br +intel.com.co +intel.com.ec +intel.com.hk +intel.com.jm +intel.com.mx +intel.com.my +intel.com.pe +intel.com.ph +intel.com.pr +intel.com.py +intel.com.tr +intel.com.tw +intel.com.uy +intel.com.ve +intel.cr +intel.cu +intel.cz +intel.de +intel.dk +intel.dz +intel.ec +intel.ee +intel.eg +intel.es +intel.eu +intel.fi +intel.fr +intel.ga +intel.gd +intel.ge +intel.gl +intel.gm +intel.gr +intel.gs +intel.gt +intel.gy +intel.hk +intel.hn +intel.ht +intel.hu +intel.ie +intel.in +intel.io +intel.it +intel.je +intel.jo +intel.jp +intel.ke +intel.la +intel.lc +intel.lk +intel.lt +intel.lu +intel.ly +intel.ma +intel.md +intel.me +intel.mg +intel.mk +intel.mn +intel.mp +intel.mt +intel.mu +intel.mw +intel.mx +intel.my +intel.ng +intel.nl +intel.nu +intel.nz +intel.pa +intel.pe +intel.ph +intel.pl +intel.pn +intel.re +intel.ro +intel.ru +intel.rw +intel.sa +intel.sc +intel.se +intel.sg +intel.si +intel.sk +intel.sn +intel.sr +intel.st +intel.sv +intel.sx +intel.sy +intel.tf +intel.tj +intel.tl +intel.tm +intel.tn +intel.tt +intel.tv +intel.tw +intel.ua +intel.uk +intel.us +intel.uy +intel.uz +intel.vg +intel.vn +intel.vu +intel.wf +intel.yt +intelamericasstore.com +intelapacstore.com +intelatom.net +intelcapital.com +intelcapital.net +intelcloudbuilders.com +intelcloudfinder.com +intelemeastore.com +inteleventexpress.com +intelforchange.com +intelfreepress.com +intelgo.net +intelinsight.com +inteliotmarketplace.com +intell.com +intellearningseries.com +intellij.com +intellij.net +intellij.org +intellinuxgraphics.com +intellinuxgraphics.net +intellinuxwireless.net +intelnervana.com +intelnet.component +intelplay.com +intelquark.com +intelrealsense.com +intelrxt.com +intelsalestraining.com +intelsecurity.com +intelserveredge.com +intelsoftwarenetwork.com +intelstore.com +inteltechnologyprovider.com +intelvmwarecybersecurity.com +interactive-examples.mdn.mozilla.net +intercamcashpassport.com.mx +intercom.com +intercom.io +intercomassets.com +intercomcdn.com +internationalconnectionsacademy.com +internationalsaimoe.com +internet.org +internetdownloadmanager.com +internetexplorer.co +internetexplorer.com +internetofeverything.com +intgram.com +intheknow.com.au +intunewiki.com +inventorship.com.au +investorschronicle.co.uk +ioe.com +ioffergift.com +iop.org +ios-icloud.com +iosinthecar.com +iotinactionevents.com +ip.sb +ip73.com +ipa-iphone.net +ipad.co.kr +ipad.de +ipad.host +ipad.wang +ipad3.com +ipadair.cl +ipadair.cm +ipadair.com.br +ipadair.com.es +ipadair.fr +ipadair.hk +ipadair.ie +ipadair.jp +ipadair.tw +ipadaustralia.com +ipadmini.cm +ipadmini.com.lk +ipadmini.lk +ipadpro.buzz +ipfs.io +iphine.com +iphone-cd.com +iphone-cn.com +iphone-sh.com +iphone-vip1.com +iphone-vip2.com +iphone-vip3.com +iphone-vip4.com +iphone-vip5.com +iphone-x.tv +iphone-yh.com +iphone-zh.com +iphone.cm +iphone.com +iphone.com.au +iphone.com.gr +iphone.es +iphone.host +iphone.net.gr +iphone.pt +iphone.rs +iphone.ru +iphone.wang +iphone4.com +iphone4.com.br +iphone4s.com +iphone5.com +iphone5casescovers.com +iphone5s5case.com +iphoneacessorios.com.br +iphonecase2013.com +iphonecase5.com +iphonecases100.com +iphonecases5.com +iphoneclaro.com.br +iphonecollcase.com +iphonefc.com +iphonegermany.com +iphonehangzhou.com +iphoneimessage.com +iphoneplus.wang +iphonerip.net +iphonese.tv +iphoneunlockimei.com +iphonexs.tv +iphoto.eu +iphoto.no +iphoto.se +iphoto.wang +ipleadership.org +ipod.ca +ipod.ch +ipod.cm +ipod.co +ipod.co.nz +ipod.co.uk +ipod.co.za +ipod.com +ipod.com.au +ipod.com.fr +ipod.com.hk +ipod.com.sg +ipod.com.tw +ipod.de +ipod.es +ipod.eu +ipod.fr +ipod.gr +ipod.hk +ipod.is +ipod.net +ipod.no +ipod.pk +ipod.rs +ipod.ru +ipod.tw +ipodcentre.nl +ipodcleaner.com +ipoditouch.com +ipodnano.com +ipodnano.net +ipodprices.com +ipodrip.ca +ipodrocks.com.au +ipods.com +ipodshop.com.au +ipodtouch.co +ipodtouch.com +ipple.com +ippog.org +ippstatic.com +iproperty.com +iproperty.com.my +iproperty.com.sg +ironna.jp +irribay.com +is.gd +isca-speech.org +ischool.com +isexlove.tw +isexomega.tw +isiknowledge.com +iskoot.com +islamiccenterofnewlondon.com +issquaredown.com +issquareup.com +italiabeatsbydrdre.com +itcanwait.com +itcfonts.com +itfromtheinside.com +itnel.com +itools.info +itripto.com +itsbetterwhenyouwinit.com +itsoc.org +itu.int +itun.es +itunbes.com +ituneas.com +itunes-radio.net +itunes.ca +itunes.co +itunes.co.th +itunes.com +itunes.hk +itunes.mx +itunes.org +itunes.rio +itunes.us +itunes12days.com +itunesessentials.com +itunesfestivals.com +itunesiradio.com +ituneslatino.com +ituneslogin.net +itunesmatch.com +itunesparty.com +itunesradio.com +itunesradio.rio +itunesradio.tv +itunesradio.tw +itunesstore.co +itunesu.com +itunesu.net +ius.io +iutunes.com +iwaponline.com +iwara.tv +iwork.com +iwork.se +iwork.wang +ixquick.com +ixxx.com +iza.ne.jp +j2objc.org +jable.tv +jamanetwork.com +japan-forward.com +japan-whores.com +japanesebeauties.net +japanknowledge.com +jav.guru +jav.place +jav01.cc +jav101.com +jav168.cc +jav321.com +jav777.cc +java.com +java.net +javbus.com +javbus22.com +javcc.cc +javcc.com +javdb.com +javdoe.com +javdove8.xyz +javfinder.sh +javfor.me +javfree.me +javfull.net +javhd.com +javhd.pro +javhd3x.com +javhdfree.net +javlibrary.com +javmodel.com +javmost.com +javqd.com +javscreens.com +javwide.com +javwide.tv +javynow.com +jbe-platform.com +jenkins.io +jetbrains.com +jetbrains.net +jetbrains.space +jetbrains.team +jetfuelapp.com +jetfuelapps.com +jfengtime.com +jfrog.com +jfrog.org +jgg18.xyz +jiayoulu.com +jibemobile.com +jijiji.ca +jinnaju.com +jitsi.org +jiyu-kobo.co.jp +jjdong7.com +jkbeats.com +jmlr.org +jneurosci.org +jobmarket.com.hk +joeswall.com +johren.net +joinclubhouse.com +joinmaidez.com +joox.com +jos.com +jove.com +jquery.com +jquerymobile.com +jqueryui.com +js.org +jsbridgestone.com +jsdelivr.com +jsdelivr.net +jstage.jst.go.jp +jstor.org +jtvnw.net +jupyter.org +justdoit.us +justduckit.com +justmysocks.net +justmysocks1.net +justmysocks2.net +justmysocks4.net +jwpcdn.com +jwplatform.com +jwplayer.com +jwpltx.com +jwpsrv.com +jwt.ms +k8s.io +kaggle.com +kaggle.io +kali.org +kamisama-day.jp +kamisama-maeda-lab.com +kannewyork.com +kanzhongguo.com +kanzhongguo.eu +karger.com +kastatic.org +kavkazr.com +keepmovingwithmovefree.com +keiba.net +kernel.org +keyhole.com +keytransparency.com +keytransparency.foo +keytransparency.org +kfs.io +khanacademy.org +kickshatchannel.com +kicksnike1.com +kicu.tv +kidgrid.tv +kidsnikeshoes.com +kidspot.com.au +kiji.ca +kijii.ca +kijij.ca +kijiji.ca +kijijiauto.ca +kijijiautos.ca +kijijiforbusiness.ca +kijijii.ca +kijijiraps.ca +kijji.ca +kijjiji.ca +kilmeadeandfriends.com +kindgirls.com +kindle.co.jp +kindle.co.uk +kindle.com +kindle.de +kindle.es +kindle.fr +kindle.in +kindle.it +kindle.jp +kindle4rss.com +kindleoasis.com +kindleoasis.info +kindleoasis.jp +kindleoasis.org +kindleoasis.us +kindleoasisnews.com +kindleproject.com +kingkong.com.tw +kingkongapp.com +kingstagram.com +kirbysepicyarn.com +kirbysuperstarultra.com +kissjav.com +kk.stream +kkbox.com +kkbox.com.tw +kktix.com +kktv.com.tw +kktv.me +klik.me +knovel.com +knowswho.co.jp +knoxemm.com +kobbeatssbydredk.com +kodi.tv +kodi.wiki +kompoz2.com +kopfhorergunstigshop.com +kotlinlang.org +koubaibu.jp +kphimsex.net +kraken.com +krakenjs.com +krux.com +krymr.com +kscisco.com +ktvu.com +kubeacademy.com +kubeapps.com +kubernetes.io +kuke.com +kyodo-d.info +kyodo-d.jp +kyodoimages.jp +kyodonews.jp +kyodonews.net +kyurem.com +lagranepoca.com +landofhope.tv +lanik.us +lantern.io +lanternal.com +laracasts.com +lasvegasbmw.com +latampartneruniversity.com +latamvmwareforum.com +latencytop.com +latex-project.org +latticedata.com +launchpad.net +launchpad.wang +launchpadlibrarian.com +launchpadlibrarian.net +launchpadlibrarian.org +lavteam.org +lawdata.com.tw +lcsmerch.com +le-direct.tv +leaguehighschool.com +leagueoflegends.ca +leagueoflegends.co.kr +leagueoflegends.com +leagueoflegends.info +leagueoflegends.kr +leagueoflegends.net +leagueoflegends.org +leagueoflegendsscripts.com +leaguesharp.info +leaguoflegends.com +learnwithleague.com +leavinghpinc.com +lecoin.cc +lede-project.org +leecountytimes.com +legaltracker.com +lencr.org +letmejerk.com +letsencrypt.org +lexisnexis.com +lexuemei.com +lezpoo.com +lfai.foundation +lg.com +lgappstv.com +lge.co.kr +lge.com +lgecareers.com +lgelectronics.122.2o7.net +lghvac.com +lghvacstory.com +lgrecyclingprogram.com +lgsalesportal.com +liberapay.com +liberapay.org +libgen.fun +libgen.is +libgen.life +libgen.me +libgen.rs +libgen.st +librarylovefest.com +licdn.com +licensebuttons.net +life-global.org +lifewire.com +lightbridge.com +lih.kg +lihkg.com +like.com +liketwice.com +limedia.tw +limelight.com +lin.ee +line-apps-beta.com +line-apps-rc.com +line-apps.com +line-beta.me +line-cdn.net +line-scdn.net +line.me +line.naver.jp +linear-abematv.akamaized.net +linearcollider.org +linecorp.com +linefriends.com +linefriends.com.tw +linegame.jp +linemobile.com +linemyshop.com +lineshoppingseller.com +linetv.tw +linguee.com +link.theplatform.com +linkedin.com +linotype.com +linux.org +linuxfoundation.org +linuxfromscratch.org +linuxmint.com +listinganalytics.net +litbus-anime.com +literatumonline.com +litv.tv +live.com +live.com.au +live.eu +live.net +liveauction.com +livefilestore.com +livejasmin.com +livephotos.tv +liverail.com +liverail.tv +livestream.com +livingyourambition.com +livrariart.com.br +lizol.co.in +lldns.net +llnw-trials.com +llnw.com +llnw.net +llnwd.net +llnwi.net +lnstagram-help.com +loanbuilder.com +localbitcoins.com +localbitcoinschain.com +localizecdn.com +localizejs.com +localizestatus.com +localpresshk.com +logi.com +logicool.co.jp +logicoolg.com +login-account.net +login-paypal.com +login-paypal.info +logitech.biz +logitech.com +logitech.fr +logitechg.com +logitechg.fr +lojaiphone.com.br +lol-europe.com +lolclub.org +lolespor.com +lolesports.com +lolfanart.net +loli.net +lolpcs.com +lolshop.co.kr +lolstatic-a.akamaihd.net +lolstatic.com +lolusercontent.com +londonmithraeum.com +londonreal.tv +longman.ch +longtailvideo.com +lookinside.com +lordofultima.com +love7.xyz +lovebeatsdr.com +lovemarca.com +loveparents.org +loverslab.com +lovesexdurex.com +lovethiscity.com +lp99.pw +lsnzxzy1.com +ltn.com.tw +ltsports.com.tw +lua.org +lubetube.com +luckyissue.com +lululu.one +lysol.ca +lysol.cl +lysol.co.cr +lysol.com +lysol.com.mx +lysol.net +lyzsxx.com +m-power.com +m.me +m12.vc +m2m.com +mac-mini.com +mac.com +mac.com.au +mac.eu +mac.rs +mac.wang +macappsto.re +macbook.co +macbook.hk +macbook.tw +macbook.wang +macbookair.co.kr +macbookair.co.uk +macbookair.com +macbookair.com.au +macbookair.com.es +macbookair.es +macbookair.hk +macbookair.jp +macbookair.kr +macbookair.net +macbookpro.co +macbookpro.com +macbookpro.com.au +macbookpro.net +macbookpro.us +macbookpros.com +macbooksale.com +macboxset.com +mach-os.com +mach-os.net +machigoto.jp +machos.net +macintosh.eu +macintoshsoftware.com +macmini.com +macos.com.au +macosforge.org +macossierra.com +macosx.info +macosxlion.com +macpazar.com +macports.org +macreach.com +macreach.net +macromedia.com +macruby.com +macruby.net +macruby.org +macrumors.com +maddenchampionship.com +maddenrewards.com +maddenseason.info +maddenseason.net +maddenseason.org +madewithcode.com +madshi.net +madvr.com +madvr.net +madvrlabs.llc +mageconf.com +mageconf.com.ua +magento.com +magento.net +magentocommerce.com +magentoliveconference.com +magentomobile.com +mail.ru +mailhealth.com +mailonline.co.uk +mailonline.com +mailonsunday.co.uk +mailonsunday.ie +mainichi-athletepartners.jp +mainichi.jp +mainichibooks.com +mairbeats.com +makaan.com +makebettercode.com +makecode.org +makeeu.com +makeitopen.com +makesenseofdata.com +maktoob.com +malayalamanorama.com +mallheadphone.com +managed-pki.ch +managed-pki.de +managedmeetingrooms.com +mandatewire.com +manhuagui.com +manhwahentai.me +manorama.com +manoramanews.com +manoramaonline.com +manoramayearbook.in +manoto1.tv +manototv.com +mansionglobal.com +manyvids.com +mapbox.com +mariadb.org +marioandluigidreamteam.com +mariobroswii.com +mariokart7.com +mariokart8.com +mariosupersluggers.com +marketexecutive.net +marketing-cloud.com +marketing-nirvana.com +marketingcloud.com +marketo.co.uk +marketo.com +marketo.net +marketo.tv +marketodesigner.com +marketolive.com +marketwatch.com +markzuckerberg.com +marvel.com +marvel10thanniversary.com +marveldimensionofheroes.com +marvelparty.net +marvelpinball.com +marvelsdoubleagent.com +marvelspotlightplays.com +marvelsuperheroseptember.com +marvelsuperwar.com +masalladeloslimites.com +mashaalradio.com +maskedsingerfox.com +masseffect.com +masseffectarchives.com +mastercad.com +mastercard-email.com +mastercard.ae +mastercard.at +mastercard.az +mastercard.ba +mastercard.be +mastercard.bg +mastercard.by +mastercard.ca +mastercard.ch +mastercard.cl +mastercard.co.id +mastercard.co.il +mastercard.co.in +mastercard.co.jp +mastercard.co.ke +mastercard.co.kr +mastercard.co.nz +mastercard.co.th +mastercard.co.uk +mastercard.co.ve +mastercard.co.za +mastercard.com +mastercard.com.ar +mastercard.com.au +mastercard.com.bh +mastercard.com.br +mastercard.com.bz +mastercard.com.co +mastercard.com.cy +mastercard.com.eg +mastercard.com.ge +mastercard.com.gt +mastercard.com.hk +mastercard.com.kw +mastercard.com.lb +mastercard.com.mx +mastercard.com.my +mastercard.com.ng +mastercard.com.pe +mastercard.com.ph +mastercard.com.sa +mastercard.com.sg +mastercard.com.tr +mastercard.com.tw +mastercard.com.ve +mastercard.com.vn +mastercard.cz +mastercard.de +mastercard.dk +mastercard.es +mastercard.eu +mastercard.fi +mastercard.fr +mastercard.gr +mastercard.hr +mastercard.hu +mastercard.ie +mastercard.inc +mastercard.it +mastercard.jo +mastercard.ke +mastercard.kz +mastercard.lu +mastercard.md +mastercard.my +mastercard.nl +mastercard.no +mastercard.om +mastercard.pl +mastercard.pt +mastercard.qa +mastercard.ro +mastercard.rs +mastercard.ru +mastercard.se +mastercard.si +mastercard.sk +mastercard.ua +mastercard.us +mastercardacademy.com +mastercardadvisors.com +mastercardbiz.ca +mastercardbiz.com +mastercardbusinessnetwork.com +mastercardcenter.com +mastercardcenter.org +mastercardcenterforinclusivegrowth.org +mastercardconnect.com +mastercardezsavings.com +mastercardidtheftalerts.com +mastercardmoments.com +mastercardrestaurant.com +mastercardservices.com +mastercardworldwide.com +masterclass.com +masterintelligence.com +masterpassteststore.com +material.io +mathoverflow.net +matrix.org +matrix.to +matters.news +matters.one +maxgo.com +maxis.com +maying.co +mbeats-tech.com +mbheadphone.com +mcd.com +mcdelivery.co.id +mcdelivery.co.kr +mcdelivery.com.au +mcdelivery.com.my +mcdelivery.com.sg +mcdelivery.com.tw +mcdindonesia.com +mcdonalds.ca +mcdonalds.co.uk +mcdonalds.com +mcdonalds.com.hk +mcdonalds.hk +mcdonalds.it +mcdonalds.no +mcdonalds.se +mcdonaldsarabia.com +mcdonaldsparties.co.nz +mcdonaldsparties.com.au +mcisco.com +mcpeaceofmind.com +mcrouter.net +mcrouter.org +mdialog.com +mdlf.xyz +mdn.mozillademos.org +mdnkids.com +mdpi.com +me.com +meadjohnson.com +meadjohnson.com.hk +meadjohnson.com.tw +meadjohnson.net +mearki.com +media-amazon.com +media-imdb.com +media-rockstargames-com.akamaized.net +media.prod.mdn.mozit.cloud +mediachinese.com +mediafiles-cisco.com +mediawiki.org +medium.com +medium.systems +medone-education.thieme.com +medrxiv.org +meet.new +meetfasttrack.com +meetsmartbook.com +meetyourdevices.com +mega.co.nz +mega.io +mega.nz +megaphone.fm +meijinsen.jp +mendeley.com +menshin-channel.com +mepn.com +meraki-go.com +meraki.hk +merakigo.com +meridian.net +messenger.com +messengerdevelopers.com +metacloud.com +metacpan.org +metamind.io +metart.com +metartnetwork.com +metcams.com +metro.co.uk +metropolitana.tokyo +mewe.com +mfg-inspector.com +mgo-images.com +mgo.com +mhshosting.com +mhyurl.cn +mi9.com.au +mi9cdn.com +miamifintechfestival.com +mickey.tv +microbit.org +microsoft-give.com +microsoft-int.com +microsoft-ppe.com +microsoft-sap-events.com +microsoft-sbs-domains.com +microsoft.az +microsoft.be +microsoft.by +microsoft.ca +microsoft.cat +microsoft.ch +microsoft.cl +microsoft.com +microsoft.cz +microsoft.de +microsoft.dk +microsoft.ee +microsoft.es +microsoft.eu +microsoft.fi +microsoft.ge +microsoft.hu +microsoft.io +microsoft.is +microsoft.it +microsoft.jp +microsoft.lt +microsoft.lu +microsoft.lv +microsoft.md +microsoft.net +microsoft.pl +microsoft.pt +microsoft.red +microsoft.ro +microsoft.rs +microsoft.ru +microsoft.se +microsoft.si +microsoft.tv +microsoft.ua +microsoft.uz +microsoft.vn +microsoft365.com +microsoftaccountguard.com +microsoftadc.com +microsoftads.com +microsoftadvertising.com +microsoftadvertisingregionalawards.com +microsoftaffiliates.com +microsoftcloud.com +microsoftcloudsummit.com +microsoftcloudworkshop.com +microsoftcommunitytraining.com +microsoftdiplomados.com +microsofteca.com +microsoftedge.com +microsoftgamestack.com +microsofthouse.com +microsofthouse.net +microsoftinternetsafety.net +microsoftiotcentral.com +microsoftiotinsiderlabs.com +microsoftlatamaitour.com +microsoftlatamholiday.com +microsoftlinc.com +microsoftmxfilantropia.com +microsoftnews.cc +microsoftnews.com +microsoftnews.net +microsoftnews.org +microsoftnewsforkids.com +microsoftnewsforkids.net +microsoftnewsforkids.org +microsoftnewskids.com +microsoftnewskids.net +microsoftnewskids.org +microsoftonline-p.com +microsoftonline.com +microsoftpartnercommunity.com +microsoftpartnersolutions.com +microsoftreactor.info +microsoftreactor.net +microsoftreactor.org +microsoftready.com +microsoftsilverlight.com +microsoftsilverlight.net +microsoftsilverlight.org +microsoftsiteselection.com +microsoftsqlserver.com +microsoftstore.com +microsoftstore.com.hk +microsoftstream.com +microsoftteams.com +microsofttradein.com +microsofttranslator.com +microsoftuwp.com +micstl.com +midatlanticbmwmotorcycles.com +midentsolutions.com +mihayou.com +mihoyo.com +miitomo.com +miiverse.com +miktex.org +milofetch.com +mindmeld.com +minecraft.net +minecraftshop.com +mingpao.com +mingpaocanada.com +mingpaomonthly.com +mingpaotor.com +mingpaovan.com +mings-fashion.com +mings.hk +mingshengbao.com +mingw.org +mingwatch.com +mini-abudhabi.com +mini-antilles.fr +mini-bahrain.com +mini-bosnia.com +mini-clubs-international.com +mini-connected.at +mini-connected.be +mini-connected.ch +mini-connected.co.uk +mini-connected.com +mini-connected.cz +mini-connected.de +mini-connected.dk +mini-connected.ee +mini-connected.es +mini-connected.fi +mini-connected.fr +mini-connected.ie +mini-connected.it +mini-connected.lt +mini-connected.lu +mini-connected.lv +mini-connected.nl +mini-connected.no +mini-connected.pl +mini-connected.pt +mini-connected.se +mini-corporate-sales.com +mini-coupe.ca +mini-dubai.com +mini-e.com +mini-egypt.com +mini-georgia.com +mini-grouparchiv.de +mini-grouparchive.com +mini-jordan.com +mini-ksa.com +mini-kuwait.com +mini-lebanon.com +mini-me.com +mini-oman.com +mini-qatar.com +mini-srilanka.com +mini-stjohns.ca +mini-stjohns.com +mini-tahiti.com +mini-vietnam.com +mini-windsor.ca +mini-windsor.com +mini.am +mini.at +mini.be +mini.bg +mini.by +mini.ca +mini.cc +mini.ch +mini.cl +mini.co.cr +mini.co.id +mini.co.il +mini.co.kr +mini.co.me +mini.co.th +mini.co.uk +mini.co.za +mini.com +mini.com.ar +mini.com.bn +mini.com.br +mini.com.co +mini.com.cy +mini.com.do +mini.com.ec +mini.com.gr +mini.com.gt +mini.com.hr +mini.com.mk +mini.com.mo +mini.com.mt +mini.com.mx +mini.com.pa +mini.com.pe +mini.com.ph +mini.com.pl +mini.com.py +mini.com.sg +mini.com.tr +mini.com.tw +mini.com.uy +mini.cz +mini.de +mini.dk +mini.dz +mini.es +mini.fi +mini.fr +mini.gp +mini.hu +mini.ie +mini.in +mini.is +mini.it +mini.jp +mini.kz +mini.lu +mini.ma +mini.md +mini.mq +mini.mu +mini.my +mini.nc +mini.nl +mini.no +mini.pt +mini.re +mini.ro +mini.rs +mini.ru +mini.se +mini.si +mini.sk +mini.tm +mini.tn +mini.ua +mini101.ca +miniargentina.com +minibrossard.ca +minibrossard.com +minicanada.ca +minicaribbean.com +miniccrc.ca +minicooper.ca +minid.no +minidealer.com +minidealernet.com +minidowntown.ca +minidowntown.com +minidrivingexperienceusa.com +minidurham.ca +minidurham.com +minie.com +minifs.com +minigeorgian.ca +minigrandriver.com +minihalifax.ca +minihalifax.com +minihk.com +miniinvasion.ca +miniitalianjob.com +minikelowna.ca +minikelowna.com +minilangley.ca +minilangley.com +minilat.com +minilaval.ca +minilaval.com +minilondon.ca +minilondon.co +minimarkham.ca +minimarkham.com +minimoncton.ca +minimoncton.com +minimontrealcentre.ca +minimontroyal.ca +minimontroyal.com +minimotoringrewards.com +minimotoringschool.com +minimotorsport.com +mininanaimo.ca +mininanaimo.com +minioakville.com +miniofmonrovia.com +minipetfriendly.com +minirichmond.ca +minirichmond.com +minisaskatoon.ca +minisaskatoon.com +minishop.ca +miniso-au.com +miniso-bh.com +miniso-np.com +miniso-nz.com +miniso.by +miniso.ca +miniso.co +miniso.co.id +miniso.co.tz +miniso.ge +miniso.ie +miniso.jp +miniso.ma +miniso.my +miniso.pe +miniso.pk +miniso.ua +miniso.uz +minisoindia.com +minisojordan.com +minisokorea.com +minisolife.co.za +minisothailand.com +minisovietam.vn +minispace.com +minispecialoffers.ca +minispygear.com +ministcatharines.ca +ministeagathe.com +ministjohns.ca +minitakesthestates.com +minitoronto.ca +minitroisrivieres.ca +miniusa.com +miniusaservice.com +miniusatires.com +minivalueservice.com +minivancouver.ca +minivaughanwest.ca +minivaughanwest.com +minivictoria.ca +minivictoria.com +minivilledequebec.ca +minivilledequebec.com +miniwholesaleconnect.com +miniwidget.ca +miniwindsor.com +miniworkshop.com +miniyaletown.ca +minneapolisbmw.com +minneapolisbmw.net +miraheze.org +mirailab.tech +mirrormedia.com.tw +mirrormedia.mg +mirrorsedge.com +mirrorsedge.jp +mirrorsedge.net +mirrorsedge2.com +mirrorsedge2d.com +mit.edu +mit.net +mitpressjournals.org +mkt.com +mktdns.com +mkto-c0100.com +mktorest.com +mktroute.com +mmdnn.com +mmonsterheadphones.net +mobatek.net +mobile.de +mobile01.com +mobilefacebook.com +mobileinternational.com +mobilemarketo.com +mobileme.dk +mobileview.page +mochajs.org +mocloudplus.com +modular.im +mojang.com +mol.im +molesports.com +momentumms.com +momo.dm +momo5188.com +momomall.com.tw +momoshop.com.tw +monbeats2013.com +money-link.com.tw +moneywithfacebook.com +mongodb.com +mongodb.org +monitrix.net +mono-project.com +monotype.com +monotypeimaging.com +monster-beats-by-dr-dre.com +monster-beats-headphones.com +monsterbeats-cheap.com +monsterbeats-headphone.com +monsterbeats-onsale.com +monsterbeats-solo.com +monsterbeats-solo.net +monsterbeats365buy.com +monsterbeats8beatsbydre.com +monsterbeatsale.com +monsterbeatsalestore.com +monsterbeatsau.com +monsterbeatsbydrdre-nz.com +monsterbeatsbydrdre-usa.com +monsterbeatsbydrdrecanada.com +monsterbeatsbydrdrestudio.com +monsterbeatsbydre-nz.com +monsterbeatsbydre-usa.com +monsterbeatsbydre2015.com +monsterbeatsbydreaustraliacheap.com +monsterbeatsbydrebilligde.com +monsterbeatsbydrefactory.com +monsterbeatsbydrenew.com +monsterbeatsbydres.com +monsterbeatsbydreshop.com +monsterbeatscasques.com +monsterbeatscommunity.com +monsterbeatsdrdrecheap.com +monsterbeatsfactory.net +monsterbeatsfinland.com +monsterbeatsforsale.com +monsterbeatsheadphone.com +monsterbeatsheadphones.net +monsterbeatshere.com +monsterbeatsitaly.com +monsterbeatsmall.com +monsterbeatsnegozi.net +monsterbeatsok.com +monsterbeatsonlinestoreuk.com +monsterbeatsoutlet.us +monsterbeatspascher.net +monsterbeatsru.com +monsterbeatssales.com +monsterbeatssalg.com +monsterbeatsshops.net +monsterbeatsstore.com +monsterbeatssydneyaustralia.com +monsterbeatstang.com +monsterbeatstienda.com +monsterbeatstudio.com +monsterbydrebeat.com +monstercasquebeatspascher.net +monstercheapbeatss.com +monsterdrebeats-canada.net +monsterdrebeats-usa.com +monsterdrebeats-usa.net +monsterheadphone.net +monsterproduct.net +monstersbeatbydres.com +monstersdebea.com +monstershopcheapbeats.net +moodstocks.com +moov.hk +moreheadphones.com +morganclaypool.com +morisawa.co.jp +morphcharts.com +mortein.co.in +mortein.co.nz +mortein.co.za +mortein.com +mortein.com.au +mortein.com.br +mortein.com.ng +mortein.com.pk +morteincam.com +mostly.jp +motionpictureser.com +motolia.com +motorshowblog.com +mottainai.info +move-free.net +move.com +moveaws.com +movefreeoffers.com +movefreerewards.com +movefrees.com +movenetworks.com +movetv.com +movidius.com +movidius.net +moviesanywhere.com +mozilla.com +mozilla.community +mozilla.net +mozilla.org +mpfinance.com +mpnevolution.com +mpv.io +mpweekly.com +mr-tireman.jp +mray.club +ms-studiosmedia.com +ms365surfaceoffer.com +ms4dre.com +msads.net +msauth.net +mschallenge2018.com +msdn.com +msecnd.net +msedge.net +msft.info +msft.net +msftauth.net +msfteducation.ca +msftnet.org +msgamesresearch.com +msinnovationchallenge.com +msn.com +msnbc.com +msnewskids.com +msnewskids.net +msnewskids.org +msnkids.com +msocdn.com +msocsp.com +mspairlift.com +msropendata.com +msturing.org +msudalosti.com +msunlimitedcloudsummit.com +mtt.org +mtvnservices.com +mucinex.ca +mucinex.cn +mucinex.co.nz +mucinex.com +mucinex.com.cn +mucinex.net +mucinex.tv +mucinexprofessional.com +mudvod.tv +muji.com +muji.com.hk +muji.eu +muji.net +muji.tw +muji.us +mujikorea.net +multicurrencycashpassport.com +multiplydiversity.com +muncloud.dog +muscdn.com +muse.jhu.edu +mushymush.tv +musical.ly +musicbay.net +musickit.net +mut.ch +muthead.com +mvk.com +mwf-service.akamaized.net +my-formosa.com +my-magazine.me +my13la.com +my20dc.com +my20houston.com +my29tv.com +my45.com +my9nj.com +myaccountglobalcash.com +myappleid.com +myavfun.com +mybeatsbydrestudio.com +mybeatsbydreuk.com +mybeatscheapbydre.com +mybestbuy.com +mybestbuyclaims.com +mybmw.ca +mybmw.com +mybridgestoneeducation.com +mycardbenefits.com +mycdn.me +myciscobenefits.com +myconstructionworld.net +mydirectgroove.com +mydirectvchannels.com +mydirtyhobby.com +myebay.com +myfbfans.com +myferrariheadphones.com +myfonts.com +myfonts.net +myfoxatlanta.com +myfoxaustin.com +myfoxboston.com +myfoxcharlotte.com +myfoxchicago.com +myfoxdc.com +myfoxdetroit.com +myfoxdfw.com +myfoxhouston.com +myfoxhurricane.com +myfoxla.com +myfoxlosangeles.com +myfoxlubbock.com +myfoxmaine.com +myfoxny.com +myfoxorlando.com +myfoxphilly.com +myfoxphoenix.com +myfoxsanfran.com +myfoxtampa.com +myfoxtampabay.com +myfoxtwincities.com +myfoxzone.com +myfreecams.com +myfun.com +myguide.hk +myhelpinglab.com +myhentaicomics.com +myhentaigallery.com +myhpsupport.com +myhulu.com +myicloud.net +myipod.net +mylcloud.net +mylogiclab.com +mymicrosoft.com +mymmode.com +mynike.com +myoctocat.com +mypearson.com +mypearsonenglish.ch +mypearsonshop.com.mx +mypearsonshop.mx +myq2.com +myradio.com.hk +myradio.hk +myrewardzone.com +myrz.com +mysdn.com +mysdn.info +mysdn.net +myshopify.com +mysims.com +mysimsracing.com +mysinchew.com +mysocialworklab.com +mysql.com +mystrikingly.com +mythicentertainment.com +mythicentertainment.net +mythicgames.com +mytimesplus.co.uk +mytvsuper.com +myvisaluxuryhotels.com +mywaytopay.info +mywaytopay.net +mzed.com +mzstatic.com +n3ro.lol +n3ro.net +n3ro.wtf +na-att-idns.net +nab.com.au +nab.demdex.net +nabtravellercard.com.au +naiadsystems.com +namemybeats.com +namethatporn.com +natgeokidsbooks.co.uk +natgeomaps.com +nationalaustraliaban.tt.omtrdc.net +nationalgeographic.com +nationalgeographicpartners.com +nativeincolour.com.au +naturalvoices.com +nature.com +naturemag.org +naver.com +naver.jp +naver.net +navercorp.com +nbabot.net +nbc.co +nbc.com +nbcnews.com +nbcolympics.com +nbcsports.com +nbcudigitaladops.com +nbcuni.com +nbcuniversal.com +ncl.edu.tw +near.by +nebay.net +neborder.com +needforspeed.com +needforspeedboost.com +needforspeeddriftkings.com +needforspeedeliminator.com +needforspeedlightning.com +needforspeedoverdrive.com +needforspeedproven.com +needforspeedredline.com +needforspeedshowdown.com +needforspeedstreetkings.com +needforspeedtakedown.com +needforspeedtherun.com +needforspeedtimeattack.com +needforspeedundergroundeast.com +negozimonsterbeats.com +negoziomonsterbeats.com +nejm.org +nekoxxx.com +nentindo.net +neow.in +neowin.net +nervanasys.com +nest.com +netacad.com +netacad.net +netflav.com +netflix.ca +netflix.com +netflix.net +netflixdnstest1.com +netflixdnstest10.com +netflixdnstest2.com +netflixdnstest3.com +netflixdnstest4.com +netflixdnstest5.com +netflixdnstest6.com +netflixdnstest7.com +netflixdnstest8.com +netflixdnstest9.com +netflixinvestor.com +netflixtechblog.com +netlify.com +netname.com.br +nettyinternet.com +netvigator.com +neuralink.com +neurology.org +nevex.com +newbeatsblackfriday.com +newbemany.com +newcastlenewslocal.com.au +newdrediscount.com +neweconomyforum.com +newenergyfinance.com +newestbeatsbydre.com +newhampshirebmw.com +newisiknowledge.com +newlysprung.net +newmonst1erbeatsto1re.com +newmonsterbeatsheadphones.com +news.co.uk +news.com.au +news.net.au +news3.rexcha.com +newsadds.com.au +newsamerica.com +newsapi.com.au +newscareers.co.uk +newscdn.com.au +newschristmasshopping.com +newscommercial.co.uk +newsconcierge.com.au +newscorp.com +newscorpaustralia.com +newsfeed.com +newsgawakaru.com +newslicensing.co.uk +newsmart.jp +newsmax.com +newsmax.in +newsmaxtv.com +newsnowfox.com +newsprestigenetwork.com.au +newsprinters.co.uk +newssyndication.com +newsukadops.com +newsupermariobrosu.com +newsxtend.com.au +newtalk.tw +newton.com +newyorker.com +nexcat.com +nexitally.com +nexitallysafe.com +nexitcore.com +nexpart.com +nexpart.tv +next.com +next.hk +nextdigital.com.hk +nextdigital.com.tw +nextechafrica.net +nextfilm.com.hk +nextgenerationcenter.com +nextmag.com.tw +nextmedia.com +nextmedia.com.tw +nextmgz.com +nextplus.com.hk +nextstop.com +nexttv.com.tw +nextwork.com.hk +nextwork.com.tw +nextwork.hk +nextwork.tw +nflhotsalejerseys.com +nflxext.com +nflximg.com +nflximg.net +nflxsearch.net +nflxso.net +nflxvideo.net +nfscdict.com +nfsworld.com +ngeo.com +nginx.com +nginx.org +nhentai.com +nhentai.io +nhentai.net +nhentai.to +nhentai.xxx +nhncorp.jp +nicesshop.net +nicodic.jp +nicomanga.jp +niconico.com +nicoseiga.jp +nicovideo.jp +nii.ac.jp +nike-air-max.com +nike-dunksb.com +nike-fr.com +nike-org.com +nike-uk.com +nike-us.com +nike-usa.com +nike.ci +nike.com +nike.com.br +nike.com.hk +nike.gy +nike.hk +nike.shop +nike.us +nike.xn--hxt814e +nike0594.com +nike23.com +nikeadidas.com +nikeairhuarache.com +nikeairmax.com +nikeairmaxs.com +nikeairmaxshoes.com +nikeairrift.com +nikeasia.com +nikeaustralia.com +nikeaw77.com +nikeb.com +nikebbn.com +nikebetrue.com +nikebetterworld.com +nikebetterworld.info +nikebetterworld.net +nikebetterworld.org +nikebiz.info +nikebuy.com +nikeby.com +nikecdn.com +nikechosen.com +nikecloud.com +nikeclub.com +nikecompany.com +nikeconfluence.com +nikecraft.com +nikedawn.com +nikedunks.net +nikedunksshoes.com +nikeelite.com +nikefactorystore.com +nikefind.com +nikefirm.com +nikefoamposites.com +nikefoampositeshoes.com +nikefootballcleats.com +nikefootballgloves.com +nikefootballjersey.com +nikefoundation.org +nikefr.com +nikefrance.com +nikefree.com +nikefreeshoes.com +nikefuelband.com +nikegadgets.com +nikegenealogy.com +nikegolf.ca +nikegrid.com +nikehelp.com +nikehightops.com +nikehyperdunk.com +nikeidshoes.com +nikeinc.com +nikeincchemistry.com +nikeinstock.com +nikeit.com +nikeitalia.com +nikeitaly.com +nikekd.com +nikekid.com +nikelink.com +nikeliuxiang.com +nikelives.com +nikelunarglide.com +nikemarketing.com +niken7.com +nikenews.com +nikeonlinestore.com +nikeoutletstore.com +nikeoutletstores.com +nikepioneer.com +nikeplus.com +nikeplus.org +nikepress.com +nikeprice.com +nikeproduct.com +nikepromax.com +nikeresponsibility.com +nikereuseashoe.com +nikerunner.com +nikerunningshoes.com +nikesb.com +nikesbdunks.net +nikeseason.com +nikeselling.com +nikesellorder.com +nikeshoemarket.com +nikeshoes-store.com +nikeshoes21.com +nikeshoes4u.com +nikeshoescity.com +nikeshoesgroup.com +nikeshoesinc.com +nikeshoesmarket.com +nikeshoesretro.com +nikeshoeswon.com +nikeshoponline.com +nikeshoxsale.com +nikesku.com +nikesnowboarding.com +nikesoccercleats.com +nikesportswear.com +nikestares.com +nikestore.com +nikestore.com.au +nikestyles.com +nikeswim.com +niketaiwan.net +niketracking.com +niketradeweb.com +niketrainer.com +niketrainers.com +niketraining.com +nikeusa.com +nikewear.com +nikey.com +nikezoom.com +nikkan-gendai.com +nikkansports.com +nikkei-cnbc.co.jp +nikkei.co.jp +nikkei.com +nikkei.jp +nikkei4946.com +nikkeibp.co.jp +nimg.jp +nine.com.au +nineentertainment.com.au +nineentertainmentco.com.au +ninemediaroom.com.au +ninemsn.com.au +nintendo-europe-sales.com +nintendo-europe.com +nintendo.at +nintendo.be +nintendo.ch +nintendo.co.jp +nintendo.co.kr +nintendo.co.uk +nintendo.co.za +nintendo.com +nintendo.com.hk +nintendo.com.pt +nintendo.de +nintendo.dk +nintendo.es +nintendo.eu +nintendo.fi +nintendo.fr +nintendo.it +nintendo.net +nintendo.nl +nintendo.no +nintendo.pt +nintendo.ru +nintendo.se +nintendo.tw +nintendo3ds.com +nintendodsi.com +nintendoeurope.com +nintendonetwork.net +nintendonyc.com +nintendostore.com +nintendoswitch.com +nintendoswitch.net +nintendoswitchtogether.com +nintendowii.com +niosii.com +niosii.net +nist.gov +nixos.org +nke6.com +nlm.io +nmbmw.com +nna.jp +nodejs.org +nodesource.com +nokiantyres.com +nomadlandmovie.ch +nomadproject.io +nomulus.foo +nonktube.com +nordstrom.com +nordstrommedia.com +notepad-plus-plus.org +notion-static.com +notion.com +notion.new +notion.site +notion.so +now-ashare.com +now-tv.com +now.com +now.com.hk +now.sh +nowe.com +nowe.hk +nownews.com +npm.community +npmjs.com +npmjs.org +npr.org +nsimg.net +ntc.party +ntd.com +ntdca.com +ntdimg.com +ntdtv.ca +ntdtv.co.kr +ntdtv.com +ntdtv.com.tw +ntdtv.jp +ntdtv.kr +ntdtv.org +ntdtv.ru +ntdtvla.com +ntdvn.com +ntnews.com.au +nudevista.com +nuget.org +nugettest.org +nunuyy.cc +nurofen.at +nurofen.bg +nurofen.co.il +nurofen.co.nz +nurofen.co.uk +nurofen.co.za +nurofen.com +nurofen.com.au +nurofen.com.sg +nurofen.cz +nurofen.de +nurofen.es +nurofen.fr +nurofen.hr +nurofen.hu +nurofen.ie +nurofen.it +nurofen.net +nurofen.no +nurofen.pl +nurofen.pt +nurofen.ro +nurofen.ru +nurofen.sk +nurofengel.com +nurofensk-prod-env.eu-west-1.elasticbeanstalk.com +nutaku.net +nutramigen.net +nutramigen.pl +nvidia.asia +nvidia.at +nvidia.be +nvidia.ch +nvidia.co.at +nvidia.co.in +nvidia.co.jp +nvidia.co.kr +nvidia.co.uk +nvidia.com +nvidia.com.au +nvidia.com.br +nvidia.com.mx +nvidia.com.pe +nvidia.com.pl +nvidia.com.tr +nvidia.com.tw +nvidia.com.ua +nvidia.com.ve +nvidia.cz +nvidia.de +nvidia.dk +nvidia.es +nvidia.eu +nvidia.fi +nvidia.fr +nvidia.in +nvidia.it +nvidia.jp +nvidia.lu +nvidia.mx +nvidia.nl +nvidia.no +nvidia.pl +nvidia.ro +nvidia.ru +nvidia.se +nvidia.tt.omtrdc.net +nvidia.tw +nvidiaforhp.com +nxta.org +nxtdig.com.hk +nxtdig.com.tw +nyaa.net +nyaa.si +nyansa.com +nypost.com +nypost.help +nypostreprints.com +nyt.com +nyt.net +nytchina.com +nytcn.me +nytco.com +nyti.ms +nytimes.com +nytstyle.com +o0-2.com +o2action.co.kr +o365weve-dev.com +o365weve-ppe.com +o365weve.com +oanencore.com +oann.com +oath.cloud +oath.com +oauthz.com +observable.net +obsrvbl.com +ocbmwdealers.com +ocul.us +oculus-china.com +oculus.com +oculus2014.com +oculus3d.com +oculusblog.com +oculusbrand.com +oculuscasino.net +oculuscdn.com +oculusconnect.com +oculusdiving.com +oculusforbusiness.com +oculusrift.com +oculusvr.com +odysee.com +oecd-ilibrary.org +oed.com +offerairjordanlebron.com +office.com +office.net +office365.com +office365love.com +office365tw.com +officecdn-microsoft-com.akamaized.net +officialbeatsbydreshop.com +officialbeatsbydrestore.com +officialdrdre.com +officialheadphone.com +offresspecialesbmw.ca +offrezdesipods.com +ogameblog.com +ogp.me +ohentai.org +ohyeah1080.com +ok.ru +okaapps.com +okex.com +omekinteractive.com +omghk.com +omnitek.tv +omniture.com +omoplanet.com +omotenashi.cygames.jp +omscr.com +omtrdc.net +on.cc +on.here +on2.com +onbeatsbydresale.com +oncars.in +one.one.one +oneapi.com +onedinesfree.com +onedrive.co +onedrive.co.uk +onedrive.com +onedrive.eu +onedrive.live.com +onedrive.net +onedrive.org +onefifteen.net +onefifteen.org +onejav.com +onenote.com +onenote.net +onestore.ms +oneworldmanystories.com +oninstagram.com +onionshare.org +online-deals.net +online-instagram.com +onlineapplestore.com +onlinegeeksquad.com +onlineinstagram.com +onlinemonsterbeatsonsale.com +onlyiphone5case.com +onmanorama.com +onsalekey.com +onsaletrend.com +ooni.org +op.gg +openai.com +openamt.com +openapiplatform.com +openapiservice.com +opencollective.com +opencreate.org +opendroneid.org +opengraphprotocol.com +opengraphprotocol.org +openjsf.org +openmaps.org +openresty.org +opensourceinsight.dev +opensourceinsights.dev +openssl.org +openstreetmap.com +openstreetmap.net +openstreetmap.org +openstreetmaps.org +opensuse.org +openthread.io +opentranslatorstothings.org +openvinotoolkit.org +openvpn.net +openweave.io +openwrt.org +opgg-static.akamaized.net +opinionjournal.com +optanedifference.com +optica.org +opticsforthecloud.net +optimumssl.com +oracle.com +oraclecloud.com +oraclefoundation.org +oracleimg.com +oracleinfinity.io +orbitera.com +oreil.ly +oreilly.com +oreilly.review +oreillystatic.com +origin-a.akamaihd.net +origin.com +origin.tv +originalhulu.com +orithegame.com +orl.ly +orlandohurricane.com +osakamotion.net +osapublishing.org +osdn.net +osm.org +osmfoundation.org +ospray.net +ospray.org +oup.com +ouplaw.com +ouroath.com +outbound.io +outingsapp.com +outletbeatsshop.com +outletnike.com +outlook.com +overcast.fm +ovid.com +ox.ac.uk +oxfordaasc.com +oxfordartonline.com +oxfordbibliographies.com +oxfordclinicalpsych.com +oxforddnb.com +oxfordfirstsource.com +oxfordhandbooks.com +oxfordlawtrove.com +oxfordmedicine.com +oxfordmusiconline.com +oxfordpoliticstrove.com +oxfordre.com +oxfordreference.com +oxfordscholarlyeditions.com +oxfordscholarship.com +oxfordwesternmusic.com +ozodi.org +ozodlik.org +ozvoice.org +p-events-delivery.akamaized.net +p16-tiktokcdn-com.akamaized.net +p3.csgfnmdb.com +pa9pal.com +paaypal.com +pacifickitchenandhome.com +packagist.org +packer.io +pacloudflare.com +page.link +page3.com +pagecdn.com +pagecdn.io +pages.dev +pagespeedmobilizer.com +pageview.mobi +pahabicilemezsurprizler.com +paily.net +paily.org +paipal.com +paisapay.cc +paisapay.info +paisapay.tv +palestineremix.com +panasonic.com +panasonic.jp +panoramio.com +paofu.cloud +paofuyun.me +papalah.com +paper-attachments.s3.amazonaws.com +paradisehotelquizfox.com +paragon.com +paramount.com +paramountplus.com +parastorage.com +pardot.com +park-now.com +parkinfo.com +parler.com +parse.com +parstream.com +parstream.net +parstream.org +partylikeits1986.org +pascherbeatsmonster.com +pashtovoa.com +passiontimes.hk +passport.net +pastebin.com +patentgold.net +patenttruth.org +patreon.com +paulsimon-music.com +pavpal.com +paxful.com +paxlicense.org +paydiant.com +paygonline.com +payhulu.com +paylike.com +paypa1.com +paypa1.org +paypaal.com +paypal-activate.com +paypal-activate.info +paypal-activate.org +paypal-apac.com +paypal-apps.com +paypal-biz.com +paypal-brandcentral.com +paypal-business.com +paypal-business.net +paypal-business.org +paypal-cardcash.com +paypal-cash.com +paypal-center.com +paypal-center.info +paypal-center.net +paypal-center.org +paypal-communication.com +paypal-communications.com +paypal-communications.net +paypal-community.com +paypal-community.net +paypal-comunidad.com +paypal-corp.com +paypal-database.com +paypal-database.us +paypal-donations.com +paypal-dynamic.com +paypal-engineering.com +paypal-europe.com +paypal-excelinvoicing.com +paypal-exchanges.com +paypal-forward.com +paypal-galactic.com +paypal-gift.com +paypal-gifts.com +paypal-gpplus.com +paypal-here.com +paypal-hrsystem.com +paypal-innovationlab.com +paypal-integration.com +paypal-japan.com +paypal-knowledge.com +paypal-labs.com +paypal-latam.com +paypal-learning.com +paypal-login.com +paypal-login.info +paypal-login.org +paypal-login.us +paypal-luxury.com +paypal-mainstreet.net +paypal-marketing.com +paypal-media.com +paypal-merchantloyalty.com +paypal-mobilemoney.com +paypal-network.org +paypal-notice.com +paypal-notify.com +paypal-online.info +paypal-online.net +paypal-online.org +paypal-optimizer.com +paypal-pages.com +paypal-photocard.com +paypal-plaza.com +paypal-portal.com +paypal-prepagata.com +paypal-prepagata.net +paypal-prepaid.com +paypal-profile.com +paypal-proserv.com +paypal-qrshopping.org +paypal-recargacelular.com +paypal-redeem.com +paypal-referral.com +paypal-retail.com +paypal-scoop.com +paypal-search.com +paypal-secure.net +paypal-secure.org +paypal-security.net +paypal-security.org +paypal-service.org +paypal-signin.com +paypal-signin.us +paypal-special.com +paypal-specialoffers.com +paypal-sptam.com +paypal-status.com +paypal-support.com +paypal-survey.com +paypal-survey.org +paypal-team.com +paypal-viewpoints.net +paypal.ca +paypal.com +paypal.com.hk +paypal.com.sg +paypal.hk +paypal.info +paypal.jp +paypal.me +paypal.so +paypal.us +paypalbeacon.com +paypalbenefits.com +paypalbrasil.com +paypalcommunity.com +paypalcommunity.net +paypalcommunity.org +paypalcorp.com +paypalcredit.com +paypalcreditcard.com +paypalgivingfund.org +paypalhere.com +paypalhere.info +paypalhere.net +paypalhere.org +paypalhere.tv +paypali.net +paypalinc.com +paypalindia.com +paypalinsuranceservices.org +paypall.com +paypallabs.com +paypalme.com +paypalnet.net +paypalnet.org +paypalnetwork.info +paypalnetwork.net +paypalnetwork.org +paypalobjects.com +paypalonline.net +paypalonline.org +paypalprepagata.com +paypalprepagata.net +paypalservice.com +paypalshopping.com +paypalshopping.net +paypalsurvey.com +paypalx.com +paypaly.com +paypass.net +payppal.com +payypal.com +pc.com +pca.st +pccw.com +pccwglobal.com +pccwsolutions.com +pchome.com.tw +pchomeec.tw +pchomeonline.com.tw +pchomepay.com.tw +pcloud.tw +pcmarket.com.hk +pcre.org +pcstore.com.tw +pdf.new +pdncommunity.com +pdxbmw.com +peacocktv.com +pearson-anaya.com +pearson-intl.com +pearson-schule.ch +pearson-studium.ch +pearson.ch +pearson.cl +pearson.co.in +pearson.co.jp +pearson.com +pearson.com.ar +pearson.com.au +pearson.com.hk +pearson.com.uy +pearson.es +pearson.fr +pearson.pl +pearsonactivelearn.com +pearsonassessment.be +pearsonassessment.de +pearsonassessment.dk +pearsonassessment.fr +pearsonassessment.nl +pearsonassessment.no +pearsonassessment.se +pearsonassessments.com +pearsoncanada.ca +pearsonclinical.be +pearsonclinical.ca +pearsonclinical.co.uk +pearsonclinical.com.au +pearsonclinical.com.br +pearsonclinical.de +pearsonclinical.dk +pearsonclinical.es +pearsonclinical.eu +pearsonclinical.fr +pearsonclinical.in +pearsonclinical.nl +pearsonclinical.no +pearsonclinical.se +pearsoncmg.com +pearsoncred.com +pearsoned.co.nz +pearsoned.com +pearsoneducacion.net +pearsoneducationbooks.com +pearsonelt.ch +pearsonelt.com +pearsonenespanol.com +pearsonhighered.com +pearsoninstitute.ac.za +pearsonlongman.ch +pearsononlineacademy.com +pearsonperu.pe +pearsonplaces.com.au +pearsonschoolsandfecolleges.co.uk +pearsonvue.com +pearsonvue.net +peerj.com +pensions-expert.com +pentium.com +pentium.net +peoplenews.tw +perfectkickz.net +periscope.tv +perl.org +persagg.com +persianepochtimes.com +personaltrainermath.com +personeelsland.com +phantomjs.org +phncdn.com +photolia.net +photonicssociety.org +photoshop.com +php.net +phprcdn.com +phxbmw.com +physiology.org +piapp.com.tw +picasa.com +picasaweb.com +picasaweb.net +picasaweb.org +picknicekicks.net +pickshoesclothes.com +picnik.com +pics.ee +picsee.co +picsee.pro +pieceofplastic.com +pifpafarabia.com +pigav.com +pillbeatsblackfridaysale.com +pimg.tw +pin.it +pincong.rocks +ping.pe +pinimg.com +pinterest.at +pinterest.be +pinterest.ca +pinterest.ch +pinterest.cl +pinterest.co +pinterest.co.at +pinterest.co.in +pinterest.co.kr +pinterest.co.nz +pinterest.co.uk +pinterest.com +pinterest.com.au +pinterest.com.bo +pinterest.com.ec +pinterest.com.mx +pinterest.com.pe +pinterest.com.py +pinterest.com.uy +pinterest.com.vn +pinterest.de +pinterest.dk +pinterest.ec +pinterest.engineering +pinterest.es +pinterest.fr +pinterest.hu +pinterest.id +pinterest.ie +pinterest.in +pinterest.info +pinterest.it +pinterest.jp +pinterest.kr +pinterest.mx +pinterest.nl +pinterest.nz +pinterest.pe +pinterest.ph +pinterest.pt +pinterest.ru +pinterest.se +pinterest.th +pinterest.tw +pinterest.uk +pinterest.vn +pinterestmail.com +pintool.com +pirates-forum.org +pise.pw +pittpatt.com +pivotalinitiative.com +piwheels.org +pixanalytics.com +pixapp.net +pixate.com +pixfs.net +pixhost.to +pixinsight.com.tw +pixiv.co.jp +pixiv.net +pixiv.org +pixnet.cc +pixnet.net +pixnet.pro +pixnet.tw +pixplug.in +pixtronix.com +pki-post.ch +pki-posta.ch +pki-poste.ch +placemyad.com.au +placesdocs.com +planetminecraft.com +plantsvszombies2.com +play4free.com +playapex.com +playartifact.com +playbydurex.com +playerjs.io +playhearthstone.com +playmation.com +playnintendo.com +playno1.com +playoverwatch.com +playparagon.com +playshow.io +playshowtv.com +playstation.com +playstation.net +playvalorant.com +playwarcraft3.com +playz.jp +plos.org +plug.game +pm.me +pnas.org +pobl-content.com +pocketbiketrader.com +pocketcasts.com +pogo.com +pogobeta.com +pokedex3d.com +pokemon-moon.com +pokemon-sun.com +pokemon-sunmoon.com +pokemon.com +pokemonbank.com +pokemonblackwhite.com +pokemonbw.com +pokemonchampionships.com +pokemongoldsilver.com +pokemonhome.com +pokemonletsgoeevee.com +pokemonletsgopikachu.com +pokemonmysterydungeon.com +pokemonpicross.com +pokemonplatinum.com +pokemonrubysapphire.com +pokemonsunmoon.com +pokemonswordshield.com +pokemonultrasunmoon.com +pokemonvgc.com +pokemonwifi.net +polygon.com +polymer-project.org +polymerproject.org +popcap.com +popjav.tv +porn.com +porn300.com +pornacho.com +pornbest.org +pornbrb.com +pornhd.com +pornhits.com +pornhub.com +pornhubpremium.com +pornkai.com +pornmd.com +pornogramxxx.com +pornrips.cc +pornstarbyface.com +porntea.com +pornzog.com +poshtestgallery.cloudapp.net +poshtestgallery.com +positivessl.com +post852.com +postgresql.org +postimages.org +postimg.cc +postini.com +potenza.jp +powerappscdn.net +powerautomate.com +powerbeats2wireless.com +powerbeatsbydrdre.com +powerbeatsbydre.com +powerbi.com +powerbook.eu +poweredbyintel.com +powerofresolve.ca +powerofresolve.com +powershellgallery.com +powersunitedvr.com +pp-soc.com +ppaypal.com +pplusstatic.com +pppds.com +practicalbusinessskills.com +practicalmoneyskills.ca +practicalmoneyskills.jp +prd-priconne-redive.akamaized.net +pre-bmwgroup.jobs +predictivetechnologies.com +premiumfs.de +premobay.com +prepsure.com +press.vin +priceless.com +priceless.org +pricelessafrica.com +pricelessarabia.com +pricelessaruba.com +pricelessbeijing.com +pricelesshongkong.com +pricelesshonolulu.com +pricelessmarketingengine.com +pricelesspick.com +pricelesssantiago.com +pricelesssurprises.com +pricelesssydney.com +pricelesstoronto.ca +pricelesstv.com +prime-video.com +primeday.info +primevideo.cc +primevideo.com +primevideo.info +primevideo.org +primevideo.tv +princeton.edu +printeron.com +printersetupsupport.com +printspots.com +printspots.net +privacysandbox.com +privacysimplified.com +privacytools.io +privatebrowsingmyths.com +privatemarketplaces.net +privatemarketplaces.us +privilege.hk +privilege.tw +prodrive-japan.com +product.co.jp +projectapex.com +projectara.com +projectbaseline.com +projecteuclid.org +projectmurphy.net +projectsangam.com +promonsterbeatsbydre.com +property.com.au +proptiger.com +proquest.com +pros.ee +prostores.com +prostudiobeatscybersale.com +protonmail.ch +protonmail.com +protonstatus.com +proxyrarbg.org +pscdn.co +pscp.tv +pse.is +psg-int-centralus.cloudapp.net +psg-int-eastus.cloudapp.net +psiphon3.com +pstatic.net +pstorage.space +psyccareers.com +ptt.cc +ptt2.cc +ptt3.cc +publishproxy.com +pubmatic.co.jp +pubmatic.com +pugetsoundbmw.com +pugetsoundmini.com +pugpig-dev.com +pugpig-stage.com +pugpig.com +pullstring.net +pureapk.com +putty.org +pvp.net +pvp.tv +pvue1.com +pvue2.com +pvzgw2.com +pvzheroes.com +pwabuilder.com +pwmnet.com +pwnedpasswords.com +pximg.net +pxt.io +pycon.org +pyhapp.com +pypa.io +pypi.io +pypi.org +pypl.com +pypl.info +pypl.net +pypl.tv +pyrobot.org +python.org +pythonhosted.org +q10.jp +q13.com +q13fox.com +qctconnect.com +qingse.one +qmap.pub +qoo10.jp +qprize.com +qr.ae +qt-project.org +qt.io +qualcomm-email.com +qualcomm.cn +qualcomm.co.id +qualcomm.co.in +qualcomm.co.jp +qualcomm.co.kr +qualcomm.co.uk +qualcomm.com +qualcomm.com.br +qualcomm.com.tw +qualcomm.de +qualcomm.fr +qualcomm.sc.omtrdc.net +qualcommhalo.com +qualcommlabs.com +qualcommmea.com +qualcommretail.com +qualcommventures.cn +qualcommventures.com +qualphone.com +quantil.com +quatrowireless.com +quatrum.com.br +questvisual.com +quicinc.com +quickoffice.com +quicktake.video +quicktime.cc +quicktime.com +quicktime.com.au +quicktime.eu +quicktime.net +quicktime.tv +quiksee.com +quip-cdn.com +quip.com +quipelements.com +quiz.directory +quora.com +quoracdn.net +quotable.com +qwapi.com +r-project.org +r10s.com +r10s.jp +r18.com +r18lu.com +racked.com +radeon.com +radian6.com +radiofarda.com +radiomango.fm +radiomarsho.com +radiosvoboda.org +radiotavisupleba.ge +radiyoyacuvoa.com +rakuten-static.com +rakuten.ca +rakuten.co.jp +rakuten.com +rakuten.com.tw +rakuten.ne.jp +rakuten.tw +rakuya.com.tw +rapidssl.com +raponlinereview.com +rarbg.is +rarbg.me +rarbg.to +rarbgaccess.org +rarbgaccessed.org +rarbgget.org +rarbggo.org +rarbgmirror.com +rarbgmirror.org +rarbgproxy.org +rarbgprx.org +rarbgto.org +rarbgunblock.com +rarbgunblock.org +rarbgway.org +raspberrypi.org +raspbian.org +ravm.tv +razer.com +razersupport.com +razerzone.com +razerzone.jp +rb-crisis.com +rb.com +rb.gy +rb.net +rbbusinessshop.com +rbdigitalab.com +rbdigitallab.com +rbeuroinfo.com +rbgrads.com +rbgraduates.com +rbmavericks.com +rbnainternational.com +rbplc.com +rbrandlibrary.com +rbsgr.com +rbspeakup.com +rclon.com +rea-asia.com +rea-group.com +rea.design +rea.global +rea.io +rea.tech +reabble.com +reachtheworldonfacebook.com +react.com +reactjs.com +reactjs.org +readmoo.com +readthedocs-hosted.com +readthedocs.com +readthedocs.io +readthedocs.org +realamericanstories.com +realamericanstories.info +realamericanstories.net +realamericanstories.org +realamericanstories.tv +realclear.com +realclearbooks.com +realcleardefense.com +realcleareducation.com +realclearenergy.org +realclearfoundation.org +realclearhealth.com +realclearhistory.com +realclearinvestigations.com +realclearlife.com +realclearmarkets.com +realclearpolicy.com +realclearpolitics.com +realclearpublicaffairs.com +realclearreligion.org +realclearscience.com +realclearworld.com +realcommercial.com.au +realestate.com.au +realestatejournal.com +realitykings.com +realmilwaukeenow.com +realtor.com +realtype.co.jp +realtype.jp +realvision.com +reastatic.net +reaxys.com +rebates.jp +rebrandly.com +reckitt.net +reckittbenckiser.com +reckittbenckiser.net +reckittbenckiser.tv +reckittprofessional.com +recode.net +recoiljs.org +reconinstruments.com +reconjet.com +redd.it +reddit.com +redditmail.com +redditmedia.com +redditstatic.com +redgifs.com +redis.io +redislabs.com +redkix.com +redtube.com +redzonechannel.com +regiongold.com +registerhulu.com +registeridm.com +registry.google +relateiq.com +remirepo.net +renchead.com +renovacionoffice.com +renovacionxboxlive.com +rentaride.com +rentaride.de +renzhe.cloud +repsils.no +repsneakermall.com +repswing.com +researchandcare.org +researchgate.net +researchintel.com +researchkit.hk +researchkit.net +researchkit.org +researchkit.tv +respawnbyrazer.com +rethink.net +reurl.cc +reuters.com +reuters.tv +reutersagency.cn +reutersmedia.net +revenue-performance-management.com +revolv.com +rewrite-anime.tv +rfa.org +rferl.org +rfi.fr +rgpub.io +rhodeislandbmw.com +ridepenguin.com +rimg.com.tw +riot-games.com +riot.com +riot.im +riot.net +riotcdn.net +riotforgegames.com +riotgames.co.kr +riotgames.com +riotgames.info +riotgames.jp +riotgames.net +riotgames.tv +riotpin.com +riotpoints.com +rmbl.ws +road-crew.com +roborecall.com +rocketfishproducts.com +rocksdb.com +rocksdb.net +rocksdb.org +rockstargames.com +roku.com +rokutime.com +rolfoundation.org +rolls-roycecullinan.com +rolls-roycemotorcars.com +rolls-roycemotorcarsna.com +rolsociety.org +root-signing.ch +rootsigning.com +roughman.net +routledgehandbooks.com +royalsocietypublishing.org +rpmfusion.org +rprimelab.com +rrtis.com +rsc.org +rsf.org +rsg.sc +rsshub.app +rstatic.net +rt.com +rthk.hk +rtings.com +rtm.tnt-ea.com +ruby-lang.org +rubygems.org +ruinedking.com +rule34.xxx +rumah123.com +rumble.com +run.app +runnike.com +runningnike.com +rupress.org +rust-lang.org +rustup.rs +ruten.com.tw +ryokoyomiuri.co.jp +s-bluemix.net +s-cashonmobile.com +s-microsoft.com +s-msn.com +s-nbcnews.com +s-rewards.hk +s-xoom.com +s.team +s2stagehance.com +s81c.com +sa78gs.wpc.edgecastcdn.net +sae.org +safechat.com +saffrontech.com +sagepub.com +sahabatsetiasmartone.com +sale-nikeshoes.com +salebeatslasteststyle4you.com +saleblackfridaydrebeats.com +salecheaphandbags.com +salesforce.com +salesforce.org +salesforceiq.com +salesforceliveagent.com +salesforcemarketingcloud.com +samebags.com +samsung.com +samsungapps.com +samsungcloud.com +samsungdm.com +samsunggalaxyfriends.com +samsungknox.com +samsungqbe.com +sandisk.ae +sandisk.co.jp +sandisk.co.kr +sandisk.co.uk +sandisk.com +sandisk.com.au +sandisk.com.br +sandisk.com.tr +sandisk.com.tw +sandisk.de +sandisk.es +sandisk.fr +sandisk.hk +sandisk.id +sandisk.in +sandisk.it +sandisk.nl +sandisk.sg +sankei-ad-info.com +sankei-ad.net +sankei-books.co.jp +sankei-call.jp +sankei-digital.co.jp +sankei-eiga.co.jp +sankei-kaihatsu.co.jp +sankei-kurashi.com +sankei-shougakukai.jp +sankei-tours.com +sankei.co.jp +sankei.com +sankei.jp +sankeibiz.jp +sankeishop.jp +sankie.net +sanspo.com +sanvaras.com +sarajevopodopsadom.com +savethedate.foo +savvyshopper.net.au +saynow.com +sb-mobile.jp +sb-telecom.net +sb.sb +sbitravelcard.com +sbnation.com +sbux.com.my +sbuxcard.com +sc-cdn.net +scala-lang.org +scala-sbt.org +scaleflex.com +scdn.co +scenesource.me +schemer.com +schiffvitamins.com +scholar.google.ae +scholar.google.at +scholar.google.be +scholar.google.bg +scholar.google.ca +scholar.google.cat +scholar.google.ch +scholar.google.cl +scholar.google.cn +scholar.google.co.cr +scholar.google.co.id +scholar.google.co.il +scholar.google.co.in +scholar.google.co.jp +scholar.google.co.kr +scholar.google.co.nz +scholar.google.co.th +scholar.google.co.uk +scholar.google.co.ve +scholar.google.co.za +scholar.google.com +scholar.google.com.ar +scholar.google.com.au +scholar.google.com.bo +scholar.google.com.br +scholar.google.com.co +scholar.google.com.cu +scholar.google.com.do +scholar.google.com.ec +scholar.google.com.eg +scholar.google.com.gt +scholar.google.com.hk +scholar.google.com.ly +scholar.google.com.mx +scholar.google.com.my +scholar.google.com.ni +scholar.google.com.pa +scholar.google.com.pe +scholar.google.com.ph +scholar.google.com.pk +scholar.google.com.pr +scholar.google.com.py +scholar.google.com.sg +scholar.google.com.sv +scholar.google.com.tr +scholar.google.com.tw +scholar.google.com.ua +scholar.google.com.uy +scholar.google.com.vn +scholar.google.cz +scholar.google.de +scholar.google.dk +scholar.google.es +scholar.google.fi +scholar.google.fr +scholar.google.gr +scholar.google.hn +scholar.google.hr +scholar.google.hu +scholar.google.is +scholar.google.it +scholar.google.li +scholar.google.lt +scholar.google.lu +scholar.google.lv +scholar.google.nl +scholar.google.no +scholar.google.pl +scholar.google.pt +scholar.google.ro +scholar.google.ru +scholar.google.se +scholar.google.si +scholar.google.sk +scholar.l.google.com +scholarpedia.org +sci-hub.ee +sci-hub.it.nf +sci-hub.mksa.top +sci-hub.se +sci-hub.st +sci.hubg.org +science.com +science.org +sciencedirect.com +sciencedirectassets.com +sciencemag.org +scienceonline.org +scientificamerican.com +scientificlinux.org +scitation.org +scival.com +scmp.com +scnshop.cc +scnsrc.me +scoop.sh +scopus.com +scoreland.com +scp-wiki.net +scpdb.org +scpwiki.com +screens-lab.jp +screenwisetrends.com +screenwisetrendspanel.com +sdcountybmw.com +seagroup.com +seamonkey-project.org +seaofsolitude.com +seasidestory.tokyo +secom.co.jp +secomtrust.net +secretchina.com +sectigo.com +secure-paypal.info +securepaypal.info +seiron-sankei.com +sellercommunity.com +semanticscholar.org +sensorynetworks.com +seqingx.com +sequence.com +serialssolutions.com +serverfault.com +serverlesslibrary.net +services-apple.net +services-exchange.com +serviceshp.com +servicetalk.io +seselah.com +setapp.com +setn.com +settv.com.tw +severreal.org +sextop1.net +sexzy4.com +sf.net +sfbassets.com +sfbassets.net +sfdcstatic.com +sforce.com +sfx.ms +shadowcomplex.com +shadowsocks.com +shadowsocks.nl +shadowsocks.org +sharepoint.com +sharepointonline.com +sharethis.com +sharpdaily.tw +shazam.com +shelfstuff.com +shields.io +shinhangmc.com +shireyishunjian.com +shoers.com +shoestop2.com +shop-headphones.net +shop.app +shopbeatsdre.com +shopbmwmotorcycles.com +shopbmwusa.com +shopbydre.com +shopcustomizedbeats.com +shopdisney.com +shopdrebeats.com +shopdurex.com +shopee.co.id +shopee.co.th +shopee.com +shopee.com.br +shopee.com.my +shopee.ph +shopee.sg +shopee.tw +shopee.vn +shopeemobile.com +shopfacebook.com +shopibay.net +shopify.com +shopify.dev +shopifycdn.com +shopifycloud.com +shopifystatus.com +shopifysvc.com +shoping.com +shopminiusa.com +shopmonsterbeats.com +shoppercentre.com +shopping-days.net +shoppinguheadphones.com +shops-disney.com +shopspeedtv.com +shorturl.at +shotwithgeforce.com +shp.ee +shuziyimin.org +siam.org +sibreal.org +siege-amazon.com +sign.new +signal.art +signal.org +signalbar.com +signalprocessingsociety.org +signalusers.org +silverchair-cdn.com +simcity-buildit.com +simcity.com +simg.jp +simgbb.com +simility.com +simplify.com +simplifycommerce.com +simplyipod.com +sinchew.com.my +sinchew.my +sing68.com +singpao.com.hk +singtao.com +singtaobooks.com +singtaola.com +singtaonewscorp.com +singtaoopo.com +singtaousa.com +sinoinsider.com +siport.com +sipriyearbook.org +siri.com +sis001.com +site.com +sitepoint.com +skate2.com +skillshare.com +skunkgirl.cc +sky.com +skyassets.com +skyoceanrescue.com +skyoceanrescue.de +skyoceanrescue.it +skype.com +skype.net +skypeassets.com +skypeassets.net +skysports.com +skysports.fr +skysports.ie +skysportsonline.com +skysportsracing.com +slack-core.com +slack-edge.com +slack-files.com +slack-imgs.com +slack-msgs.com +slack-redir.net +slack.com +slackb.com +slackcertified.com +slackdemo.com +slackhq.com +slashdot.org +slideshare.com +slideshare.net +slidesharecdn.com +sling.com +slinginternational.com +slobodnaevropa.mk +sm.ms +smart-edge.com +smartcommunitiescoalition.com +smartcommunitiescoalition.org +smartexpos.com +smartline.com.au +smartone.com +smartoneholdings.com +smartonerobotics.com +smartonesolutions.com.hk +smartonesolutions.hk +smpte.org +snap-dev.net +snap-telemetry.io +snap.com +snapads.com +snapchat.com +snapcraft.io +snapdragon.cn +snapdragonbooth.com +snapkit.co +snapseed.com +snapstore.io +snapvolumes.com +sndcdn.com +sneaker666.com +sneakerpage.net +sneakerskick.com +sni1dcb6gl.wpc.edgecastcdn.net +soasta-dswb.com +socalbmw.com +soccerfanz.com.my +soccerfinancier.ca +soccermatchpass.com +social.com +socrec.org +softbank-ipo.com +softbank-jp.com +softbank-robotics.com +softbank-telecom.com +softbank-telecom.net +softbank.jp +softbank.tv +softbankbb.com +softbankbb.net +softbankci.com +softbankhawksstore.jp +softbankmobile.net +softbankrobotics.com +softbanktelecom.com +softbankusa.net +softbankventuresasia.com +softbankworld.com +softether-download.com +softether.org +sohcradio.com +sohfrance.org +soirt4.fun +solarcity.com +solostudioksale.com +solveforx.com +sony-africa.com +sony-asia.com +sony-europe.com +sony-hes.co.jp +sony-latin.com +sony-mea.com +sony-olympus-medical.com +sony-promotion.eu +sony-semicon.co.jp +sony.at +sony.ba +sony.be +sony.bg +sony.ca +sony.ch +sony.cl +sony.co.cr +sony.co.id +sony.co.in +sony.co.jp +sony.co.kr +sony.co.nz +sony.co.th +sony.co.uk +sony.com +sony.com.ar +sony.com.au +sony.com.bo +sony.com.br +sony.com.co +sony.com.do +sony.com.ec +sony.com.gt +sony.com.hk +sony.com.hn +sony.com.mk +sony.com.mx +sony.com.my +sony.com.ni +sony.com.pa +sony.com.pe +sony.com.ph +sony.com.sg +sony.com.sv +sony.com.tr +sony.com.tw +sony.com.vn +sony.cz +sony.de +sony.dk +sony.ee +sony.es +sony.eu +sony.fi +sony.fr +sony.gr +sony.hr +sony.hu +sony.ie +sony.it +sony.kz +sony.lt +sony.lu +sony.lv +sony.net +sony.nl +sony.no +sony.pl +sony.pt +sony.ro +sony.rs +sony.ru +sony.se +sony.si +sony.sk +sony.ua +sonybo.co.jp +sonybsc.com +sonybuilding.jp +sonyclassics.com +sonydesign.com +sonydna.com +sonyentertainmentnetwork.com +sonyglobalsolutions.jp +sonykigyo.jp +sonylatvija.com +sonypcl.jp +sonypictures.com +sonypicturesanimation.com +sonypicturesmuseum.com +sonypicturesstudios.com +sonypicturestelevision.com +sonypicturestelevisiongames.com +sonyprotechnosupport.co.jp +sonystoragemedia.co.jp +sonytc.co.jp +sorcerersarena.com +soso7778.com +soundcloud.com +soundofhope.kr +soundofhope.org +sourceforge.com +sourceforge.net +sourcingforebay.com.cn +sourcingforebay.net +sourcingforebay.tv +south-plus.net +southfloridamini.com +sovec.net +spaceexplored.com +spacely.com.au +spacex.com +spaindisney.com +spankbang.com +spearhead.kr +specialtyheadphones.com +speeddreamride.com +speedfantasybid.com +speedhunters.com +speedracegear.com +speedtest.com.hk +speedxtra.com +spektral.cc +speybay.com +spiceworks.com +spiceworksstatic.com +spiedigitallibrary.org +spiritclubs.com +spiritofecstasy.com +splatoon2tournament.com +sponichi.co.jp +spore.com +sportsfacebook.com +sportstream.com +sportswomanoftheyear.co.uk +sportswomenoftheyear.co.uk +spoti.fi +spotify-everywhere.com +spotify.com +spotify.design +spotifycdn.com +spotifycdn.net +spotifycharts.com +spotifycodes.com +spotifyforbrands.com +spotifyjobs.com +spraynwash.com +spreadprivacy.com +springer.com +springerlink.com +springernature.com +sprinklesapp.com +spyjinx.com +sqlite.org +sqlserveronlinux.com +squarecapital.com +squarecdn.com +squarecloudservices.com +squarefoot.com.hk +squareup.com +squirrelgroup.net +squirrelvpn.com +srebrenica360.com +srtcdn.net +ssdevrd.com +ssl-certificate.ch +ssl-images-amazon.com +ssl-lvlt.cdn.ea.com +sslpaypal.org +ssplive.pw +ssrpass.pw +sstatic.net +ssx3.com +stackage.org +stackapps.com +stackauth.com +stackexchange.com +stackmod.blog +stackoverflow.blog +stackoverflow.com +stackoverflow.email +stackoverflowbusiness.com +stackpath.com +stackpath.dev +stacksnippets.net +stadia.dev +staffhub.ms +standardsuniversity.org +star-brasil.com +star-latam.com +starbucks-stars.com +starbucks.ad +starbucks.at +starbucks.be +starbucks.bg +starbucks.ca +starbucks.ch +starbucks.co.id +starbucks.co.jp +starbucks.co.nz +starbucks.co.th +starbucks.co.uk +starbucks.co.za +starbucks.com +starbucks.com.ar +starbucks.com.bn +starbucks.com.co +starbucks.com.cy +starbucks.com.gr +starbucks.com.hk +starbucks.com.kh +starbucks.com.kz +starbucks.com.mx +starbucks.com.my +starbucks.com.pe +starbucks.com.sg +starbucks.com.tr +starbucks.com.uy +starbucks.de +starbucks.dk +starbucks.es +starbucks.fr +starbucks.hu +starbucks.ie +starbucks.in +starbucks.it +starbucks.nl +starbucks.no +starbucks.ph +starbucks.pl +starbucks.pt +starbucks.rs +starbucks.ru +starbucks.se +starbucks.tt +starbucks.vn +starbucksathome.com +starbucksavie.ca +starbuckscard.ph +starbuckscardb2b.com +starbuckscoffee.cz +starbuckscoffeegear.com +starbuckscoffeegearstore.com +starbucksforlife.ca +starbucksforlife.com +starbuckspoq.com +starbucksreserve.com +starbucksrewardsstarland.ca +starbucksrewardsstarland.com +starbucksromania.ro +starbucksrtd.com +starbucksslovakia.sk +starbuckssummergame.ca +starbuckssummergame.com +starcraft.com +starcraft2.com +starfox.com +stark-verlag.ch +startpage.com +startpath.com +startupjournal.com +startupschool.org +starwars.com +starwarsbattlefront.com +starwarsbattlefront2.com +starwarsfallenorder.com +starwarsgalacticstarcruiser.com +starwarsjedifallenorder.com +starwarskids.com +starwarstheoldrepublic.com +stateofthemap.com +stateofthemap.org +static-cisco.com +static-nike.com +static-verizon.com +static9.net.au +staticflickr.com +statics-marketingsites-eus-ms-com.akamaized.net +statics-marketingsites-wcus-ms-com.akamaized.net +statsmakemecry.com +statuspage.io +stc-server.com +stcroixmosquito.com +stcroixmosquitoproject.com +steam-chat.com +steambroadcast.akamaized.net +steamcdn-a.akamaihd.net +steamcommunity-a.akamaihd.net +steamcommunity.com +steamcontent.com +steamdeck.com +steamgames.com +steampowered.com +steamstatic.com +steamstore-a.akamaihd.net +steamunlocked.net +steamusercontent-a.akamaihd.net +steamusercontent.com +steamuserimages-a.akamaihd.net +steamvideo-a.akamaihd.net +steelbrick.com +steemit.com +stheadline.com +stlouisbmw.net +stockagainstphotography.com +storage.live.com +store-bridgestonesports.com +storesense.com +storm.mg +storyful.com +straightouttasomewhere.com +streamable.com +streamingdisney.net +strepsils.at +strepsils.ch +strepsils.co.kr +strepsils.co.nz +strepsils.co.za +strepsils.com.ar +strepsils.com.au +strepsils.com.br +strepsils.com.co +strepsils.com.hk +strepsils.com.ph +strepsils.com.tw +strepsils.es +strepsils.fi +strepsils.fr +strepsils.hr +strepsils.hu +strepsils.ie +strepsils.net +strepsils.pl +strepsils.pt +strepsils.ro +strepsils.ru +strepsils.si +strepsils.us +strepsilsarabia.com +strikingly.com +strikinglycdn.com +stripchat.com +stripe.com +stripe.network +stripecdn.com +studiobeatsbydrdre.com +studywatchbyverily.com +studywatchbyverily.org +stunnel.org +stxmosquito.com +stxmosquitoproject.com +stxmosquitoproject.net +stxmosquitoproject.org +sub147.com +sublimetext.com +subscene.com +successwithteams.com +sulwerphoto.com +sun.com +sunbingo.co.uk +sundanceignite2016.com +sundayready.com +sunglassessale2014.com +supercoach.com.au +superearsenjoy.com +supermario.com +supermario3dworld.com +supermariogalaxy.com +supermariorun.com +superpapermario.com +superstation.com.tw +superuser.com +supplybestjerseys.com +supportfacebook.com +supremacy.com +supremacy.net +surface.com +surflite.co +surflite.net +sustainthesound.com +svaboda.org +sverigebeatsbydrdre.com +svoboda.org +svobodnaevropa.bg +svp-team.com +svpply.com +swag.live +sway-cdn.com +sway.com +sweetandmaxwell.co.uk +swift.org +swiftbank.info +swiftbank.us +swiftcapital.com +swiftfinancial.com +swiftfinancial.info +swiftfinancial.net +swissid.ch +swissign.com +swissign.li +swisssign-group.ch +swisssign-group.com +swisssign-group.li +swisssign.ch +swisssign.com +swisssign.li +swisssign.net +swisssign.org +swisssigner.ch +swisssigner.com +swisssigngroup.ch +swisssigngroup.com +swissstick.com +swisstsa.ch +swisstsa.li +swjedifallenorder.com +swjfo.com +swoo.sh +swoosh.com +swoosh.tv +swtor.com +swtor.net +syhacked.com +synaptic.net +synergyse.com +syosetu.com +sysinternals.com +szabadeuropa.hu +szcheapmonsterheadphones.com +szwinnertechnology.com +t.co +t.me +t21.nikkei.co.jp +t21ipau.nikkei.co.jp +t66y.com +taboola.com +tagapie.com.tw +tail-f.com +tailf.com +tailwindtraders.com +taipeitimes.com +taiwannews.com.tw +take2games.com +takegoto.com +talentlens.com +talksport.com +tandberg-china.com +tandberg.com +tandf.co.uk +tandfonline.com +taptotokyo.com +target.com +targetimg1.com +taste.com.au +tasteofpremium.jp +taylorandfrancis.com +taylorfrancis.com +tbr.tangbr.net +tdesktop.com +teamneedforspeed.com +tearapeak.com +techatbloomberg.com +techhub.ms +techliquidators.com +technews.tw +technics.com +technologyandsociety.org +techstreet.com +techtimes.com +ted.com +tedcdn.com +teenchoice.com +tegrazone.co +tegrazone.co.kr +tegrazone.com +tegrazone.jp +tegrazone.kr +telebay.com +telega.one +telegra.ph +telegram.dog +telegram.me +telegram.org +telegram.space +telekom.com +telekom.de +telesco.pe +telesell.com +telex.cc +tellapart.com +tellme.pw +tellmewhygame.com +tenbyfotolia.com +tensorflow.org +terapeack.com +terapeak.ca +terapeak.com +terapeak.com.hk +terapeak.hk +terapeak.info +teraperk.com +termius.com +termux.com +termux.org +terraform.io +terragraph.com +terrapeak.com +tesla-cdn.thron.com +tesla.com +teslamotors.com +test-ipv6.com +testonfox.com +tex-talk.net +texttobuy.org +texture.com +tfhub.dev +tfsallin.net +tg.dev +thanksloyalty.com +thawte.com +thawte.de +thawte.fr +the-japan-news.com +the-m-festival.com +the-monster-beats.com +the-tls.co.uk +theaffairs.com +theaustralian.com.au +theav.cc +thebanker.com +thebankerdatabase.com +thebayuk.com +thebeatsbydre.com +thebeatsbydre.net +thebeatsheadphonesale.com +thechronicle.com.au +theclasshroom.com +thecleversense.com +theclub.com.hk +thecompaqstore.com +thedailysnkr.com +thedreadwolfrises.com +theebayshop.com +theepochtimes.com +theepochtimessubscribe.com +thefacebook.com +thefacebook.net +thefind.com +thefoxnation.com +thegatewaypundit.com +thegeorgiascene.com +thegithubshop.com +thegooglestore.com +theguardian.com +theguardiandns.com +thehealthsite.com +thehentaiworld.com +thehulubraintrust.com +theinitium.com +theinstagramhack.com +theintelstore.com +thelancet.com +thelegendarystarfy.com +theman.in +themarvelexperiencetour.com +themathsfactor.com +themercury.com.au +themessengeradelaide.com.au +themoviedb.org +thenationalpulse.com +thenewgirlspooping.com +thenewslens.com +thenextweb.com +theopportunityproject.org +thepaypalshop.com +thepiratebay.org +theporndude.com +thescottishsun.co.uk +thesffblog.com +theshoppingexpresslane.net +thesims.com +thesims3.com +thesims4.com +thesimssocial.com +thestandard.com.hk +thestandnews.com +thestationbymaker.com +thesun.co.uk +thesun.ie +thesundaytimes.co.uk +thetimes.co.uk +thetimes.ie +thetread.com +thetvdb.com +thetype.com +theuab.net +theverge.com +theweek.in +thewonderful101.com +thieme-connect.com +thieme-connect.de +thieme.de +thinkboxsoftware.com +thinkdifferent.us +thinkofliving.com +thinkquarterly.co.uk +thinkquarterly.com +thinkwithgoogle.com +thisav.com +thisismoney.co.uk +thisispolaris.com +thismon.ee +thisvid.com +thisvidscat.net +thomsonreuters.ca +thomsonreuters.cn +thomsonreuters.co.jp +thomsonreuters.co.kr +thomsonreuters.co.nz +thomsonreuters.co.uk +thomsonreuters.com +thomsonreuters.com.ar +thomsonreuters.com.au +thomsonreuters.com.br +thomsonreuters.com.hk +thomsonreuters.com.my +thomsonreuters.com.pe +thomsonreuters.com.sg +thomsonreuters.com.tr +thomsonreuters.es +thomsonreuters.in +thomsonreuters.ru +thomsonreutersmexico.com +thtmod1.com +thumbzilla.com +thunderbird.net +thunderbolttechnology.net +tiberiumalliances.com +tiburon.com +tickdata.com +tictoc.video +tidal.com +tidalhifi.com +tidelift.com +tiendabestbuy.com +tik-tokapi.com +tiktok.com +tiktokcdn.com +tiktokv.com +tiltbrush.com +time.gov +timelinestoryteller.com +timesmembership.com +timestalks.com +tinyurl.com +tiohentai.com +tiresplus.com +titanfall.com +tkb008.xyz +tmdb.org +tmsnrt.rs +tnntoday.com +tnt-ea.com +toget.com.tw +tokyo-sports.co.jp +tokyomotion.net +tomonews.net +tonec.com +toolforge.org +topbeatsbydrdreoutlet.com +topbeatsdealer.com +topbeatsforsale.com +toplayerserver.com +torcidadeouro.com +torproject.org +torrentkitty.tv +torrindex.net +tospo-keiba.jp +totalmateria.com +touchid.tv +touchid.wang +touchsmartpc.com +touchsmartpc.net +touchsmartpc.org +toutapp.com +towerauction.com +townofsins.com +townsvillebulletin.com.au +tr.com +tracking-location.com +tradevip1.com +trafficmanager.net +translatetheweb.com +translatewiki.net +translatewiki.org +travelcontroller.com +travelex.be +travelex.bh +travelex.ca +travelex.co.in +travelex.co.jp +travelex.co.nz +travelex.co.uk +travelex.com +travelex.com.au +travelex.com.hk +travelex.com.my +travelex.com.om +travelex.com.tr +travelex.de +travelex.fr +travelex.it +travelex.qa +travelexae.com +travelexch.com +travelexmoneycard.com +trello.com +trellocdn.com +tribler.org +tristatebmw.com +trithucvn.net +trithucvn.org +trmini.com +troisrivieresmini.com +truedepth3d.com +trustdoc.ch +trustedanalytics.com +trustedanalytics.net +trustsign.ch +trustwave.com +trycloudflare.com +trydurex.net +trydurex.tv +tryengineering.org +tryfunctions.com +tryrating.com +ts.la +tsquare.tv +tssp.best +tteshop.com +ttvnw.net +tube4world.com +tube8.com +tubesafari.com +tubetubetube.com +tug.org +tukif.com +tumblr.com +tunsafe.com +tuta.io +tutanota.com +tvappstore.net +tvb.com +tvb.com.au +tvbanywhere.com +tvbanywhere.com.sg +tvbeventpower.com.hk +tvbs.com.tw +tvbusa.com +tvbweekly.com +tver.co.jp +tver.jp +tvmedia.net.au +tvmost.com.hk +tvnaviweb.jp +tvpromise.com +twcomix.com +tweetdeck.com +twgreatnews.com +twhentai.com +twimg.com +twinprime.com +twister.net.co +twitch.tv +twitchcdn.net +twitchsvc.net +twitpic.com +twitter.com +twitter.jp +twitterinc.com +twitteroauth.com +twitterstat.us +twnextdigital.com +twtrdns.net +twttr.com +tx.me +txcloud.net +txdirectv.com +txvia.com +typeisbeautiful.com +typekit.com +typekit.net +typenetwork.com +typesquare.com +typography.com +u.nu +uber-assets.com +uber.com +ubereats.com +ubi.com +ubisoft-orbit-savegames.s3.amazonaws.com +ubisoft-uplay-savegames.s3.amazonaws.com +ubisoft.com +ubisoftconnect.com +ubistatic3-a.akamaihd.net +ubnw.net +ubuntu-touch.io +ubuntu.com +ubuntu.net +ubuntuforums.org +uchicago.edu +ucla.edu +udacity.com +udemy.com +udemycdn.com +udfs.com +udn.com +udn.com.tw +udndata.com +udnfunlife.com +udtrucksmeena.com +ueberamazon.de +uhub.com +ukipad.com +ukwhoswho.com +ulifestyle.com.hk +ulol.com +ulrichsweb.serialssolutions.com +ultimaforever.com +ultimaonline.com +umagazine.com.hk +umamusume.akamaized.net +umass.edu +un.org +unbrandedproducts.com +uncensoredhentai.xxx +underlords.com +unfiltered.news +unity.com +unity3d.com +unityads.unity3d.com +unityads.unitychina.cn +universalorlando.com +universalpictures.com +universalpicturesinternational.com +universalstudioshollywood.com +universitypressscholarship.com +unlocklimitlesslearning.com +unpkg.com +unravel2.com +unraveltwo.com +unrealengine.com +unrealtournament.com +unstyle.us +unwire.hk +uo.com +uoherald.com +upjav.cc +uplay.com +uplinq.com +uplynk.com +upmedia.mg +uproxy.org +urchin.com +urduvoa.com +usa-beatsbydreheadphonesonsale.net +usatoday.com +usatodaynetworkservice.com +useplannr.com +userapi.com +usercontent.dev +userpxt.io +usertrust.com +usvimosquito.com +usvimosquitoproject.com +uug22.com +uug23.com +uug25.com +uug26.com +uug27.com +uuk28.com +uun78.com +uun79.com +uun82.com +uun83.com +uun85.com +uun86.com +uun87.com +uun89.com +uun92.com +uun93.com +uun95.com +uun96.com +uun97.com +uun98.com +uun99.com +uux68.com +uverse.com +uwpcommunitytoolkit.com +v-has.com +v.gd +v2ex.com +v2fly.org +v2ray.com +v2ray.cool +v8.dev +v8project.org +vaginacontest.com +vagrantcloud.com +vagrantup.com +valuegb.com +valvesoftware.com +vancouverbmwretailers.ca +vanish.at +vanish.be +vanish.ch +vanish.cl +vanish.co.id +vanish.co.il +vanish.co.in +vanish.co.nz +vanish.co.uk +vanish.co.za +vanish.com.ar +vanish.com.br +vanish.com.co +vanish.com.hr +vanish.com.mx +vanish.com.my +vanish.com.pe +vanish.com.sg +vanish.com.tr +vanish.de +vanish.dk +vanish.es +vanish.fi +vanish.fr +vanish.hu +vanish.ie +vanish.it +vanish.nl +vanish.no +vanish.pl +vanish.pt +vanish.ro +vanish.ru +vanish.se +vanish.si +vanish.sk +vanisharabia.com +vanishbancaseulook.com.br +vanishcentroamerica.com +vanishinfo.cz +vanishstains.com +vanishstains.com.au +vanitaonline.com +vanitha.in +vanithaveedu.com +vaultify.com +vaultify.info +vaultify.net +vaultproject.io +vcanedge.com +vcloudair.net +vct.news +vector.im +veet.at +veet.be +veet.ca +veet.ch +veet.cl +veet.co.id +veet.co.in +veet.co.kr +veet.co.nz +veet.co.uk +veet.co.za +veet.com +veet.com.ar +veet.com.au +veet.com.bd +veet.com.br +veet.com.co +veet.com.hk +veet.com.mx +veet.com.my +veet.com.ph +veet.com.pk +veet.com.sg +veet.com.tr +veet.de +veet.dk +veet.es +veet.fi +veet.fr +veet.hu +veet.jp +veet.nl +veet.no +veet.pt +veet.ro +veet.ru +veet.se +veet.tv +veet.us +veetarabia.com +veetbangladesh.com +veetcentroamerica.com +veetclub.it +velkaepocha.cz +velocloud.com +velostrata.com +vendu.com +venmo-touch.com +venmo.com +venmo.info +venmo.net +venmo.org +venmo.s3.amazonaws.com +vercel-dns.com +vercel-status.com +vercel.app +vercel.com +verily.com +verilylifesciences.com +verilystudyhub.com +verilystudywatch.com +verilystudywatch.org +verisign.asia +verisign.biz +verisign.ch +verisign.co.in +verisign.co.uk +verisign.com +verisign.com.au +verisign.com.br +verisign.com.cn +verisign.com.es +verisign.com.hk +verisign.com.sg +verisign.com.tw +verisign.com.vn +verisign.de +verisign.dk +verisign.es +verisign.fr +verisign.hk +verisign.in +verisign.info +verisign.jobs +verisign.mobi +verisign.name +verisign.net +verisign.org +verisign.pro +verisign.se +verisign.sg +verisign.tw +verisign.us +verisign.vn +verisigninc.com +verizon.com +verizon.net +verizonbusinessfios.com +verizondigitalmedia.com +verizonenterprise.com +verizonfios.com +verizonmedia.com +verizonwireless.com +versly.com +verygoodnike.com +veryshortintroductions.com +vfabric.net +vfsco.at +vfsco.be +vfsco.bg +vfsco.ca +vfsco.ch +vfsco.cl +vfsco.co.uk +vfsco.co.za +vfsco.com +vfsco.com.au +vfsco.com.br +vfsco.com.tr +vfsco.cz +vfsco.de +vfsco.dk +vfsco.ee +vfsco.es +vfsco.fi +vfsco.fr +vfsco.hu +vfsco.ie +vfsco.in +vfsco.it +vfsco.jp +vfsco.kr +vfsco.lt +vfsco.lv +vfsco.mx +vfsco.nl +vfsco.no +vfsco.pe +vfsco.pl +vfsco.ro +vfsco.ru +vfsco.se +vfsco.sk +vfsco.us +vfsforgit.com +vfsforgit.org +vgcareers.net +vgg8.com +vhx.tv +vhxqa1.com +vhxqa2.com +vhxqa3.com +vhxqa4.com +vhxqa6.com +viacbs.com +viacom.com +viacomcbs.com +viacomcbspressexpress.com +videobreakdown.com +videochampion.com +videodelivery.net +videoindexer.ai +videojs.com +videolan.org +videopress.com +videos-rockstargames-com.akamaized.net +vidmpreview.com +viewpointsfromfacebook.com +vilavpn.com +vilavpn.xyz +vilavpn1.xyz +vilavpn2.xyz +vilavpn3.xyz +vilavpn4.xyz +vilavpn5.xyz +vilavpn6.xyz +vilavpn7.xyz +vim.org +vimeo-staging.com +vimeo-staging2.com +vimeo.com +vimeo.fr +vimeobusiness.com +vimeocdn.com +vimeogoods.com +vimeoondemand.com +vimeostatus.com +vine.co +vip-beats.com +vipbeatsbydre.com +vipheadphones.com +vipoo.es +vipshoes2.com +virsto.com +virsto.net +virtualearth.net +virtuata.com +visa-atm.com +visa-news.jp +visa.be +visa.ca +visa.cl +visa.co.ao +visa.co.cr +visa.co.id +visa.co.il +visa.co.in +visa.co.jp +visa.co.ke +visa.co.ni +visa.co.nz +visa.co.th +visa.co.uk +visa.co.ve +visa.co.za +visa.com +visa.com.ag +visa.com.ai +visa.com.ar +visa.com.au +visa.com.az +visa.com.bo +visa.com.br +visa.com.bs +visa.com.bz +visa.com.co +visa.com.cy +visa.com.dm +visa.com.do +visa.com.ec +visa.com.ge +visa.com.gt +visa.com.gy +visa.com.hk +visa.com.hn +visa.com.hr +visa.com.jm +visa.com.kh +visa.com.kn +visa.com.kz +visa.com.lc +visa.com.lk +visa.com.ms +visa.com.mx +visa.com.my +visa.com.ng +visa.com.pa +visa.com.pe +visa.com.ph +visa.com.pr +visa.com.py +visa.com.ru +visa.com.sg +visa.com.sv +visa.com.tr +visa.com.tt +visa.com.tw +visa.com.ua +visa.com.uy +visa.com.vc +visa.com.vi +visa.com.vn +visa.cz +visa.de +visa.dk +visa.es +visa.fi +visa.fr +visa.gd +visa.gp +visa.gr +visa.hk +visa.hu +visa.ie +visa.is +visa.ky +visa.lt +visa.lv +visa.mn +visa.mq +visa.nl +visa.no +visa.pl +visa.pt +visa.ro +visa.se +visa.sk +visa.so +visa.sx +visa.tc +visabank.org +visabg.com +visabusinessinsights.com +visacarddesignlab.com +visacards.com +visacheckout.net +visacheckout.org +visaconciergelac.com +visadigital.com +visadigitalconcierge.com +visadns.com +visadpsonline.us +visaeurope.at +visaeurope.ch +visaeurope.lu +visaeurope.si +visaeverywhereshop.com +visafintechfasttrack.com +visafulfillment.com +visagiftcard.us +visaglobalfinance.com +visaicsdirect.com +visainfinite.ca +visainfiniteluxuryhotels.ca +visaitalia.com +visakorea.com +visaluxuryhotelcollection.com +visaluxuryhotelcollection.com.br +visaluxuryhotelcollection.com.mx +visaluxuryhotels.com +visaluxuryhotels.com.ar +visamiddleeast.com +visanet.net +visapcsdirect.com +visaplus.com +visasavingsedge.ca +visasignature.co.kr +visasignaturehotels.com +visasoutheasteurope.com +visb.org +visceralgames.com +visiontimes.com +visiontimes.de +visiontimes.fr +visiontimes.it +visiontimes.net +visiontimesjp.com +visual-arts.jp +visualarts.gr.jp +visualstudio-staging.com +visualstudio.co +visualstudio.co.uk +visualstudio.com +visualstudio.eu +visualstudio.net +viu.com +viu.tv +vjav.com +vjmedia.com.hk +vk-cdn.me +vk-cdn.net +vk-portal.net +vk.cc +vk.com +vk.design +vk.link +vk.me +vkcache.com +vkgo.app +vklive.app +vkmessenger.app +vkmessenger.com +vkontakte.ru +vkuseraudio.com +vkuserlive.net +vkuservideo.com +vkuservideo.net +vmglobal.net +vmmark.com +vmtestdrive.com +vmw.com +vmware-cloudmanagement.com +vmware-techcenter.com +vmware.com +vmware.tt.omtrdc.net +vmware20mosaic.com +vmwareausnews.com +vmwarecertificationvideos.com +vmwarecloud.com +vmwaredemandcenter.com +vmwareemeablog.com +vmwaregrid.com +vmwarehorizon.com +vmwareidentity.com +vmwarelearning.com +vmwarelearningplatform.com +vmwarestuff.com +vmwareusergroupstore.com +vmwareviewpoint.com +vmwarevmc.com +vmwdemo.com +vmwgcomms.com +vmwhorizonair.com +vmwidm-ads.com +vmwidm.com +vmwlabconnect.com +vmwlearningplatform.com +vmworld.com +vmworld2010.com +vmworld2013.com +vmwsalesrewards.com +vmwservices.com +vnware.net +voa.gov +voaafaanoromoo.com +voaafrique.com +voabambara.com +voabangla.com +voacambodia.com +voacantonese.com +voachinese.com +voadeewanews.com +voadeewaradio.com +voahausa.com +voaindonesia.com +voakorea.com +voalingala.com +voandebele.com +voanews.com +voanews.eu +voanoticias.com +voanouvel.com +voaportugues.com +voashona.com +voasomali.com +voaswahili.com +voathai.com +voatibetan.com +voatibetanenglish.com +voatiengviet.com +voatour.com +voazimbabwe.com +vod-abematv.akamaized.net +vod-dash-uk-live.akamaized.net +vod-dash-ww-live.akamaized.net +vod-hls-uk-live.akamaized.net +vod-sub-uk-live.akamaized.net +vod-thumb-uk-live.akamaized.net +vod-thumb-ww-live.akamaized.net +vod360.net +vokevr.com +volvo-truck.nl +volvo.ca +volvo.com +volvo.se +volvobrandshop.com +volvobuses.at +volvobuses.be +volvobuses.ca +volvobuses.ch +volvobuses.co +volvobuses.co.nz +volvobuses.co.uk +volvobuses.co.za +volvobuses.com +volvobuses.com.ar +volvobuses.com.au +volvobuses.com.br +volvobuses.com.kw +volvobuses.com.pt +volvobuses.com.tw +volvobuses.de +volvobuses.dk +volvobuses.es +volvobuses.fi +volvobuses.fr +volvobuses.hk +volvobuses.hu +volvobuses.in +volvobuses.it +volvobuses.jo +volvobuses.kr +volvobuses.ma +volvobuses.mx +volvobuses.my +volvobuses.no +volvobuses.om +volvobuses.ph +volvobuses.pk +volvobuses.pl +volvobuses.ru +volvobuses.se +volvobuses.sg +volvobuses.tn +volvobuses.us +volvoce.com +volvodefense.com +volvogroup.be +volvogroup.com +volvogroup.com.br +volvogroup.de +volvogroup.fr +volvogroup.jp +volvogroup.kr +volvogroup.mx +volvogroup.nl +volvogroup.pe +volvogroup.pl +volvogroup.ru +volvogroup.se +volvogrouptruckcenter.nl +volvomerchandise.com +volvopenta.com +volvopenta.com.br +volvopenta.de +volvopenta.es +volvopenta.fr +volvopenta.it +volvopenta.nl +volvopenta.se +volvopenta.us +volvosaatio.fi +volvospares.com +volvotruckcenter.be +volvotruckcenter.dk +volvotruckcenter.es +volvotruckcenter.fi +volvotruckcenter.it +volvotruckcenter.kr +volvotruckcenter.kz +volvotruckcenter.nl +volvotruckcenter.no +volvotruckcenter.se +volvotruckrental.be +volvotrucks.ae +volvotrucks.al +volvotrucks.am +volvotrucks.at +volvotrucks.az +volvotrucks.ba +volvotrucks.be +volvotrucks.bg +volvotrucks.by +volvotrucks.ch +volvotrucks.cl +volvotrucks.co.ao +volvotrucks.co.bw +volvotrucks.co.il +volvotrucks.co.mz +volvotrucks.co.na +volvotrucks.co.nz +volvotrucks.co.uk +volvotrucks.co.za +volvotrucks.co.zm +volvotrucks.co.zw +volvotrucks.com +volvotrucks.com.ar +volvotrucks.com.au +volvotrucks.com.bn +volvotrucks.com.br +volvotrucks.com.co +volvotrucks.com.kw +volvotrucks.com.pt +volvotrucks.com.tr +volvotrucks.com.tw +volvotrucks.com.ua +volvotrucks.cz +volvotrucks.de +volvotrucks.dk +volvotrucks.ee +volvotrucks.es +volvotrucks.fi +volvotrucks.fr +volvotrucks.ge +volvotrucks.gr +volvotrucks.hk +volvotrucks.hr +volvotrucks.hu +volvotrucks.id +volvotrucks.in +volvotrucks.it +volvotrucks.jp +volvotrucks.kg +volvotrucks.kr +volvotrucks.kz +volvotrucks.lt +volvotrucks.lv +volvotrucks.ma +volvotrucks.md +volvotrucks.mk +volvotrucks.mn +volvotrucks.my +volvotrucks.net +volvotrucks.nl +volvotrucks.no +volvotrucks.pe +volvotrucks.ph +volvotrucks.pk +volvotrucks.pl +volvotrucks.ps +volvotrucks.qa +volvotrucks.ro +volvotrucks.rs +volvotrucks.ru +volvotrucks.se +volvotrucks.sg +volvotrucks.si +volvotrucks.sk +volvotrucks.tm +volvotrucks.tn +volvotrucks.uy +votolia.com +vox-cdn.com +vox.com +voxcreative.com +voxfieldguide.com +voxmedia.com +voxops.net +vpro.com +vpro.net +vrv.co +vsallin.net +vsassets.io +vscode.dev +vsphere.com +vsphere.net +vtsociety.org +vtvan.com +vultr.com +vuvuzela.io +vzw.com +w.org +w.wiki +w3.org +w3schools.com +wa.me +waa.tw +wal-mart.com +wal.co +wallet.com +walmart-content.com +walmart.com +walmart.pharmacy +walmartimages.com +wanokokorosoh.com +want-media.com +wantblogger.com +wariolandshakeit.com +wariowarediy.com +warp.plus +warroom.org +wasdj.com +washa.tv +washingtondcbmw.com +washingtonpost.com +watch-ebay.org +watchanimeattheoffice.com +watchdisneyfe.com +watchespn.com +watchinese.com +watchjavonline.com +watchout.tw +water-and-power.com +waymo.com +waze.com +wballiance.com +wbd.ms +wd.com +wdc.com +wdfiles.com +wealth.com.tw +weareebay.com +web-instagram.net +web.app +web.dev +webappfieldguide.com +webex.ca +webex.co.in +webex.co.it +webex.co.jp +webex.co.kr +webex.co.nz +webex.co.uk +webex.com +webex.com.au +webex.com.br +webex.com.hk +webex.com.mx +webex.de +webex.es +webex.fr +webflow.com +webhosting.com +webkit.org +webkitgtk.org +webmoneyinfo.com +webmproject.org +webobjects.co.uk +webobjects.com +webobjects.de +webobjects.eu +webobjects.net +webofknowledge.com +webofscience.com +webpkgcache.com +webrtc.org +webtoons.com +webtype.com +weekly-economist.com +weeklytimesnow.com.au +weinvoiceit.com +weiyuksj.com +welcometobestbuy.ca +weltweitwachsen.de +wenzhao.ca +westerndigital.com +westlaw.com +weverse.io +wfm.com +what-fan.net +whatbrowser.org +whatisairwatch.com +whatisworkspaceone.com +whatsapp-plus.info +whatsapp-plus.me +whatsapp-plus.net +whatsapp.cc +whatsapp.com +whatsapp.info +whatsapp.net +whatsapp.org +whatsapp.tv +whatsappbrand.com +whatthefox.com +wheelpop.com +wheelworks.net +whereilive.com.au +whichav.video +whimn.com.au +whisolutions.com +whispersystems.org +who.int +wholecitiesfoundation.org +wholefoods.com +wholefoodsmarket.co.uk +wholefoodsmarket.com +wholekidsfoundation.org +wholeplanetfoundation.org +wholesale-exporter1.com +wholesalediscountpurses.com +wholesalefine.com +wholesaleonlinemart.com +whonix.org +whosthehost.com +whychoosehorizon.com +whychooseview.com +whychoosevmwareeuc.com +whyfacebook.com +whyiwantciscotelepresence.com +widevine.com +widgets.stripst.com +wifi-mx.com +wii-u.com +wiifit.com +wiifitu.com +wiipartyu.com +wiisports.com +wiisportsresort.com +wiiugamepad.com +wiivc.net +wikia.com +wikia.nocookie.net +wikia.org +wikibooks.org +wikidata.org +wikidot.com +wikihow.com +wikileaks.org +wikimedia.org +wikimediacloud.org +wikimediafoundation.org +wikinews.org +wikipedia.org +wikiquote.org +wikisource.org +wikiversity.org +wikivoyage.org +wiktionary.org +wiley.com +wimpmusic.com +windows-int.net +windows.com +windows.net +windows.nl +windows8.hk +windowsazure.com +windowscommunity.net +windowsmarketplace.com +windowsphone-int.com +windowsphone.com +windowssearch.com +windowsuem.com +windowsupdate.com +windy.com +winhec.com +winhec.net +winticket.jp +winudf.com +wionews.com +wipower.com +wireguard.com +wireless.radio +wirelessgroup.co.uk +wirelessreach.com +wiremoneytoirelandwithxoomeasierandcheaper.com +wireshark.org +wise-research.com +wish.com +withgoogle.com +withyoutube.com +wix-code.com +wix.com +wixanswers.com +wixapps.net +wixmp.com +wixsite.com +wixstatic.com +wkap.nl +wmcloud.org +wmflabs.org +wmfusercontent.org +wmt.co +wnacg.org +wofl.tv +woflthenewsstation.com +wogx.com +wolfatbestbuy.com +wolfatbestbuy.net +wolterskluwer.com +womensnikeshox.com +womenwill.com +womenwill.com.br +womenwill.id +womenwill.in +womenwill.mx +woolite.ca +woolite.com +woolite.pl +woolite.us +woolitecarpet.com +wordpress.com +wordpress.org +wordpress.tv +workers.dev +workplace.com +workplaceusecases.com +workspaceair.com +workspaceone.com +workstations.tv +worldcoinpay.com +worldcurrencycard.co.za +worldemojiawards.com +worldemojiday.com +worldflipper.akamaized.net +worldflipper.jp +worldhack.com +worldofwarcraft.com +worldscientific.com +worldsecureemail.com +worldsecuresystems.com +worldsfastestgamer.net +wp-themes.com +wp.com +wpewebkit.org +wpvip.com +wrds-www.wharton.upenn.edu +wrenchead.com +wsj.com +wsj.jobs +wsj.net +wsjbarrons.com +wsjmediakit.com +wsjplus.com +wsjshop.com +wsjwine.com +wto.org +wuso.me +wwapple.net +wwe.com +wwe9.com +wwtbam.com +www-bestbuystores.com +www-cdn.icloud.com.akadns.net +www-facebook.com +www-paypal.info +www-paypal.us +www.sb +www8-hp.com +wwwapple.net +wwwapplemusic.com +wwwdecide.com +wwwebay.com +wwwebay.net +wwwfacebok.com +wwwfacebook.com +wwwhuluplus.com +wwwicloud.com +wwwinstagram.com +wwwipodlounge.com +wwwitunes.com +wwwmacbookair.com +wwwmfacebook.com +wwwpaypass.com +wwwwebay.com +wwwxoom.com +wzmyg.com +x-art.com +x.co +x.com +x.company +x.org +x.team +x1337x.eu +x1337x.se +x1337x.ws +x18r.com +x99av.com +xamarin.com +xandr.com +xbox.co +xbox.com +xbox.eu +xbox.org +xbox360.co +xbox360.com +xbox360.eu +xbox360.org +xboxab.com +xboxgamepass.com +xboxgamestudios.com +xboxlive.com +xboxone.co +xboxone.com +xboxone.eu +xboxplayanywhere.com +xboxstudios.com +xbx.lv +xda-cdn.com +xda-developers.com +xdsummit.com +xdty.org +xenoblade.com +xeon.com +xero.porn +xhamster.com +xhamster.desi +xhamsterlive.com +xhcdn.com +xindelu.com +xingrz.me +xlstudio.com +xn--3et96bj49ahpq.com +xn--4vq475g.com +xn--4vq477m.com +xn--6eup7j.com +xn--6eup7j.net +xn--74q035i.xn--hxt814e +xn--7hv594h.com +xn--90wwvt03e.com +xn--9kr7l.com +xn--9trs65b.com +xn--czrs0t4phtr3a.cn +xn--d1acpjx3f.xn--p1ai +xn--d4ty0ojsqzfd.com +xn--fiqs8sxootzz.cn +xn--fiqs8sxootzz.xn--hxt814e +xn--flw351e.com +xn--ggle-55da.com +xn--gogl-0nd52e.com +xn--gogl-1nd42e.com +xn--gtvq61aiijy0b.xn--hxt814e +xn--gtvz22d.wang +xn--gtvz22d.xn--hxt814e +xn--hb4aw0g.com +xn--hxtr4rozx.xn--czr694b +xn--kput3imi374g.xn--hxt814e +xn--mts47c3w9b1qr.net +xn--ngstr-lra8j.com +xn--p8j9a0d9c9a.xn--q9jyb4c +xn--pearsonenespaol-brb.com +xn--q41am8x.com +xn--qhrx81fxh2a.xn--55qx5d.hk +xn--qoq462m.com +xn--ruq8a011kt6y.xn--hxt814e +xn--tkry91n.com +xn--ubt498knmf.com +xn--xsq421m.com +xn--xsq605n.com +xn--xsq959n.com +xn--yf1at58a.com +xn--yt8h.la +xn--ztsq84g.cn +xnxx-cdn.com +xnxx.com +xo.com +xo104.com +xoom-experience.com +xoom.com +xoom.io +xoom.us +xoomcom.com +xplr.co +xposed.info +xsava.xyz +xscale.com +xtube.com +xuite.net +xvideos-cdn.com +xvideos.com +xxbay.com +xxx.xxx +ya.ru +yahoo-news.com.hk +yahoo.ae +yahoo.am +yahoo.as +yahoo.at +yahoo.az +yahoo.ba +yahoo.be +yahoo.bg +yahoo.bi +yahoo.bs +yahoo.bt +yahoo.by +yahoo.ca +yahoo.cat +yahoo.cd +yahoo.cg +yahoo.ch +yahoo.cl +yahoo.cm +yahoo.co.ao +yahoo.co.bw +yahoo.co.ck +yahoo.co.cr +yahoo.co.id +yahoo.co.il +yahoo.co.in +yahoo.co.jp +yahoo.co.kr +yahoo.co.mz +yahoo.co.nz +yahoo.co.th +yahoo.co.tz +yahoo.co.uk +yahoo.co.uz +yahoo.co.ve +yahoo.co.vi +yahoo.co.za +yahoo.com +yahoo.com.af +yahoo.com.ag +yahoo.com.ai +yahoo.com.ar +yahoo.com.au +yahoo.com.bd +yahoo.com.bo +yahoo.com.br +yahoo.com.bz +yahoo.com.co +yahoo.com.do +yahoo.com.ec +yahoo.com.eg +yahoo.com.es +yahoo.com.fj +yahoo.com.gi +yahoo.com.gt +yahoo.com.hk +yahoo.com.kw +yahoo.com.lb +yahoo.com.ly +yahoo.com.mt +yahoo.com.mx +yahoo.com.my +yahoo.com.na +yahoo.com.nf +yahoo.com.om +yahoo.com.pa +yahoo.com.pe +yahoo.com.ph +yahoo.com.pk +yahoo.com.pr +yahoo.com.py +yahoo.com.sa +yahoo.com.sb +yahoo.com.sg +yahoo.com.sv +yahoo.com.tj +yahoo.com.tr +yahoo.com.tw +yahoo.com.ua +yahoo.com.uy +yahoo.com.vc +yahoo.com.vn +yahoo.cz +yahoo.de +yahoo.dj +yahoo.dk +yahoo.dm +yahoo.ee +yahoo.es +yahoo.fi +yahoo.fm +yahoo.fr +yahoo.ge +yahoo.gg +yahoo.gl +yahoo.gm +yahoo.gp +yahoo.gr +yahoo.gy +yahoo.hk +yahoo.hr +yahoo.hu +yahoo.ie +yahoo.im +yahoo.in +yahoo.is +yahoo.it +yahoo.je +yahoo.jo +yahoo.la +yahoo.lt +yahoo.lu +yahoo.lv +yahoo.md +yahoo.me +yahoo.mk +yahoo.mw +yahoo.mx +yahoo.net +yahoo.nl +yahoo.no +yahoo.nu +yahoo.ph +yahoo.pl +yahoo.pn +yahoo.ps +yahoo.pt +yahoo.ro +yahoo.ru +yahoo.rw +yahoo.se +yahoo.sg +yahoo.sh +yahoo.si +yahoo.sk +yahoo.sm +yahoo.sn +yahoo.so +yahoo.sr +yahoo.st +yahoo.tg +yahoo.tk +yahoo.tl +yahoo.tm +yahoo.tn +yahoo.vg +yahoo.ws +yahooapis.com +yahoodns.net +yahoofinance.com +yahoohealth.com +yahoomusic.com +yahoosandbox.com +yahoosportsbook.com +yale.edu +yamaxun.com +yammer.com +yande.re +yandex.aero +yandex.az +yandex.by +yandex.co.il +yandex.com +yandex.com.am +yandex.com.ge +yandex.com.ru +yandex.com.tr +yandex.com.ua +yandex.de +yandex.ee +yandex.eu +yandex.fi +yandex.fr +yandex.jobs +yandex.kg +yandex.kz +yandex.lt +yandex.lv +yandex.md +yandex.net +yandex.org +yandex.pl +yandex.ru +yandex.st +yandex.sx +yandex.tj +yandex.tm +yandex.ua +yandex.uz +yandexcloud.net +yarininsuyu.com +yarnpkg.com +yastatic.net +ycombinator.com +ydn.com.tw +yes123.com.tw +yho.com +yibei.org +yimg.com +yimg.jp +yiqiedoushiganggangkaishi.org +yjcontentdelivery.com +ymail.com +ync.ne.jp +yo1health.com +yogalayout.com +yogify.com +yomikyo.or.jp +yomilogi.com +yomiuri-johkai.co.jp +yomiuri-ryokou.co.jp +yomiuri-shimbun.pressreader.com +yomiuri-systec.co.jp +yomiuri.co.jp +yoshisnewisland.com +youav.com +youjizz.com +youlucky.com +youporn.com +yourfantasybeginsnow.com +yourmonsterbeats.com +yours-customised.mini.com +yourtv.com.au +youtu.be +youtube-nocookie.com +youtube-ui.l.google.com +youtube.ae +youtube.al +youtube.am +youtube.at +youtube.az +youtube.ba +youtube.be +youtube.bg +youtube.bh +youtube.bo +youtube.by +youtube.ca +youtube.cat +youtube.ch +youtube.cl +youtube.co +youtube.co.ae +youtube.co.at +youtube.co.cr +youtube.co.hu +youtube.co.id +youtube.co.il +youtube.co.in +youtube.co.jp +youtube.co.ke +youtube.co.kr +youtube.co.ma +youtube.co.nz +youtube.co.th +youtube.co.tz +youtube.co.ug +youtube.co.uk +youtube.co.ve +youtube.co.za +youtube.co.zw +youtube.com +youtube.com.ar +youtube.com.au +youtube.com.az +youtube.com.bd +youtube.com.bh +youtube.com.bo +youtube.com.br +youtube.com.by +youtube.com.co +youtube.com.do +youtube.com.ec +youtube.com.ee +youtube.com.eg +youtube.com.es +youtube.com.gh +youtube.com.gr +youtube.com.gt +youtube.com.hk +youtube.com.hn +youtube.com.hr +youtube.com.jm +youtube.com.jo +youtube.com.kw +youtube.com.lb +youtube.com.lv +youtube.com.ly +youtube.com.mk +youtube.com.mt +youtube.com.mx +youtube.com.my +youtube.com.ng +youtube.com.ni +youtube.com.om +youtube.com.pa +youtube.com.pe +youtube.com.ph +youtube.com.pk +youtube.com.pt +youtube.com.py +youtube.com.qa +youtube.com.ro +youtube.com.sa +youtube.com.sg +youtube.com.sv +youtube.com.tn +youtube.com.tr +youtube.com.tw +youtube.com.ua +youtube.com.uy +youtube.com.ve +youtube.cr +youtube.cz +youtube.de +youtube.dk +youtube.ee +youtube.es +youtube.fi +youtube.fr +youtube.ge +youtube.googleapis.com +youtube.gr +youtube.gt +youtube.hk +youtube.hr +youtube.hu +youtube.ie +youtube.in +youtube.iq +youtube.is +youtube.it +youtube.jo +youtube.jp +youtube.kr +youtube.kz +youtube.la +youtube.lk +youtube.lt +youtube.lu +youtube.lv +youtube.ly +youtube.ma +youtube.md +youtube.me +youtube.mk +youtube.mn +youtube.mx +youtube.my +youtube.ng +youtube.ni +youtube.nl +youtube.no +youtube.pa +youtube.pe +youtube.ph +youtube.pk +youtube.pl +youtube.pr +youtube.pt +youtube.qa +youtube.ro +youtube.rs +youtube.ru +youtube.sa +youtube.se +youtube.sg +youtube.si +youtube.sk +youtube.sn +youtube.soy +youtube.sv +youtube.tn +youtube.tv +youtube.ua +youtube.ug +youtube.uy +youtube.vn +youtubecisco.com +youtubeeducation.com +youtubeembeddedplayer.googleapis.com +youtubefanfest.com +youtubegaming.com +youtubego.co.id +youtubego.co.in +youtubego.com +youtubego.com.br +youtubego.id +youtubego.in +youtubei.googleapis.com +youtubekids.com +youtubemobilesupport.com +ysm.yahoo.com +yt.be +ytimg.com +yuanshen.com +yzzk.com +z5.app +z5.com +zakzak.co.jp +zaobao.com +zaobao.com.sg +zaobao.sg +zavat.pw +zb.app +zb.com +zb.io +zb.live +zdassets.com +zdusercontent.com +zee.com +zee5.com +zee5.in +zee5.tv +zeebioskop.com +zeebiz.com +zeeentertainment.com +zeenews-fonts.s3.amazonaws.com +zeenews.com +zeetv.co.uk +zeetv.com +zeeuk.com +zeit-world.co.uk +zeit-world.com +zeit-world.net +zeit-world.org +zeit.co +zeit.sh +zeitworld.com +zencdn.net +zencoder.com +zendesk.com +zenodo.org +zeplin.dev +zeplin.io +zeriamerikes.com +zerohedge.com +zeronet.io +zert.ch +zind.cloud +zndsk.com +zoho.com +zoho.com.au +zoho.eu +zoho.in +zohocdn.com +zohomeetups.com +zohomerchandise.com +zohopublic.com +zohoschools.com +zohostatic.com +zohostatic.in +zohouniversity.com +zohowebstatic.com +zoom.com +zoom.com.cn +zoom.us +zoomingin.tv +zopim.com +zsh.org +zuckerberg.com +zuckerberg.net +zukunftswerkstatt.de +zwtvusa.com diff --git a/luci-app-passwall/root/usr/share/passwall/rules/lanlist_ipv4 b/luci-app-passwall/root/usr/share/passwall/rules/lanlist_ipv4 new file mode 100644 index 000000000..3ccfd604b --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/lanlist_ipv4 @@ -0,0 +1,9 @@ +0.0.0.0/8 +10.0.0.0/8 +100.64.0.0/10 +127.0.0.0/8 +169.254.0.0/16 +172.16.0.0/12 +192.168.0.0/16 +224.0.0.0/4 +240.0.0.0/4 \ No newline at end of file diff --git a/luci-app-passwall/root/usr/share/passwall/rules/lanlist_ipv6 b/luci-app-passwall/root/usr/share/passwall/rules/lanlist_ipv6 new file mode 100644 index 000000000..6ac03da58 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/lanlist_ipv6 @@ -0,0 +1,13 @@ +::/128 +::1/128 +::ffff:0:0/96 +::ffff:0:0:0/96 +64:ff9b::/96 +100::/64 +2001::/32 +2001:20::/28 +2001:db8::/32 +2002::/16 +fc00::/7 +fe80::/10 +ff00::/8 \ No newline at end of file diff --git a/luci-app-passwall/root/usr/share/passwall/rules/proxy_host b/luci-app-passwall/root/usr/share/passwall/rules/proxy_host new file mode 100644 index 000000000..1384ad98e --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/proxy_host @@ -0,0 +1,13 @@ +sspanel.net +v2ex.com + +#google +googleapis.cn +googleapis.com +google.com.tw +google.com.hk +gstatic.com +xn--ngstr-lra8j.com + +#github +github.com diff --git a/luci-app-passwall/root/usr/share/passwall/rules/proxy_ip b/luci-app-passwall/root/usr/share/passwall/rules/proxy_ip new file mode 100644 index 000000000..39be0de29 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/rules/proxy_ip @@ -0,0 +1,19 @@ +149.154.160.0/20 +91.108.4.0/22 +91.108.56.0/24 +109.239.140.0/24 +67.198.55.0/24 +8.8.4.4 +8.8.8.8 +208.67.222.222 +208.67.220.220 +1.1.1.1 +1.1.1.2 +1.0.0.1 +9.9.9.9 +149.112.112.112 +2001:67c:4e8::/48 +2001:b28:f23c::/48 +2001:b28:f23d::/48 +2001:b28:f23f::/48 +2001:b28:f242::/48 \ No newline at end of file diff --git a/luci-app-passwall/root/usr/share/passwall/subscribe.lua b/luci-app-passwall/root/usr/share/passwall/subscribe.lua new file mode 100755 index 000000000..e7f52c377 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/subscribe.lua @@ -0,0 +1,1226 @@ +#!/usr/bin/lua + +------------------------------------------------ +-- @author William Chan +------------------------------------------------ +require 'nixio' +require 'luci.model.uci' +require 'luci.util' +require 'luci.jsonc' +require 'luci.sys' +local appname = 'passwall' +local api = require ("luci.model.cbi." .. appname .. ".api.api") +local datatypes = require "luci.cbi.datatypes" + +-- these global functions are accessed all the time by the event handler +-- so caching them is worth the effort +local tinsert = table.insert +local ssub, slen, schar, sbyte, sformat, sgsub = string.sub, string.len, string.char, string.byte, string.format, string.gsub +local jsonParse, jsonStringify = luci.jsonc.parse, luci.jsonc.stringify +local base64Decode = api.base64Decode +local uci = luci.model.uci.cursor() +uci:revert(appname) + +local has_ss = api.is_finded("ss-redir") +local has_ss_rust = api.is_finded("sslocal") +local has_trojan_plus = api.is_finded("trojan-plus") +local has_v2ray = api.is_finded("v2ray") +local has_xray = api.is_finded("xray") +local has_trojan_go = api.is_finded("trojan-go") +local allowInsecure_default = true +local ss_aead_type_default = uci:get(appname, "@global_subscribe[0]", "ss_aead_type") or "shadowsocks-libev" +local trojan_type_default = uci:get(appname, "@global_subscribe[0]", "trojan_type") or "trojan-plus" +-- 判断是否过滤节点关键字 +local filter_keyword_mode_default = uci:get(appname, "@global_subscribe[0]", "filter_keyword_mode") or "0" +local filter_keyword_discard_list_default = uci:get(appname, "@global_subscribe[0]", "filter_discard_list") or {} +local filter_keyword_keep_list_default = uci:get(appname, "@global_subscribe[0]", "filter_keep_list") or {} +local function is_filter_keyword(value) + if filter_keyword_mode_default == "1" then + for k,v in ipairs(filter_keyword_discard_list_default) do + if value:find(v, 1, true) then + return true + end + end + elseif filter_keyword_mode_default == "2" then + local result = true + for k,v in ipairs(filter_keyword_keep_list_default) do + if value:find(v, 1, true) then + result = false + end + end + return result + elseif filter_keyword_mode_default == "3" then + local result = false + for k,v in ipairs(filter_keyword_discard_list_default) do + if value:find(v, 1, true) then + result = true + end + end + for k,v in ipairs(filter_keyword_keep_list_default) do + if value:find(v, 1, true) then + result = false + end + end + return result + elseif filter_keyword_mode_default == "4" then + local result = true + for k,v in ipairs(filter_keyword_keep_list_default) do + if value:find(v, 1, true) then + result = false + end + end + for k,v in ipairs(filter_keyword_discard_list_default) do + if value:find(v, 1, true) then + result = true + end + end + return result + end + return false +end + +local nodeResult = {} -- update result +local debug = false + +local log = function(...) + local result = os.date("%Y-%m-%d %H:%M:%S: ") .. table.concat({...}, " ") + if debug == true then + print(result) + else + local f, err = io.open("/tmp/log/" .. appname .. ".log", "a") + if f and err == nil then + f:write(result .. "\n") + f:close() + end + end +end + +-- 获取各项动态配置的当前服务器,可以用 get 和 set, get必须要获取到节点表 +local CONFIG = {} +do + local function import_config(protocol) + local name = string.upper(protocol) + local szType = "@global[0]" + local option = protocol .. "_node" + + local node_id = uci:get(appname, szType, option) + CONFIG[#CONFIG + 1] = { + log = true, + remarks = name .. "节点", + currentNode = node_id and uci:get_all(appname, node_id) or nil, + set = function(o, server) + uci:set(appname, szType, option, server) + o.newNodeId = server + end + } + end + import_config("tcp") + import_config("udp") + + if true then + local i = 0 + local option = "node" + uci:foreach(appname, "socks", function(t) + i = i + 1 + local node_id = t[option] + CONFIG[#CONFIG + 1] = { + log = true, + id = t[".name"], + remarks = "Socks节点列表[" .. i .. "]", + currentNode = node_id and uci:get_all(appname, node_id) or nil, + set = function(o, server) + uci:set(appname, t[".name"], option, server) + o.newNodeId = server + end + } + end) + end + + if true then + local i = 0 + local option = "lbss" + uci:foreach(appname, "haproxy_config", function(t) + i = i + 1 + local node_id = t[option] + CONFIG[#CONFIG + 1] = { + log = true, + id = t[".name"], + remarks = "HAProxy负载均衡节点列表[" .. i .. "]", + currentNode = node_id and uci:get_all(appname, node_id) or nil, + set = function(o, server) + uci:set(appname, t[".name"], option, server) + o.newNodeId = server + end + } + end) + end + + if true then + local i = 0 + local options = {"tcp", "udp"} + uci:foreach(appname, "acl_rule", function(t) + i = i + 1 + for index, value in ipairs(options) do + local option = value .. "_node" + local node_id = t[option] + CONFIG[#CONFIG + 1] = { + log = true, + id = t[".name"], + remarks = "访问控制列表[" .. i .. "]", + currentNode = node_id and uci:get_all(appname, node_id) or nil, + set = function(o, server) + uci:set(appname, t[".name"], option, server) + o.newNodeId = server + end + } + end + end) + end + + local tcp_node_table = uci:get(appname, "@auto_switch[0]", "tcp_node") + if tcp_node_table then + local nodes = {} + local new_nodes = {} + for k,node_id in ipairs(tcp_node_table) do + if node_id then + local currentNode = uci:get_all(appname, node_id) or nil + if currentNode then + if currentNode.protocol and (currentNode.protocol == "_balancing" or currentNode.protocol == "_shunt") then + currentNode = nil + end + nodes[#nodes + 1] = { + log = true, + remarks = "TCP备用节点的列表[" .. k .. "]", + currentNode = currentNode, + set = function(o, server) + for kk, vv in pairs(CONFIG) do + if (vv.remarks == "TCP备用节点的列表") then + table.insert(vv.new_nodes, server) + end + end + end + } + end + end + end + CONFIG[#CONFIG + 1] = { + remarks = "TCP备用节点的列表", + nodes = nodes, + new_nodes = new_nodes, + set = function(o) + for kk, vv in pairs(CONFIG) do + if (vv.remarks == "TCP备用节点的列表") then + --log("刷新自动切换的TCP备用节点的列表") + uci:set_list(appname, "@auto_switch[0]", "tcp_node", vv.new_nodes) + end + end + end + } + end + + uci:foreach(appname, "nodes", function(node) + if node.protocol and node.protocol == '_shunt' then + local node_id = node[".name"] + + local rules = {} + uci:foreach(appname, "shunt_rules", function(e) + if e[".name"] and e.remarks then + table.insert(rules, e) + end + end) + table.insert(rules, { + [".name"] = "default_node", + remarks = "默认" + }) + table.insert(rules, { + [".name"] = "main_node", + remarks = "默认前置" + }) + + for k, e in pairs(rules) do + local _node_id = node[e[".name"]] or nil + CONFIG[#CONFIG + 1] = { + log = false, + currentNode = _node_id and uci:get_all(appname, _node_id) or nil, + remarks = "分流" .. e.remarks .. "节点", + set = function(o, server) + uci:set(appname, node_id, e[".name"], server) + o.newNodeId = server + end + } + end + elseif node.protocol and node.protocol == '_balancing' then + local node_id = node[".name"] + local nodes = {} + local new_nodes = {} + if node.balancing_node then + for k, node in pairs(node.balancing_node) do + nodes[#nodes + 1] = { + log = false, + node = node, + currentNode = node and uci:get_all(appname, node) or nil, + remarks = node, + set = function(o, server) + for kk, vv in pairs(CONFIG) do + if (vv.remarks == "负载均衡节点列表" .. node_id) then + table.insert(vv.new_nodes, server) + end + end + end + } + end + end + CONFIG[#CONFIG + 1] = { + remarks = "负载均衡节点列表" .. node_id, + nodes = nodes, + new_nodes = new_nodes, + set = function(o) + for kk, vv in pairs(CONFIG) do + if (vv.remarks == "负载均衡节点列表" .. node_id) then + --log("刷新负载均衡节点列表") + uci:foreach(appname, "nodes", function(node2) + if node2[".name"] == node[".name"] then + local index = node2[".index"] + uci:set_list(appname, "@nodes[" .. index .. "]", "balancing_node", vv.new_nodes) + end + end) + end + end + end + } + end + end) + + for k, v in pairs(CONFIG) do + if v.nodes and type(v.nodes) == "table" then + for kk, vv in pairs(v.nodes) do + if vv.currentNode == nil then + CONFIG[k].nodes[kk] = nil + end + end + else + if v.currentNode == nil then + CONFIG[k] = nil + end + end + end +end + +-- 分割字符串 +local function split(full, sep) + if full then + full = full:gsub("%z", "") -- 这里不是很清楚 有时候结尾带个\0 + local off, result = 1, {} + while true do + local nStart, nEnd = full:find(sep, off) + if not nEnd then + local res = ssub(full, off, slen(full)) + if #res > 0 then -- 过滤掉 \0 + tinsert(result, res) + end + break + else + tinsert(result, ssub(full, off, nStart - 1)) + off = nEnd + 1 + end + end + return result + end + return {} +end +-- urlencode +-- local function get_urlencode(c) return sformat("%%%02X", sbyte(c)) end + +-- local function urlEncode(szText) +-- local str = szText:gsub("([^0-9a-zA-Z ])", get_urlencode) +-- str = str:gsub(" ", "+") +-- return str +-- end + +local function get_urldecode(h) return schar(tonumber(h, 16)) end +local function UrlDecode(szText) + return (szText and szText:gsub("+", " "):gsub("%%(%x%x)", get_urldecode)) or nil +end + +-- trim +local function trim(text) + if not text or text == "" then return "" end + return (sgsub(text, "^%s*(.-)%s*$", "%1")) +end + +-- 处理数据 +local function processData(szType, content, add_mode, add_from) + --log(content, add_mode, add_from) + local result = { + timeout = 60, + add_mode = add_mode, --0为手动配置,1为导入,2为订阅 + add_from = add_from + } + if szType == 'ssr' then + local dat = split(content, "/%?") + local hostInfo = split(dat[1], ':') + result.type = "SSR" + result.address = "" + for i=1,#hostInfo-5,1 do + result.address = result.address .. hostInfo[i] .. ":" + end + result.address = string.sub(result.address, 0, #result.address-1) + result.port = hostInfo[#hostInfo-4] + result.protocol = hostInfo[#hostInfo-3] + result.method = hostInfo[#hostInfo-2] + result.obfs = hostInfo[#hostInfo-1] + result.password = base64Decode(hostInfo[#hostInfo]) + local params = {} + for _, v in pairs(split(dat[2], '&')) do + local t = split(v, '=') + params[t[1]] = t[2] + end + result.obfs_param = base64Decode(params.obfsparam) + result.protocol_param = base64Decode(params.protoparam) + local group = base64Decode(params.group) + if group then result.group = group end + result.remarks = base64Decode(params.remarks) + elseif szType == 'vmess' then + local info = jsonParse(content) + if has_v2ray then + result.type = 'V2ray' + elseif has_xray then + result.type = 'Xray' + end + result.address = info.add + result.port = info.port + result.protocol = 'vmess' + result.uuid = info.id + result.remarks = info.ps + -- result.mux = 1 + -- result.mux_concurrency = 8 + info.net = string.lower(info.net) + if info.net == 'ws' then + result.ws_host = info.host + result.ws_path = info.path + end + if info.net == 'h2' then + result.h2_host = info.host + result.h2_path = info.path + end + if info.net == 'tcp' then + if info.type and info.type ~= "http" then + info.type = "none" + end + result.tcp_guise = info.type + result.tcp_guise_http_host = info.host + result.tcp_guise_http_path = info.path + end + if info.net == 'kcp' or info.net == 'mkcp' then + info.net = "mkcp" + result.mkcp_guise = info.type + result.mkcp_mtu = 1350 + result.mkcp_tti = 50 + result.mkcp_uplinkCapacity = 5 + result.mkcp_downlinkCapacity = 20 + result.mkcp_readBufferSize = 2 + result.mkcp_writeBufferSize = 2 + end + if info.net == 'quic' then + result.quic_guise = info.type + result.quic_key = info.key + result.quic_security = info.securty + end + if info.net == 'grpc' then + result.grpc_serviceName = info.path + end + result.transport = info.net + if not info.security then result.security = "auto" end + if info.tls == "tls" or info.tls == "1" then + result.tls = "1" + result.tls_serverName = (info.sni and info.sni ~= "") and info.sni or info.host + result.tls_allowInsecure = allowInsecure_default and "1" or "0" + else + result.tls = "0" + end + elseif szType == "ss" then + local idx_sp = 0 + local alias = "" + if content:find("#") then + idx_sp = content:find("#") + alias = content:sub(idx_sp + 1, -1) + end + result.remarks = UrlDecode(alias) + local info = content:sub(1, idx_sp - 1) + local hostInfo = split(base64Decode(info), "@") + local hostInfoLen = #hostInfo + local host = nil + local userinfo = nil + if hostInfoLen > 2 then + host = split(hostInfo[hostInfoLen], ":") + userinfo = {} + for i = 1, hostInfoLen - 1 do + tinsert(userinfo, hostInfo[i]) + end + userinfo = table.concat(userinfo, '@') + else + host = split(hostInfo[2], ":") + userinfo = base64Decode(hostInfo[1]) + end + local method = userinfo:sub(1, userinfo:find(":") - 1) + local password = userinfo:sub(userinfo:find(":") + 1, #userinfo) + result.type = "SS" + result.address = host[1] + if host[2] and host[2]:find("/%?") then + local query = split(host[2], "/%?") + result.port = query[1] + local params = {} + for _, v in pairs(split(query[2], '&')) do + local t = split(v, '=') + params[t[1]] = t[2] + end + if params.plugin then + local plugin_info = UrlDecode(params.plugin) + local idx_pn = plugin_info:find(";") + if idx_pn then + result.plugin = plugin_info:sub(1, idx_pn - 1) + result.plugin_opts = + plugin_info:sub(idx_pn + 1, #plugin_info) + else + result.plugin = plugin_info + end + end + if result.plugin and result.plugin == "simple-obfs" then + result.plugin = "obfs-local" + end + else + result.port = host[2] + end + result.method = method + result.password = password + + local aead = false + for k, v in ipairs({"aes-128-gcm", "aes-256-gcm", "chacha20-poly1305", "chacha20-ietf-poly1305"}) do + if method:lower() == v:lower() then + aead = true + end + end + if aead then + if ss_aead_type_default == "shadowsocks-libev" and has_ss then + result.type = "SS" + elseif ss_aead_type_default == "shadowsocks-rust" and has_ss_rust then + result.type = 'SS-Rust' + if method:lower() == "chacha20-poly1305" then + result.method = "chacha20-ietf-poly1305" + end + elseif ss_aead_type_default == "v2ray" and has_v2ray and not result.plugin then + result.type = 'V2ray' + result.protocol = 'shadowsocks' + result.transport = 'tcp' + if method:lower() == "chacha20-ietf-poly1305" then + result.method = "chacha20-poly1305" + end + elseif ss_aead_type_default == "xray" and has_xray and not result.plugin then + result.type = 'Xray' + result.protocol = 'shadowsocks' + result.transport = 'tcp' + if method:lower() == "chacha20-ietf-poly1305" then + result.method = "chacha20-poly1305" + end + end + end + elseif szType == "trojan" then + local alias = "" + if content:find("#") then + local idx_sp = content:find("#") + alias = content:sub(idx_sp + 1, -1) + content = content:sub(0, idx_sp - 1) + end + result.remarks = UrlDecode(alias) + result.type = "Trojan-Plus" + if content:find("@") then + local Info = split(content, "@") + result.password = UrlDecode(Info[1]) + local port = "443" + Info[2] = (Info[2] or ""):gsub("/%?", "?") + local hostInfo = nil + if Info[2]:find(":") then + hostInfo = split(Info[2], ":") + result.address = hostInfo[1] + local idx_port = 2 + if hostInfo[2]:find("?") then + hostInfo = split(hostInfo[2], "?") + idx_port = 1 + end + if hostInfo[idx_port] ~= "" then port = hostInfo[idx_port] end + else + if Info[2]:find("?") then + hostInfo = split(Info[2], "?") + end + result.address = hostInfo and hostInfo[1] or Info[2] + end + local peer, sni = nil, "" + local allowInsecure = allowInsecure_default + local query = split(Info[2], "?") + local params = {} + for _, v in pairs(split(query[2], '&')) do + local t = split(v, '=') + params[string.lower(t[1])] = UrlDecode(t[2]) + end + if params.allowinsecure then + allowInsecure = params.allowinsecure + end + if params.peer then peer = params.peer end + sni = params.sni and params.sni or "" + if params.ws and params.ws == "1" then + result.trojan_transport = "ws" + if params.wshost then result.ws_host = params.wshost end + if params.wspath then result.ws_path = params.wspath end + if sni == "" and params.wshost then sni = params.wshost end + end + if params.ss and params.ss == "1" then + result.ss_aead = "1" + if params.ssmethod then result.ss_aead_method = string.lower(params.ssmethod) end + if params.sspasswd then result.ss_aead_pwd = params.sspasswd end + end + result.port = port + if result.trojan_transport == "ws" or result.ss_aead then + result.type = "Trojan-Go" + result.fingerprint = "firefox" + result.mux = "1" + end + result.tls = '1' + result.tls_serverName = peer and peer or sni + result.tls_allowInsecure = allowInsecure and "1" or "0" + end + if trojan_type_default == "trojan-plus" and has_trojan_plus then + result.type = "Trojan-Plus" + elseif trojan_type_default == "v2ray" and has_v2ray then + result.type = 'V2ray' + result.protocol = 'trojan' + elseif trojan_type_default == "xray" and has_xray then + result.type = 'Xray' + result.protocol = 'trojan' + elseif trojan_type_default == "trojan-go" and has_trojan_go then + result.type = 'Trojan-Go' + end + elseif szType == "trojan-go" then + local alias = "" + if content:find("#") then + local idx_sp = content:find("#") + alias = content:sub(idx_sp + 1, -1) + content = content:sub(0, idx_sp - 1) + end + result.remarks = UrlDecode(alias) + if has_trojan_go then + result.type = "Trojan-Go" + end + if content:find("@") then + local Info = split(content, "@") + result.password = UrlDecode(Info[1]) + local port = "443" + Info[2] = (Info[2] or ""):gsub("/%?", "?") + local hostInfo = nil + if Info[2]:find(":") then + hostInfo = split(Info[2], ":") + result.address = hostInfo[1] + local idx_port = 2 + if hostInfo[2]:find("?") then + hostInfo = split(hostInfo[2], "?") + idx_port = 1 + end + if hostInfo[idx_port] ~= "" then port = hostInfo[idx_port] end + else + if Info[2]:find("?") then + hostInfo = split(Info[2], "?") + end + result.address = hostInfo and hostInfo[1] or Info[2] + end + local peer, sni = nil, "" + local query = split(Info[2], "?") + local params = {} + for _, v in pairs(split(query[2], '&')) do + local t = split(v, '=') + params[string.lower(t[1])] = UrlDecode(t[2]) + end + if params.peer then peer = params.peer end + sni = params.sni and params.sni or "" + if params.type and params.type == "ws" then + result.trojan_transport = "ws" + if params.host then result.ws_host = params.host end + if params.path then result.ws_path = params.path end + if sni == "" and params.host then sni = params.host end + end + if params.encryption and params.encryption:match('^ss;[^;:]*[;:].*$') then + result.ss_aead = "1" + result.ss_aead_method, result.ss_aead_pwd = params.encryption:match('^ss;([^;:]*)[;:](.*)$') + result.ss_aead_method = string.lower(result.ss_aead_method) + end + result.port = port + result.fingerprint = "firefox" + result.tls = "1" + result.tls_serverName = peer and peer or sni + result.tls_allowInsecure = "0" + result.mux = "1" + end + elseif szType == "ssd" then + result.type = "SS" + result.address = content.server + result.port = content.port + result.password = content.password + result.method = content.encryption + result.plugin = content.plugin + result.plugin_opts = content.plugin_options + result.group = content.airport + result.remarks = content.remarks + elseif szType == "vless" then + if has_xray then + result.type = 'Xray' + elseif has_v2ray then + result.type = 'V2ray' + end + result.protocol = "vless" + local alias = "" + if content:find("#") then + local idx_sp = content:find("#") + alias = content:sub(idx_sp + 1, -1) + content = content:sub(0, idx_sp - 1) + end + result.remarks = UrlDecode(alias) + if content:find("@") then + local Info = split(content, "@") + result.uuid = UrlDecode(Info[1]) + local port = "443" + Info[2] = (Info[2] or ""):gsub("/%?", "?") + local hostInfo = nil + if Info[2]:find(":") then + hostInfo = split(Info[2], ":") + result.address = hostInfo[1] + local idx_port = 2 + if hostInfo[2]:find("?") then + hostInfo = split(hostInfo[2], "?") + idx_port = 1 + end + if hostInfo[idx_port] ~= "" then port = hostInfo[idx_port] end + else + if Info[2]:find("?") then + hostInfo = split(Info[2], "?") + end + result.address = hostInfo and hostInfo[1] or Info[2] + end + + local query = split(Info[2], "?") + local params = {} + for _, v in pairs(split(query[2], '&')) do + local t = split(v, '=') + params[t[1]] = UrlDecode(t[2]) + end + + params.type = string.lower(params.type) + if params.type == 'ws' then + result.ws_host = params.host + result.ws_path = params.path + end + if params.type == 'h2' then + result.h2_host = params.host + result.h2_path = params.path + end + if params.type == 'tcp' then + result.tcp_guise = params.headerType or "none" + result.tcp_guise_http_host = params.host + result.tcp_guise_http_path = params.path + end + if params.type == 'kcp' or params.type == 'mkcp' then + params.type = "mkcp" + result.mkcp_guise = params.headerType or "none" + result.mkcp_mtu = 1350 + result.mkcp_tti = 50 + result.mkcp_uplinkCapacity = 5 + result.mkcp_downlinkCapacity = 20 + result.mkcp_readBufferSize = 2 + result.mkcp_writeBufferSize = 2 + end + if params.type == 'quic' then + result.quic_guise = params.headerType or "none" + result.quic_key = params.key + result.quic_security = params.quicSecurity or "none" + end + if params.type == 'grpc' then + if params.path then result.grpc_serviceName = params.path end + if params.serviceName then result.grpc_serviceName = params.serviceName end + end + result.transport = params.type + + result.encryption = params.encryption or "none" + + result.tls = "0" + if params.security == "tls" or params.security == "xtls" then + result.tls = "1" + if params.security == "xtls" then + result.xtls = "1" + result.flow = params.flow or "xtls-rprx-direct" + end + result.tls_serverName = (params.sni and params.sni ~= "") and params.sni or params.host + end + + result.port = port + result.tls_allowInsecure = allowInsecure_default and "1" or "0" + end + elseif szType == 'hysteria' then + local alias = "" + if content:find("#") then + local idx_sp = content:find("#") + alias = content:sub(idx_sp + 1, -1) + content = content:sub(0, idx_sp - 1) + end + result.remarks = UrlDecode(alias) + result.type = "Hysteria" + + local dat = split(content, '%?') + local hostInfo = split(dat[1], ':') + result.address = hostInfo[1] + result.port = hostInfo[2] + local params = {} + for _, v in pairs(split(dat[2], '&')) do + local t = split(v, '=') + if #t > 0 then + params[t[1]] = t[2] + end + end + result.hysteria_protocol = params.protocol + result.hysteria_obfs = params.obfsParam + result.hysteria_auth_type = "string" + result.hysteria_auth_password = params.auth + result.tls_serverName = params.peer + if params.insecure and params.insecure == "1" then + result.tls_allowInsecure = "1" + end + result.hysteria_alpn = params.alpn + result.hysteria_up_mbps = params.upmbps + result.hysteria_down_mbps = params.downmbps + else + log('暂时不支持' .. szType .. "类型的节点订阅,跳过此节点。") + return nil + end + if not result.remarks or result.remarks == "" then + if result.address and result.port then + result.remarks = result.address .. ':' .. result.port + else + result.remarks = "NULL" + end + end + return result +end + +-- curl +local function curl(url, file, ua) + if not ua or ua == "" then + ua = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36" + end + local stdout = "" + local cmd = string.format('curl -skL --user-agent "%s" --retry 3 --connect-timeout 3 "%s"', ua, url) + if file then + cmd = cmd .. " -o " .. file + stdout = luci.sys.call(cmd .. " > /dev/null") + return stdout + else + stdout = luci.sys.exec(cmd) + return trim(stdout) + end + + if not stdout or #stdout <= 0 then + if uci:get(appname, "@global_subscribe[0]", "subscribe_proxy") or "0" == "1" and uci:get(appname, "@global[0]", "enabled") or "0" == "1" then + log('通过代理订阅失败,尝试关闭代理订阅。') + luci.sys.call("/etc/init.d/" .. appname .. " stop > /dev/null") + stdout = luci.sys.exec(string.format('curl -skL --user-agent "%s" -k --retry 3 --connect-timeout 3 "%s"', ua, url)) + end + end + return trim(stdout) +end + +local function truncate_nodes(add_from) + for _, config in pairs(CONFIG) do + if config.nodes and type(config.nodes) == "table" then + for kk, vv in pairs(config.nodes) do + if vv.currentNode.add_mode == "2" then + else + vv.set(vv, vv.currentNode[".name"]) + end + end + config.set(config) + else + if config.currentNode.add_mode == "2" then + if add_from then + if config.currentNode.add_from and config.currentNode.add_from == add_from then + config.set(config, "nil") + end + else + config.set(config, "nil") + end + if config.id then + uci:delete(appname, config.id) + end + end + end + end + uci:foreach(appname, "nodes", function(node) + if node.add_mode == "2" then + if add_from then + if node.add_from and node.add_from == add_from then + uci:delete(appname, node['.name']) + end + else + uci:delete(appname, node['.name']) + end + end + end) + uci:commit(appname) +end + +local function select_node(nodes, config) + local server + if config.currentNode then + -- 特别优先级 分流 + 备注 + if config.currentNode.protocol and config.currentNode.protocol == '_shunt' then + for index, node in pairs(nodes) do + if node.remarks == config.currentNode.remarks then + log('更新【' .. config.remarks .. '】分流匹配节点:' .. node.remarks) + server = node[".name"] + break + end + end + end + -- 特别优先级 负载均衡 + 备注 + if config.currentNode.protocol and config.currentNode.protocol == '_balancing' then + for index, node in pairs(nodes) do + if node.remarks == config.currentNode.remarks then + log('更新【' .. config.remarks .. '】负载均衡匹配节点:' .. node.remarks) + server = node[".name"] + break + end + end + end + -- 第一优先级 类型 + IP + 端口 + if not server then + for index, node in pairs(nodes) do + if config.currentNode.type and config.currentNode.address and config.currentNode.port then + if node.type and node.address and node.port then + if node.type == config.currentNode.type and (node.address .. ':' .. node.port == config.currentNode.address .. ':' .. config.currentNode.port) then + if config.log == nil or config.log == true then + log('更新【' .. config.remarks .. '】第一匹配节点:' .. node.remarks) + end + server = node[".name"] + break + end + end + end + end + end + -- 第二优先级 IP + 端口 + if not server then + for index, node in pairs(nodes) do + if config.currentNode.address and config.currentNode.port then + if node.address and node.port then + if node.address .. ':' .. node.port == config.currentNode.address .. ':' .. config.currentNode.port then + if config.log == nil or config.log == true then + log('更新【' .. config.remarks .. '】第二匹配节点:' .. node.remarks) + end + server = node[".name"] + break + end + end + end + end + end + -- 第三优先级 IP + if not server then + for index, node in pairs(nodes) do + if config.currentNode.address then + if node.address then + if node.address == config.currentNode.address then + if config.log == nil or config.log == true then + log('更新【' .. config.remarks .. '】第三匹配节点:' .. node.remarks) + end + server = node[".name"] + break + end + end + end + end + end + -- 第四优先级备注 + if not server then + for index, node in pairs(nodes) do + if config.currentNode.remarks then + if node.remarks then + if node.remarks == config.currentNode.remarks then + if config.log == nil or config.log == true then + log('更新【' .. config.remarks .. '】第四匹配节点:' .. node.remarks) + end + server = node[".name"] + break + end + end + end + end + end + end + -- 还不行 随便找一个 + if not server then + server = uci:get_all(appname, '@' .. "nodes" .. '[0]') + if server then + if config.log == nil or config.log == true then + log('【' .. config.remarks .. '】' .. '无法找到最匹配的节点,当前已更换为:' .. server.remarks) + end + server = server[".name"] + end + end + if server then + config.set(config, server) + end +end + +local function update_node(manual) + if next(nodeResult) == nil then + log("更新失败,没有可用的节点信息") + return + end + + local group = "" + for _, v in ipairs(nodeResult) do + group = group .. v["remark"] + end + + if manual == 0 and #group > 0 then + uci:foreach(appname, "nodes", function(node) + -- 如果是未发现新节点或手动导入的节点就不要删除了... + if (node.add_from and group:find(node.add_from, 1, true)) and node.add_mode == "2" then + uci:delete(appname, node['.name']) + end + end) + end + for _, v in ipairs(nodeResult) do + local remark = v["remark"] + local list = v["list"] + for _, vv in ipairs(list) do + local cfgid = uci:section(appname, "nodes", api.gen_uuid()) + for kkk, vvv in pairs(vv) do + uci:set(appname, cfgid, kkk, vvv) + end + end + end + uci:commit(appname) + + if next(CONFIG) then + local nodes = {} + uci:foreach(appname, "nodes", function(node) + nodes[#nodes + 1] = node + end) + + for _, config in pairs(CONFIG) do + if config.nodes and type(config.nodes) == "table" then + for kk, vv in pairs(config.nodes) do + select_node(nodes, vv) + end + config.set(config) + else + select_node(nodes, config) + end + end + + --[[ + for k, v in pairs(CONFIG) do + if type(v.new_nodes) == "table" and #v.new_nodes > 0 then + local new_node_list = "" + for kk, vv in pairs(v.new_nodes) do + new_node_list = new_node_list .. vv .. " " + end + if new_node_list ~= "" then + print(v.remarks, new_node_list) + end + else + print(v.remarks, v.newNodeId) + end + end + ]]-- + + uci:commit(appname) + end + luci.sys.call("/etc/init.d/" .. appname .. " restart > /dev/null 2>&1 &") +end + +local function parse_link(raw, add_mode, add_from) + if raw and #raw > 0 then + local nodes, szType + local node_list = {} + -- SSD 似乎是这种格式 ssd:// 开头的 + if raw:find('ssd://') then + szType = 'ssd' + local nEnd = select(2, raw:find('ssd://')) + nodes = base64Decode(raw:sub(nEnd + 1, #raw)) + nodes = jsonParse(nodes) + local extra = { + airport = nodes.airport, + port = nodes.port, + encryption = nodes.encryption, + password = nodes.password + } + local servers = {} + -- SS里面包着 干脆直接这样 + for _, server in ipairs(nodes.servers) do + tinsert(servers, setmetatable(server, { __index = extra })) + end + nodes = servers + else + -- ssd 外的格式 + if add_mode == "1" then + nodes = split(raw:gsub(" ", "\n"), "\n") + else + nodes = split(base64Decode(raw):gsub(" ", "\n"), "\n") + end + end + + for _, v in ipairs(nodes) do + if v then + local result + if szType == 'ssd' then + result = processData(szType, v, add_mode, add_from) + elseif not szType then + local node = trim(v) + local dat = split(node, "://") + if dat and dat[1] and dat[2] then + if dat[1] == 'ss' or dat[1] == 'trojan' or dat[1] == 'trojan-go' then + result = processData(dat[1], dat[2], add_mode, add_from) + else + result = processData(dat[1], base64Decode(dat[2]), add_mode, add_from) + end + end + else + log('跳过未知类型: ' .. szType) + end + -- log(result) + if result then + if not result.type then + log('丢弃节点:' .. result.remarks .. ",找不到可使用二进制.") + elseif (add_mode == "2" and is_filter_keyword(result.remarks)) or not result.address or result.remarks == "NULL" or result.address=="127.0.0.1" or + (not datatypes.hostname(result.address) and not (datatypes.ipmask4(result.address) or datatypes.ipmask6(result.address))) then + log('丢弃过滤节点: ' .. result.type .. ' 节点, ' .. result.remarks) + else + tinsert(node_list, result) + end + end + end + end + if #node_list > 0 then + nodeResult[#nodeResult + 1] = { + remark = add_from, + list = node_list + } + end + log('成功解析【' .. add_from .. '】节点数量: ' .. #node_list) + else + if add_mode == "2" then + log('获取到的【' .. add_from .. '】订阅内容为空,可能是订阅地址失效,或是网络问题,请请检测。') + end + end +end + +local execute = function() + do + local subscribe_list = {} + local retry = {} + if arg[2] then + string.gsub(arg[2], '[^' .. "," .. ']+', function(w) + subscribe_list[#subscribe_list + 1] = uci:get_all(appname, w) or {} + end) + else + uci:foreach(appname, "subscribe_list", function(o) + subscribe_list[#subscribe_list + 1] = o + end) + end + + for index, value in ipairs(subscribe_list) do + local cfgid = value[".name"] + local remark = value.remark + local url = value.url + if value.allowInsecure and value.allowInsecure ~= "1" then + allowInsecure_default = nil + end + local filter_keyword_mode = value.filter_keyword_mode or "5" + if filter_keyword_mode == "0" then + filter_keyword_mode_default = "0" + elseif filter_keyword_mode == "1" then + filter_keyword_mode_default = "1" + filter_keyword_discard_list_default = value.filter_discard_list or {} + elseif filter_keyword_mode == "2" then + filter_keyword_mode_default = "2" + filter_keyword_keep_list_default = value.filter_keep_list or {} + elseif filter_keyword_mode == "3" then + filter_keyword_mode_default = "3" + filter_keyword_keep_list_default = value.filter_keep_list or {} + filter_keyword_discard_list_default = value.filter_discard_list or {} + elseif filter_keyword_mode == "4" then + filter_keyword_mode_default = "4" + filter_keyword_keep_list_default = value.filter_keep_list or {} + filter_keyword_discard_list_default = value.filter_discard_list or {} + end + local ss_aead_type = value.ss_aead_type or "global" + if ss_aead_type ~= "global" then + ss_aead_type_default = ss_aead_type + end + local trojan_type = value.trojan_type or "global" + if trojan_type ~= "global" then + trojan_type_default = trojan_type + end + local ua = value.user_agent + log('正在订阅:【' .. remark .. '】' .. url) + local raw = curl(url, "/tmp/" .. cfgid, ua) + if raw == 0 then + local f = io.open("/tmp/" .. cfgid, "r") + local stdout = f:read("*all") + f:close() + raw = trim(stdout) + os.remove("/tmp/" .. cfgid) + parse_link(raw, "2", remark) + else + retry[#retry + 1] = value + end + allowInsecure_default = true + filter_keyword_mode_default = uci:get(appname, "@global_subscribe[0]", "filter_keyword_mode") or "0" + filter_keyword_discard_list_default = uci:get(appname, "@global_subscribe[0]", "filter_discard_list") or {} + filter_keyword_keep_list_default = uci:get(appname, "@global_subscribe[0]", "filter_keep_list") or {} + ss_aead_type_default = uci:get(appname, "@global_subscribe[0]", "ss_aead_type") or "shadowsocks-libev" + trojan_type_default = uci:get(appname, "@global_subscribe[0]", "trojan_type") or "trojan-plus" + end + + if #retry > 0 then + for index, value in ipairs(retry) do + if (uci:get(appname, "@global_subscribe[0]", "subscribe_proxy") or "0") == "1" and (uci:get(appname, "@global[0]", "enabled") or "0") == "1" then + log(value.remark .. '订阅失败,请尝试关闭代理后再订阅。') + else + log(value.remark .. '订阅失败,可能是订阅地址失效,或是网络问题,请诊断!') + end + end + end + update_node(0) + end +end + +if arg[1] then + if arg[1] == "start" then + log('开始订阅...') + xpcall(execute, function(e) + log(e) + log(debug.traceback()) + log('发生错误, 正在恢复服务') + end) + log('订阅完毕...') + elseif arg[1] == "add" then + local f = assert(io.open("/tmp/links.conf", 'r')) + local content = f:read('*all') + f:close() + local nodes = split(content:gsub(" ", "\n"), "\n") + for _, raw in ipairs(nodes) do + parse_link(raw, "1", "导入") + end + update_node(1) + luci.sys.call("rm -f /tmp/links.conf") + elseif arg[1] == "truncate" then + truncate_nodes(arg[2]) + end +end diff --git a/luci-app-passwall/root/usr/share/passwall/test.sh b/luci-app-passwall/root/usr/share/passwall/test.sh new file mode 100755 index 000000000..4bb286c07 --- /dev/null +++ b/luci-app-passwall/root/usr/share/passwall/test.sh @@ -0,0 +1,274 @@ +#!/bin/sh + +CONFIG=passwall +LOG_FILE=/tmp/log/$CONFIG.log +LOCK_FILE_DIR=/tmp/lock +LOCK_FILE=${LOCK_FILE_DIR}/${CONFIG}_script.lock + +echolog() { + local d="$(date "+%Y-%m-%d %H:%M:%S")" + #echo -e "$d: $1" + echo -e "$d: $1" >> $LOG_FILE +} + +config_n_get() { + local ret=$(uci -q get "${CONFIG}.${1}.${2}" 2>/dev/null) + echo "${ret:=$3}" +} + +config_t_get() { + local index=0 + [ -n "$4" ] && index=$4 + local ret=$(uci -q get $CONFIG.@$1[$index].$2 2>/dev/null) + echo ${ret:=$3} +} + +test_url() { + local url=$1 + local try=1 + [ -n "$2" ] && try=$2 + local timeout=2 + [ -n "$3" ] && timeout=$3 + local extra_params=$4 + curl --help all | grep "\-\-retry-all-errors" > /dev/null + [ $? == 0 ] && extra_params="--retry-all-errors ${extra_params}" + status=$(/usr/bin/curl -I -o /dev/null -skL $extra_params --connect-timeout ${timeout} --retry ${try} -w %{http_code} "$url") + case "$status" in + 204|\ + 200) + status=200 + ;; + esac + echo $status +} + +test_proxy() { + result=0 + status=$(test_url "https://www.google.com/generate_204" ${retry_num} ${connect_timeout}) + if [ "$status" = "200" ]; then + result=0 + else + status2=$(test_url "https://www.baidu.com" ${retry_num} ${connect_timeout}) + if [ "$status2" = "200" ]; then + result=1 + else + result=2 + ping -c 3 -W 1 223.5.5.5 > /dev/null 2>&1 + [ $? -eq 0 ] && { + result=1 + } + fi + fi + echo $result +} + +url_test_node() { + result=0 + local node_id=$1 + local _type=$(echo $(config_n_get ${node_id} type nil) | tr 'A-Z' 'a-z') + [ "${_type}" != "nil" ] && { + if [ "${_type}" == "socks" ]; then + local _address=$(config_n_get ${node_id} address) + local _port=$(config_n_get ${node_id} port) + [ -n "${_address}" ] && [ -n "${_port}" ] && { + local curlx="socks5h://${_address}:${_port}" + local _username=$(config_n_get ${node_id} username) + local _password=$(config_n_get ${node_id} password) + [ -n "${_username}" ] && [ -n "${_password}" ] && curlx="socks5h://${_username}:${_password}@${_address}:${_port}" + } + else + local _tmp_port=$(/usr/share/${CONFIG}/app.sh get_new_port 61080 tcp) + /usr/share/${CONFIG}/app.sh run_socks flag="url_test_${node_id}" node=${node_id} bind=127.0.0.1 socks_port=${_tmp_port} config_file=url_test_${node_id}.json + local curlx="socks5h://127.0.0.1:${_tmp_port}" + fi + sleep 1s + result=$(curl --connect-timeout 3 -o /dev/null -I -skL -w "%{http_code}:%{time_starttransfer}" -x $curlx "https://www.google.com/generate_204") + pgrep -af "url_test_${node_id}" | awk '! /test\.sh/{print $1}' | xargs kill -9 >/dev/null 2>&1 + rm -rf "/tmp/etc/${CONFIG}/url_test_${node_id}.json" + } + echo $result +} + +test_node() { + local node_id=$1 + local _type=$(echo $(config_n_get ${node_id} type nil) | tr 'A-Z' 'a-z') + [ "${_type}" != "nil" ] && { + if [ "${_type}" == "socks" ]; then + local _address=$(config_n_get ${node_id} address) + local _port=$(config_n_get ${node_id} port) + [ -n "${_address}" ] && [ -n "${_port}" ] && { + local curlx="socks5h://${_address}:${_port}" + local _username=$(config_n_get ${node_id} username) + local _password=$(config_n_get ${node_id} password) + [ -n "${_username}" ] && [ -n "${_password}" ] && curlx="socks5h://${_username}:${_password}@${_address}:${_port}" + } + else + local _tmp_port=$(/usr/share/${CONFIG}/app.sh get_new_port 61080 tcp) + /usr/share/${CONFIG}/app.sh run_socks flag="test_node_${node_id}" node=${node_id} bind=127.0.0.1 socks_port=${_tmp_port} config_file=test_node_${node_id}.json + local curlx="socks5h://127.0.0.1:${_tmp_port}" + fi + sleep 1s + _proxy_status=$(test_url "https://www.google.com/generate_204" ${retry_num} ${connect_timeout} "-x $curlx") + pgrep -af "test_node_${node_id}" | awk '! /test\.sh/{print $1}' | xargs kill -9 >/dev/null 2>&1 + rm -rf "/tmp/etc/${CONFIG}/test_node_${node_id}.json" + if [ "${_proxy_status}" -eq 200 ]; then + return 0 + fi + } + return 1 +} + +flag=0 +main_node=$(config_t_get global tcp_node nil) + +test_auto_switch() { + flag=$(expr $flag + 1) + local TYPE=$1 + local b_tcp_nodes=$2 + local now_node=$3 + [ -z "$now_node" ] && { + if [ -f "/tmp/etc/$CONFIG/id/${TYPE}" ]; then + now_node=$(cat /tmp/etc/$CONFIG/id/${TYPE}) + if [ "$(config_n_get $now_node protocol nil)" = "_shunt" ]; then + if [ "$shunt_logic" == "1" ] && [ -f "/tmp/etc/$CONFIG/id/${TYPE}_default" ]; then + now_node=$(cat /tmp/etc/$CONFIG/id/${TYPE}_default) + elif [ "$shunt_logic" == "2" ] && [ -f "/tmp/etc/$CONFIG/id/${TYPE}_main" ]; then + now_node=$(cat /tmp/etc/$CONFIG/id/${TYPE}_main) + else + shunt_logic=0 + fi + else + shunt_logic=0 + fi + else + #echolog "自动切换检测:未知错误" + return 1 + fi + } + + [ $flag -le 1 ] && { + main_node=$now_node + } + + status=$(test_proxy) + if [ "$status" == 2 ]; then + echolog "自动切换检测:无法连接到网络,请检查网络是否正常!" + return 2 + fi + + #检测主节点是否能使用 + if [ "$restore_switch" == "1" ] && [ "$main_node" != "nil" ] && [ "$now_node" != "$main_node" ]; then + test_node ${main_node} + [ $? -eq 0 ] && { + #主节点正常,切换到主节点 + echolog "自动切换检测:${TYPE}主节点【$(config_n_get $main_node type):[$(config_n_get $main_node remarks)]】正常,切换到主节点!" + /usr/share/${CONFIG}/app.sh node_switch flag=${TYPE} new_node=${main_node} shunt_logic=${shunt_logic} + [ $? -eq 0 ] && { + echolog "自动切换检测:${TYPE}节点切换完毕!" + [ "$shunt_logic" != "0" ] && { + local tcp_node=$(config_t_get global tcp_node nil) + [ "$(config_n_get $tcp_node protocol nil)" = "_shunt" ] && { + if [ "$shunt_logic" == "1" ]; then + uci set $CONFIG.$tcp_node.default_node="$main_node" + elif [ "$shunt_logic" == "2" ]; then + uci set $CONFIG.$tcp_node.main_node="$main_node" + fi + uci commit $CONFIG + } + } + } + return 0 + } + fi + + if [ "$status" == 0 ]; then + #echolog "自动切换检测:${TYPE}节点【$(config_n_get $now_node type):[$(config_n_get $now_node remarks)]】正常。" + return 0 + elif [ "$status" == 1 ]; then + echolog "自动切换检测:${TYPE}节点【$(config_n_get $now_node type):[$(config_n_get $now_node remarks)]】异常,切换到下一个备用节点检测!" + local new_node + in_backup_nodes=$(echo $b_tcp_nodes | grep $now_node) + # 判断当前节点是否存在于备用节点列表里 + if [ -z "$in_backup_nodes" ]; then + # 如果不存在,设置第一个节点为新的节点 + new_node=$(echo $b_tcp_nodes | awk -F ' ' '{print $1}') + else + # 如果存在,设置下一个备用节点为新的节点 + #local count=$(expr $(echo $b_tcp_nodes | grep -o ' ' | wc -l) + 1) + local next_node=$(echo $b_tcp_nodes | awk -F "$now_node" '{print $2}' | awk -F " " '{print $1}') + if [ -z "$next_node" ]; then + new_node=$(echo $b_tcp_nodes | awk -F ' ' '{print $1}') + else + new_node=$next_node + fi + fi + test_node ${new_node} + if [ $? -eq 0 ]; then + [ "$restore_switch" == "0" ] && { + [ "$shunt_logic" == "0" ] && uci set $CONFIG.@global[0].tcp_node=$new_node + [ -z "$(echo $b_tcp_nodes | grep $main_node)" ] && uci add_list $CONFIG.@auto_switch[0].tcp_node=$main_node + uci commit $CONFIG + } + echolog "自动切换检测:${TYPE}节点【$(config_n_get $new_node type):[$(config_n_get $new_node remarks)]】正常,切换到此节点!" + /usr/share/${CONFIG}/app.sh node_switch flag=${TYPE} new_node=${new_node} shunt_logic=${shunt_logic} + [ $? -eq 0 ] && { + [ "$restore_switch" == "1" ] && [ "$shunt_logic" != "0" ] && { + local tcp_node=$(config_t_get global tcp_node nil) + [ "$(config_n_get $tcp_node protocol nil)" = "_shunt" ] && { + if [ "$shunt_logic" == "1" ]; then + uci set $CONFIG.$tcp_node.default_node="$main_node" + elif [ "$shunt_logic" == "2" ]; then + uci set $CONFIG.$tcp_node.main_node="$main_node" + fi + uci commit $CONFIG + } + } + echolog "自动切换检测:${TYPE}节点切换完毕!" + } + return 0 + else + test_auto_switch ${TYPE} "${b_tcp_nodes}" ${new_node} + fi + fi +} + +start() { + ENABLED=$(config_t_get global enabled 0) + [ "$ENABLED" != 1 ] && return 1 + ENABLED=$(config_t_get auto_switch enable 0) + [ "$ENABLED" != 1 ] && return 1 + delay=$(config_t_get auto_switch testing_time 1) + #sleep 9s + connect_timeout=$(config_t_get auto_switch connect_timeout 3) + retry_num=$(config_t_get auto_switch retry_num 3) + restore_switch=$(config_t_get auto_switch restore_switch 0) + shunt_logic=$(config_t_get auto_switch shunt_logic 0) + while [ "$ENABLED" -eq 1 ]; do + [ -f "$LOCK_FILE" ] && { + sleep 6s + continue + } + touch $LOCK_FILE + TCP_NODE=$(config_t_get auto_switch tcp_node nil) + [ -n "$TCP_NODE" -a "$TCP_NODE" != "nil" ] && { + TCP_NODE=$(echo $TCP_NODE | tr -s ' ' '\n' | uniq | tr -s '\n' ' ') + test_auto_switch TCP "$TCP_NODE" + } + rm -f $LOCK_FILE + sleep ${delay}m + done +} + +arg1=$1 +shift +case $arg1 in +test_url) + test_url $@ + ;; +url_test_node) + url_test_node $@ + ;; +*) + start + ;; +esac diff --git a/luci-app-passwall/root/usr/share/rpcd/acl.d/luci-app-passwall.json b/luci-app-passwall/root/usr/share/rpcd/acl.d/luci-app-passwall.json new file mode 100644 index 000000000..0d6f7d7e8 --- /dev/null +++ b/luci-app-passwall/root/usr/share/rpcd/acl.d/luci-app-passwall.json @@ -0,0 +1,11 @@ +{ + "luci-app-passwall": { + "description": "Grant UCI access for luci-app-passwall", + "read": { + "uci": [ "passwall", "passwall_server" ] + }, + "write": { + "uci": [ "passwall", "passwall_server" ] + } + } +} diff --git a/luci-app-ssr-plus/Makefile b/luci-app-ssr-plus/Makefile new file mode 100644 index 000000000..0d86e6c29 --- /dev/null +++ b/luci-app-ssr-plus/Makefile @@ -0,0 +1,119 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=luci-app-ssr-plus +PKG_VERSION:=185 +PKG_RELEASE:=2 + +PKG_CONFIG_DEPENDS:= \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_IPT2Socks \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Redsocks2 \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Server \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Server \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Simple_Obfs \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Trojan \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_V2ray_Plugin \ + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Xray + +LUCI_TITLE:=SS/SSR/V2Ray/Trojan/NaiveProxy/Socks5/Tun LuCI interface +LUCI_PKGARCH:=all +LUCI_DEPENDS:= \ + @(PACKAGE_libustream-mbedtls||PACKAGE_libustream-openssl||PACKAGE_libustream-wolfssl) \ + +coreutils +coreutils-base64 +dns2socks +dnsmasq-full +ipset +kmod-ipt-nat \ + +ip-full +iptables-mod-tproxy +lua +libuci-lua +microsocks +pdnsd-alt \ + +tcping +resolveip +shadowsocksr-libev-ssr-check +uclient-fetch \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun:kcptun-client \ + +PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy:naiveproxy \ + +PACKAGE_$(PKG_NAME)_INCLUDE_IPT2Socks:ipt2socks \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Redsocks2:redsocks2 \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client:shadowsocks-libev-ss-local \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client:shadowsocks-libev-ss-redir \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server:shadowsocks-libev-ss-server \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client:shadowsocks-rust-sslocal \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Server:shadowsocks-rust-ssserver \ + +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client:shadowsocksr-libev-ssr-local \ + +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client:shadowsocksr-libev-ssr-redir \ + +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Server:shadowsocksr-libev-ssr-server \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Simple_Obfs:simple-obfs \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Trojan:trojan \ + +PACKAGE_$(PKG_NAME)_INCLUDE_V2ray_Plugin:v2ray-plugin \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Xray:curl \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Xray:xray-core + +define Package/$(PKG_NAME)/config +config PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun + bool "Include Kcptun" + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy + bool "Include NaiveProxy" + depends on !(arc||armeb||mips||mips64||powerpc||TARGET_gemini) + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_IPT2Socks + bool "Include ipt2socks" + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_Redsocks2 + bool "Include Redsocks2" + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Client + bool "Include Shadowsocks Libev Client" + default y if i386||x86_64||arm + +config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Libev_Server + bool "Include Shadowsocks Libev Server" + default y if i386||x86_64||arm + +config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Client + bool "Include Shadowsocks Rust Client" + depends on aarch64||arm||i386||mips||mipsel||x86_64 + depends on !(TARGET_x86_geode||TARGET_x86_legacy) + default y if aarch64 + +config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Rust_Server + bool "Include Shadowsocks Rust Server" + depends on aarch64||arm||i386||mips||mipsel||x86_64 + depends on !(TARGET_x86_geode||TARGET_x86_legacy) + default y if aarch64 + +config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Client + bool "Include ShadowsocksR Libev Client" + default y + +config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Libev_Server + bool "Include ShadowsocksR Libev Server" + default y if i386||x86_64||arm + +config PACKAGE_$(PKG_NAME)_INCLUDE_Simple_Obfs + bool "Include Shadowsocks Simple Obfs Plugin" + default y if i386||x86_64||arm + +config PACKAGE_$(PKG_NAME)_INCLUDE_Trojan + bool "Include Trojan" + select PACKAGE_$(PKG_NAME)_INCLUDE_IPT2Socks + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_V2ray_Plugin + bool "Include Shadowsocks V2ray Plugin" + default n + +config PACKAGE_$(PKG_NAME)_INCLUDE_Xray + bool "Include Xray" + default y if aarch64||arm||i386||x86_64 +endef + +define Package/$(PKG_NAME)/conffiles +/etc/config/shadowsocksr +/etc/ssrplus/ +endef + +include $(TOPDIR)/feeds/luci/luci.mk + +# call BuildPackage - OpenWrt buildroot signature diff --git a/luci-app-ssr-plus/luasrc/controller/shadowsocksr.lua b/luci-app-ssr-plus/luasrc/controller/shadowsocksr.lua new file mode 100644 index 000000000..6b18d5b59 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/controller/shadowsocksr.lua @@ -0,0 +1,143 @@ +-- Copyright (C) 2017 yushi studio +-- Licensed to the public under the GNU General Public License v3. +module("luci.controller.shadowsocksr", package.seeall) + +function index() + if not nixio.fs.access("/etc/config/shadowsocksr") then + call("act_reset") + end + local page + page = entry({"admin", "services", "shadowsocksr"}, alias("admin", "services", "shadowsocksr", "client"), _("ShadowSocksR Plus+"), 10) + page.dependent = true + page.acl_depends = { "luci-app-ssr-plus" } + entry({"admin", "services", "shadowsocksr", "client"}, cbi("shadowsocksr/client"), _("SSR Client"), 10).leaf = true + entry({"admin", "services", "shadowsocksr", "servers"}, arcombine(cbi("shadowsocksr/servers", {autoapply = true}), cbi("shadowsocksr/client-config")), _("Severs Nodes"), 20).leaf = true + entry({"admin", "services", "shadowsocksr", "control"}, cbi("shadowsocksr/control"), _("Access Control"), 30).leaf = true + entry({"admin", "services", "shadowsocksr", "advanced"}, cbi("shadowsocksr/advanced"), _("Advanced Settings"), 50).leaf = true + entry({"admin", "services", "shadowsocksr", "server"}, arcombine(cbi("shadowsocksr/server"), cbi("shadowsocksr/server-config")), _("SSR Server"), 60).leaf = true + entry({"admin", "services", "shadowsocksr", "status"}, form("shadowsocksr/status"), _("Status"), 70).leaf = true + entry({"admin", "services", "shadowsocksr", "check"}, call("check_status")) + entry({"admin", "services", "shadowsocksr", "refresh"}, call("refresh_data")) + entry({"admin", "services", "shadowsocksr", "subscribe"}, call("subscribe")) + entry({"admin", "services", "shadowsocksr", "checkport"}, call("check_port")) + entry({"admin", "services", "shadowsocksr", "log"}, form("shadowsocksr/log"), _("Log"), 80).leaf = true + entry({"admin", "services", "shadowsocksr", "run"}, call("act_status")) + entry({"admin", "services", "shadowsocksr", "ping"}, call("act_ping")) + entry({"admin", "services", "shadowsocksr", "reset"}, call("act_reset")) + entry({"admin", "services", "shadowsocksr", "restart"}, call("act_restart")) + entry({"admin", "services", "shadowsocksr", "delete"}, call("act_delete")) + entry({"admin", "services", "shadowsocksr", "cache"}, call("act_cache")) +end + +function subscribe() + luci.sys.call("/usr/bin/lua /usr/share/shadowsocksr/subscribe.lua >>/var/log/ssrplus.log") + luci.http.prepare_content("application/json") + luci.http.write_json({ret = 1}) +end + +function act_status() + local e = {} + e.running = luci.sys.call("busybox ps -w | grep ssr-retcp | grep -v grep >/dev/null") == 0 + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function act_ping() + local e = {} + local domain = luci.http.formvalue("domain") + local port = luci.http.formvalue("port") + local transport = luci.http.formvalue("transport") + local wsPath = luci.http.formvalue("wsPath") + local tls = luci.http.formvalue("tls") + e.index = luci.http.formvalue("index") + local iret = luci.sys.call("ipset add ss_spec_wan_ac " .. domain .. " 2>/dev/null") + if transport == "ws" then + local prefix = tls=='1' and "https://" or "http://" + local address = prefix..domain..':'..port..wsPath + local result = luci.sys.exec("curl --http1.1 -m 2 -ksN -o /dev/null -w 'time_connect=%{time_connect}\nhttp_code=%{http_code}' -H 'Connection: Upgrade' -H 'Upgrade: websocket' -H 'Sec-WebSocket-Key: SGVsbG8sIHdvcmxkIQ==' -H 'Sec-WebSocket-Version: 13' "..address) + e.socket = string.match(result,"http_code=(%d+)")=="101" + e.ping = tonumber(string.match(result, "time_connect=(%d+.%d%d%d)"))*1000 + else + local socket = nixio.socket("inet", "stream") + socket:setopt("socket", "rcvtimeo", 3) + socket:setopt("socket", "sndtimeo", 3) + e.socket = socket:connect(domain, port) + socket:close() + -- e.ping = luci.sys.exec("ping -c 1 -W 1 %q 2>&1 | grep -o 'time=[0-9]*.[0-9]' | awk -F '=' '{print$2}'" % domain) + -- if (e.ping == "") then + e.ping = luci.sys.exec(string.format("echo -n $(tcping -q -c 1 -i 1 -t 2 -p %s %s 2>&1 | grep -o 'time=[0-9]*' | awk -F '=' '{print $2}') 2>/dev/null", port, domain)) + -- end + end + if (iret == 0) then + luci.sys.call(" ipset del ss_spec_wan_ac " .. domain) + end + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function check_status() + local e = {} + e.ret = luci.sys.call("/usr/bin/ssr-check www." .. luci.http.formvalue("set") .. ".com 80 3 1") + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +function refresh_data() + local set = luci.http.formvalue("set") + local retstring = loadstring("return " .. luci.sys.exec("/usr/bin/lua /usr/share/shadowsocksr/update.lua " .. set))() + luci.http.prepare_content("application/json") + luci.http.write_json(retstring) +end + +function check_port() + local retstring = "

" + local s + local server_name = "" + local uci = luci.model.uci.cursor() + local iret = 1 + uci:foreach("shadowsocksr", "servers", function(s) + if s.alias then + server_name = s.alias + elseif s.server and s.server_port then + server_name = "%s:%s" % {s.server, s.server_port} + end + iret = luci.sys.call("ipset add ss_spec_wan_ac " .. s.server .. " 2>/dev/null") + socket = nixio.socket("inet", "stream") + socket:setopt("socket", "rcvtimeo", 3) + socket:setopt("socket", "sndtimeo", 3) + ret = socket:connect(s.server, s.server_port) + if tostring(ret) == "true" then + socket:close() + retstring = retstring .. "[" .. server_name .. "] OK.
" + else + retstring = retstring .. "[" .. server_name .. "] Error.
" + end + if iret == 0 then + luci.sys.call("ipset del ss_spec_wan_ac " .. s.server) + end + end) + luci.http.prepare_content("application/json") + luci.http.write_json({ret = retstring}) +end + +function act_reset() + luci.sys.call("/etc/init.d/shadowsocksr reset &") + luci.http.redirect(luci.dispatcher.build_url("admin", "services", "shadowsocksr")) +end + +function act_restart() + luci.sys.call("/etc/init.d/shadowsocksr restart &") + luci.http.redirect(luci.dispatcher.build_url("admin", "services", "shadowsocksr")) +end + +function act_delete() + luci.sys.call("/etc/init.d/shadowsocksr restart &") + luci.http.redirect(luci.dispatcher.build_url("admin", "services", "shadowsocksr", "servers")) +end + +function act_cache() + local e = {} + e.ret = luci.sys.call("pdnsd-ctl -c /var/etc/ssrplus/pdnsd empty-cache >/dev/null") + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end diff --git a/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua new file mode 100644 index 000000000..82b53fb72 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua @@ -0,0 +1,102 @@ +local uci = luci.model.uci.cursor() +local server_table = {} + +uci:foreach("shadowsocksr", "servers", function(s) + if s.alias then + server_table[s[".name"]] = "[%s]:%s" % {string.upper(s.v2ray_protocol or s.type), s.alias} + elseif s.server and s.server_port then + server_table[s[".name"]] = "[%s]:%s:%s" % {string.upper(s.v2ray_protocol or s.type), s.server, s.server_port} + end +end) + +local key_table = {} +for key, _ in pairs(server_table) do + table.insert(key_table, key) +end + +table.sort(key_table) + +m = Map("shadowsocksr") +-- [[ global ]]-- +s = m:section(TypedSection, "global", translate("Server failsafe auto swith and custom update settings")) +s.anonymous = true + +-- o = s:option(Flag, "monitor_enable", translate("Enable Process Deamon")) +-- o.rmempty = false +-- o.default = "1" + +o = s:option(Flag, "enable_switch", translate("Enable Auto Switch")) +o.rmempty = false +o.default = "1" + +o = s:option(Value, "switch_time", translate("Switch check cycly(second)")) +o.datatype = "uinteger" +o:depends("enable_switch", "1") +o.default = 667 + +o = s:option(Value, "switch_timeout", translate("Check timout(second)")) +o.datatype = "uinteger" +o:depends("enable_switch", "1") +o.default = 5 + +o = s:option(Value, "switch_try_count", translate("Check Try Count")) +o.datatype = "uinteger" +o:depends("enable_switch", "1") +o.default = 3 + +o = s:option(Value, "gfwlist_url", translate("gfwlist Update url")) +o:value("https://cdn.jsdelivr.net/gh/YW5vbnltb3Vz/domain-list-community@release/gfwlist.txt", translate("v2fly/domain-list-community")) +o:value("https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/gfw.txt", translate("Loyalsoldier/v2ray-rules-dat")) +o:value("https://cdn.jsdelivr.net/gh/Loukky/gfwlist-by-loukky/gfwlist.txt", translate("Loukky/gfwlist-by-loukky")) +o:value("https://cdn.jsdelivr.net/gh/gfwlist/gfwlist/gfwlist.txt", translate("gfwlist/gfwlist")) +o.default = "https://cdn.jsdelivr.net/gh/YW5vbnltb3Vz/domain-list-community@release/gfwlist.txt" + +o = s:option(Value, "chnroute_url", translate("Chnroute Update url")) +o:value("https://ispip.clang.cn/all_cn.txt", translate("Clang.CN")) +o:value("https://ispip.clang.cn/all_cn_cidr.txt", translate("Clang.CN.CIDR")) +o.default = "https://ispip.clang.cn/all_cn.txt" + +o = s:option(Flag, "netflix_enable", translate("Enable Netflix Mode")) +o.rmempty = false + +o = s:option(Value, "nfip_url", translate("nfip_url")) +o:value("https://cdn.jsdelivr.net/gh/QiuSimons/Netflix_IP/NF_only.txt", translate("Netflix IP Only")) +o:value("https://cdn.jsdelivr.net/gh/QiuSimons/Netflix_IP/getflix.txt", translate("Netflix and AWS")) +o.default = "https://cdn.jsdelivr.net/gh/QiuSimons/Netflix_IP/NF_only.txt" +o.description = translate("Customize Netflix IP Url") +o:depends("netflix_enable", "1") + +o = s:option(Flag, "adblock", translate("Enable adblock")) +o.rmempty = false + +o = s:option(Value, "adblock_url", translate("adblock_url")) +o:value("https://raw.githubusercontent.com/neodevpro/neodevhost/master/lite_dnsmasq.conf", translate("NEO DEV HOST Lite")) +o:value("https://raw.githubusercontent.com/neodevpro/neodevhost/master/dnsmasq.conf", translate("NEO DEV HOST Full")) +o:value("https://anti-ad.net/anti-ad-for-dnsmasq.conf", translate("anti-AD")) +o.default = "https://raw.githubusercontent.com/neodevpro/neodevhost/master/lite_dnsmasq.conf" +o:depends("adblock", "1") +o.description = translate("Support AdGuardHome and DNSMASQ format list") + +o = s:option(Button, "reset", translate("Reset to defaults")) +o.rawhtml = true +o.template = "shadowsocksr/reset" + +-- [[ SOCKS5 Proxy ]]-- +s = m:section(TypedSection, "socks5_proxy", translate("Global SOCKS5 Proxy Server")) +s.anonymous = true + +o = s:option(ListValue, "server", translate("Server")) +o:value("nil", translate("Disable")) +o:value("same", translate("Same as Global Server")) +for _, key in pairs(key_table) do + o:value(key, server_table[key]) +end +o.default = "nil" +o.rmempty = false + +o = s:option(Value, "local_port", translate("Local Port")) +o.datatype = "port" +o.default = 1080 +o.rmempty = false + +return m diff --git a/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/client-config.lua b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/client-config.lua new file mode 100644 index 000000000..4d4455837 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/client-config.lua @@ -0,0 +1,655 @@ +-- Copyright (C) 2017 yushi studio github.com/ywb94 +-- Licensed to the public under the GNU General Public License v3. +require "nixio.fs" +require "luci.sys" +require "luci.http" +local m, s, o, kcp_enable +local sid = arg[1] +local uuid = luci.sys.exec("cat /proc/sys/kernel/random/uuid") + +function is_finded(e) + return luci.sys.exec('type -t -p "%s"' % e) ~= "" and true or false +end + +local server_table = {} +local encrypt_methods = { + -- ssr + "none", + "table", + "rc4", + "rc4-md5-6", + "rc4-md5", + "aes-128-cfb", + "aes-192-cfb", + "aes-256-cfb", + "aes-128-ctr", + "aes-192-ctr", + "aes-256-ctr", + "bf-cfb", + "camellia-128-cfb", + "camellia-192-cfb", + "camellia-256-cfb", + "cast5-cfb", + "des-cfb", + "idea-cfb", + "rc2-cfb", + "seed-cfb", + "salsa20", + "chacha20", + "chacha20-ietf" +} + +local encrypt_methods_ss = { + -- aead + "aes-128-gcm", + "aes-192-gcm", + "aes-256-gcm", + "chacha20-ietf-poly1305", + "xchacha20-ietf-poly1305" + --[[ stream + "none", + "plain", + "table", + "rc4", + "rc4-md5", + "aes-128-cfb", + "aes-192-cfb", + "aes-256-cfb", + "aes-128-ctr", + "aes-192-ctr", + "aes-256-ctr", + "bf-cfb", + "camellia-128-cfb", + "camellia-192-cfb", + "camellia-256-cfb", + "salsa20", + "chacha20", + "chacha20-ietf" ]] +} + +local encrypt_methods_v2ray_ss = { + -- xray_ss + "none", + "plain", + -- aead + "aes-128-gcm", + "aes-256-gcm", + "chacha20-poly1305", + "chacha20-ietf-poly1305", + "xchacha20-ietf-poly1305", + "aead_aes_128_gcm", + "aead_aes_256_gcm", + "aead_chacha20_poly1305", + "aead_xchacha20_poly1305" +} + +local protocol = { + -- ssr + "origin", + "verify_deflate", + "auth_sha1_v4", + "auth_aes128_sha1", + "auth_aes128_md5", + "auth_chain_a", + "auth_chain_b", + "auth_chain_c", + "auth_chain_d", + "auth_chain_e", + "auth_chain_f" +} + +obfs = { + -- ssr + "plain", + "http_simple", + "http_post", + "random_head", + "tls1.2_ticket_auth" +} + +local securitys = { + -- vmess + "auto", + "none", + "zero", + "aes-128-gcm", + "chacha20-poly1305" +} + +local flows = { + -- xlts + "xtls-rprx-origin", + "xtls-rprx-origin-udp443", + "xtls-rprx-direct", + "xtls-rprx-direct-udp443", + "xtls-rprx-splice", + "xtls-rprx-splice-udp443" +} + +m = Map("shadowsocksr", translate("Edit ShadowSocksR Server")) +m.redirect = luci.dispatcher.build_url("admin/services/shadowsocksr/servers") +if m.uci:get("shadowsocksr", sid) ~= "servers" then + luci.http.redirect(m.redirect) + return +end + +-- [[ Servers Setting ]]-- +s = m:section(NamedSection, sid, "servers") +s.anonymous = true +s.addremove = false + +o = s:option(DummyValue, "ssr_url", "SS/SSR/V2RAY/TROJAN URL") +o.rawhtml = true +o.template = "shadowsocksr/ssrurl" +o.value = sid + +o = s:option(ListValue, "type", translate("Server Node Type")) +if is_finded("xray") or is_finded("v2ray") then + o:value("v2ray", translate("V2Ray/XRay")) +end +if is_finded("ssr-redir") then + o:value("ssr", translate("ShadowsocksR")) +end +if is_finded("sslocal") or is_finded("ss-redir") then + o:value("ss", translate("Shadowsocks New Version")) +end +if is_finded("trojan") then + o:value("trojan", translate("Trojan")) +end +if is_finded("naive") then + o:value("naiveproxy", translate("NaiveProxy")) +end +if is_finded("ipt2socks") then + o:value("socks5", translate("Socks5")) +end +if is_finded("redsocks2") then + o:value("tun", translate("Network Tunnel")) +end + +o.description = translate("Using incorrect encryption mothod may causes service fail to start") + +o = s:option(Value, "alias", translate("Alias(optional)")) + +o = s:option(ListValue, "iface", translate("Network interface to use")) +for _, e in ipairs(luci.sys.net.devices()) do + if e ~= "lo" then + o:value(e) + end +end +o:depends("type", "tun") +o.description = translate("Redirect traffic to this network interface") + +o = s:option(ListValue, "v2ray_protocol", translate("V2Ray/XRay protocol")) +o:value("vless", translate("VLESS")) +o:value("vmess", translate("VMess")) +o:value("trojan", translate("Trojan")) +o:value("shadowsocks", translate("Shadowsocks")) +o:value("socks", translate("Socks")) +o:value("http", translate("HTTP")) +o:depends("type", "v2ray") + +o = s:option(Value, "server", translate("Server Address")) +o.datatype = "host" +o.rmempty = false +o:depends("type", "ssr") +o:depends("type", "ss") +o:depends("type", "v2ray") +o:depends("type", "trojan") +o:depends("type", "naiveproxy") +o:depends("type", "socks5") + +o = s:option(Value, "server_port", translate("Server Port")) +o.datatype = "port" +o.rmempty = false +o:depends("type", "ssr") +o:depends("type", "ss") +o:depends("type", "v2ray") +o:depends("type", "trojan") +o:depends("type", "naiveproxy") +o:depends("type", "socks5") + +o = s:option(Flag, "auth_enable", translate("Enable Authentication")) +o.rmempty = false +o.default = "0" +o:depends("type", "socks5") +o:depends({type = "v2ray", v2ray_protocol = "http"}) +o:depends({type = "v2ray", v2ray_protocol = "socks"}) + +o = s:option(Value, "username", translate("Username")) +o.rmempty = true +o:depends("type", "naiveproxy") +o:depends({type = "socks5", auth_enable = true}) +o:depends({type = "v2ray", v2ray_protocol = "http", auth_enable = true}) +o:depends({type = "v2ray", v2ray_protocol = "socks", auth_enable = true}) + +o = s:option(Value, "password", translate("Password")) +o.password = true +o.rmempty = true +o:depends("type", "ssr") +o:depends("type", "ss") +o:depends("type", "trojan") +o:depends("type", "naiveproxy") +o:depends({type = "socks5", auth_enable = true}) +o:depends({type = "v2ray", v2ray_protocol = "http", auth_enable = true}) +o:depends({type = "v2ray", v2ray_protocol = "socks", auth_enable = true}) +o:depends({type = "v2ray", v2ray_protocol = "shadowsocks"}) +o:depends({type = "v2ray", v2ray_protocol = "trojan"}) + +o = s:option(ListValue, "encrypt_method", translate("Encrypt Method")) +for _, v in ipairs(encrypt_methods) do + o:value(v) +end +o.rmempty = true +o:depends("type", "ssr") + +o = s:option(ListValue, "encrypt_method_ss", translate("Encrypt Method")) +for _, v in ipairs(encrypt_methods_ss) do + o:value(v) +end +o.rmempty = true +o:depends("type", "ss") + +o = s:option(ListValue, "encrypt_method_v2ray_ss", translate("Encrypt Method")) +for _, v in ipairs(encrypt_methods_v2ray_ss) do + o:value(v) +end +o.rmempty = true +o:depends({type = "v2ray", v2ray_protocol = "shadowsocks"}) + +o = s:option(Flag, "ivCheck", translate("Bloom Filter")) +o.rmempty = true +o:depends({type = "v2ray", v2ray_protocol = "shadowsocks"}) +o.default = "1" + +-- Shadowsocks Plugin +o = s:option(Value, "plugin", translate("Obfs")) +o:value("none", translate("None")) +if is_finded("obfs-local") then + o:value("obfs-local", translate("obfs-local")) +end +if is_finded("v2ray-plugin") then + o:value("v2ray-plugin", translate("v2ray-plugin")) +end +if is_finded("xray-plugin") then + o:value("xray-plugin", translate("xray-plugin")) +end +o.rmempty = true +o:depends("type", "ss") + +o = s:option(Value, "plugin_opts", translate("Plugin Opts")) +o.rmempty = true +o:depends({type = "ss", plugin = "obfs-local"}) +o:depends({type = "ss", plugin = "v2ray-plugin"}) +o:depends({type = "ss", plugin = "xray-plugin"}) + +o = s:option(ListValue, "protocol", translate("Protocol")) +for _, v in ipairs(protocol) do + o:value(v) +end +o.rmempty = true +o:depends("type", "ssr") + +o = s:option(Value, "protocol_param", translate("Protocol param(optional)")) +o:depends("type", "ssr") + +o = s:option(ListValue, "obfs", translate("Obfs")) +for _, v in ipairs(obfs) do + o:value(v) +end +o.rmempty = true +o:depends("type", "ssr") + +o = s:option(Value, "obfs_param", translate("Obfs param(optional)")) +o:depends("type", "ssr") + +-- VmessId +o = s:option(Value, "vmess_id", translate("Vmess/VLESS ID (UUID)")) +o.rmempty = true +o.default = uuid +o:depends({type = "v2ray", v2ray_protocol = "vmess"}) +o:depends({type = "v2ray", v2ray_protocol = "vless"}) + +-- VLESS Encryption +o = s:option(Value, "vless_encryption", translate("VLESS Encryption")) +o.rmempty = true +o.default = "none" +o:depends({type = "v2ray", v2ray_protocol = "vless"}) + +-- 加密方式 +o = s:option(ListValue, "security", translate("Encrypt Method")) +for _, v in ipairs(securitys) do + o:value(v, v:upper()) +end +o.rmempty = true +o:depends({type = "v2ray", v2ray_protocol = "vmess"}) + +-- 传输协议 +o = s:option(ListValue, "transport", translate("Transport")) +o:value("tcp", "TCP") +o:value("kcp", "mKCP") +o:value("ws", "WebSocket") +o:value("h2", "HTTP/2") +o:value("quic", "QUIC") +o:value("grpc", "gRPC") +o.rmempty = true +o:depends("type", "v2ray") + +-- [[ TCP部分 ]]-- +-- TCP伪装 +o = s:option(ListValue, "tcp_guise", translate("Camouflage Type")) +o:depends("transport", "tcp") +o:value("none", translate("None")) +o:value("http", "HTTP") +o.rmempty = true + +-- HTTP域名 +o = s:option(Value, "http_host", translate("HTTP Host")) +o:depends("tcp_guise", "http") +o.rmempty = true + +-- HTTP路径 +o = s:option(Value, "http_path", translate("HTTP Path")) +o:depends("tcp_guise", "http") +o.rmempty = true + +-- [[ WS部分 ]]-- +-- WS域名 +o = s:option(Value, "ws_host", translate("WebSocket Host")) +o:depends({transport = "ws", tls = false}) +o.datatype = "hostname" +o.rmempty = true + +-- WS路径 +o = s:option(Value, "ws_path", translate("WebSocket Path")) +o:depends("transport", "ws") +o.rmempty = true + +-- [[ H2部分 ]]-- + +-- H2域名 +o = s:option(Value, "h2_host", translate("HTTP/2 Host")) +o:depends("transport", "h2") +o.rmempty = true + +-- H2路径 +o = s:option(Value, "h2_path", translate("HTTP/2 Path")) +o:depends("transport", "h2") +o.rmempty = true + +-- gRPC +o = s:option(Value, "serviceName", translate("serviceName")) +o:depends("transport", "grpc") +o.rmempty = true + +-- gRPC初始窗口 +o = s:option(Value, "initial_windows_size", translate("Initial Windows Size")) +o.datatype = "uinteger" +o:depends("transport", "grpc") +o.default = 0 +o.rmempty = true + +-- H2/gRPC健康检查 +o = s:option(Flag, "health_check", translate("H2/gRPC Health Check")) +o:depends("transport", "h2") +o:depends("transport", "grpc") +o.rmempty = true + +o = s:option(Value, "read_idle_timeout", translate("H2 Read Idle Timeout")) +o.datatype = "uinteger" +o:depends({health_check = true, transport = "h2"}) +o.default = 60 +o.rmempty = true + +o = s:option(Value, "idle_timeout", translate("gRPC Idle Timeout")) +o.datatype = "uinteger" +o:depends({health_check = true, transport = "grpc"}) +o.default = 60 +o.rmempty = true + +o = s:option(Value, "health_check_timeout", translate("Health Check Timeout")) +o.datatype = "uinteger" +o:depends("health_check", 1) +o.default = 20 +o.rmempty = true + +o = s:option(Flag, "permit_without_stream", translate("Permit Without Stream")) +o:depends({health_check = true, transport = "grpc"}) +o.rmempty = true + +-- [[ QUIC部分 ]]-- +o = s:option(ListValue, "quic_security", translate("QUIC Security")) +o:depends("transport", "quic") +o:value("none", translate("None")) +o:value("aes-128-gcm", translate("aes-128-gcm")) +o:value("chacha20-poly1305", translate("chacha20-poly1305")) +o.rmempty = true + +o = s:option(Value, "quic_key", translate("QUIC Key")) +o:depends("transport", "quic") +o.rmempty = true + +o = s:option(ListValue, "quic_guise", translate("Header")) +o:depends("transport", "quic") +o.rmempty = true +o:value("none", translate("None")) +o:value("srtp", translate("VideoCall (SRTP)")) +o:value("utp", translate("BitTorrent (uTP)")) +o:value("wechat-video", translate("WechatVideo")) +o:value("dtls", translate("DTLS 1.2")) +o:value("wireguard", translate("WireGuard")) + +-- [[ mKCP部分 ]]-- +o = s:option(ListValue, "kcp_guise", translate("Camouflage Type")) +o:depends("transport", "kcp") +o:value("none", translate("None")) +o:value("srtp", translate("VideoCall (SRTP)")) +o:value("utp", translate("BitTorrent (uTP)")) +o:value("wechat-video", translate("WechatVideo")) +o:value("dtls", translate("DTLS 1.2")) +o:value("wireguard", translate("WireGuard")) +o.rmempty = true + +o = s:option(Value, "mtu", translate("MTU")) +o.datatype = "uinteger" +o:depends("transport", "kcp") +o.default = 1350 +o.rmempty = true + +o = s:option(Value, "tti", translate("TTI")) +o.datatype = "uinteger" +o:depends("transport", "kcp") +o.default = 50 +o.rmempty = true + +o = s:option(Value, "uplink_capacity", translate("Uplink Capacity")) +o.datatype = "uinteger" +o:depends("transport", "kcp") +o.default = 5 +o.rmempty = true + +o = s:option(Value, "downlink_capacity", translate("Downlink Capacity")) +o.datatype = "uinteger" +o:depends("transport", "kcp") +o.default = 20 +o.rmempty = true + +o = s:option(Value, "read_buffer_size", translate("Read Buffer Size")) +o.datatype = "uinteger" +o:depends("transport", "kcp") +o.default = 2 +o.rmempty = true + +o = s:option(Value, "write_buffer_size", translate("Write Buffer Size")) +o.datatype = "uinteger" +o:depends("transport", "kcp") +o.default = 2 +o.rmempty = true + +o = s:option(Value, "seed", translate("Obfuscate password (optional)")) +o:depends({v2ray_protocol = "vless", transport = "kcp"}) +o.rmempty = true + +o = s:option(Flag, "congestion", translate("Congestion")) +o:depends("transport", "kcp") +o.rmempty = true + +-- [[ TLS ]]-- +o = s:option(Flag, "tls", translate("TLS")) +o.rmempty = true +o.default = "0" +o:depends({type = "v2ray", xtls = false}) +-- o:depends({type = "v2ray", v2ray_protocol = "vless", xtls = false}) +o:depends("type", "trojan") + +-- XTLS +if is_finded("xray") then + o = s:option(Flag, "xtls", translate("XTLS")) + o.rmempty = true + o.default = "0" + o:depends({type = "v2ray", v2ray_protocol = "vless", transport = "tcp", tls = false}) + o:depends({type = "v2ray", v2ray_protocol = "vless", transport = "kcp", tls = false}) + o:depends({type = "v2ray", v2ray_protocol = "trojan", transport = "tcp", tls = false}) + o:depends({type = "v2ray", v2ray_protocol = "trojan", transport = "kcp", tls = false}) +end + +-- Flow +o = s:option(Value, "vless_flow", translate("Flow")) +for _, v in ipairs(flows) do + o:value(v, translate(v)) +end +o.rmempty = true +o.default = "xtls-rprx-splice" +o:depends("xtls", true) + +-- [[ TLS部分 ]] -- +o = s:option(Flag, "tls_sessionTicket", translate("Session Ticket")) +o:depends({type = "trojan", tls = true}) +o.default = "0" + +-- [[ uTLS ]]-- +o = s:option(ListValue, "fingerprint", translate("Finger Print")) +o:value("disable", translate("disable")) +o:value("firefox", translate("firefox")) +o:value("chrome", translate("chrome")) +o:value("safari", translate("safari")) +o:value("randomized", translate("randomized")) +o:depends({type = "v2ray", tls = true}) +o.default = "disable" + +o = s:option(Value, "tls_host", translate("TLS Host")) +o.datatype = "hostname" +o:depends("tls", true) +o:depends("xtls", true) +o.rmempty = true + +-- [[ allowInsecure ]]-- +o = s:option(Flag, "insecure", translate("allowInsecure")) +o.rmempty = false +o:depends("tls", true) +o:depends("xtls", true) +o.description = translate("If true, allowss insecure connection at TLS client, e.g., TLS server uses unverifiable certificates.") + +-- [[ Mux ]]-- +o = s:option(Flag, "mux", translate("Mux")) +o.rmempty = false +o:depends({type = "v2ray", xtls = false}) + +o = s:option(Value, "concurrency", translate("Concurrency")) +o.datatype = "uinteger" +o.rmempty = true +o.default = "4" +o:depends("mux", "1") +o:depends("type", "naiveproxy") + +-- [[ Cert ]]-- +o = s:option(Flag, "certificate", translate("Self-signed Certificate")) +o.rmempty = true +o.default = "0" +o:depends({type = "trojan", tls = true, insecure = false}) +o:depends({type = "v2ray", v2ray_protocol = "vmess", tls = true, insecure = false}) +o:depends({type = "v2ray", v2ray_protocol = "vless", tls = true, insecure = false}) +o:depends({type = "v2ray", v2ray_protocol = "vmess", xtls = true, insecure = false}) +o:depends({type = "v2ray", v2ray_protocol = "vless", xtls = true, insecure = false}) +o.description = translate("If you have a self-signed certificate,please check the box") + +o = s:option(DummyValue, "upload", translate("Upload")) +o.template = "shadowsocksr/certupload" +o:depends("certificate", 1) + +cert_dir = "/etc/ssl/private/" +local path + +luci.http.setfilehandler(function(meta, chunk, eof) + if not fd then + if (not meta) or (not meta.name) or (not meta.file) then + return + end + fd = nixio.open(cert_dir .. meta.file, "w") + if not fd then + path = translate("Create upload file error.") + return + end + end + if chunk and fd then + fd:write(chunk) + end + if eof and fd then + fd:close() + fd = nil + path = '/etc/ssl/private/' .. meta.file .. '' + end +end) +if luci.http.formvalue("upload") then + local f = luci.http.formvalue("ulfile") + if #f <= 0 then + path = translate("No specify upload file.") + end +end + +o = s:option(Value, "certpath", translate("Current Certificate Path")) +o:depends("certificate", 1) +o:value("/etc/ssl/private/ca.pem") +o.description = translate("Please confirm the current certificate path") +o.default = "/etc/ssl/private/ca.pem" + +o = s:option(Flag, "fast_open", translate("TCP Fast Open")) +o.rmempty = true +o.default = "0" +o:depends("type", "ssr") +o:depends("type", "ss") +o:depends("type", "trojan") + +o = s:option(Flag, "switch_enable", translate("Enable Auto Switch")) +o.rmempty = false +o.default = "1" + +o = s:option(Value, "local_port", translate("Local Port")) +o.datatype = "port" +o.default = 1234 +o.rmempty = false + +if is_finded("kcptun-client") then + kcp_enable = s:option(Flag, "kcp_enable", translate("KcpTun Enable")) + kcp_enable.rmempty = true + kcp_enable.default = "0" + kcp_enable:depends("type", "ssr") + kcp_enable:depends("type", "ss") + + o = s:option(Value, "kcp_port", translate("KcpTun Port")) + o.datatype = "port" + o.default = 4000 + o:depends("type", "ssr") + o:depends("type", "ss") + + o = s:option(Value, "kcp_password", translate("KcpTun Password")) + o.password = true + o:depends("type", "ssr") + o:depends("type", "ss") + + o = s:option(Value, "kcp_param", translate("KcpTun Param")) + o.default = "--nocomp" + o:depends("type", "ssr") + o:depends("type", "ss") +end + +return m diff --git a/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/client.lua b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/client.lua new file mode 100644 index 000000000..5ce044df9 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/client.lua @@ -0,0 +1,112 @@ +-- Copyright (C) 2017 yushi studio github.com/ywb94 +-- Copyright (C) 2018 lean github.com/coolsnowwolf +-- Licensed to the public under the GNU General Public License v3. +local m, s, sec, o, kcp_enable +local uci = luci.model.uci.cursor() +m = Map("shadowsocksr", translate("ShadowSocksR Plus+ Settings")) + +m:section(SimpleSection).template = "shadowsocksr/status" + +local server_table = {} +uci:foreach("shadowsocksr", "servers", function(s) + if s.alias then + server_table[s[".name"]] = "[%s]:%s" % {string.upper(s.v2ray_protocol or s.type), s.alias} + elseif s.server and s.server_port then + server_table[s[".name"]] = "[%s]:%s:%s" % {string.upper(s.v2ray_protocol or s.type), s.server, s.server_port} + end +end) + +local key_table = {} +for key, _ in pairs(server_table) do + table.insert(key_table, key) +end + +table.sort(key_table) + +-- [[ Global Setting ]]-- +s = m:section(TypedSection, "global") +s.anonymous = true + +o = s:option(ListValue, "global_server", translate("Main Server")) +o:value("nil", translate("Disable")) +for _, key in pairs(key_table) do + o:value(key, server_table[key]) +end +o.default = "nil" +o.rmempty = false + +o = s:option(ListValue, "udp_relay_server", translate("Game Mode UDP Server")) +o:value("", translate("Disable")) +o:value("same", translate("Same as Global Server")) +for _, key in pairs(key_table) do + o:value(key, server_table[key]) +end + +if uci:get_first("shadowsocksr", 'global', 'netflix_enable', '0') ~= '0' then +o = s:option(ListValue, "netflix_server", translate("Netflix Node")) +o:value("nil", translate("Disable")) +o:value("same", translate("Same as Global Server")) +for _, key in pairs(key_table) do + o:value(key, server_table[key]) +end +o.default = "nil" +o.rmempty = false + +o = s:option(Flag, "netflix_proxy", translate("External Proxy Mode")) +o.rmempty = false +o.description = translate("Forward Netflix Proxy through Main Proxy") +o.default = "0" +end + +o = s:option(ListValue, "threads", translate("Multi Threads Option")) +o:value("0", translate("Auto Threads")) +o:value("1", translate("1 Thread")) +o:value("2", translate("2 Threads")) +o:value("4", translate("4 Threads")) +o:value("8", translate("8 Threads")) +o:value("16", translate("16 Threads")) +o:value("32", translate("32 Threads")) +o:value("64", translate("64 Threads")) +o:value("128", translate("128 Threads")) +o.default = "0" +o.rmempty = false + +o = s:option(ListValue, "run_mode", translate("Running Mode")) +o:value("gfw", translate("GFW List Mode")) +o:value("router", translate("IP Route Mode")) +o:value("all", translate("Global Mode")) +o:value("oversea", translate("Oversea Mode")) +o.default = gfw + +o = s:option(ListValue, "dports", translate("Proxy Ports")) +o:value("1", translate("All Ports")) +o:value("2", translate("Only Common Ports")) +o.default = 1 + +o = s:option(ListValue, "pdnsd_enable", translate("Resolve Dns Mode")) +o:value("1", translate("Use Pdnsd tcp query and cache")) +o:value("2", translate("Use DNS2SOCKS query and cache")) +o:value("0", translate("Use Local DNS Service listen port 5335")) +o.default = 1 + +o = s:option(Value, "tunnel_forward", translate("Anti-pollution DNS Server")) +o:value("8.8.4.4:53", translate("Google Public DNS (8.8.4.4)")) +o:value("8.8.8.8:53", translate("Google Public DNS (8.8.8.8)")) +o:value("208.67.222.222:53", translate("OpenDNS (208.67.222.222)")) +o:value("208.67.220.220:53", translate("OpenDNS (208.67.220.220)")) +o:value("209.244.0.3:53", translate("Level 3 Public DNS (209.244.0.3)")) +o:value("209.244.0.4:53", translate("Level 3 Public DNS (209.244.0.4)")) +o:value("4.2.2.1:53", translate("Level 3 Public DNS (4.2.2.1)")) +o:value("4.2.2.2:53", translate("Level 3 Public DNS (4.2.2.2)")) +o:value("4.2.2.3:53", translate("Level 3 Public DNS (4.2.2.3)")) +o:value("4.2.2.4:53", translate("Level 3 Public DNS (4.2.2.4)")) +o:value("1.1.1.1:53", translate("Cloudflare DNS (1.1.1.1)")) +o:value("114.114.114.114:53", translate("Oversea Mode DNS-1 (114.114.114.114)")) +o:value("114.114.115.115:53", translate("Oversea Mode DNS-2 (114.114.115.115)")) +o:depends("pdnsd_enable", "1") +o:depends("pdnsd_enable", "2") +o.description = translate("Custom DNS Server format as IP:PORT (default: 8.8.4.4:53)") +o.datatype = "hostport" + +return m + diff --git a/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/control.lua b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/control.lua new file mode 100644 index 000000000..070fb5b9b --- /dev/null +++ b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/control.lua @@ -0,0 +1,143 @@ +require "luci.ip" +require "nixio.fs" +local m, s, o + +m = Map("shadowsocksr") + +s = m:section(TypedSection, "access_control") +s.anonymous = true + +-- Interface control +s:tab("Interface", translate("Interface control")) +o = s:taboption("Interface", DynamicList, "Interface", translate("Interface")) +o.template = "cbi/network_netlist" +o.widget = "checkbox" +o.nocreate = true +o.unspecified = true +o.description = translate("Listen only on the given interface or, if unspecified, on all") + +-- Part of WAN +s:tab("wan_ac", translate("WAN IP AC")) + +o = s:taboption("wan_ac", DynamicList, "wan_bp_ips", translate("WAN White List IP")) +o.datatype = "ip4addr" + +o = s:taboption("wan_ac", DynamicList, "wan_fw_ips", translate("WAN Force Proxy IP")) +o.datatype = "ip4addr" + +-- Part of LAN +s:tab("lan_ac", translate("LAN IP AC")) + +o = s:taboption("lan_ac", ListValue, "lan_ac_mode", translate("LAN Access Control")) +o:value("0", translate("Disable")) +o:value("w", translate("Allow listed only")) +o:value("b", translate("Allow all except listed")) +o.rmempty = false + +o = s:taboption("lan_ac", DynamicList, "lan_ac_ips", translate("LAN Host List")) +o.datatype = "ipaddr" +luci.ip.neighbors({family = 4}, function(entry) + if entry.reachable then + o:value(entry.dest:string()) + end +end) +o:depends("lan_ac_mode", "w") +o:depends("lan_ac_mode", "b") + +o = s:taboption("lan_ac", DynamicList, "lan_bp_ips", translate("LAN Bypassed Host List")) +o.datatype = "ipaddr" +luci.ip.neighbors({family = 4}, function(entry) + if entry.reachable then + o:value(entry.dest:string()) + end +end) + +o = s:taboption("lan_ac", DynamicList, "lan_fp_ips", translate("LAN Force Proxy Host List")) +o.datatype = "ipaddr" +luci.ip.neighbors({family = 4}, function(entry) + if entry.reachable then + o:value(entry.dest:string()) + end +end) + +o = s:taboption("lan_ac", DynamicList, "lan_gm_ips", translate("Game Mode Host List")) +o.datatype = "ipaddr" +luci.ip.neighbors({family = 4}, function(entry) + if entry.reachable then + o:value(entry.dest:string()) + end +end) + +-- Part of Self +-- s:tab("self_ac", translate("Router Self AC")) +-- o = s:taboption("self_ac",ListValue, "router_proxy", translate("Router Self Proxy")) +-- o:value("1", translatef("Normal Proxy")) +-- o:value("0", translatef("Bypassed Proxy")) +-- o:value("2", translatef("Forwarded Proxy")) +-- o.rmempty = false + +s:tab("esc", translate("Bypass Domain List")) +local escconf = "/etc/ssrplus/white.list" +o = s:taboption("esc", TextValue, "escconf") +o.rows = 13 +o.wrap = "off" +o.rmempty = true +o.cfgvalue = function(self, section) + return nixio.fs.readfile(escconf) or "" +end +o.write = function(self, section, value) + nixio.fs.writefile(escconf, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + nixio.fs.writefile(escconf, "") +end + +s:tab("block", translate("Black Domain List")) +local blockconf = "/etc/ssrplus/black.list" +o = s:taboption("block", TextValue, "blockconf") +o.rows = 13 +o.wrap = "off" +o.rmempty = true +o.cfgvalue = function(self, section) + return nixio.fs.readfile(blockconf) or " " +end +o.write = function(self, section, value) + nixio.fs.writefile(blockconf, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + nixio.fs.writefile(blockconf, "") +end + +s:tab("denydomain", translate("Deny Domain List")) +local denydomainconf = "/etc/ssrplus/deny.list" +o = s:taboption("denydomain", TextValue, "denydomainconf") +o.rows = 13 +o.wrap = "off" +o.rmempty = true +o.cfgvalue = function(self, section) + return nixio.fs.readfile(denydomainconf) or " " +end +o.write = function(self, section, value) + nixio.fs.writefile(denydomainconf, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + nixio.fs.writefile(denydomainconf, "") +end + +s:tab("netflix", translate("Netflix Domain List")) +local netflixconf = "/etc/ssrplus/netflix.list" +o = s:taboption("netflix", TextValue, "netflixconf") +o.rows = 13 +o.wrap = "off" +o.rmempty = true +o.cfgvalue = function(self, section) + return nixio.fs.readfile(netflixconf) or " " +end +o.write = function(self, section, value) + nixio.fs.writefile(netflixconf, value:gsub("\r\n", "\n")) +end +o.remove = function(self, section, value) + nixio.fs.writefile(netflixconf, "") +end + +return m diff --git a/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/log.lua b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/log.lua new file mode 100644 index 000000000..fdf9e59f0 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/log.lua @@ -0,0 +1,20 @@ +require "luci.util" +require "nixio.fs" +f = SimpleForm("logview") +f.reset = false +f.submit = false +t = f:field(TextValue, "conf") +t.rmempty = true +t.rows = 20 +function t.cfgvalue() + if nixio.fs.access("/var/log/ssrplus.log") then + local logs = luci.util.execi("cat /var/log/ssrplus.log") + local s = "" + for line in logs do + s = line .. "\n" .. s + end + return s + end +end +t.readonly = "readonly" +return f diff --git a/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/server-config.lua b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/server-config.lua new file mode 100644 index 000000000..fe3fc4b22 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/server-config.lua @@ -0,0 +1,150 @@ +-- Copyright (C) 2017 yushi studio +-- Licensed to the public under the GNU General Public License v3. +require "luci.http" +require "luci.dispatcher" +require "nixio.fs" + +local m, s, o +local sid = arg[1] + +local encrypt_methods = { + "rc4-md5", + "rc4-md5-6", + "rc4", + "table", + "aes-128-cfb", + "aes-192-cfb", + "aes-256-cfb", + "aes-128-ctr", + "aes-192-ctr", + "aes-256-ctr", + "bf-cfb", + "camellia-128-cfb", + "camellia-192-cfb", + "camellia-256-cfb", + "cast5-cfb", + "des-cfb", + "idea-cfb", + "rc2-cfb", + "seed-cfb", + "salsa20", + "chacha20", + "chacha20-ietf" +} + +local encrypt_methods_ss = { + -- aead + "aes-128-gcm", + "aes-192-gcm", + "aes-256-gcm", + "chacha20-ietf-poly1305", + "xchacha20-ietf-poly1305" + --[[ stream + "table", + "rc4", + "rc4-md5", + "aes-128-cfb", + "aes-192-cfb", + "aes-256-cfb", + "aes-128-ctr", + "aes-192-ctr", + "aes-256-ctr", + "bf-cfb", + "camellia-128-cfb", + "camellia-192-cfb", + "camellia-256-cfb", + "salsa20", + "chacha20", + "chacha20-ietf" ]] +} + +local protocol = {"origin"} + +obfs = {"plain", "http_simple", "http_post"} + +m = Map("shadowsocksr", translate("Edit ShadowSocksR Server")) + +m.redirect = luci.dispatcher.build_url("admin/services/shadowsocksr/server") +if m.uci:get("shadowsocksr", sid) ~= "server_config" then + luci.http.redirect(m.redirect) + return +end + +-- [[ Server Setting ]]-- +s = m:section(NamedSection, sid, "server_config") +s.anonymous = true +s.addremove = false + +o = s:option(Flag, "enable", translate("Enable")) +o.default = 1 +o.rmempty = false + +o = s:option(ListValue, "type", translate("Server Type")) +o:value("socks5", translate("Socks5")) +if nixio.fs.access("/usr/bin/ssserver") or nixio.fs.access("/usr/bin/ss-server") then + o:value("ss", translate("Shadowsocks")) +end +if nixio.fs.access("/usr/bin/ssr-server") then + o:value("ssr", translate("ShadowsocksR")) +end +o.default = "socks5" + +o = s:option(Value, "server_port", translate("Server Port")) +o.datatype = "port" +math.randomseed(tostring(os.time()):reverse():sub(1, 7)) +o.default = math.random(10240, 20480) +o.rmempty = false +o.description = translate("warning! Please do not reuse the port!") + +o = s:option(Value, "timeout", translate("Connection Timeout")) +o.datatype = "uinteger" +o.default = 60 +o.rmempty = false +o:depends("type", "ss") +o:depends("type", "ssr") + +o = s:option(Value, "username", translate("Username")) +o.rmempty = false +o:depends("type", "socks5") + +o = s:option(Value, "password", translate("Password")) +o.password = true +o.rmempty = false + +o = s:option(ListValue, "encrypt_method", translate("Encrypt Method")) +for _, v in ipairs(encrypt_methods) do + o:value(v) +end +o.rmempty = false +o:depends("type", "ssr") + +o = s:option(ListValue, "encrypt_method_ss", translate("Encrypt Method")) +for _, v in ipairs(encrypt_methods_ss) do + o:value(v) +end +o.rmempty = false +o:depends("type", "ss") + +o = s:option(ListValue, "protocol", translate("Protocol")) +for _, v in ipairs(protocol) do + o:value(v) +end +o.rmempty = false +o:depends("type", "ssr") + +o = s:option(ListValue, "obfs", translate("Obfs")) +for _, v in ipairs(obfs) do + o:value(v) +end +o.rmempty = false +o:depends("type", "ssr") + +o = s:option(Value, "obfs_param", translate("Obfs param(optional)")) +o:depends("type", "ssr") + +o = s:option(Flag, "fast_open", translate("TCP Fast Open")) +o.rmempty = false +o:depends("type", "ss") +o:depends("type", "ssr") + +return m diff --git a/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/server.lua b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/server.lua new file mode 100644 index 000000000..9af220c5e --- /dev/null +++ b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/server.lua @@ -0,0 +1,140 @@ +-- Copyright (C) 2017 yushi studio +-- Licensed to the public under the GNU General Public License v3. +require "luci.http" +require "luci.dispatcher" +local m, sec, o +local encrypt_methods = { + "table", + "rc4", + "rc4-md5", + "rc4-md5-6", + "aes-128-cfb", + "aes-192-cfb", + "aes-256-cfb", + "aes-128-ctr", + "aes-192-ctr", + "aes-256-ctr", + "bf-cfb", + "camellia-128-cfb", + "camellia-192-cfb", + "camellia-256-cfb", + "cast5-cfb", + "des-cfb", + "idea-cfb", + "rc2-cfb", + "seed-cfb", + "salsa20", + "chacha20", + "chacha20-ietf" +} + +local encrypt_methods_ss = { + -- aead + "aes-128-gcm", + "aes-192-gcm", + "aes-256-gcm", + "chacha20-ietf-poly1305", + "xchacha20-ietf-poly1305" + --[[ stream + "table", + "rc4", + "rc4-md5", + "aes-128-cfb", + "aes-192-cfb", + "aes-256-cfb", + "aes-128-ctr", + "aes-192-ctr", + "aes-256-ctr", + "bf-cfb", + "camellia-128-cfb", + "camellia-192-cfb", + "camellia-256-cfb", + "salsa20", + "chacha20", + "chacha20-ietf" ]] +} + +local protocol = { + "origin", + "verify_deflate", + "auth_sha1_v4", + "auth_aes128_sha1", + "auth_aes128_md5", + "auth_chain_a" +} + +obfs = { + "plain", + "http_simple", + "http_post", + "random_head", + "tls1.2_ticket_auth", + "tls1.2_ticket_fastauth" +} + +m = Map("shadowsocksr") +-- [[ Global Setting ]]-- +sec = m:section(TypedSection, "server_global", translate("Global Setting")) +sec.anonymous = true + +o = sec:option(Flag, "enable_server", translate("Enable Server")) +o.rmempty = false + +-- [[ Server Setting ]]-- +sec = m:section(TypedSection, "server_config", translate("Server Setting")) +sec.anonymous = true +sec.addremove = true +sec.template = "cbi/tblsection" +sec.extedit = luci.dispatcher.build_url("admin/services/shadowsocksr/server/%s") +function sec.create(...) + local sid = TypedSection.create(...) + if sid then + luci.http.redirect(sec.extedit % sid) + return + end +end + +o = sec:option(Flag, "enable", translate("Enable")) +function o.cfgvalue(...) + return Value.cfgvalue(...) or translate("0") +end +o.rmempty = false + +o = sec:option(DummyValue, "type", translate("Server Type")) +function o.cfgvalue(...) + return Value.cfgvalue(...) or "ss" +end + +o = sec:option(DummyValue, "server_port", translate("Server Port")) +function o.cfgvalue(...) + return Value.cfgvalue(...) or "-" +end + +o = sec:option(DummyValue, "username", translate("Username")) +function o.cfgvalue(...) + return Value.cfgvalue(...) or "-" +end + +o = sec:option(DummyValue, "encrypt_method", translate("Encrypt Method")) +function o.cfgvalue(...) + local v = Value.cfgvalue(...) + return v and v:upper() or "-" +end + +o = sec:option(DummyValue, "encrypt_method_ss", translate("Encrypt Method")) +function o.cfgvalue(...) + local v = Value.cfgvalue(...) + return v and v:upper() or "-" +end + +o = sec:option(DummyValue, "protocol", translate("Protocol")) +function o.cfgvalue(...) + return Value.cfgvalue(...) or "-" +end + +o = sec:option(DummyValue, "obfs", translate("Obfs")) +function o.cfgvalue(...) + return Value.cfgvalue(...) or "-" +end + +return m diff --git a/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/servers.lua b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/servers.lua new file mode 100644 index 000000000..e9734aea5 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/servers.lua @@ -0,0 +1,151 @@ +-- Licensed to the public under the GNU General Public License v3. +require "luci.http" +require "luci.dispatcher" +require "luci.model.uci" +local m, s, o +local uci = luci.model.uci.cursor() +local server_count = 0 +uci:foreach("shadowsocksr", "servers", function(s) + server_count = server_count + 1 +end) + +m = Map("shadowsocksr", translate("Servers subscription and manage")) + +-- Server Subscribe +s = m:section(TypedSection, "server_subscribe") +s.anonymous = true + +o = s:option(Flag, "auto_update", translate("Auto Update")) +o.rmempty = false +o.description = translate("Auto Update Server subscription, GFW list and CHN route") + +o = s:option(ListValue, "auto_update_time", translate("Update time (every day)")) +for t = 0, 23 do + o:value(t, t .. ":00") +end +o.default = 2 +o.rmempty = false + +o = s:option(DynamicList, "subscribe_url", translate("Subscribe URL")) +o.rmempty = true + +o = s:option(Value, "filter_words", translate("Subscribe Filter Words")) +o.rmempty = true +o.description = translate("Filter Words splited by /") + +o = s:option(Value, "save_words", translate("Subscribe Save Words")) +o.rmempty = true +o.description = translate("Save Words splited by /") + +o = s:option(Button, "update_Sub", translate("Update Subscribe List")) +o.inputstyle = "reload" +o.description = translate("Update subscribe url list first") +o.write = function() + uci:commit("shadowsocksr") + luci.http.redirect(luci.dispatcher.build_url("admin", "services", "shadowsocksr", "servers")) +end + +o = s:option(Flag, "switch", translate("Subscribe Default Auto-Switch")) +o.rmempty = false +o.description = translate("Subscribe new add server default Auto-Switch on") +o.default = "1" + +o = s:option(Flag, "proxy", translate("Through proxy update")) +o.rmempty = false +o.description = translate("Through proxy update list, Not Recommended ") + +o = s:option(Button, "subscribe", translate("Update All Subscribe Severs")) +o.rawhtml = true +o.template = "shadowsocksr/subscribe" + +o = s:option(Button, "delete", translate("Delete All Subscribe Severs")) +o.inputstyle = "reset" +o.description = string.format(translate("Server Count") .. ": %d", server_count) +o.write = function() + uci:delete_all("shadowsocksr", "servers", function(s) + if s.hashkey or s.isSubscribe then + return true + else + return false + end + end) + uci:save("shadowsocksr") + uci:commit("shadowsocksr") + luci.http.redirect(luci.dispatcher.build_url("admin", "services", "shadowsocksr", "delete")) + return +end + +-- [[ Servers Manage ]]-- +s = m:section(TypedSection, "servers") +s.anonymous = true +s.addremove = true +s.template = "cbi/tblsection" +s.sortable = true +s.extedit = luci.dispatcher.build_url("admin", "services", "shadowsocksr", "servers", "%s") +function s.create(...) + local sid = TypedSection.create(...) + if sid then + luci.http.redirect(s.extedit % sid) + return + end +end + +o = s:option(DummyValue, "type", translate("Type")) +function o.cfgvalue(self, section) + return m:get(section, "v2ray_protocol") or Value.cfgvalue(self, section) or translate("None") +end + +o = s:option(DummyValue, "alias", translate("Alias")) +function o.cfgvalue(...) + return Value.cfgvalue(...) or translate("None") +end + +o = s:option(DummyValue, "server_port", translate("Server Port")) +function o.cfgvalue(...) + return Value.cfgvalue(...) or "N/A" +end + +o = s:option(DummyValue, "server_port", translate("Socket Connected")) +o.template = "shadowsocksr/socket" +o.width = "10%" +o.render = function(self, section, scope) + self.transport = s:cfgvalue(section).transport + if self.transport == 'ws' then + self.ws_path = s:cfgvalue(section).ws_path + self.tls = s:cfgvalue(section).tls + end + DummyValue.render(self, section, scope) +end + +o = s:option(DummyValue, "server", translate("Ping Latency")) +o.template = "shadowsocksr/ping" +o.width = "10%" + +local global_server = uci:get_first('shadowsocksr', 'global', 'global_server') + +node = s:option(Button, "apply_node", translate("Apply")) +node.inputstyle = "apply" +node.render = function(self, section, scope) + if section == global_server then + self.title = translate("Reapply") + else + self.title = translate("Apply") + end + Button.render(self, section, scope) +end +node.write = function(self, section) + uci:set("shadowsocksr", '@global[0]', 'global_server', section) + uci:save("shadowsocksr") + uci:commit("shadowsocksr") + luci.http.redirect(luci.dispatcher.build_url("admin", "services", "shadowsocksr", "restart")) +end + +o = s:option(Flag, "switch_enable", translate("Auto Switch")) +o.rmempty = false +function o.cfgvalue(...) + return Value.cfgvalue(...) or 1 +end + +m:append(Template("shadowsocksr/server_list")) + +return m diff --git a/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/status.lua b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/status.lua new file mode 100644 index 000000000..64f9be4aa --- /dev/null +++ b/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/status.lua @@ -0,0 +1,195 @@ +-- Copyright (C) 2017 yushi studio +-- Licensed to the public under the GNU General Public License v3. +require "nixio.fs" +require "luci.sys" +require "luci.model.uci" +local m, s, o +local redir_run = 0 +local reudp_run = 0 +local sock5_run = 0 +local server_run = 0 +local kcptun_run = 0 +local tunnel_run = 0 +local gfw_count = 0 +local ad_count = 0 +local ip_count = 0 +local nfip_count = 0 +local Process_list = luci.sys.exec("busybox ps -w") +local uci = luci.model.uci.cursor() +-- html constants +font_blue = [[]] +style_blue = [[]] +font_off = [[]] +bold_on = [[]] +bold_off = [[]] +local kcptun_version = translate("Unknown") +local kcp_file = "/usr/bin/kcptun-client" +if not nixio.fs.access(kcp_file) then + kcptun_version = translate("Not exist") +else + if not nixio.fs.access(kcp_file, "rwx", "rx", "rx") then + nixio.fs.chmod(kcp_file, 755) + end + kcptun_version = "" ..luci.sys.exec(kcp_file .. " -v | awk '{printf $3}'") .. "" + if not kcptun_version or kcptun_version == "" then + kcptun_version = translate("Unknown") + end +end + +if nixio.fs.access("/etc/ssrplus/gfw_list.conf") then + gfw_count = tonumber(luci.sys.exec("cat /etc/ssrplus/gfw_list.conf | wc -l")) / 2 +end + +if nixio.fs.access("/etc/ssrplus/ad.conf") then + ad_count = tonumber(luci.sys.exec("cat /etc/ssrplus/ad.conf | wc -l")) +end + +if nixio.fs.access("/etc/ssrplus/china_ssr.txt") then + ip_count = tonumber(luci.sys.exec("cat /etc/ssrplus/china_ssr.txt | wc -l")) +end + +if nixio.fs.access("/etc/ssrplus/netflixip.list") then + nfip_count = tonumber(luci.sys.exec("cat /etc/ssrplus/netflixip.list | wc -l")) +end + +if Process_list:find("udp.only.ssr.reudp") then + reudp_run = 1 +end + +if Process_list:find("tcp.only.ssr.retcp") then + redir_run = 1 +end + +if Process_list:find("tcp.udp.ssr.local") then + sock5_run = 1 +end + +if Process_list:find("tcp.udp.ssr.retcp") then + redir_run = 1 + reudp_run = 1 +end + +if Process_list:find("local.ssr.retcp") then + redir_run = 1 + sock5_run = 1 +end + +if Process_list:find("local.udp.ssr.retcp") then + reudp_run = 1 + redir_run = 1 + sock5_run = 1 +end + +if Process_list:find("kcptun.client") then + kcptun_run = 1 +end + +if Process_list:find("ssr.server") then + server_run = 1 +end + +if Process_list:find("ssrplus/bin/pdnsd") or (Process_list:find("ssrplus.dns") and Process_list:find("dns2socks.127.0.0.1.*127.0.0.1.5335")) then + pdnsd_run = 1 +end + +m = SimpleForm("Version") +m.reset = false +m.submit = false + +s = m:field(DummyValue, "redir_run", translate("Global Client")) +s.rawhtml = true +if redir_run == 1 then + s.value = font_blue .. bold_on .. translate("Running") .. bold_off .. font_off +else + s.value = style_blue .. bold_on .. translate("Not Running") .. bold_off .. font_off +end + +s = m:field(DummyValue, "reudp_run", translate("Game Mode UDP Relay")) +s.rawhtml = true +if reudp_run == 1 then + s.value = font_blue .. bold_on .. translate("Running") .. bold_off .. font_off +else + s.value = style_blue .. bold_on .. translate("Not Running") .. bold_off .. font_off +end + +if uci:get_first("shadowsocksr", 'global', 'pdnsd_enable', '0') ~= '0' then + s = m:field(DummyValue, "pdnsd_run", translate("DNS Anti-pollution")) + s.rawhtml = true + if pdnsd_run == 1 then + s.value = font_blue .. bold_on .. translate("Running") .. bold_off .. font_off + else + s.value = style_blue .. bold_on .. translate("Not Running") .. bold_off .. font_off + end +end + +s = m:field(DummyValue, "sock5_run", translate("Global SOCKS5 Proxy Server")) +s.rawhtml = true +if sock5_run == 1 then + s.value = font_blue .. bold_on .. translate("Running") .. bold_off .. font_off +else + s.value = style_blue .. bold_on .. translate("Not Running") .. bold_off .. font_off +end + +s = m:field(DummyValue, "server_run", translate("Local Servers")) +s.rawhtml = true +if server_run == 1 then + s.value = font_blue .. bold_on .. translate("Running") .. bold_off .. font_off +else + s.value = style_blue .. bold_on .. translate("Not Running") .. bold_off .. font_off +end + +if nixio.fs.access("/usr/bin/kcptun-client") then + s = m:field(DummyValue, "kcp_version", translate("KcpTun Version")) + s.rawhtml = true + s.value = kcptun_version + s = m:field(DummyValue, "kcptun_run", translate("KcpTun")) + s.rawhtml = true + if kcptun_run == 1 then + s.value = font_blue .. bold_on .. translate("Running") .. bold_off .. font_off + else + s.value = style_blue .. bold_on .. translate("Not Running") .. bold_off .. font_off + end +end + +s = m:field(DummyValue, "google", translate("Google Connectivity")) +s.value = translate("No Check") +s.template = "shadowsocksr/check" + +s = m:field(DummyValue, "baidu", translate("Baidu Connectivity")) +s.value = translate("No Check") +s.template = "shadowsocksr/check" + +s = m:field(DummyValue, "gfw_data", translate("GFW List Data")) +s.rawhtml = true +s.template = "shadowsocksr/refresh" +s.value = gfw_count .. " " .. translate("Records") + +s = m:field(DummyValue, "ip_data", translate("China IP Data")) +s.rawhtml = true +s.template = "shadowsocksr/refresh" +s.value = ip_count .. " " .. translate("Records") + +if uci:get_first("shadowsocksr", 'global', 'netflix_enable', '0') ~= '0' then +s = m:field(DummyValue, "nfip_data", translate("Netflix IP Data")) +s.rawhtml = true +s.template = "shadowsocksr/refresh" +s.value = nfip_count .. " " .. translate("Records") +end + +if uci:get_first("shadowsocksr", 'global', 'adblock', '0') == '1' then + s = m:field(DummyValue, "ad_data", translate("Advertising Data")) + s.rawhtml = true + s.template = "shadowsocksr/refresh" + s.value = ad_count .. " " .. translate("Records") +end + +if uci:get_first("shadowsocksr", 'global', 'pdnsd_enable', '0') == '1' then + s = m:field(DummyValue, "cache", translate("Reset pdnsd cache")) + s.template = "shadowsocksr/cache" +end + +s = m:field(DummyValue, "check_port", translate("Check Server Port")) +s.template = "shadowsocksr/checkport" +s.value = translate("No Check") + +return m diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/cache.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/cache.htm new file mode 100644 index 000000000..8c162f183 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/cache.htm @@ -0,0 +1,29 @@ +<%+cbi/valueheader%> + + +<%=self.value%> +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/certupload.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/certupload.htm new file mode 100644 index 000000000..f34f04d7b --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/certupload.htm @@ -0,0 +1,4 @@ +<%+cbi/valueheader%> + + +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/check.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/check.htm new file mode 100644 index 000000000..5f6a673a6 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/check.htm @@ -0,0 +1,29 @@ +<%+cbi/valueheader%> + + +<%=self.value%> +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/checkport.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/checkport.htm new file mode 100644 index 000000000..56ee0ab2a --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/checkport.htm @@ -0,0 +1,25 @@ +<%+cbi/valueheader%> + + +<%=self.value%> +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/ping.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/ping.htm new file mode 100644 index 000000000..5b396f7ce --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/ping.htm @@ -0,0 +1,3 @@ +<%+cbi/valueheader%> +-- ms +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/refresh.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/refresh.htm new file mode 100644 index 000000000..da89fd537 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/refresh.htm @@ -0,0 +1,37 @@ +<%+cbi/valueheader%> + + +<%=self.value%> +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/reset.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/reset.htm new file mode 100644 index 000000000..1882ac568 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/reset.htm @@ -0,0 +1,25 @@ +<%+cbi/valueheader%> + + + +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/server_list.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/server_list.htm new file mode 100644 index 000000000..259cb7fff --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/server_list.htm @@ -0,0 +1,145 @@ +<%# + Copyright 2018-2019 Lienol + Licensed to the public under the Apache License 2.0. +-%> + diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/socket.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/socket.htm new file mode 100644 index 000000000..7b7b691f2 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/socket.htm @@ -0,0 +1,6 @@ +<%+cbi/valueheader%> +wait + + + +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/ssrurl.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/ssrurl.htm new file mode 100644 index 000000000..b9711180c --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/ssrurl.htm @@ -0,0 +1,366 @@ +<%+cbi/valueheader%> + + + +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/status.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/status.htm new file mode 100644 index 000000000..58bf67f25 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/status.htm @@ -0,0 +1,22 @@ + + +
+

+ <%:Collecting data...%> +

+
diff --git a/luci-app-ssr-plus/luasrc/view/shadowsocksr/subscribe.htm b/luci-app-ssr-plus/luasrc/view/shadowsocksr/subscribe.htm new file mode 100644 index 000000000..47bf6ab55 --- /dev/null +++ b/luci-app-ssr-plus/luasrc/view/shadowsocksr/subscribe.htm @@ -0,0 +1,18 @@ +<%+cbi/valueheader%> + + + +<%+cbi/valuefooter%> diff --git a/luci-app-ssr-plus/po/zh-cn/ssr-plus.po b/luci-app-ssr-plus/po/zh-cn/ssr-plus.po new file mode 100644 index 000000000..b4f696062 --- /dev/null +++ b/luci-app-ssr-plus/po/zh-cn/ssr-plus.po @@ -0,0 +1,758 @@ +msgid "" +msgstr "Content-Type: text/plain; charset=UTF-8\n" + +msgid "ShadowSocksR Client" +msgstr "ShadowSocksR 客户端" + +msgid "Enable" +msgstr "启用" + +msgid "Disable" +msgstr "停用" + +msgid "Log" +msgstr "日志" + +msgid "ShadowSocksR is running" +msgstr "ShadowSocksR 客户端运行中" + +msgid "ShadowSocksR is not running" +msgstr "ShadowSocksR 客户端未运行" + +msgid "Global Setting" +msgstr "全局设置" + +msgid "Global Server" +msgstr "全局服务器" + +msgid "ShadowSocksR SOCK5 Proxy is running" +msgstr "ShadowSocksR SOCK5代理运行中" + +msgid "UDP Relay Server" +msgstr "UDP中继服务器" + +msgid "Same as Global Server" +msgstr "与全局服务器相同" + +msgid "Servers Setting" +msgstr "服务器配置" + +msgid "Alias(optional)" +msgstr "别名(可选)" + +msgid "Onetime Authentication" +msgstr "一次验证" + +msgid "Server Address" +msgstr "服务器地址" + +msgid "Server Port" +msgstr "端口" + +msgid "Local Port" +msgstr "本地端口" + +msgid "Connection Timeout" +msgstr "连接超时" + +msgid "Password" +msgstr "密码" + +msgid "Encrypt Method" +msgstr "加密方式" + +msgid "VLESS Encryption" +msgstr "VLESS 加密" + +msgid "Flow" +msgstr "流控 (Flow)" + +msgid "Transport" +msgstr "传输协议" + +msgid "Protocol" +msgstr "传输协议" + +msgid "allowInsecure" +msgstr "允许不安全连接" + +msgid "Concurrency" +msgstr "最大并发连接数" + +msgid "If true, allowss insecure connection at TLS client, e.g., TLS server uses unverifiable certificates." +msgstr "是否允许不安全连接。当选择时,将不会检查远端主机所提供的 TLS 证书的有效性。" + +msgid "Protocol param(optional)" +msgstr "传输协议参数(可选)" + +msgid "Obfs" +msgstr "混淆插件" + +msgid "Obfs param(optional)" +msgstr "混淆参数(可选)" + +msgid "Enable Tunnel(DNS)" +msgstr "启用隧道(DNS)转发" + +msgid "Tunnel Port" +msgstr "隧道(DNS)本地端口" + +msgid "Forwarding Tunnel" +msgstr "隧道(DNS)转发地址" + +msgid "Access Control" +msgstr "访问控制" + +msgid "Interfaces - WAN" +msgstr "接口 - WAN" + +msgid "Bypassed IP List" +msgstr "被忽略IP列表" + +msgid "NULL - As Global Proxy" +msgstr "留空 - 作为全局代理" + +msgid "Bypassed IP" +msgstr "额外被忽略IP" + +msgid "Forwarded IP" +msgstr "强制走代理IP" + +msgid "Interfaces - LAN" +msgstr "接口 - LAN" + +msgid "LAN Access Control" +msgstr "内网客户端分流代理控制" + +msgid "Allow listed only" +msgstr "仅允许列表内主机" + +msgid "Allow all except listed" +msgstr "除列表外主机皆允许" + +msgid "LAN Host List" +msgstr "内网主机列表" + +msgid "SSR Client" +msgstr "客户端" + +msgid "SSR Server" +msgstr "服务端" + +msgid "ShadowSocksR Server" +msgstr "ShadowSocksR 服务端" + +msgid "ShadowSocksR Server is running" +msgstr "ShadowSocksR 服务端运行中" + +msgid "ShadowSocksR Server is not running" +msgstr "ShadowSocksR 服务端未运行" + +msgid "Enable Server" +msgstr "启动服务端" + +msgid "Server Setting" +msgstr "服务端配置" + +msgid "KcpTun Enable" +msgstr "KcpTun 启用" + +msgid "KcpTun Port" +msgstr "KcpTun 端口" + +msgid "KcpTun Param" +msgstr "KcpTun 参数" + +msgid "KcpTun Password" +msgstr "KcpTun 密码" + +msgid "Enable Process Monitor" +msgstr "启用进程监控" + +msgid "Edit ShadowSocksR Server" +msgstr "编辑服务器配置" + +msgid "Alias" +msgstr "别名" + +msgid "Server" +msgstr "服务器" + +msgid "TCP Fast Open" +msgstr "TCP快速打开" + +msgid "Status" +msgstr "状态" + +msgid "Unknown" +msgstr "未知" + +msgid "Running Status" +msgstr "运行状态" + +msgid "Global Client" +msgstr "TCP透明代理" + +msgid "Global SSR Server" +msgstr "SSR服务端" + +msgid "DNS Tunnel" +msgstr "DNS 隧道" + +msgid "IPK Version" +msgstr "IPK 版本号" + +msgid "KcpTun Version" +msgstr "KcpTun 版本号" + +msgid "Not exist" +msgstr "未安装可执行文件" + +msgid "IPK Installation Time" +msgstr "IPK 安装时间" + +msgid "Project" +msgstr "项目地址" + +msgid "Not Running" +msgstr "未运行" + +msgid "Running" +msgstr "运行中" + +msgid "Enable GFW mode" +msgstr "启用 GFW 模式" + +msgid "Running Mode" +msgstr "运行模式" + +msgid "IP Route Mode" +msgstr "绕过中国大陆IP模式" + +msgid "GFW List Mode" +msgstr "GFW列表模式" + +msgid "Global Mode" +msgstr "全局模式" + +msgid "Oversea Mode" +msgstr "海外用户回国模式" + +msgid "Router Proxy" +msgstr "路由器访问控制" + +msgid "Normal Proxy" +msgstr "正常代理" + +msgid "Bypassed Proxy" +msgstr "不走代理" + +msgid "Forwarded Proxy" +msgstr "强制走代理" + +msgid "UDP Relay" +msgstr "UDP中继" + +msgid "Google Connectivity" +msgstr "【谷歌】连通性检查" + +msgid "Baidu Connectivity" +msgstr "【百度】连通性检查" + +msgid "No Check" +msgstr "未检查" + +msgid "Check" +msgstr "检查" + +msgid "Connect OK" +msgstr "连接正常" + +msgid "Connect Error" +msgstr "连接错误" + +msgid "Check..." +msgstr "正在检查.." + +msgid "Proxy Check" +msgstr "代理检查" + +msgid "GFW List Data" +msgstr "【GFW列表】数据库" + +msgid "China IP Data" +msgstr "【国内IP段】数据库" + +msgid "Netflix IP Data" +msgstr "【Netflix IP段】数据库" + +msgid "Advertising Data" +msgstr "【广告屏蔽】数据库" + +msgid "Records" +msgstr "条记录" + +msgid "Refresh Data" +msgstr "更新数据库" + +msgid "Refresh..." +msgstr "正在更新,请稍候.." + +msgid "Refresh OK!" +msgstr "更新成功!" + +msgid "Refresh Error!" +msgstr "更新失败!" + +msgid "No new data!" +msgstr "你已经是最新数据,无需更新!" + +msgid "Total Records:" +msgstr "新的总纪录数:" + +msgid "Check Server Port" +msgstr "【服务器端口】检查" + +msgid "Check Connect" +msgstr "检查连通性" + +msgid "Check Server" +msgstr "检查服务器" + +msgid "Auto Switch" +msgstr "自动切换" + +msgid "Enable Auto Switch" +msgstr "启用自动切换" + +msgid "Switch check cycly(second)" +msgstr "自动切换检查周期(秒)" + +msgid "Check timout(second)" +msgstr "切换检查超时时间(秒)" + +msgid "Check Try Count" +msgstr "切换检查重试次数" + +msgid "Enable adblock" +msgstr "启用广告屏蔽" + +msgid "adblock_url" +msgstr "广告屏蔽更新URL" + +msgid "gfwlist Update url" +msgstr "GFWList更新URL" + +msgid "Chnroute Update url" +msgstr "国内IP段更新URL" + +msgid "nfip_url" +msgstr "Netflix IP段更新URL" + +msgid "Customize Netflix IP Url" +msgstr "自定义Netflix IP更新URL(默认项目地址:https://github.com/QiuSimons/Netflix_IP)" + +msgid "Enable Process Deamon" +msgstr "启用进程自动守护" + +msgid "DNS Server IP and Port" +msgstr "DNS服务器地址和端口" + +msgid "Resolve Dns Mode" +msgstr "DNS解析方式" + +msgid "Use SSR DNS Tunnel" +msgstr "使用SSR-DNS隧道" + +msgid "Use Pdnsd" +msgstr "使用Pdnsd" + +msgid "DNS Anti-pollution" +msgstr "DNS 防污染服务" + +msgid "Use Other DNS Tunnel(Need to install)" +msgstr "使用其他DNS转发(需要自己安装)" + +msgid "Import" +msgstr "导入配置信息" + +msgid "Export SSR" +msgstr "导出ssr配置信息" + +msgid "Import configuration information successfully." +msgstr "导入配置信息成功。" + +msgid "Invalid format." +msgstr "无效的格式。" + +msgid "User cancelled." +msgstr "用户已取消。" + +msgid "Paste sharing link here" +msgstr "在此处粘贴分享链接" + +msgid "Unable to copy SSR to clipboard." +msgstr "无法复制SSR网址到剪贴板。" + +msgid "Copy SSR to clipboard successfully." +msgstr "成功复制SSR网址到剪贴板。" + +msgid "Servers Manage" +msgstr "服务器管理" + +msgid "Auto Update" +msgstr "自动更新" + +msgid "Through proxy update" +msgstr "通过代理更新" + +msgid "GFW List" +msgstr "GFW列表" + +msgid "ShadowSocksR Plus+ Settings" +msgstr "ShadowSocksR Plus+ 设置" + +msgid "

Support SS/SSR/V2RAY/XRAY/TROJAN/NAIVEPROXY/SOCKS5/TUN etc.

" +msgstr "

支持 SS/SSR/V2RAY/XRAY/TROJAN/NAIVEPROXY/SOCKS5/TUN 等协议

" + +msgid "Main Server" +msgstr "主服务器" + +msgid "Anti-pollution DNS Server" +msgstr "访问国外域名DNS服务器" + +msgid "Custom DNS Server format as IP:PORT (default: 8.8.4.4:53)" +msgstr "格式为 IP:PORT (默认: 8.8.4.4:53)" + +msgid "Use Pdnsd tcp query and cache" +msgstr "使用PDNSD TCP查询并缓存" + +msgid "Use DNS2SOCKS query and cache" +msgstr "使用 DNS2SOCKS 查询并缓存" + +msgid "DNS Server IP:Port" +msgstr "DNS服务器 IP:Port" + +msgid "Update time (every day)" +msgstr "更新时间 (每天)" + +msgid "Auto Update Server subscription, GFW list and CHN route" +msgstr "自动更新服务器订阅、GFW列表和 CHN路由表" + +msgid "Subscribe URL" +msgstr "SS/SSR/V2/TROJAN订阅URL" + +msgid "Subscribe Filter Words" +msgstr "订阅节点关键字过滤" + +msgid "Subscribe Save Words" +msgstr "订阅节点关键字保留检查" + +msgid "Filter Words splited by /" +msgstr "命中关键字的节点将被丢弃。多个关键字用 / 分隔" + +msgid "Save Words splited by /" +msgstr "命中关键字的节点将被保留。多个关键字用 / 分隔。此项为空则不启用保留匹配" + +msgid "Update" +msgstr "更新" + +msgid "Server Count" +msgstr "服务器节点数量" + +msgid "Interface control" +msgstr "接口控制" + +msgid "WAN IP AC" +msgstr "WAN IP访问控制" + +msgid "WAN White List IP" +msgstr "不走代理的WAN IP" + +msgid "WAN Force Proxy IP" +msgstr "强制走代理的WAN IP" + +msgid "LAN Bypassed Host List" +msgstr "不走代理的局域网LAN IP" + +msgid "LAN Force Proxy Host List" +msgstr "全局代理的LAN IP" + +msgid "Router Self AC" +msgstr "路由器自身代理设置" + +msgid "Router Self Proxy" +msgstr "路由器自身代理方式" + +msgid "Normal Proxy" +msgstr "跟随全局设置" + +msgid "Bypassed Proxy" +msgstr "不走代理" + +msgid "Forwarded Proxy" +msgstr "全局代理" + +msgid "GFW Custom List" +msgstr "GFW 用户自定义列表" + +msgid "Please refer to the following writing" +msgstr "每行一个域名,无需写前面的 HTTP(S):// ,提交后即时生效" + +msgid "Servers subscription and manage" +msgstr "服务器节点订阅与管理" + +msgid "Through proxy update list, Not Recommended" +msgstr "通过路由器自身代理更新订阅" + +msgid "LAN IP AC" +msgstr "LAN IP访问控制" + +msgid "Game Mode UDP Server" +msgstr "游戏模式UDP中继服务器" + +msgid "Game Mode UDP Relay" +msgstr "游戏模式UDP中继" + +msgid "Server failsafe auto swith and custom update settings" +msgstr "服务器节点故障自动切换/广告屏蔽/国内IP段数据库更新设置" + +msgid "Support AdGuardHome and DNSMASQ format list" +msgstr "同时支持 AdGuard Home 和 DNSMASQ 格式的过滤列表" + +msgid "Delete All Subscribe Severs" +msgstr "删除所有订阅服务器节点" + +msgid "Severs Nodes" +msgstr "服务器节点" + +msgid "Use Local DNS Service listen port 5335" +msgstr "使用本机端口为5335的DNS服务" + +msgid "Server Node Type" +msgstr "服务器节点类型" + +msgid "Using incorrect encryption mothod may causes service fail to start" +msgstr "输入不正确的参数组合可能会导致服务无法启动" + +msgid "Game Mode Host List" +msgstr "增强游戏模式客户端LAN IP" + +msgid "Multi Threads Option" +msgstr "多线程并发转发" + +msgid "Auto Threads" +msgstr "自动(CPU线程数)" + +msgid "1 Thread" +msgstr "单线程" + +msgid "2 Threads" +msgstr "2 线程" + +msgid "4 Threads" +msgstr "4 线程" + +msgid "8 Threads" +msgstr "8 线程" + +msgid "16 Threads" +msgstr "16 线程" + +msgid "32 Threads" +msgstr "32 线程" + +msgid "64 Threads" +msgstr "64 线程" + +msgid "128 Threads" +msgstr "128 线程" + +msgid "Proxy Ports" +msgstr "需要代理的端口" + +msgid "All Ports" +msgstr "所有端口(默认)" + +msgid "Only Common Ports" +msgstr "仅常用端口(不走P2P流量到代理)" + +msgid "Socket Connected" +msgstr "连接测试" + +msgid "Ping Latency" +msgstr "Ping延迟" + +msgid "Bypass Domain List" +msgstr "不走代理的域名" + +msgid "Black Domain List" +msgstr "强制走代理的域名" + +msgid "Update Subscribe List" +msgstr "更新订阅URL列表" + +msgid "Update subscribe url list first" +msgstr "修改订阅URL和节点关键字后,请先点击更新" + +msgid "Update All Subscribe Severs" +msgstr "更新所有订阅服务器节点" + +msgid "Plugin" +msgstr "插件" + +msgid "Plugin Opts" +msgstr "插件参数" + +msgid "Self-signed Certificate" +msgstr "自签证书" + +msgid "If you have a self-signed certificate,please check the box" +msgstr "如果你使用自签证书,请选择" + +msgid "upload" +msgstr "上传" + +msgid "Upload" +msgstr "上传" + +msgid "No specify upload file." +msgstr "没有上传证书" + +msgid "Current Certificate Path" +msgstr "当前证书路径" + +msgid "Please confirm the current certificate path" +msgstr "请选择确认所传证书,证书不正确将无法运行" + +msgid "Subscribe Default Auto-Switch" +msgstr "订阅新节点自动切换设置" + +msgid "Subscribe new add server default Auto-Switch on" +msgstr "订阅加入的新节点默认开启自动切换" + +msgid "SOCKS5 Proxy Server Settings" +msgstr "SOCKS5 代理服务端设置" + +msgid "SOCKS5 Proxy Server" +msgstr "SOCKS5 代理服务端" + +msgid "Enable SOCKS5 Proxy Server" +msgstr "启用 SOCKS5 代理服务" + +msgid "Enable Authentication" +msgstr "启用用户名/密码认证" + +msgid "Enable SOCKS5 Proxy Server" +msgstr "启用 SOCKS5 代理服务" + +msgid "Enable WAN Access" +msgstr "允许从 WAN 访问" + +msgid "Redirect traffic to this network interface" +msgstr "分流到这个网络接口" + +msgid "Netflix Node" +msgstr "Netflix 分流服务器" + +msgid "Netflix Domain List" +msgstr "Netflix 分流域名列表" + +msgid "Netflix IP List" +msgstr "Netflix 分流IP列表" + +msgid "External Proxy Mode" +msgstr "分流服务器(前置)代理" + +msgid "Forward Netflix Proxy through Main Proxy" +msgstr "分流服务器流量通过主服务节点中转代理转发" + +msgid "Server Type" +msgstr "服务端类型" + +msgid "Local Servers" +msgstr "本机服务端" + +msgid "Global SOCKS5 Proxy Server" +msgstr "SOCKS5 代理服务端(全局)" + +msgid "warning! Please do not reuse the port!" +msgstr "警告!请不要重复使用端口!" + +msgid "Deny Domain List" +msgstr "禁止连接的域名" + +msgid "Obfuscate password (optional)" +msgstr "混淆密码(可选)" + +msgid "V2Ray/XRay protocol" +msgstr "V2Ray/XRay 协议" + +msgid "Camouflage Type" +msgstr "伪装类型" + +msgid "VideoCall (SRTP)" +msgstr "视频通话 (SRTP)" + +msgid "BitTorrent (uTP)" +msgstr "BT下载 (uTP)" + +msgid "WechatVideo" +msgstr "微信视频通话" + +msgid "DTLS 1.2" +msgstr "DTLS 1.2 数据包" + +msgid "WireGuard" +msgstr "WireGuard 数据包" + +msgid "MTU" +msgstr "最大传输单元" + +msgid "TTI" +msgstr "传输时间间隔" + +msgid "Uplink Capacity" +msgstr "上行链路容量" + +msgid "Downlink Capacity" +msgstr "下行链路容量" + +msgid "Read Buffer Size" +msgstr "读取缓冲区大小" + +msgid "Write Buffer Size" +msgstr "写入缓冲区大小" + +msgid "Congestion" +msgstr "拥塞控制" + +msgid "Network interface to use" +msgstr "使用的网络接口" + +msgid "Please fill in reset" +msgstr "请填写 reset" + +msgid "The content entered is incorrect!" +msgstr "输入的内容不正确!" + +msgid "Reset complete" +msgstr "重置完成" + +msgid "Reset Error" +msgstr "重置错误" + +msgid "Reset pdnsd cache" +msgstr "重置PDNSD缓存" + +msgid "Finger Print" +msgstr "指纹伪造" + +msgid "Reapply" +msgstr "重新应用" + +msgid "Apply" +msgstr "应用" + +msgid "Enable Netflix Mode" +msgstr "启用 Netflix 分流模式" diff --git a/luci-app-ssr-plus/po/zh_Hans b/luci-app-ssr-plus/po/zh_Hans new file mode 120000 index 000000000..41451e4a1 --- /dev/null +++ b/luci-app-ssr-plus/po/zh_Hans @@ -0,0 +1 @@ +zh-cn \ No newline at end of file diff --git a/luci-app-ssr-plus/root/etc/config/shadowsocksr b/luci-app-ssr-plus/root/etc/config/shadowsocksr new file mode 100644 index 000000000..e69de29bb diff --git a/luci-app-ssr-plus/root/etc/init.d/shadowsocksr b/luci-app-ssr-plus/root/etc/init.d/shadowsocksr new file mode 100755 index 000000000..3921e2630 --- /dev/null +++ b/luci-app-ssr-plus/root/etc/init.d/shadowsocksr @@ -0,0 +1,934 @@ +#!/bin/sh /etc/rc.common +# +# Copyright (C) 2017 openwrt-ssr +# Copyright (C) 2017 yushi studio +# Copyright (C) 2018 lean +# Copyright (C) 2020 Mattraks +# +# This is free software, licensed under the GNU General Public License v3. +# See /LICENSE for more information. +# + +START=95 +STOP=15 +SERVICE_DAEMONIZE=1 +NAME=shadowsocksr +LOCK_FILE=/var/lock/ssrplus.lock +LOG_FILE=/var/log/ssrplus.log +TMP_PATH=/var/etc/ssrplus +TMP_BIN_PATH=$TMP_PATH/bin +TMP_DNSMASQ_PATH=/tmp/dnsmasq.d/dnsmasq-ssrplus.d +tcp_config_file= +udp_config_file= +shunt_config_file= +local_config_file= +shunt_dns_config_file= +tmp_local_port= +ARG_UDP= +dns_port="5335" #dns port +tmp_dns_port="300" #dns2socks temporary port +tmp_udp_port="301" #udp temporary port +tmp_udp_local_port="302" #udp socks temporary port +tmp_shunt_port="303" #shunt temporary port +tmp_shunt_local_port="304" #shunt socks temporary port +tmp_shunt_dns_port="305" #shunt dns2socks temporary port +server_count=0 +redir_tcp=0 +redir_udp=0 +local_enable=0 +kcp_enable_flag=0 +pdnsd_enable_flag=0 +switch_server=$1 +CRON_FILE=/etc/crontabs/root +EXTRA_COMMANDS='reset' +EXTRA_HELP=" reset Reset to default settings" +#extra_command "reset" "Reset to default settings" +PS="/bin/busybox ps" + +uci_get_by_name() { + local ret=$(uci get $NAME.$1.$2 2>/dev/null) + echo ${ret:=$3} +} + +uci_get_by_type() { + local ret=$(uci get $NAME.@$1[0].$2 2>/dev/null) + echo ${ret:=$3} +} + +uci_set_by_name() { + uci set $NAME.$1.$2=$3 2>/dev/null + uci commit $NAME +} + +uci_set_by_type() { + uci set $NAME.@$1[0].$2=$3 2>/dev/null + uci commit $NAME +} + +uci_get_by_cfgid() { + local ret=$(uci show $NAME.@$1[0].$2 | awk -F '.' '{print $2}' 2>/dev/null) + echo ${ret:=$3} +} + +get_host_ip() { + local host=$(uci_get_by_name $1 server) + local ip=$host + if [ -z "$(echo $host | grep -E "([0-9]{1,3}[\.]){3}[0-9]{1,3}")" ]; then + if [ "$host" == "${host#*:[0-9a-fA-F]}" ]; then + ip=$(resolveip -4 -t 3 $host | awk 'NR==1{print}') + [ -z "$ip" ] && ip=$(uclient-fetch -q -O- http://119.29.29.29/d?dn=$host | awk -F ';' '{print $1}') + fi + fi + [ -z "$ip" ] || uci_set_by_name $1 ip $ip + echo ${ip:="$(uci_get_by_name $1 ip "ERROR")"} +} + +clean_log() { + local logsnum=$(cat $LOG_FILE 2>/dev/null | wc -l) + [ "$logsnum" -gt 1000 ] && { + echo "$(date "+%Y-%m-%d %H:%M:%S") 日志文件过长,清空处理!" >$LOG_FILE + } +} + +echolog() { + local d="$(date "+%Y-%m-%d %H:%M:%S")" + echo -e "$d: $*" >>$LOG_FILE +} + +add_cron() { + touch $CRON_FILE + sed -i '/ssrplus.log/d' $CRON_FILE + [ $(uci_get_by_type server_subscribe auto_update 0) -eq 1 ] && echo "0 $(uci_get_by_type server_subscribe auto_update_time) * * * /usr/share/shadowsocksr/ssrplusupdate.sh >$LOG_FILE" >>$CRON_FILE + crontab $CRON_FILE +} + +del_cron() { + touch $CRON_FILE + sed -i '/ssrplus.log/d' $CRON_FILE + crontab $CRON_FILE + clean_log +} + +set_lock() { + exec 1000>"$LOCK_FILE" + flock -xn 1000 +} + +unset_lock() { + flock -u 1000 + rm -rf "$LOCK_FILE" +} + +unlock() { + failcount=1 + while [ "$failcount" -le 10 ]; do + if [ -f "$LOCK_FILE" ]; then + let "failcount++" + sleep 1s + [ "$failcount" -ge 10 ] && unset_lock + else + break + fi + done +} + +_exit() { + local rc=$1 + unset_lock + exit ${rc} +} + +first_type() { + type -t -p "/bin/${1}" -p "${TMP_BIN_PATH}/${1}" -p "${1}" "$@" | head -n1 +} + +ln_start_bin() { + local file_func=${1} + local ln_name=${2} + shift 2 + if [ "${file_func%%/*}" != "${file_func}" ]; then + [ ! -L "${file_func}" ] && { + ln -s "${file_func}" "${TMP_BIN_PATH}/${ln_name}" >/dev/null 2>&1 + file_func="${TMP_BIN_PATH}/${ln_name}" + } + [ -x "${file_func}" ] || echolog "$(readlink ${file_func}) 没有执行权限,无法启动:${file_func} $*" + fi + #echo "${file_func} $*" >&2 + [ -x "${file_func}" ] || { + echolog "找不到 ${file_func},无法启动..." + echolog "-----------end------------" + _exit 2 + } + ${file_func:-echolog " - ${ln_name}"} "$@" >/dev/null 2>&1 & +} + +start_dns() { + local ssrplus_dns="$(uci_get_by_type global pdnsd_enable 0)" + local dnsstr="$(uci_get_by_type global tunnel_forward 8.8.4.4:53)" + local dnsserver=$(echo "$dnsstr" | awk -F ':' '{print $1}') + local dnsport=$(echo "$dnsstr" | awk -F ':' '{print $2}') + start_pdnsd() { + local usr_dns="$1" + local usr_port="$2" + if [ ! -f "$TMP_PATH/pdnsd/pdnsd.cache" ]; then + mkdir -p $TMP_PATH/pdnsd + touch $TMP_PATH/pdnsd/pdnsd.cache + chown -R nobody:nogroup $TMP_PATH/pdnsd + fi + cat <<-EOF >$TMP_PATH/pdnsd.conf + global{ + perm_cache=1024; + cache_dir="$TMP_PATH/pdnsd"; + pid_file="/var/run/pdnsd.pid"; + run_as="nobody"; + server_ip=127.0.0.1; + server_port=$dns_port; + status_ctl=on; + query_method=tcp_only; + min_ttl=1h; + max_ttl=1w; + timeout=10; + neg_domain_pol=on; + proc_limit=2; + procq_limit=8; + par_queries=1; + } + server{ + label="ssr-usrdns"; + ip=$usr_dns; + port=$usr_port; + timeout=6; + uptest=none; + interval=10m; + purge_cache=off; + } + EOF + ln_start_bin $(first_type pdnsd) pdnsd -c $TMP_PATH/pdnsd.conf + } + if [ "$ssrplus_dns" != "0" ]; then + case "$(uci_get_by_type global run_mode)" in + gfw) ipset add gfwlist $dnsserver 2>/dev/null ;; + oversea) ipset add oversea $dnsserver 2>/dev/null ;; + *) ipset add ss_spec_wan_ac $dnsserver nomatch 2>/dev/null ;; + esac + case "$ssrplus_dns" in + 1) + start_pdnsd $dnsserver $dnsport + pdnsd_enable_flag=1 + ;; + 2) + ln_start_bin $(first_type microsocks) microsocks -i 127.0.0.1 -p $tmp_dns_port ssrplus-dns + ln_start_bin $(first_type dns2socks) dns2socks 127.0.0.1:$tmp_dns_port $dnsserver:$dnsport 127.0.0.1:$dns_port -q + pdnsd_enable_flag=2 + ;; + esac + fi +} + +gen_service_file() { + if [ $(uci_get_by_name $2 fast_open) == "1" ]; then + local fastopen="true" + else + local fastopen="false" + fi + if [ $1 == "ssr" ]; then + cat <<-EOF >$3 + { + "server": "0.0.0.0", + "server_ipv6": "::", + "server_port": $(uci_get_by_name $2 server_port), + "mode": "tcp_and_udp", + "password": "$(uci_get_by_name $2 password)", + "timeout": $(uci_get_by_name $2 timeout 60), + "method": "$(uci_get_by_name $2 encrypt_method)", + "protocol": "$(uci_get_by_name $2 protocol)", + "protocol_param": "$(uci_get_by_name $2 protocol_param)", + "obfs": "$(uci_get_by_name $2 obfs)", + "obfs_param": "$(uci_get_by_name $2 obfs_param)", + "fast_open": $fastopen + } + EOF + else + cat <<-EOF >$3 + { + "server": "0.0.0.0", + "server_ipv6": "::", + "server_port": $(uci_get_by_name $2 server_port), + "mode": "tcp_and_udp", + "password": "$(uci_get_by_name $2 password)", + "timeout": $(uci_get_by_name $2 timeout 60), + "method": "$(uci_get_by_name $2 encrypt_method_ss)", + "protocol": "socks", + "fast_open": $fastopen + } + EOF + fi +} + +get_name() { + case "$1" in + ss) echo "Shadowsocks" ;; + ssr) echo "ShadowsocksR" ;; + esac +} + +gen_config_file() { #server1 type2 code3 local_port4 socks_port5 threads5 + case "$3" in + 1) + config_file=$tcp_config_file + ;; + 2) + config_file=$udp_config_file + ;; + 3) + if [ -n "$tmp_local_port" ]; then + local tmp_port=$tmp_local_port + else + local tmp_port=$tmp_shunt_local_port + fi + config_file=$shunt_config_file + ;; + 4) + local ss_protocol="socks" + config_file=$local_config_file + ;; + esac + case "$2" in + ss | ssr) + lua /usr/share/shadowsocksr/gen_config.lua $1 $mode $4 ${ss_protocol:-redir} >$config_file + if [ "$3" == "3" ]; then + lua /usr/share/shadowsocksr/gen_config.lua $1 $mode $tmp_port socks >$shunt_dns_config_file + fi + ;; + v2ray) + lua /usr/share/shadowsocksr/gen_config.lua $1 $mode $4 $5 >$config_file + ;; + trojan) + case "$3" in + 1) + lua /usr/share/shadowsocksr/gen_config.lua $1 nat $4 >$config_file + ;; + 2) + lua /usr/share/shadowsocksr/gen_config.lua $1 client $4 >$config_file + ;; + 3) + lua /usr/share/shadowsocksr/gen_config.lua $1 nat $4 >$config_file + lua /usr/share/shadowsocksr/gen_config.lua $1 client $tmp_port >$shunt_dns_config_file + ;; + 4) + lua /usr/share/shadowsocksr/gen_config.lua $1 client $4 >$config_file + ;; + esac + ;; + naiveproxy) + case "$3" in + 1) + lua /usr/share/shadowsocksr/gen_config.lua $1 redir $4 >$config_file + ;; + 3) + lua /usr/share/shadowsocksr/gen_config.lua $1 redir $4 >$config_file + lua /usr/share/shadowsocksr/gen_config.lua $1 socks $tmp_port >$shunt_dns_config_file + ;; + 4) + lua /usr/share/shadowsocksr/gen_config.lua $1 socks $4 >$config_file + ;; + esac + ;; + socks5) + /usr/share/shadowsocksr/genred2config.sh $config_file $2 $mode $4 \ + "$(uci_get_by_name $1 server)" \ + "$(uci_get_by_name $1 server_port)" \ + "$(uci_get_by_name $1 auth_enable 0)" \ + "$(uci_get_by_name $1 username)" \ + "$(uci_get_by_name $1 password)" + ;; + tun) + /usr/share/shadowsocksr/genred2config.sh $config_file $2 $(uci_get_by_name $1 iface "br-lan") $4 + ;; + esac + sed -i 's/\\//g' $TMP_PATH/*-ssr-*.json +} + +start_udp() { + local type=$(uci_get_by_name $UDP_RELAY_SERVER type) + redir_udp=1 + case "$type" in + ss | ssr) + gen_config_file $UDP_RELAY_SERVER $type 2 $tmp_udp_port + ss_program="$(first_type ${type}local ${type}-redir)" + ln_start_bin $ss_program ${type}-redir -c $udp_config_file + echolog "UDP TPROXY Relay:$(get_name $type) Started!" + ;; + v2ray) + gen_config_file $UDP_RELAY_SERVER $type 2 $tmp_udp_port + ln_start_bin $(first_type xray v2ray) v2ray -config $udp_config_file + echolog "UDP TPROXY Relay:$($(first_type "xray" "v2ray") -version | head -1) Started!" + ;; + trojan) #client + gen_config_file $UDP_RELAY_SERVER $type 2 $tmp_udp_local_port + ln_start_bin $(first_type trojan) $type --config $udp_config_file + ln_start_bin $(first_type ipt2socks) ipt2socks -U -b 0.0.0.0 -4 -s 127.0.0.1 -p $tmp_udp_local_port -l $tmp_udp_port + echolog "UDP TPROXY Relay:$($(first_type trojan) --version 2>&1 | head -1) Started!" + ;; + naiveproxy) + echolog "NaïveProxy UDP TPROXY Relay not supported!" + redir_udp=0 + ARG_UDP="" + ;; + socks5) + # if [ "$(uci_get_by_name $UDP_RELAY_SERVER auth_enable 0)" == "1" ]; then + # local auth="-a $(uci_get_by_name $UDP_RELAY_SERVER username) -k $(uci_get_by_name $UDP_RELAY_SERVER password)" + # fi + # ln_start_bin $(first_type ipt2socks) ipt2socks $udp_config_file -U -4 -s $(uci_get_by_name $UDP_RELAY_SERVER server) -p $(uci_get_by_name $UDP_RELAY_SERVER server_port) -l $tmp_udp_port $auth + gen_config_file $UDP_RELAY_SERVER $type 2 $tmp_udp_port + ln_start_bin $(first_type redsocks2) redsocks2 -c $udp_config_file + echolog "UDP TPROXY Relay:Socks5 REDIRECT/TPROXY Started!" + ;; + tun) + echolog "Network Tunnel UDP TPROXY Relay not supported!" + redir_udp=0 + ARG_UDP="" + ;; + esac +} + +start_shunt() { + local type=$(uci_get_by_name $SHUNT_SERVER type) + case "$type" in + ss | ssr) + gen_config_file $SHUNT_SERVER $type 3 $tmp_shunt_port + ss_program="$(first_type ${type}local ${type}-redir)" + ln_start_bin $ss_program ${type}-redir -c $shunt_config_file + if [ -n "$tmp_local_port" ]; then + local tmp_port=$tmp_local_port + else + local tmp_port=$tmp_shunt_local_port + ln_start_bin $(first_type ${type}local ${type}-local) ${type}-local -c $shunt_dns_config_file + fi + ln_start_bin $(first_type dns2socks) dns2socks 127.0.0.1:$tmp_port 8.8.8.8:53 127.0.0.1:$tmp_shunt_dns_port -q + echolog "shunt:$(get_name $type) Started!" + ;; + v2ray) + local tmp_port=${tmp_local_port:-$tmp_shunt_local_port} + gen_config_file $SHUNT_SERVER $type 3 $tmp_shunt_port $tmp_port + ln_start_bin $(first_type xray v2ray) v2ray -config $shunt_config_file + ln_start_bin $(first_type dns2socks) dns2socks 127.0.0.1:$tmp_port 8.8.8.8:53 127.0.0.1:$tmp_shunt_dns_port -q + echolog "shunt:$($(first_type xray v2ray) -version | head -1) Started!" + ;; + trojan) + gen_config_file $SHUNT_SERVER $type 3 $tmp_shunt_port + ln_start_bin $(first_type trojan) $type --config $shunt_config_file + if [ -n "$tmp_local_port" ]; then + local tmp_port=$tmp_local_port + else + local tmp_port=$tmp_shunt_local_port + ln_start_bin $(first_type trojan) $type --config $shunt_dns_config_file + fi + ln_start_bin $(first_type dns2socks) dns2socks 127.0.0.1:$tmp_port 8.8.8.8:53 127.0.0.1:$tmp_shunt_dns_port -q + echolog "shunt:$($(first_type trojan) --version 2>&1 | head -1) Started!" + ;; + naiveproxy) + gen_config_file $SHUNT_SERVER $type 3 $tmp_shunt_port + ln_start_bin $(first_type naive) naive --config $shunt_config_file + if [ -n "$tmp_local_port" ]; then + local tmp_port=$tmp_local_port + else + local tmp_port=$tmp_shunt_local_port + ln_start_bin $(first_type naive) naive --config $shunt_dns_config_file + fi + ln_start_bin $(first_type dns2socks) dns2socks 127.0.0.1:$tmp_port 8.8.8.8:53 127.0.0.1:$tmp_shunt_dns_port -q + echolog "shunt:$($(first_type "naive") --version 2>&1 | head -1) Started!" + redir_udp=0 + ;; + # socks5) + # if [ "$(uci_get_by_name $SHUNT_SERVER auth_enable 0)" == "1" ]; then + # local auth="-a $(uci_get_by_name $SHUNT_SERVER username) -k $(uci_get_by_name $SHUNT_SERVER password)" + # fi + # ln_start_bin $(first_type ipt2socks) ipt2socks $shunt_config_file -R -4 -s $(uci_get_by_name $SHUNT_SERVER server) -p $(uci_get_by_name $SHUNT_SERVER server_port) -l $tmp_shunt_port $auth + # #gen_config_file $SHUNT_SERVER $type 3 $tmp_shunt_port + # #ln_start_bin $(first_type redsocks2) redsocks2 -c $shunt_config_file + # if [ -n "$tmp_local_port" ]; then + # local tmp_port=$tmp_local_port + # else + # local tmp_port=$tmp_shunt_local_port + # ln_start_bin $(first_type microsocks) microsocks -i 127.0.0.1 -p $tmp_port shunt-dns-ssr-plus + # fi + # ln_start_bin $(first_type dns2socks) dns2socks 127.0.0.1:$tmp_port 8.8.8.8:53 127.0.0.1:$tmp_shunt_dns_port -q + # echolog "shunt:$type REDIRECT/TPROXY Started!" + # ;; + *) + gen_config_file $SHUNT_SERVER $type 3 $tmp_shunt_port + ln_start_bin $(first_type redsocks2) redsocks2 -c $shunt_config_file + if [ -n "$tmp_local_port" ]; then + local tmp_port=$tmp_local_port + else + local tmp_port=$tmp_shunt_local_port + ln_start_bin $(first_type microsocks) microsocks -i 127.0.0.1 -p $tmp_port shunt-dns-ssr-plus + fi + ln_start_bin $(first_type dns2socks) dns2socks 127.0.0.1:$tmp_port 8.8.8.8:53 127.0.0.1:$tmp_shunt_dns_port -q + echolog "shunt:$type REDIRECT/TPROXY Started!" + ;; + esac + return 0 +} + +start_local() { + [ "$LOCAL_SERVER" = "nil" ] && return 1 + local local_port=$(uci_get_by_type socks5_proxy local_port) + [ "$LOCAL_SERVER" == "$SHUNT_SERVER" ] && tmp_local_port=$local_port + local type=$(uci_get_by_name $LOCAL_SERVER type) + case "$type" in + ss | ssr) + gen_config_file $LOCAL_SERVER $type 4 $local_port + ss_program="$(first_type ${type}local ${type}-local)" + ln_start_bin $ss_program ${type}-local -c $local_config_file + echolog "Global_Socks5:$(get_name $type) Started!" + ;; + v2ray) + if [ "$_local" == "2" ]; then + gen_config_file $LOCAL_SERVER $type 4 0 $local_port + ln_start_bin $(first_type xray v2ray) v2ray -config $local_config_file + fi + echolog "Global_Socks5:$($(first_type "xray" "v2ray") -version | head -1) Started!" + ;; + trojan) #client + gen_config_file $LOCAL_SERVER $type 4 $local_port + ln_start_bin $(first_type trojan) $type --config $local_config_file + echolog "Global_Socks5:$($(first_type trojan) --version 2>&1 | head -1) Started!" + ;; + naiveproxy) + gen_config_file $LOCAL_SERVER $type 4 $local_port + ln_start_bin $(first_type naive) naive --config $local_config_file + echolog "Global_Socks5:$($(first_type $type) --version | head -1) Started!" + ;; + *) + [ -e /proc/sys/net/ipv6 ] && local listenip='-i ::' + ln_start_bin $(first_type microsocks) microsocks $listenip -p $local_port tcp-udp-ssr-local + echolog "Global_Socks5:$type Started!" + ;; + esac + local_enable=1 + return 0 +} + +Start_Run() { + if [ "$(uci_get_by_type global threads 0)" == "0" ]; then + local threads=$(cat /proc/cpuinfo | grep 'processor' | wc -l) + else + local threads=$(uci_get_by_type global threads) + fi + if [ "$(uci_get_by_name $GLOBAL_SERVER kcp_enable 0)" == "1" ]; then + [ ! -f "/usr/bin/kcptun-client" ] && return 1 + local kcp_str=$(/usr/bin/kcptun-client -v | grep kcptun | wc -l) + [ "0" == "$kcp_str" ] && return 1 + local kcp_server=$(uci_get_by_name $GLOBAL_SERVER server) + local kcp_port=$(uci_get_by_name $GLOBAL_SERVER kcp_port) + local server_port=$(uci_get_by_name $GLOBAL_SERVER server_port) + local password=$(uci_get_by_name $GLOBAL_SERVER kcp_password) + local kcp_param=$(uci_get_by_name $GLOBAL_SERVER kcp_param) + [ "$password" != "" ] && password="--key "$password + service_start /usr/bin/kcptun-client -r $kcp_server:$kcp_port -l :$server_port $password $kcp_param + kcp_enable_flag=1 + ARG_UDP="" + fi + if [ "$_local" == "1" ]; then + local socks_port=$(uci_get_by_type socks5_proxy local_port) + tcp_config_file=$TMP_PATH/local-ssr-retcp.json + [ "$mode" == "tcp,udp" ] && tcp_config_file=$TMP_PATH/local-udp-ssr-retcp.json + fi + local tcp_port=$(uci_get_by_name $GLOBAL_SERVER local_port) + local type=$(uci_get_by_name $GLOBAL_SERVER type) + case "$type" in + ss | ssr) + gen_config_file $GLOBAL_SERVER $type 1 $tcp_port + ss_program="$(first_type ${type}local ${type}-redir)" + for i in $(seq 1 $threads); do + ln_start_bin "$ss_program" ${type}-redir -c $tcp_config_file + done + echolog "Main node:$(get_name $type) $threads Threads Started!" + ;; + v2ray) + gen_config_file $GLOBAL_SERVER $type 1 $tcp_port $socks_port + ln_start_bin $(first_type xray v2ray) v2ray -config $tcp_config_file + echolog "Main node:$($(first_type xray v2ray) -version | head -1) Started!" + ;; + trojan) + gen_config_file $GLOBAL_SERVER $type 1 $tcp_port + for i in $(seq 1 $threads); do + ln_start_bin $(first_type $type) $type --config $tcp_config_file + done + echolog "Main node:$($(first_type $type) --version 2>&1 | head -1) , $threads Threads Started!" + ;; + naiveproxy) + gen_config_file $GLOBAL_SERVER $type 1 $tcp_port + ln_start_bin $(first_type naive) naive $tcp_config_file + echolog "Main node:$($(first_type naive) --version 2>&1 | head -1) , $threads Threads Started!" + ;; + socks5) + if [ "$(uci_get_by_name $GLOBAL_SERVER auth_enable 0)" == "1" ]; then + local auth="-a $(uci_get_by_name $GLOBAL_SERVER username) -k $(uci_get_by_name $GLOBAL_SERVER password)" + fi + ln_start_bin $(first_type ipt2socks) ipt2socks $tcp_config_file -R -4 -j $threads -s $(uci_get_by_name $GLOBAL_SERVER server) -p $(uci_get_by_name $GLOBAL_SERVER server_port) -l $tcp_port $auth + #gen_config_file $GLOBAL_SERVER $type 1 $tcp_port + #for i in $(seq 1 $threads); do + # ln_start_bin $(first_type redsocks2) redsocks2 -c $tcp_config_file + #done + echolog "Main node:Socks5 REDIRECT/TPROXY $threads Threads Started!" + ;; + tun) + gen_config_file $GLOBAL_SERVER $type 1 $tcp_port + for i in $(seq 1 $threads); do + ln_start_bin $(first_type redsocks2) redsocks2 -c $tcp_config_file + done + echolog "Main node:Network Tunnel REDIRECT $threads Threads Started!" + ;; + esac + redir_tcp=1 + return 0 +} + +load_config() { + if [ -z "$switch_server" ]; then + GLOBAL_SERVER=$(uci_get_by_type global global_server nil) + else + GLOBAL_SERVER=$switch_server + fi + LOCAL_SERVER=$(uci_get_by_type socks5_proxy server nil) + if [ "$GLOBAL_SERVER" == "nil" ]; then + mode="tcp,udp" + _local="2" + local_config_file=$TMP_PATH/tcp-udp-ssr-local.json + start_local + return 1 + fi + UDP_RELAY_SERVER=$(uci_get_by_type global udp_relay_server nil) + SHUNT_SERVER=$(uci_get_by_type global netflix_server nil) + tcp_config_file=$TMP_PATH/tcp-only-ssr-retcp.json + case "$UDP_RELAY_SERVER" in + nil) + mode="tcp" + ;; + $GLOBAL_SERVER | same) + mode="tcp,udp" + tcp_config_file=$TMP_PATH/tcp-udp-ssr-retcp.json + ARG_UDP="-u" + UDP_RELAY_SERVER=$GLOBAL_SERVER + ;; + *) + mode="udp" + udp_config_file=$TMP_PATH/udp-only-ssr-reudp.json + ARG_UDP="-U" + start_udp + mode="tcp" + ;; + esac + case "$LOCAL_SERVER" in + nil) + _local="0" + ;; + $GLOBAL_SERVER | same) + _local="1" + LOCAL_SERVER=$GLOBAL_SERVER + local_config_file=$TMP_PATH/tcp-udp-ssr-local.json + start_local + local_enable=0 + ;; + $SHUNT_SERVER) + _local="3" + local_config_file=$TMP_PATH/tcp-udp-ssr-local.json + start_local + ;; + *) + _local="2" + local_config_file=$TMP_PATH/tcp-udp-ssr-local.json + start_local + ;; + esac + case "$SHUNT_SERVER" in + nil) + shunt="0" + ;; + $GLOBAL_SERVER | same) + shunt="1" + SHUNT_SERVER=$GLOBAL_SERVER + ;; + $LOCAL_SERVER) + shunt="$tmp_shunt_port" + shunt_config_file=$TMP_PATH/tcp-udp-ssr-local.json + shunt_dns_config_file=$TMP_PATH/shunt-dns-ssr-plus.json + start_shunt + ;; + *) + shunt="$tmp_shunt_port" + shunt_config_file=$TMP_PATH/shunt-ssr-retcp.json + shunt_dns_config_file=$TMP_PATH/shunt-dns-ssr-plus.json + start_shunt + ;; + esac + return 0 +} + +check_server() { + ENABLE_SERVER=$(uci_get_by_type global global_server nil) + if [ "$ENABLE_SERVER" == "nil" ]; then + return 1 + else + local STYPE=$(uci_get_by_name $ENABLE_SERVER type nil) + if [ "$STYPE" == "nil" ]; then + local CFGID=$(uci_get_by_cfgid servers type nil) + if [ "$CFGID" == "nil" ]; then + uci_set_by_type global global_server 'nil' + else + uci_set_by_type global global_server $CFGID + fi + /etc/init.d/shadowsocksr restart + fi + fi +} + +start_server() { + [ "$(uci_get_by_type server_global enable_server 0)" == "0" ] && return 0 + server_service() { + [ "$(uci_get_by_name $1 enable 0)" == "0" ] && return 1 + let server_count=server_count+1 + if [ "$server_count" == "1" ]; then + if ! (iptables-save -t filter | grep SSR-SERVER-RULE >/dev/null); then + iptables -N SSR-SERVER-RULE && iptables -t filter -I INPUT -j SSR-SERVER-RULE + fi + fi + local type=$(uci_get_by_name $1 type) + case "$type" in + ss | ssr) + gen_service_file ${type} $1 $TMP_PATH/ssr-server$server_count.json + ln_start_bin $(first_type ${type}server ${type}-server) ${type}-server -c $TMP_PATH/ssr-server$server_count.json + echolog "Server: $(get_name ${type}) Server$server_count Started!" + ;; + socks5) + [ -e /proc/sys/net/ipv6 ] && local listenip='-i ::' + ln_start_bin $(first_type microsocks) microsocks $listenip -p $(uci_get_by_name $1 server_port) -1 -u $(uci_get_by_name $1 username) -P $(uci_get_by_name $1 password) ssr-server$server_count + echolog "Server:Socks5 Server$server_count Started!" + ;; + esac + iptables -t filter -A SSR-SERVER-RULE -p tcp --dport $(uci_get_by_name $1 server_port) -j ACCEPT + iptables -t filter -A SSR-SERVER-RULE -p udp --dport $(uci_get_by_name $1 server_port) -j ACCEPT + return 0 + } + gen_serv_include() { + local FWI=$(uci get firewall.shadowsocksr.path 2>/dev/null) + [ -n "$FWI" ] || return 0 + if [ ! -f $FWI ]; then + echo '#!/bin/sh' >$FWI + fi + extract_rules() { + echo "*filter" + iptables-save -t filter | grep SSR-SERVER-RULE | sed -e "s/^-A INPUT/-I INPUT/" + echo 'COMMIT' + } + cat <<-EOF >>$FWI + iptables-save -c | grep -v "SSR-SERVER" | iptables-restore -c + iptables-restore -n <<-EOT + $(extract_rules) + EOT + EOF + } + + config_load $NAME + config_foreach server_service server_config + gen_serv_include + return 0 +} + +start_switch() { + if [ "$(uci_get_by_type global enable_switch 0)" == "1" ]; then + if [ -z "$switch_server" ]; then + local switch_time=$(uci_get_by_type global switch_time)s + local switch_timeout=$(uci_get_by_type global switch_timeout) + service_start /usr/bin/ssr-switch start $switch_time $switch_timeout + fi + fi +} + +start_monitor() { + if [ $(uci_get_by_type global monitor_enable 1) == "1" ]; then + let total_count=server_count+redir_tcp+redir_udp+kcp_enable_flag+local_enable+pdnsd_enable_flag + if [ $total_count -gt 0 ]; then + service_start /usr/bin/ssr-monitor $server_count $redir_tcp $redir_udp $kcp_enable_flag $local_enable $pdnsd_enable_flag + fi + fi +} + +start_rules() { + local server=$(get_host_ip $GLOBAL_SERVER) + local local_port=$(uci_get_by_name $GLOBAL_SERVER local_port) + local lan_ac_ips=$(uci_get_by_type access_control lan_ac_ips) + local lan_ac_mode=$(uci_get_by_type access_control lan_ac_mode) + if [ "$kcp_enable_flag" == "0" -a "$redir_udp" == "1" ]; then + local udp_server=$(get_host_ip $UDP_RELAY_SERVER) + local udp_local_port=$tmp_udp_port + fi + if [ "$shunt" != "0" ]; then + local shunt_ip=$(get_host_ip $SHUNT_SERVER) + fi + if [ -n "$lan_ac_ips" ]; then + case "$lan_ac_mode" in + w | W | b | B) local ac_ips="$lan_ac_mode$lan_ac_ips" ;; + esac + fi + gfwmode() { + case "$(uci_get_by_type global run_mode)" in + gfw) echo "-g" ;; + router) echo "-r" ;; + oversea) echo "-c" ;; + all) echo "-z" ;; + esac + } + if [ "$(uci_get_by_type global dports 1)" == "2" ]; then + local proxyport="-m multiport --dports 22,53,587,465,995,993,143,80,443,853,9418" + fi + get_arg_out() { + case "$(uci_get_by_type access_control router_proxy 1)" in + 1) echo "-o" ;; + 2) echo "-O" ;; + esac + } + /usr/share/shadowsocksr/gfw2ipset.sh + /usr/bin/ssr-rules \ + -s "$server" \ + -l "$local_port" \ + -S "$udp_server" \ + -L "$udp_local_port" \ + -a "$ac_ips" \ + -i "/etc/ssrplus/china_ssr.txt" \ + -b "$(uci_get_by_type access_control wan_bp_ips)" \ + -w "$(uci_get_by_type access_control wan_fw_ips)" \ + -B "$(uci_get_by_type access_control lan_bp_ips)" \ + -p "$(uci_get_by_type access_control lan_fp_ips)" \ + -G "$(uci_get_by_type access_control lan_gm_ips)" \ + -m "$(uci_get_by_type access_control Interface)" \ + -D "$proxyport" \ + -F "$shunt" \ + -N "$shunt_ip" \ + -M "$(uci_get_by_type global netflix_proxy 0)" \ + -I "/etc/ssrplus/netflixip.list" \ + $(get_arg_out) $(gfwmode) $ARG_UDP + return $? +} + +start() { + set_lock + echolog "----------start------------" + mkdir -p /var/run /var/lock /var/log /tmp/dnsmasq.d $TMP_BIN_PATH $TMP_DNSMASQ_PATH + echo "conf-dir=${TMP_DNSMASQ_PATH}" >"/tmp/dnsmasq.d/dnsmasq-ssrplus.conf" + if load_config; then + Start_Run + start_rules + start_dns + add_cron + start_switch + else + echolog "未启动主节点,禁止连接的域名正在加载。" + cat /etc/ssrplus/deny.list | sed '/^$/d' | sed '/#/d' | sed "/.*/s/.*/address=\/&\//" >$TMP_DNSMASQ_PATH/denylist.conf + echolog "禁止连接的域名加载完毕。" + if [ "$(uci_get_by_type global adblock 0)" == "1" ]; then + echolog "未启动主节点,广告过滤正在加载。" + cp -f /etc/ssrplus/ad.conf $TMP_DNSMASQ_PATH/ + if [ -f "$TMP_DNSMASQ_PATH/ad.conf" ]; then + for line in $(cat /etc/ssrplus/black.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/ad.conf; done + for line in $(cat /etc/ssrplus/white.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/ad.conf; done + for line in $(cat /etc/ssrplus/deny.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/ad.conf; done + fi + echolog "广告过滤加载完毕。" + fi + fi + /etc/init.d/dnsmasq restart >/dev/null 2>&1 + check_server + start_server + start_monitor + clean_log + echolog "-----------end------------" + unset_lock +} + +boot() { + echolog "boot!" + mkdir -p /var/run /var/lock /var/log /tmp/dnsmasq.d $TMP_BIN_PATH $TMP_DNSMASQ_PATH + ulimit -n 65535 + start +} + +stop() { + unlock + set_lock + /usr/bin/ssr-rules -f + local srulecount=$(iptables -L | grep SSR-SERVER-RULE | wc -l) + if [ $srulecount -gt 0 ]; then + iptables -F SSR-SERVER-RULE + iptables -t filter -D INPUT -j SSR-SERVER-RULE + iptables -X SSR-SERVER-RULE 2>/dev/null + fi + if [ -z "$switch_server" ]; then + $PS -w | grep -v "grep" | grep ssr-switch | awk '{print $1}' | xargs kill -9 >/dev/null 2>&1 & + rm -f /var/lock/ssr-switch.lock + killall -q -9 kcptun-client + fi + $PS -w | grep -v "grep" | grep ssr-monitor | awk '{print $1}' | xargs kill -9 >/dev/null 2>&1 & + $PS -w | grep -v "grep" | grep "sleep 0000" | awk '{print $1}' | xargs kill -9 >/dev/null 2>&1 & + $PS -w | grep -v "grep" | grep "$TMP_PATH" | awk '{print $1}' | xargs kill -9 >/dev/null 2>&1 & + killall -q -9 v2ray-plugin obfs-local xray-plugin + rm -f /var/lock/ssr-monitor.lock + if [ -f "/tmp/dnsmasq.d/dnsmasq-ssrplus.conf" ]; then + rm -rf /tmp/dnsmasq.d/dnsmasq-ssrplus.conf $TMP_DNSMASQ_PATH $TMP_PATH/*-ssr-*.json $TMP_PATH/ssr-server*.json + /etc/init.d/dnsmasq restart >/dev/null 2>&1 + fi + del_cron + unset_lock +} + +reset() { + stop + set_lock + rm -rf /etc/config/shadowsocksr $LOG_FILE + touch /etc/config/shadowsocksr $LOG_FILE + uci -q batch <<-EOF >/dev/null + add shadowsocksr global + set shadowsocksr.@global[0].global_server='nil' + set shadowsocksr.@global[0].netflix_server='nil' + set shadowsocksr.@global[0].netflix_proxy='0' + set shadowsocksr.@global[0].threads='0' + set shadowsocksr.@global[0].run_mode='router' + set shadowsocksr.@global[0].dports='2' + set shadowsocksr.@global[0].pdnsd_enable='1' + set shadowsocksr.@global[0].tunnel_forward='8.8.4.4:53' + set shadowsocksr.@global[0].monitor_enable='1' + set shadowsocksr.@global[0].enable_switch='1' + set shadowsocksr.@global[0].switch_time='667' + set shadowsocksr.@global[0].switch_timeout='5' + set shadowsocksr.@global[0].switch_try_count='3' + set shadowsocksr.@global[0].gfwlist_url='https://cdn.jsdelivr.net/gh/YW5vbnltb3Vz/domain-list-community@release/gfwlist.txt' + set shadowsocksr.@global[0].chnroute_url='https://ispip.clang.cn/all_cn.txt' + set shadowsocksr.@global[0].nfip_url='https://cdn.jsdelivr.net/gh/QiuSimons/Netflix_IP/NF_only.txt' + set shadowsocksr.@global[0].adblock_url='https://anti-ad.net/anti-ad-for-dnsmasq.conf' + add shadowsocksr server_subscribe + set shadowsocksr.@server_subscribe[0].proxy='0' + set shadowsocksr.@server_subscribe[0].auto_update_time='2' + set shadowsocksr.@server_subscribe[0].auto_update='1' + set shadowsocksr.@server_subscribe[0].filter_words='过期时间/剩余流量/QQ群/官网/防失联地址/回国' + set shadowsocksr.@server_subscribe[0].save_words='' + add shadowsocksr access_control + set shadowsocksr.@access_control[0].lan_ac_mode='0' + set shadowsocksr.@access_control[0].router_proxy='1' + add_list shadowsocksr.@access_control[0].wan_fw_ips=149.154.160.0/20 + add_list shadowsocksr.@access_control[0].wan_fw_ips=67.198.55.0/24 + add_list shadowsocksr.@access_control[0].wan_fw_ips=91.108.4.0/22 + add_list shadowsocksr.@access_control[0].wan_fw_ips=91.108.56.0/22 + add_list shadowsocksr.@access_control[0].wan_fw_ips=109.239.140.0/24 + add_list shadowsocksr.@access_control[0].Interface='lan' + add shadowsocksr socks5_proxy + set shadowsocksr.@socks5_proxy[0].server='nil' + set shadowsocksr.@socks5_proxy[0].local_port='1080' + add shadowsocksr server_global + set shadowsocksr.@server_global[0].enable_server='0' + commit shadowsocksr + EOF + unset_lock +} diff --git a/luci-app-ssr-plus/root/etc/ssrplus/ad.conf b/luci-app-ssr-plus/root/etc/ssrplus/ad.conf new file mode 100644 index 000000000..e69de29bb diff --git a/luci-app-ssr-plus/root/etc/ssrplus/black.list b/luci-app-ssr-plus/root/etc/ssrplus/black.list new file mode 100644 index 000000000..e69de29bb diff --git a/luci-app-ssr-plus/root/etc/ssrplus/china_ssr.txt b/luci-app-ssr-plus/root/etc/ssrplus/china_ssr.txt new file mode 100644 index 000000000..3d3bb2d7c --- /dev/null +++ b/luci-app-ssr-plus/root/etc/ssrplus/china_ssr.txt @@ -0,0 +1,8621 @@ +1.0.1.0/24 +1.0.2.0/23 +1.0.8.0/21 +1.0.32.0/19 +1.1.0.0/24 +1.1.2.0/23 +1.1.4.0/22 +1.1.8.0/24 +1.1.9.0/24 +1.1.10.0/23 +1.1.12.0/22 +1.1.16.0/20 +1.1.32.0/19 +1.2.0.0/23 +1.2.2.0/24 +1.2.4.0/24 +1.2.5.0/24 +1.2.6.0/23 +1.2.8.0/24 +1.2.9.0/24 +1.2.10.0/23 +1.2.12.0/22 +1.2.16.0/20 +1.2.32.0/19 +1.2.64.0/18 +1.3.0.0/16 +1.4.1.0/24 +1.4.2.0/23 +1.4.4.0/24 +1.4.5.0/24 +1.4.6.0/23 +1.4.8.0/21 +1.4.16.0/20 +1.4.32.0/19 +1.4.64.0/18 +1.8.0.0/16 +1.10.0.0/21 +1.10.8.0/23 +1.10.11.0/24 +1.10.12.0/22 +1.10.16.0/20 +1.10.32.0/19 +1.10.64.0/18 +1.12.0.0/14 +1.24.0.0/13 +1.45.0.0/16 +1.48.0.0/15 +1.50.0.0/16 +1.51.0.0/16 +1.56.0.0/13 +1.68.0.0/14 +1.80.0.0/13 +1.88.0.0/14 +1.92.0.0/15 +1.94.0.0/15 +1.116.0.0/15 +1.118.0.0/16 +1.119.0.0/17 +1.119.128.0/17 +1.180.0.0/14 +1.184.0.0/15 +1.188.0.0/14 +1.192.0.0/13 +1.202.0.0/15 +1.204.0.0/14 +14.0.0.0/21 +14.0.12.0/22 +14.1.0.0/22 +14.1.24.0/22 +14.1.96.0/22 +14.1.108.0/22 +14.16.0.0/12 +14.102.128.0/22 +14.102.156.0/22 +14.102.180.0/22 +14.103.0.0/16 +14.104.0.0/13 +14.112.0.0/12 +14.130.0.0/15 +14.134.0.0/15 +14.144.0.0/12 +14.192.60.0/22 +14.192.76.0/22 +14.196.0.0/15 +14.204.0.0/15 +14.208.0.0/12 +27.0.128.0/22 +27.0.132.0/22 +27.0.160.0/22 +27.0.164.0/22 +27.0.188.0/22 +27.0.204.0/22 +27.0.208.0/22 +27.0.212.0/22 +27.8.0.0/13 +27.16.0.0/12 +27.34.232.0/21 +27.36.0.0/14 +27.40.0.0/13 +27.50.40.0/21 +27.50.128.0/17 +27.54.72.0/21 +27.54.152.0/21 +27.54.192.0/18 +27.98.208.0/20 +27.98.224.0/19 +27.99.128.0/17 +27.103.0.0/16 +27.106.128.0/18 +27.106.204.0/22 +27.109.32.0/19 +27.109.124.0/22 +27.112.0.0/18 +27.112.80.0/20 +27.112.112.0/22 +27.112.116.0/22 +27.113.128.0/18 +27.115.0.0/17 +27.116.44.0/22 +27.121.72.0/21 +27.121.120.0/21 +27.128.0.0/15 +27.131.220.0/22 +27.144.0.0/16 +27.148.0.0/14 +27.152.0.0/13 +27.184.0.0/13 +27.192.0.0/11 +27.224.0.0/14 +36.0.0.0/22 +36.0.8.0/21 +36.0.16.0/20 +36.0.32.0/19 +36.0.64.0/18 +36.0.128.0/17 +36.1.0.0/16 +36.4.0.0/14 +36.16.0.0/12 +36.32.0.0/14 +36.36.0.0/16 +36.37.0.0/19 +36.37.36.0/23 +36.37.39.0/24 +36.37.40.0/21 +36.37.48.0/20 +36.40.0.0/13 +36.48.0.0/15 +36.51.0.0/16 +36.56.0.0/13 +36.96.0.0/11 +36.128.0.0/10 +36.192.0.0/11 +36.248.0.0/14 +36.254.0.0/16 +36.255.116.0/22 +36.255.128.0/22 +36.255.164.0/22 +36.255.172.0/22 +36.255.176.0/22 +39.0.0.0/24 +39.0.2.0/23 +39.0.4.0/22 +39.0.8.0/21 +39.0.16.0/20 +39.0.32.0/19 +39.0.64.0/18 +39.0.128.0/17 +39.64.0.0/11 +39.96.0.0/13 +39.104.0.0/14 +39.108.0.0/16 +39.128.0.0/10 +40.72.0.0/15 +40.125.128.0/17 +40.126.64.0/18 +42.0.0.0/22 +42.0.8.0/21 +42.0.16.0/21 +42.0.24.0/22 +42.0.32.0/19 +42.0.128.0/17 +42.1.0.0/19 +42.1.32.0/20 +42.1.48.0/21 +42.1.56.0/22 +42.1.128.0/17 +42.4.0.0/14 +42.48.0.0/15 +42.50.0.0/16 +42.51.0.0/16 +42.52.0.0/14 +42.56.0.0/14 +42.62.0.0/17 +42.62.128.0/19 +42.62.160.0/20 +42.62.180.0/22 +42.62.184.0/21 +42.63.0.0/16 +42.80.0.0/15 +42.83.64.0/20 +42.83.80.0/22 +42.83.88.0/21 +42.83.96.0/19 +42.83.128.0/17 +42.84.0.0/14 +42.88.0.0/13 +42.96.64.0/19 +42.96.96.0/21 +42.96.108.0/22 +42.96.112.0/20 +42.96.128.0/17 +42.97.0.0/16 +42.99.0.0/18 +42.99.64.0/19 +42.99.96.0/20 +42.99.112.0/22 +42.99.120.0/21 +42.100.0.0/14 +42.120.0.0/15 +42.122.0.0/16 +42.123.0.0/19 +42.123.36.0/22 +42.123.40.0/21 +42.123.48.0/20 +42.123.64.0/18 +42.123.128.0/17 +42.128.0.0/12 +42.156.0.0/19 +42.156.36.0/22 +42.156.40.0/21 +42.156.48.0/20 +42.156.64.0/18 +42.156.128.0/17 +42.157.0.0/16 +42.158.0.0/16 +42.159.0.0/16 +42.160.0.0/12 +42.176.0.0/13 +42.184.0.0/15 +42.186.0.0/16 +42.187.0.0/18 +42.187.64.0/19 +42.187.96.0/20 +42.187.112.0/21 +42.187.120.0/22 +42.187.128.0/17 +42.192.0.0/15 +42.194.0.0/21 +42.194.8.0/22 +42.194.12.0/22 +42.194.16.0/20 +42.194.32.0/19 +42.194.64.0/18 +42.194.128.0/17 +42.195.0.0/16 +42.196.0.0/14 +42.201.0.0/17 +42.202.0.0/15 +42.204.0.0/14 +42.208.0.0/12 +42.224.0.0/12 +42.240.0.0/17 +42.240.128.0/17 +42.242.0.0/15 +42.244.0.0/14 +42.248.0.0/13 +43.136.0.0/13 +43.144.0.0/12 +43.160.0.0/11 +43.224.12.0/22 +43.224.24.0/22 +43.224.44.0/22 +43.224.52.0/22 +43.224.56.0/22 +43.224.64.0/22 +43.224.68.0/22 +43.224.72.0/22 +43.224.80.0/22 +43.224.100.0/22 +43.224.144.0/22 +43.224.160.0/22 +43.224.176.0/22 +43.224.184.0/22 +43.224.200.0/22 +43.224.204.0/22 +43.224.208.0/22 +43.224.212.0/22 +43.224.216.0/22 +43.224.240.0/22 +43.225.76.0/22 +43.225.84.0/22 +43.225.120.0/22 +43.225.124.0/22 +43.225.140.0/22 +43.225.172.0/22 +43.225.180.0/22 +43.225.208.0/22 +43.225.216.0/22 +43.225.220.0/22 +43.225.224.0/22 +43.225.228.0/22 +43.225.232.0/22 +43.225.236.0/22 +43.225.240.0/22 +43.225.244.0/22 +43.225.252.0/22 +43.226.32.0/22 +43.226.36.0/22 +43.226.40.0/22 +43.226.44.0/22 +43.226.48.0/22 +43.226.52.0/22 +43.226.56.0/22 +43.226.60.0/22 +43.226.64.0/22 +43.226.68.0/22 +43.226.72.0/22 +43.226.76.0/22 +43.226.80.0/22 +43.226.84.0/22 +43.226.88.0/22 +43.226.92.0/22 +43.226.96.0/22 +43.226.100.0/22 +43.226.104.0/22 +43.226.108.0/22 +43.226.112.0/22 +43.226.116.0/22 +43.226.120.0/22 +43.226.128.0/22 +43.226.132.0/22 +43.226.136.0/22 +43.226.140.0/22 +43.226.144.0/22 +43.226.148.0/22 +43.226.152.0/22 +43.226.156.0/22 +43.226.160.0/22 +43.226.164.0/22 +43.226.168.0/22 +43.226.172.0/22 +43.226.176.0/22 +43.226.180.0/22 +43.226.184.0/22 +43.226.188.0/22 +43.226.192.0/22 +43.226.196.0/22 +43.226.200.0/22 +43.226.204.0/22 +43.226.208.0/22 +43.226.212.0/22 +43.226.236.0/22 +43.226.240.0/22 +43.226.244.0/22 +43.226.248.0/22 +43.226.252.0/22 +43.227.0.0/22 +43.227.4.0/22 +43.227.8.0/22 +43.227.32.0/22 +43.227.36.0/22 +43.227.40.0/22 +43.227.44.0/22 +43.227.48.0/22 +43.227.52.0/22 +43.227.56.0/22 +43.227.60.0/22 +43.227.64.0/22 +43.227.68.0/22 +43.227.72.0/22 +43.227.76.0/22 +43.227.80.0/22 +43.227.84.0/22 +43.227.88.0/22 +43.227.92.0/22 +43.227.96.0/22 +43.227.100.0/22 +43.227.104.0/22 +43.227.136.0/22 +43.227.140.0/22 +43.227.144.0/22 +43.227.152.0/22 +43.227.156.0/22 +43.227.160.0/22 +43.227.164.0/22 +43.227.168.0/22 +43.227.172.0/22 +43.227.176.0/22 +43.227.180.0/22 +43.227.188.0/22 +43.227.192.0/22 +43.227.196.0/22 +43.227.200.0/22 +43.227.204.0/22 +43.227.208.0/22 +43.227.212.0/22 +43.227.216.0/22 +43.227.220.0/22 +43.227.232.0/22 +43.227.248.0/22 +43.227.252.0/22 +43.228.0.0/22 +43.228.4.0/22 +43.228.8.0/22 +43.228.12.0/22 +43.228.16.0/22 +43.228.20.0/22 +43.228.24.0/22 +43.228.28.0/22 +43.228.32.0/22 +43.228.36.0/22 +43.228.40.0/22 +43.228.44.0/22 +43.228.48.0/22 +43.228.52.0/22 +43.228.56.0/22 +43.228.60.0/22 +43.228.64.0/22 +43.228.68.0/22 +43.228.76.0/22 +43.228.100.0/22 +43.228.116.0/22 +43.228.120.0/22 +43.228.132.0/22 +43.228.136.0/22 +43.228.148.0/22 +43.228.152.0/22 +43.228.188.0/22 +43.228.204.0/22 +43.228.240.0/22 +43.229.40.0/22 +43.229.48.0/22 +43.229.56.0/22 +43.229.96.0/22 +43.229.120.0/22 +43.229.136.0/22 +43.229.140.0/22 +43.229.144.0/22 +43.229.168.0/22 +43.229.172.0/22 +43.229.176.0/22 +43.229.180.0/22 +43.229.184.0/22 +43.229.188.0/22 +43.229.192.0/22 +43.229.196.0/22 +43.229.216.0/22 +43.229.220.0/22 +43.229.232.0/22 +43.229.236.0/22 +43.230.20.0/22 +43.230.32.0/22 +43.230.68.0/22 +43.230.72.0/22 +43.230.84.0/22 +43.230.124.0/22 +43.230.136.0/22 +43.230.220.0/22 +43.230.224.0/22 +43.230.228.0/22 +43.230.232.0/22 +43.230.236.0/22 +43.230.240.0/22 +43.230.244.0/22 +43.230.248.0/22 +43.230.252.0/22 +43.231.32.0/22 +43.231.36.0/22 +43.231.40.0/22 +43.231.44.0/22 +43.231.80.0/22 +43.231.84.0/22 +43.231.88.0/22 +43.231.92.0/22 +43.231.96.0/22 +43.231.100.0/22 +43.231.104.0/22 +43.231.108.0/22 +43.231.136.0/22 +43.231.140.0/22 +43.231.144.0/22 +43.231.148.0/22 +43.231.152.0/22 +43.231.156.0/22 +43.231.160.0/22 +43.231.164.0/22 +43.231.168.0/22 +43.231.172.0/22 +43.231.176.0/22 +43.231.180.0/22 +43.236.0.0/22 +43.236.4.0/22 +43.236.8.0/22 +43.236.12.0/22 +43.236.16.0/22 +43.236.20.0/22 +43.236.24.0/22 +43.236.28.0/22 +43.236.32.0/22 +43.236.36.0/22 +43.236.40.0/22 +43.236.44.0/22 +43.236.48.0/22 +43.236.52.0/22 +43.236.56.0/22 +43.236.60.0/22 +43.236.64.0/22 +43.236.68.0/22 +43.236.72.0/22 +43.236.76.0/22 +43.236.80.0/22 +43.236.84.0/22 +43.236.88.0/22 +43.236.92.0/22 +43.236.96.0/22 +43.236.100.0/22 +43.236.104.0/22 +43.236.108.0/22 +43.236.112.0/22 +43.236.116.0/22 +43.236.120.0/22 +43.236.124.0/22 +43.236.128.0/22 +43.236.132.0/22 +43.236.136.0/22 +43.236.140.0/22 +43.236.144.0/22 +43.236.148.0/22 +43.236.152.0/22 +43.236.156.0/22 +43.236.160.0/22 +43.236.164.0/22 +43.236.168.0/22 +43.236.172.0/22 +43.236.176.0/22 +43.236.180.0/22 +43.236.184.0/22 +43.236.188.0/22 +43.236.192.0/22 +43.236.196.0/22 +43.236.200.0/22 +43.236.204.0/22 +43.236.208.0/22 +43.236.212.0/22 +43.236.216.0/22 +43.236.220.0/22 +43.236.224.0/22 +43.236.228.0/22 +43.236.232.0/22 +43.236.236.0/22 +43.236.240.0/22 +43.236.244.0/22 +43.236.248.0/22 +43.236.252.0/22 +43.237.0.0/22 +43.237.4.0/22 +43.237.8.0/22 +43.237.12.0/22 +43.237.16.0/22 +43.237.20.0/22 +43.237.24.0/22 +43.237.28.0/22 +43.237.32.0/22 +43.237.36.0/22 +43.237.40.0/22 +43.237.44.0/22 +43.237.48.0/22 +43.237.52.0/22 +43.237.56.0/22 +43.237.60.0/22 +43.237.64.0/22 +43.237.68.0/22 +43.237.72.0/22 +43.237.76.0/22 +43.237.80.0/22 +43.237.84.0/22 +43.237.88.0/22 +43.237.92.0/22 +43.237.96.0/22 +43.237.100.0/22 +43.237.104.0/22 +43.237.108.0/22 +43.237.112.0/22 +43.237.116.0/22 +43.237.120.0/22 +43.237.124.0/22 +43.237.128.0/22 +43.237.132.0/22 +43.237.136.0/22 +43.237.140.0/22 +43.237.144.0/22 +43.237.148.0/22 +43.237.152.0/22 +43.237.156.0/22 +43.237.160.0/22 +43.237.164.0/22 +43.237.168.0/22 +43.237.172.0/22 +43.237.176.0/22 +43.237.180.0/22 +43.237.184.0/22 +43.237.188.0/22 +43.237.192.0/22 +43.237.196.0/22 +43.237.200.0/22 +43.237.204.0/22 +43.237.208.0/22 +43.237.212.0/22 +43.237.216.0/22 +43.237.220.0/22 +43.237.224.0/22 +43.237.228.0/22 +43.237.232.0/22 +43.237.236.0/22 +43.237.240.0/22 +43.237.244.0/22 +43.237.248.0/22 +43.237.252.0/22 +43.238.0.0/22 +43.238.4.0/22 +43.238.8.0/22 +43.238.12.0/22 +43.238.16.0/22 +43.238.20.0/22 +43.238.24.0/22 +43.238.28.0/22 +43.238.32.0/22 +43.238.36.0/22 +43.238.40.0/22 +43.238.44.0/22 +43.238.48.0/22 +43.238.52.0/22 +43.238.56.0/22 +43.238.60.0/22 +43.238.64.0/22 +43.238.68.0/22 +43.238.72.0/22 +43.238.76.0/22 +43.238.80.0/22 +43.238.84.0/22 +43.238.88.0/22 +43.238.92.0/22 +43.238.96.0/22 +43.238.100.0/22 +43.238.104.0/22 +43.238.108.0/22 +43.238.112.0/22 +43.238.116.0/22 +43.238.120.0/22 +43.238.124.0/22 +43.238.128.0/22 +43.238.132.0/22 +43.238.136.0/22 +43.238.140.0/22 +43.238.144.0/22 +43.238.148.0/22 +43.238.152.0/22 +43.238.156.0/22 +43.238.160.0/22 +43.238.164.0/22 +43.238.168.0/22 +43.238.172.0/22 +43.238.176.0/22 +43.238.180.0/22 +43.238.184.0/22 +43.238.188.0/22 +43.238.192.0/22 +43.238.196.0/22 +43.238.200.0/22 +43.238.204.0/22 +43.238.208.0/22 +43.238.212.0/22 +43.238.216.0/22 +43.238.220.0/22 +43.238.224.0/22 +43.238.228.0/22 +43.238.232.0/22 +43.238.236.0/22 +43.238.240.0/22 +43.238.244.0/22 +43.238.248.0/22 +43.238.252.0/22 +43.239.0.0/22 +43.239.4.0/22 +43.239.8.0/21 +43.239.16.0/22 +43.239.20.0/22 +43.239.24.0/22 +43.239.28.0/22 +43.239.32.0/22 +43.239.36.0/22 +43.239.40.0/22 +43.239.44.0/22 +43.239.48.0/22 +43.239.116.0/22 +43.239.120.0/22 +43.239.172.0/22 +43.239.176.0/22 +43.240.0.0/22 +43.240.56.0/22 +43.240.60.0/22 +43.240.68.0/22 +43.240.72.0/22 +43.240.76.0/22 +43.240.84.0/22 +43.240.124.0/22 +43.240.128.0/22 +43.240.132.0/22 +43.240.136.0/22 +43.240.144.0/22 +43.240.156.0/22 +43.240.160.0/22 +43.240.164.0/22 +43.240.168.0/22 +43.240.172.0/22 +43.240.176.0/22 +43.240.180.0/22 +43.240.184.0/22 +43.240.188.0/22 +43.240.192.0/22 +43.240.196.0/22 +43.240.200.0/22 +43.240.204.0/22 +43.240.208.0/22 +43.240.212.0/22 +43.240.216.0/22 +43.240.220.0/22 +43.240.236.0/22 +43.240.240.0/22 +43.240.244.0/22 +43.240.248.0/22 +43.240.252.0/22 +43.241.0.0/22 +43.241.4.0/22 +43.241.8.0/22 +43.241.12.0/22 +43.241.16.0/22 +43.241.20.0/22 +43.241.48.0/22 +43.241.76.0/22 +43.241.80.0/22 +43.241.84.0/22 +43.241.88.0/22 +43.241.92.0/22 +43.241.112.0/22 +43.241.168.0/22 +43.241.172.0/22 +43.241.176.0/22 +43.241.180.0/22 +43.241.184.0/22 +43.241.196.0/22 +43.241.208.0/22 +43.241.212.0/22 +43.241.216.0/22 +43.241.220.0/22 +43.241.224.0/22 +43.241.228.0/22 +43.241.232.0/22 +43.241.236.0/22 +43.241.240.0/22 +43.241.248.0/22 +43.241.252.0/22 +43.242.8.0/22 +43.242.12.0/22 +43.242.16.0/22 +43.242.20.0/22 +43.242.24.0/22 +43.242.28.0/22 +43.242.44.0/22 +43.242.48.0/22 +43.242.52.0/22 +43.242.56.0/22 +43.242.60.0/22 +43.242.64.0/22 +43.242.72.0/22 +43.242.76.0/22 +43.242.80.0/22 +43.242.84.0/22 +43.242.88.0/22 +43.242.92.0/22 +43.242.96.0/22 +43.242.144.0/22 +43.242.148.0/22 +43.242.152.0/22 +43.242.156.0/22 +43.242.160.0/22 +43.242.164.0/22 +43.242.168.0/22 +43.242.180.0/22 +43.242.188.0/22 +43.242.192.0/22 +43.242.196.0/22 +43.242.204.0/22 +43.242.216.0/22 +43.242.220.0/22 +43.242.252.0/22 +43.243.4.0/22 +43.243.8.0/22 +43.243.12.0/22 +43.243.16.0/22 +43.243.24.0/22 +43.243.88.0/22 +43.243.128.0/22 +43.243.136.0/22 +43.243.144.0/22 +43.243.148.0/22 +43.243.156.0/22 +43.243.180.0/22 +43.243.228.0/22 +43.243.232.0/22 +43.243.244.0/22 +43.246.0.0/22 +43.246.4.0/22 +43.246.8.0/22 +43.246.12.0/22 +43.246.16.0/22 +43.246.20.0/22 +43.246.24.0/22 +43.246.28.0/22 +43.246.32.0/22 +43.246.36.0/22 +43.246.40.0/22 +43.246.44.0/22 +43.246.48.0/22 +43.246.52.0/22 +43.246.56.0/22 +43.246.60.0/22 +43.246.64.0/22 +43.246.68.0/22 +43.246.72.0/22 +43.246.76.0/22 +43.246.80.0/22 +43.246.84.0/22 +43.246.88.0/22 +43.246.92.0/22 +43.246.96.0/22 +43.246.112.0/22 +43.246.212.0/22 +43.246.228.0/22 +43.247.4.0/22 +43.247.8.0/22 +43.247.44.0/22 +43.247.48.0/22 +43.247.68.0/22 +43.247.76.0/22 +43.247.84.0/22 +43.247.88.0/22 +43.247.92.0/22 +43.247.96.0/22 +43.247.100.0/22 +43.247.108.0/22 +43.247.112.0/22 +43.247.148.0/22 +43.247.152.0/22 +43.247.176.0/22 +43.247.180.0/22 +43.247.184.0/22 +43.247.188.0/22 +43.247.196.0/22 +43.247.200.0/22 +43.247.204.0/22 +43.247.208.0/22 +43.247.212.0/22 +43.247.216.0/22 +43.247.220.0/22 +43.247.224.0/22 +43.247.228.0/22 +43.247.232.0/22 +43.247.236.0/22 +43.247.240.0/22 +43.247.244.0/22 +43.247.248.0/22 +43.247.252.0/22 +43.248.0.0/22 +43.248.4.0/22 +43.248.20.0/22 +43.248.28.0/22 +43.248.48.0/22 +43.248.76.0/22 +43.248.80.0/22 +43.248.84.0/22 +43.248.88.0/22 +43.248.92.0/22 +43.248.96.0/22 +43.248.100.0/22 +43.248.104.0/22 +43.248.108.0/22 +43.248.112.0/22 +43.248.116.0/22 +43.248.120.0/22 +43.248.124.0/22 +43.248.128.0/22 +43.248.132.0/22 +43.248.136.0/22 +43.248.140.0/22 +43.248.144.0/22 +43.248.148.0/22 +43.248.176.0/22 +43.248.180.0/22 +43.248.184.0/22 +43.248.188.0/22 +43.248.192.0/22 +43.248.196.0/22 +43.248.200.0/22 +43.248.204.0/22 +43.248.208.0/22 +43.248.228.0/22 +43.248.232.0/22 +43.248.244.0/22 +43.249.4.0/22 +43.249.8.0/22 +43.249.120.0/22 +43.249.132.0/22 +43.249.136.0/22 +43.249.144.0/22 +43.249.148.0/22 +43.249.152.0/22 +43.249.156.0/22 +43.249.160.0/22 +43.249.164.0/22 +43.249.168.0/22 +43.249.192.0/22 +43.249.236.0/22 +43.250.4.0/22 +43.250.12.0/22 +43.250.16.0/22 +43.250.20.0/22 +43.250.28.0/22 +43.250.32.0/22 +43.250.36.0/22 +43.250.72.0/22 +43.250.96.0/22 +43.250.100.0/22 +43.250.104.0/22 +43.250.108.0/22 +43.250.112.0/22 +43.250.116.0/22 +43.250.128.0/22 +43.250.144.0/22 +43.250.148.0/22 +43.250.160.0/22 +43.250.168.0/22 +43.250.172.0/22 +43.250.176.0/22 +43.250.200.0/22 +43.250.212.0/22 +43.250.216.0/22 +43.250.220.0/22 +43.250.236.0/22 +43.250.244.0/22 +43.251.4.0/22 +43.251.8.0/22 +43.251.36.0/22 +43.251.100.0/22 +43.251.116.0/22 +43.251.192.0/22 +43.251.232.0/22 +43.251.236.0/22 +43.251.244.0/22 +43.252.48.0/22 +43.252.56.0/22 +43.252.224.0/22 +43.254.0.0/22 +43.254.4.0/22 +43.254.8.0/22 +43.254.24.0/22 +43.254.36.0/22 +43.254.44.0/22 +43.254.52.0/22 +43.254.64.0/22 +43.254.72.0/22 +43.254.84.0/22 +43.254.88.0/22 +43.254.92.0/22 +43.254.100.0/22 +43.254.104.0/22 +43.254.112.0/22 +43.254.116.0/22 +43.254.128.0/22 +43.254.136.0/22 +43.254.140.0/22 +43.254.144.0/22 +43.254.148.0/22 +43.254.152.0/22 +43.254.156.0/22 +43.254.168.0/22 +43.254.172.0/22 +43.254.180.0/22 +43.254.184.0/22 +43.254.188.0/22 +43.254.192.0/22 +43.254.196.0/22 +43.254.200.0/22 +43.254.208.0/22 +43.254.220.0/22 +43.254.224.0/22 +43.254.228.0/22 +43.254.232.0/22 +43.254.236.0/22 +43.254.240.0/22 +43.254.248.0/22 +43.254.252.0/22 +43.255.0.0/22 +43.255.4.0/22 +43.255.8.0/22 +43.255.16.0/22 +43.255.48.0/22 +43.255.64.0/22 +43.255.68.0/22 +43.255.72.0/22 +43.255.76.0/22 +43.255.84.0/22 +43.255.96.0/22 +43.255.108.0/22 +43.255.144.0/22 +43.255.168.0/22 +43.255.176.0/22 +43.255.184.0/22 +43.255.192.0/22 +43.255.200.0/22 +43.255.204.0/22 +43.255.208.0/22 +43.255.212.0/22 +43.255.224.0/22 +43.255.228.0/22 +43.255.232.0/22 +43.255.244.0/22 +45.40.192.0/18 +45.65.16.0/22 +45.65.20.0/22 +45.65.24.0/22 +45.65.28.0/22 +45.112.132.0/22 +45.112.188.0/22 +45.112.208.0/22 +45.112.212.0/22 +45.112.216.0/22 +45.112.220.0/22 +45.112.228.0/22 +45.112.232.0/22 +45.112.236.0/22 +45.113.12.0/22 +45.113.16.0/22 +45.113.20.0/22 +45.113.24.0/22 +45.113.28.0/22 +45.113.40.0/22 +45.113.52.0/22 +45.113.56.0/22 +45.113.72.0/22 +45.113.144.0/22 +45.113.148.0/22 +45.113.168.0/22 +45.113.176.0/22 +45.113.184.0/22 +45.113.200.0/22 +45.113.204.0/22 +45.113.208.0/22 +45.113.212.0/22 +45.113.216.0/22 +45.113.220.0/22 +45.113.240.0/22 +45.113.252.0/22 +45.114.0.0/22 +45.114.12.0/22 +45.114.32.0/22 +45.114.40.0/22 +45.114.52.0/22 +45.114.96.0/22 +45.114.104.0/22 +45.114.124.0/22 +45.114.136.0/22 +45.114.196.0/22 +45.114.200.0/22 +45.114.228.0/22 +45.114.252.0/22 +45.115.44.0/22 +45.115.100.0/22 +45.115.120.0/22 +45.115.132.0/22 +45.115.144.0/22 +45.115.156.0/22 +45.115.164.0/22 +45.115.200.0/22 +45.115.212.0/22 +45.115.228.0/22 +45.115.236.0/22 +45.115.244.0/22 +45.115.248.0/22 +45.116.16.0/22 +45.116.24.0/22 +45.116.32.0/22 +45.116.36.0/22 +45.116.52.0/22 +45.116.96.0/22 +45.116.100.0/22 +45.116.140.0/22 +45.116.152.0/22 +45.116.208.0/22 +45.117.8.0/22 +45.117.20.0/22 +45.117.68.0/22 +45.117.124.0/22 +45.117.252.0/22 +45.119.52.0/22 +45.119.60.0/22 +45.119.64.0/22 +45.119.68.0/22 +45.119.72.0/22 +45.119.104.0/22 +45.119.116.0/22 +45.119.232.0/22 +45.120.100.0/22 +45.120.140.0/22 +45.120.164.0/22 +45.120.220.0/22 +45.120.240.0/22 +45.121.52.0/22 +45.121.64.0/22 +45.121.68.0/22 +45.121.72.0/22 +45.121.92.0/22 +45.121.96.0/22 +45.121.172.0/22 +45.121.176.0/22 +45.121.212.0/22 +45.121.240.0/22 +45.121.244.0/22 +45.121.248.0/22 +45.121.252.0/22 +45.122.0.0/22 +45.122.4.0/22 +45.122.8.0/22 +45.122.12.0/22 +45.122.16.0/22 +45.122.20.0/22 +45.122.24.0/22 +45.122.28.0/22 +45.122.32.0/22 +45.122.36.0/22 +45.122.40.0/22 +45.122.60.0/22 +45.122.64.0/22 +45.122.68.0/22 +45.122.72.0/22 +45.122.76.0/22 +45.122.80.0/22 +45.122.84.0/22 +45.122.88.0/22 +45.122.92.0/22 +45.122.96.0/21 +45.122.104.0/22 +45.122.108.0/22 +45.122.112.0/22 +45.122.116.0/22 +45.122.160.0/22 +45.122.164.0/22 +45.122.168.0/22 +45.122.172.0/22 +45.122.176.0/22 +45.122.180.0/22 +45.122.184.0/22 +45.122.188.0/22 +45.122.192.0/22 +45.122.196.0/22 +45.122.200.0/22 +45.122.204.0/22 +45.122.208.0/22 +45.122.212.0/22 +45.122.216.0/22 +45.123.28.0/22 +45.123.32.0/22 +45.123.36.0/22 +45.123.44.0/22 +45.123.48.0/22 +45.123.52.0/22 +45.123.56.0/22 +45.123.60.0/22 +45.123.64.0/22 +45.123.68.0/22 +45.123.72.0/22 +45.123.76.0/22 +45.123.80.0/22 +45.123.84.0/22 +45.123.88.0/22 +45.123.120.0/22 +45.123.128.0/22 +45.123.132.0/22 +45.123.136.0/22 +45.123.148.0/22 +45.123.152.0/22 +45.123.156.0/22 +45.123.164.0/22 +45.123.168.0/22 +45.123.172.0/22 +45.123.176.0/22 +45.123.180.0/22 +45.123.184.0/22 +45.123.204.0/22 +45.123.212.0/22 +45.123.224.0/22 +45.123.228.0/22 +45.123.232.0/22 +45.123.236.0/22 +45.123.240.0/22 +45.123.244.0/22 +45.123.248.0/22 +45.123.252.0/22 +45.124.0.0/22 +45.124.20.0/22 +45.124.28.0/22 +45.124.32.0/22 +45.124.36.0/22 +45.124.44.0/22 +45.124.68.0/22 +45.124.76.0/22 +45.124.80.0/22 +45.124.100.0/22 +45.124.124.0/22 +45.124.172.0/22 +45.124.176.0/22 +45.124.208.0/22 +45.124.248.0/22 +45.125.12.0/22 +45.125.16.0/22 +45.125.24.0/22 +45.125.28.0/22 +45.125.44.0/22 +45.125.52.0/22 +45.125.56.0/22 +45.125.76.0/22 +45.125.80.0/22 +45.125.84.0/22 +45.125.88.0/22 +45.125.92.0/22 +45.125.96.0/22 +45.125.100.0/22 +45.125.104.0/22 +45.125.136.0/22 +45.126.48.0/22 +45.126.52.0/22 +45.126.100.0/22 +45.126.108.0/22 +45.126.112.0/22 +45.126.116.0/22 +45.126.120.0/22 +45.126.212.0/22 +45.126.220.0/22 +45.127.8.0/22 +45.127.12.0/22 +45.127.96.0/22 +45.127.128.0/22 +45.127.144.0/22 +45.127.148.0/22 +45.127.156.0/22 +45.127.216.0/22 +45.248.8.0/22 +45.248.80.0/22 +45.248.84.0/22 +45.248.88.0/22 +45.248.96.0/22 +45.248.100.0/22 +45.248.104.0/22 +45.248.108.0/22 +45.248.128.0/22 +45.248.132.0/22 +45.248.204.0/22 +45.248.208.0/22 +45.248.212.0/22 +45.248.216.0/22 +45.248.220.0/22 +45.248.224.0/22 +45.248.228.0/22 +45.248.232.0/22 +45.248.236.0/22 +45.248.240.0/22 +45.248.244.0/22 +45.248.248.0/22 +45.248.252.0/22 +45.249.0.0/22 +45.249.4.0/22 +45.249.12.0/22 +45.249.16.0/22 +45.249.20.0/22 +45.249.24.0/22 +45.249.28.0/22 +45.249.32.0/22 +45.249.36.0/22 +45.249.92.0/22 +45.249.112.0/22 +45.249.188.0/22 +45.249.192.0/22 +45.249.196.0/22 +45.249.200.0/22 +45.249.204.0/22 +45.249.208.0/22 +45.249.212.0/22 +45.250.12.0/22 +45.250.16.0/22 +45.250.28.0/22 +45.250.32.0/22 +45.250.36.0/22 +45.250.40.0/22 +45.250.76.0/22 +45.250.80.0/22 +45.250.84.0/22 +45.250.88.0/22 +45.250.92.0/22 +45.250.96.0/22 +45.250.104.0/22 +45.250.108.0/22 +45.250.112.0/22 +45.250.116.0/22 +45.250.120.0/22 +45.250.124.0/22 +45.250.128.0/22 +45.250.132.0/22 +45.250.136.0/22 +45.250.140.0/22 +45.250.144.0/22 +45.250.148.0/22 +45.250.152.0/22 +45.250.164.0/22 +45.250.180.0/22 +45.250.184.0/22 +45.250.188.0/22 +45.250.192.0/22 +45.251.0.0/22 +45.251.8.0/22 +45.251.16.0/22 +45.251.20.0/22 +45.251.52.0/22 +45.251.84.0/22 +45.251.88.0/22 +45.251.92.0/22 +45.251.96.0/22 +45.251.100.0/22 +45.251.120.0/22 +45.251.124.0/22 +45.251.136.0/22 +45.251.140.0/22 +45.251.144.0/22 +45.251.148.0/22 +45.251.152.0/22 +45.251.156.0/22 +45.251.160.0/22 +45.251.164.0/22 +45.251.168.0/22 +45.251.172.0/22 +45.251.176.0/22 +45.251.180.0/22 +45.251.184.0/22 +45.251.188.0/22 +45.251.192.0/22 +45.251.196.0/22 +45.251.200.0/22 +45.251.204.0/22 +45.251.208.0/22 +45.251.212.0/22 +45.251.216.0/22 +45.251.220.0/22 +45.251.224.0/22 +45.251.240.0/22 +45.252.0.0/22 +45.252.4.0/22 +45.252.8.0/22 +45.252.12.0/22 +45.252.16.0/22 +45.252.20.0/22 +45.252.24.0/22 +45.252.28.0/22 +45.252.32.0/22 +45.252.36.0/22 +45.252.40.0/22 +45.252.44.0/22 +45.252.48.0/22 +45.252.60.0/22 +45.252.84.0/22 +45.252.88.0/22 +45.252.92.0/22 +45.252.96.0/22 +45.252.100.0/22 +45.252.104.0/22 +45.252.108.0/22 +45.252.112.0/22 +45.252.116.0/22 +45.252.120.0/22 +45.252.124.0/22 +45.252.128.0/22 +45.252.132.0/22 +45.252.136.0/22 +45.252.140.0/22 +45.252.144.0/22 +45.252.148.0/22 +45.252.152.0/22 +45.252.156.0/22 +45.252.160.0/22 +45.252.164.0/22 +45.252.168.0/22 +45.252.172.0/22 +45.252.176.0/22 +45.252.192.0/22 +45.252.196.0/22 +45.252.200.0/22 +45.252.204.0/22 +45.252.208.0/22 +45.252.212.0/22 +45.252.216.0/22 +45.252.220.0/22 +45.252.224.0/22 +45.252.228.0/22 +45.252.232.0/22 +45.253.0.0/22 +45.253.4.0/22 +45.253.8.0/22 +45.253.12.0/22 +45.253.16.0/22 +45.253.20.0/22 +45.253.24.0/22 +45.253.28.0/22 +45.253.32.0/22 +45.253.36.0/22 +45.253.40.0/22 +45.253.44.0/22 +45.253.48.0/22 +45.253.52.0/22 +45.253.56.0/22 +45.253.60.0/22 +45.253.64.0/22 +45.253.68.0/22 +45.253.72.0/22 +45.253.76.0/22 +45.253.80.0/22 +45.253.84.0/22 +45.253.92.0/22 +45.253.96.0/22 +45.253.100.0/22 +45.253.104.0/22 +45.253.108.0/22 +45.253.112.0/22 +45.253.116.0/22 +45.253.120.0/22 +45.253.132.0/22 +45.253.136.0/22 +45.253.140.0/22 +45.253.144.0/22 +45.253.148.0/22 +45.253.152.0/22 +45.253.156.0/22 +45.253.160.0/22 +45.253.164.0/22 +45.253.168.0/22 +45.253.172.0/22 +45.253.176.0/22 +45.253.180.0/22 +45.253.184.0/22 +45.253.188.0/22 +45.253.192.0/22 +45.253.196.0/22 +45.253.200.0/22 +45.253.204.0/22 +45.253.208.0/22 +45.253.212.0/22 +45.253.216.0/22 +45.253.220.0/22 +45.253.224.0/22 +45.253.228.0/22 +45.253.232.0/22 +45.253.236.0/22 +45.253.240.0/22 +45.253.244.0/22 +45.254.0.0/22 +45.254.4.0/22 +45.254.8.0/22 +45.254.12.0/22 +45.254.16.0/22 +45.254.20.0/22 +45.254.24.0/22 +45.254.28.0/22 +45.254.40.0/22 +45.254.48.0/22 +45.254.52.0/22 +45.254.56.0/22 +45.254.60.0/22 +45.254.64.0/22 +45.254.68.0/22 +45.254.72.0/22 +45.254.76.0/22 +45.254.80.0/22 +45.254.84.0/22 +45.254.88.0/22 +45.254.92.0/22 +45.254.96.0/22 +45.254.100.0/22 +45.254.104.0/22 +45.254.108.0/22 +45.254.112.0/22 +45.254.116.0/22 +45.254.120.0/22 +45.254.124.0/22 +45.254.128.0/22 +45.254.132.0/22 +45.254.136.0/22 +45.254.140.0/22 +45.254.144.0/22 +45.254.148.0/22 +45.254.152.0/22 +45.254.156.0/22 +45.254.160.0/22 +45.254.164.0/22 +45.254.168.0/22 +45.254.172.0/22 +45.254.176.0/22 +45.254.180.0/22 +45.254.184.0/22 +45.254.188.0/22 +45.254.192.0/22 +45.254.196.0/22 +45.254.200.0/22 +45.254.204.0/22 +45.254.208.0/22 +45.254.212.0/22 +45.254.216.0/22 +45.254.220.0/22 +45.254.224.0/22 +45.254.228.0/22 +45.254.236.0/22 +45.254.240.0/22 +45.254.248.0/22 +45.255.0.0/22 +45.255.4.0/22 +45.255.8.0/22 +45.255.12.0/22 +45.255.16.0/22 +45.255.20.0/22 +45.255.24.0/22 +45.255.28.0/22 +45.255.32.0/22 +45.255.36.0/22 +45.255.40.0/22 +45.255.44.0/22 +45.255.48.0/22 +45.255.52.0/22 +45.255.56.0/22 +45.255.60.0/22 +45.255.64.0/22 +45.255.68.0/22 +45.255.72.0/22 +45.255.76.0/22 +45.255.80.0/22 +45.255.84.0/22 +45.255.88.0/22 +45.255.92.0/22 +45.255.96.0/22 +45.255.100.0/22 +45.255.104.0/22 +45.255.108.0/22 +45.255.112.0/22 +45.255.116.0/22 +45.255.120.0/22 +45.255.124.0/22 +45.255.132.0/22 +45.255.136.0/22 +45.255.140.0/22 +45.255.144.0/22 +45.255.148.0/22 +45.255.152.0/22 +45.255.156.0/22 +45.255.160.0/22 +45.255.164.0/22 +45.255.168.0/22 +45.255.172.0/22 +45.255.176.0/22 +45.255.180.0/22 +45.255.184.0/22 +45.255.188.0/22 +45.255.192.0/22 +45.255.196.0/22 +45.255.200.0/22 +45.255.204.0/22 +45.255.208.0/22 +45.255.212.0/22 +45.255.216.0/22 +45.255.220.0/22 +45.255.224.0/22 +45.255.228.0/22 +45.255.232.0/22 +45.255.236.0/22 +45.255.240.0/22 +45.255.244.0/22 +45.255.248.0/22 +47.92.0.0/14 +47.96.0.0/11 +49.4.0.0/14 +49.51.0.0/16 +49.52.0.0/14 +49.64.0.0/11 +49.112.0.0/13 +49.120.0.0/14 +49.128.0.0/24 +49.128.2.0/23 +49.128.4.0/22 +49.140.0.0/15 +49.152.0.0/14 +49.208.0.0/15 +49.210.0.0/15 +49.220.0.0/14 +49.232.0.0/14 +49.239.0.0/18 +49.239.192.0/18 +49.246.224.0/19 +52.80.0.0/15 +52.82.0.0/15 +52.130.0.0/15 +54.222.0.0/15 +58.14.0.0/15 +58.16.0.0/16 +58.17.0.0/17 +58.17.128.0/17 +58.18.0.0/16 +58.19.0.0/16 +58.20.0.0/16 +58.21.0.0/16 +58.22.0.0/15 +58.24.0.0/15 +58.30.0.0/15 +58.32.0.0/13 +58.40.0.0/15 +58.42.0.0/16 +58.43.0.0/16 +58.44.0.0/14 +58.48.0.0/13 +58.56.0.0/15 +58.58.0.0/16 +58.59.0.0/17 +58.59.128.0/17 +58.60.0.0/14 +58.65.232.0/21 +58.66.0.0/15 +58.68.128.0/17 +58.82.0.0/17 +58.83.0.0/17 +58.83.128.0/17 +58.87.64.0/18 +58.99.128.0/17 +58.100.0.0/15 +58.116.0.0/14 +58.128.0.0/13 +58.144.0.0/16 +58.154.0.0/15 +58.192.0.0/15 +58.194.0.0/15 +58.196.0.0/15 +58.198.0.0/15 +58.200.0.0/13 +58.208.0.0/12 +58.240.0.0/15 +58.242.0.0/15 +58.244.0.0/15 +58.246.0.0/15 +58.248.0.0/13 +59.32.0.0/13 +59.40.0.0/15 +59.42.0.0/16 +59.43.0.0/16 +59.44.0.0/14 +59.48.0.0/16 +59.49.0.0/17 +59.49.128.0/17 +59.50.0.0/16 +59.51.0.0/17 +59.51.128.0/17 +59.52.0.0/14 +59.56.0.0/14 +59.60.0.0/15 +59.62.0.0/15 +59.64.0.0/14 +59.68.0.0/14 +59.72.0.0/15 +59.74.0.0/15 +59.76.0.0/16 +59.77.0.0/16 +59.78.0.0/15 +59.80.0.0/15 +59.82.0.0/15 +59.107.0.0/17 +59.107.128.0/17 +59.108.0.0/15 +59.110.0.0/15 +59.151.0.0/17 +59.152.16.0/22 +59.152.20.0/22 +59.152.24.0/22 +59.152.28.0/22 +59.152.32.0/22 +59.152.36.0/22 +59.152.64.0/22 +59.152.68.0/22 +59.152.72.0/22 +59.152.76.0/22 +59.152.112.0/22 +59.152.116.0/22 +59.153.4.0/22 +59.153.32.0/22 +59.153.60.0/22 +59.153.64.0/22 +59.153.68.0/22 +59.153.72.0/22 +59.153.92.0/22 +59.153.116.0/22 +59.153.136.0/22 +59.153.152.0/22 +59.153.164.0/22 +59.153.168.0/22 +59.153.172.0/22 +59.153.176.0/22 +59.153.180.0/22 +59.153.184.0/22 +59.153.188.0/22 +59.153.192.0/22 +59.155.0.0/16 +59.172.0.0/15 +59.174.0.0/15 +59.191.0.0/17 +59.192.0.0/10 +60.0.0.0/13 +60.8.0.0/15 +60.10.0.0/16 +60.11.0.0/16 +60.12.0.0/16 +60.13.0.0/18 +60.13.64.0/18 +60.13.128.0/17 +60.14.0.0/15 +60.16.0.0/13 +60.24.0.0/14 +60.28.0.0/15 +60.30.0.0/16 +60.31.0.0/16 +60.55.0.0/16 +60.63.0.0/16 +60.160.0.0/15 +60.162.0.0/15 +60.164.0.0/15 +60.166.0.0/15 +60.168.0.0/13 +60.176.0.0/12 +60.194.0.0/15 +60.200.0.0/14 +60.204.0.0/16 +60.205.0.0/16 +60.206.0.0/15 +60.208.0.0/13 +60.216.0.0/15 +60.218.0.0/15 +60.220.0.0/14 +60.232.0.0/15 +60.235.0.0/16 +60.245.128.0/17 +60.247.0.0/16 +60.252.0.0/16 +60.253.128.0/17 +60.255.0.0/16 +61.4.80.0/22 +61.4.84.0/22 +61.4.88.0/21 +61.4.176.0/20 +61.8.160.0/20 +61.14.212.0/22 +61.14.216.0/22 +61.14.220.0/22 +61.14.240.0/22 +61.14.244.0/22 +61.28.0.0/20 +61.28.16.0/20 +61.28.32.0/19 +61.28.64.0/18 +61.29.128.0/18 +61.29.192.0/19 +61.29.224.0/20 +61.29.240.0/21 +61.29.248.0/22 +61.29.254.0/23 +61.45.128.0/18 +61.45.224.0/20 +61.47.128.0/18 +61.48.0.0/14 +61.52.0.0/15 +61.54.0.0/16 +61.55.0.0/16 +61.87.192.0/18 +61.128.0.0/15 +61.130.0.0/15 +61.132.0.0/16 +61.133.0.0/17 +61.133.128.0/17 +61.134.0.0/18 +61.134.64.0/19 +61.134.96.0/19 +61.134.128.0/18 +61.134.192.0/18 +61.135.0.0/16 +61.136.0.0/18 +61.136.64.0/18 +61.136.128.0/17 +61.137.0.0/17 +61.137.128.0/17 +61.138.0.0/18 +61.138.64.0/18 +61.138.128.0/18 +61.138.192.0/18 +61.139.0.0/17 +61.139.128.0/18 +61.139.192.0/18 +61.140.0.0/14 +61.144.0.0/14 +61.148.0.0/15 +61.150.0.0/15 +61.152.0.0/16 +61.153.0.0/16 +61.154.0.0/15 +61.156.0.0/16 +61.157.0.0/16 +61.158.0.0/17 +61.158.128.0/17 +61.159.0.0/18 +61.159.64.0/18 +61.159.128.0/17 +61.160.0.0/16 +61.161.0.0/18 +61.161.64.0/18 +61.161.128.0/17 +61.162.0.0/16 +61.163.0.0/16 +61.164.0.0/16 +61.165.0.0/16 +61.166.0.0/16 +61.167.0.0/16 +61.168.0.0/16 +61.169.0.0/16 +61.170.0.0/15 +61.172.0.0/14 +61.176.0.0/16 +61.177.0.0/16 +61.178.0.0/16 +61.179.0.0/16 +61.180.0.0/17 +61.180.128.0/17 +61.181.0.0/16 +61.182.0.0/16 +61.183.0.0/16 +61.184.0.0/14 +61.188.0.0/16 +61.189.0.0/17 +61.189.128.0/17 +61.190.0.0/15 +61.232.0.0/14 +61.236.0.0/15 +61.240.0.0/14 +62.234.0.0/16 +68.79.0.0/18 +69.230.192.0/18 +69.231.128.0/18 +69.234.192.0/18 +69.235.128.0/18 +71.131.192.0/18 +71.132.0.0/18 +71.136.64.0/18 +71.137.0.0/18 +81.68.0.0/14 +82.156.0.0/15 +94.191.0.0/17 +101.0.0.0/22 +101.1.0.0/22 +101.2.172.0/22 +101.4.0.0/14 +101.16.0.0/12 +101.33.128.0/17 +101.34.0.0/15 +101.36.0.0/18 +101.36.64.0/19 +101.36.128.0/17 +101.37.0.0/16 +101.38.0.0/15 +101.40.0.0/15 +101.42.0.0/15 +101.44.0.0/14 +101.48.0.0/15 +101.50.8.0/22 +101.50.12.0/22 +101.50.56.0/22 +101.52.0.0/16 +101.53.100.0/22 +101.54.0.0/16 +101.55.224.0/21 +101.64.0.0/13 +101.72.0.0/14 +101.76.0.0/15 +101.78.0.0/22 +101.78.32.0/19 +101.80.0.0/12 +101.96.0.0/21 +101.96.8.0/22 +101.96.16.0/20 +101.96.128.0/17 +101.99.96.0/19 +101.101.64.0/19 +101.101.100.0/24 +101.101.102.0/23 +101.101.104.0/21 +101.101.112.0/20 +101.102.64.0/19 +101.102.100.0/23 +101.102.102.0/24 +101.102.104.0/21 +101.102.112.0/20 +101.104.0.0/14 +101.110.64.0/19 +101.110.96.0/20 +101.110.116.0/22 +101.110.120.0/21 +101.120.0.0/14 +101.124.0.0/15 +101.126.0.0/16 +101.128.0.0/22 +101.128.8.0/21 +101.128.16.0/20 +101.128.32.0/19 +101.129.0.0/16 +101.130.0.0/15 +101.132.0.0/14 +101.144.0.0/12 +101.192.0.0/14 +101.196.0.0/16 +101.197.0.0/16 +101.198.0.0/15 +101.200.0.0/15 +101.203.128.0/19 +101.203.160.0/21 +101.203.172.0/22 +101.203.176.0/20 +101.204.0.0/14 +101.224.0.0/13 +101.232.0.0/15 +101.234.64.0/21 +101.234.76.0/22 +101.234.80.0/20 +101.234.96.0/19 +101.236.0.0/14 +101.240.0.0/14 +101.244.0.0/16 +101.245.0.0/16 +101.246.0.0/15 +101.248.0.0/15 +101.251.0.0/22 +101.251.8.0/21 +101.251.16.0/20 +101.251.32.0/19 +101.251.64.0/18 +101.251.128.0/17 +101.252.0.0/15 +101.254.0.0/16 +103.1.8.0/22 +103.1.20.0/22 +103.1.24.0/22 +103.1.72.0/22 +103.1.88.0/22 +103.1.168.0/22 +103.2.108.0/22 +103.2.156.0/22 +103.2.164.0/22 +103.2.200.0/22 +103.2.204.0/22 +103.2.208.0/22 +103.2.212.0/22 +103.3.84.0/22 +103.3.88.0/22 +103.3.92.0/22 +103.3.96.0/22 +103.3.100.0/22 +103.3.104.0/22 +103.3.108.0/22 +103.3.112.0/22 +103.3.116.0/22 +103.3.120.0/22 +103.3.124.0/22 +103.3.128.0/22 +103.3.132.0/22 +103.3.136.0/22 +103.3.140.0/22 +103.3.148.0/22 +103.3.152.0/22 +103.3.156.0/22 +103.4.56.0/22 +103.4.168.0/22 +103.4.184.0/22 +103.4.224.0/22 +103.5.36.0/22 +103.5.52.0/22 +103.5.56.0/22 +103.5.152.0/22 +103.5.168.0/22 +103.5.192.0/22 +103.5.252.0/22 +103.6.76.0/22 +103.6.108.0/22 +103.6.220.0/22 +103.6.228.0/22 +103.7.28.0/22 +103.7.140.0/22 +103.7.212.0/22 +103.7.216.0/22 +103.7.220.0/22 +103.8.0.0/22 +103.8.4.0/22 +103.8.8.0/22 +103.8.32.0/22 +103.8.52.0/22 +103.8.68.0/22 +103.8.108.0/22 +103.8.156.0/22 +103.8.200.0/22 +103.8.204.0/22 +103.8.220.0/22 +103.9.8.0/22 +103.9.24.0/22 +103.9.108.0/22 +103.9.152.0/22 +103.9.192.0/22 +103.9.248.0/22 +103.9.252.0/22 +103.10.0.0/22 +103.10.16.0/22 +103.10.84.0/22 +103.10.140.0/22 +103.11.16.0/22 +103.11.168.0/22 +103.11.180.0/22 +103.12.32.0/22 +103.12.68.0/22 +103.12.92.0/22 +103.12.136.0/22 +103.12.184.0/22 +103.12.232.0/22 +103.13.12.0/22 +103.13.124.0/22 +103.13.144.0/22 +103.13.196.0/22 +103.13.220.0/22 +103.13.244.0/22 +103.14.32.0/22 +103.14.84.0/22 +103.14.100.0/22 +103.14.132.0/22 +103.14.136.0/22 +103.14.156.0/22 +103.14.240.0/22 +103.15.4.0/22 +103.15.8.0/22 +103.15.16.0/22 +103.15.96.0/22 +103.15.200.0/22 +103.16.52.0/22 +103.16.80.0/22 +103.16.84.0/22 +103.16.88.0/22 +103.16.108.0/22 +103.16.124.0/22 +103.17.40.0/22 +103.17.64.0/22 +103.17.120.0/22 +103.17.136.0/22 +103.17.160.0/22 +103.17.204.0/22 +103.17.228.0/22 +103.18.192.0/22 +103.18.208.0/22 +103.18.212.0/22 +103.18.224.0/22 +103.19.12.0/22 +103.19.40.0/22 +103.19.44.0/22 +103.19.64.0/22 +103.19.68.0/22 +103.19.72.0/22 +103.19.232.0/22 +103.20.12.0/22 +103.20.32.0/22 +103.20.44.0/22 +103.20.68.0/22 +103.20.112.0/22 +103.20.128.0/22 +103.20.160.0/22 +103.20.248.0/22 +103.21.112.0/22 +103.21.116.0/22 +103.21.136.0/22 +103.21.140.0/22 +103.21.176.0/22 +103.21.208.0/22 +103.21.240.0/22 +103.22.0.0/22 +103.22.4.0/22 +103.22.8.0/22 +103.22.12.0/22 +103.22.16.0/22 +103.22.20.0/22 +103.22.24.0/22 +103.22.28.0/22 +103.22.32.0/22 +103.22.36.0/22 +103.22.40.0/22 +103.22.44.0/22 +103.22.48.0/22 +103.22.52.0/22 +103.22.56.0/22 +103.22.60.0/22 +103.22.64.0/22 +103.22.68.0/22 +103.22.72.0/22 +103.22.76.0/22 +103.22.80.0/22 +103.22.84.0/22 +103.22.88.0/22 +103.22.92.0/22 +103.22.100.0/22 +103.22.104.0/22 +103.22.108.0/22 +103.22.112.0/22 +103.22.116.0/22 +103.22.120.0/22 +103.22.124.0/22 +103.22.188.0/22 +103.22.228.0/22 +103.22.252.0/22 +103.23.8.0/22 +103.23.56.0/22 +103.23.160.0/22 +103.23.164.0/22 +103.23.176.0/22 +103.23.228.0/22 +103.24.24.0/22 +103.24.116.0/22 +103.24.128.0/22 +103.24.144.0/22 +103.24.176.0/22 +103.24.184.0/22 +103.24.220.0/22 +103.24.228.0/22 +103.24.248.0/22 +103.24.252.0/22 +103.25.8.0/23 +103.25.20.0/22 +103.25.24.0/22 +103.25.28.0/22 +103.25.32.0/22 +103.25.36.0/22 +103.25.40.0/22 +103.25.48.0/22 +103.25.64.0/22 +103.25.68.0/22 +103.25.148.0/22 +103.25.156.0/22 +103.25.216.0/22 +103.26.0.0/22 +103.26.64.0/22 +103.26.76.0/22 +103.26.132.0/22 +103.26.156.0/22 +103.26.160.0/22 +103.26.228.0/22 +103.26.240.0/22 +103.27.4.0/22 +103.27.12.0/22 +103.27.24.0/22 +103.27.56.0/22 +103.27.96.0/22 +103.27.184.0/22 +103.27.208.0/22 +103.27.212.0/22 +103.27.240.0/22 +103.28.4.0/22 +103.28.8.0/22 +103.28.184.0/22 +103.28.204.0/22 +103.28.212.0/22 +103.29.16.0/22 +103.29.128.0/22 +103.29.132.0/22 +103.29.136.0/22 +103.30.20.0/22 +103.30.96.0/22 +103.30.148.0/22 +103.30.200.0/22 +103.30.228.0/22 +103.30.236.0/22 +103.31.0.0/22 +103.31.48.0/22 +103.31.52.0/22 +103.31.56.0/22 +103.31.60.0/22 +103.31.64.0/22 +103.31.68.0/22 +103.31.148.0/22 +103.31.160.0/22 +103.31.168.0/22 +103.31.200.0/22 +103.31.236.0/22 +103.32.0.0/22 +103.32.4.0/22 +103.32.8.0/22 +103.32.12.0/22 +103.32.16.0/22 +103.32.20.0/22 +103.32.24.0/22 +103.32.28.0/22 +103.32.32.0/22 +103.32.36.0/22 +103.32.40.0/22 +103.32.44.0/22 +103.32.48.0/22 +103.32.52.0/22 +103.32.56.0/22 +103.32.60.0/22 +103.32.64.0/22 +103.32.68.0/22 +103.32.72.0/22 +103.32.76.0/22 +103.32.80.0/22 +103.32.84.0/22 +103.32.88.0/22 +103.32.92.0/22 +103.32.96.0/22 +103.32.100.0/22 +103.32.104.0/22 +103.32.108.0/22 +103.32.112.0/22 +103.32.116.0/22 +103.32.120.0/22 +103.32.124.0/22 +103.32.128.0/22 +103.32.132.0/22 +103.32.136.0/22 +103.32.140.0/22 +103.32.144.0/22 +103.32.148.0/22 +103.32.152.0/22 +103.32.156.0/22 +103.32.160.0/22 +103.32.164.0/22 +103.32.168.0/22 +103.32.172.0/22 +103.32.176.0/22 +103.32.180.0/22 +103.32.184.0/22 +103.32.188.0/22 +103.32.192.0/22 +103.32.196.0/22 +103.32.200.0/22 +103.32.204.0/22 +103.32.208.0/22 +103.32.212.0/22 +103.32.216.0/22 +103.32.220.0/22 +103.32.224.0/22 +103.32.228.0/22 +103.32.232.0/22 +103.32.236.0/22 +103.32.240.0/22 +103.32.244.0/22 +103.32.248.0/22 +103.32.252.0/22 +103.33.0.0/22 +103.33.4.0/22 +103.33.8.0/22 +103.33.12.0/22 +103.33.16.0/22 +103.33.20.0/22 +103.33.24.0/22 +103.33.28.0/22 +103.33.32.0/22 +103.33.36.0/22 +103.33.40.0/22 +103.33.44.0/22 +103.33.48.0/22 +103.33.52.0/22 +103.33.56.0/22 +103.33.60.0/22 +103.33.64.0/22 +103.33.68.0/22 +103.33.72.0/22 +103.33.76.0/22 +103.33.80.0/22 +103.33.84.0/22 +103.33.88.0/22 +103.33.92.0/22 +103.33.96.0/22 +103.33.100.0/22 +103.33.104.0/22 +103.33.108.0/22 +103.33.112.0/22 +103.33.116.0/22 +103.33.120.0/22 +103.33.124.0/22 +103.33.128.0/22 +103.33.132.0/22 +103.33.136.0/22 +103.33.140.0/22 +103.33.144.0/22 +103.33.148.0/22 +103.33.152.0/22 +103.33.156.0/22 +103.33.160.0/22 +103.33.164.0/22 +103.33.168.0/22 +103.33.172.0/22 +103.33.176.0/22 +103.33.180.0/22 +103.33.184.0/22 +103.33.188.0/22 +103.33.192.0/22 +103.33.196.0/22 +103.33.200.0/22 +103.33.204.0/22 +103.33.208.0/22 +103.33.212.0/22 +103.33.216.0/22 +103.33.220.0/22 +103.33.224.0/22 +103.33.228.0/22 +103.33.232.0/22 +103.33.236.0/22 +103.33.240.0/22 +103.33.244.0/22 +103.33.248.0/22 +103.33.252.0/22 +103.34.0.0/22 +103.34.4.0/22 +103.34.8.0/22 +103.34.12.0/22 +103.34.16.0/22 +103.34.20.0/22 +103.34.24.0/22 +103.34.28.0/22 +103.34.32.0/22 +103.34.36.0/22 +103.34.40.0/22 +103.34.44.0/22 +103.34.48.0/22 +103.34.52.0/22 +103.34.56.0/22 +103.34.60.0/22 +103.34.64.0/22 +103.34.68.0/22 +103.34.72.0/22 +103.34.76.0/22 +103.34.80.0/22 +103.34.84.0/22 +103.34.88.0/22 +103.34.92.0/22 +103.34.96.0/22 +103.34.100.0/22 +103.34.104.0/22 +103.34.108.0/22 +103.34.112.0/22 +103.34.116.0/22 +103.34.120.0/22 +103.34.124.0/22 +103.34.128.0/22 +103.34.132.0/22 +103.34.136.0/22 +103.34.140.0/22 +103.34.144.0/22 +103.34.148.0/22 +103.34.152.0/22 +103.34.156.0/22 +103.34.160.0/22 +103.34.164.0/22 +103.34.168.0/22 +103.34.172.0/22 +103.34.176.0/22 +103.34.180.0/22 +103.34.184.0/22 +103.34.188.0/22 +103.34.192.0/22 +103.34.196.0/22 +103.34.200.0/22 +103.34.204.0/22 +103.34.208.0/22 +103.34.212.0/22 +103.34.216.0/22 +103.34.220.0/22 +103.34.224.0/22 +103.34.228.0/22 +103.34.232.0/22 +103.34.236.0/22 +103.34.240.0/22 +103.34.244.0/22 +103.34.248.0/22 +103.34.252.0/22 +103.35.0.0/22 +103.35.4.0/22 +103.35.8.0/22 +103.35.12.0/22 +103.35.16.0/22 +103.35.20.0/22 +103.35.24.0/22 +103.35.28.0/22 +103.35.32.0/22 +103.35.36.0/22 +103.35.40.0/22 +103.35.44.0/22 +103.35.48.0/22 +103.35.104.0/22 +103.35.116.0/22 +103.35.180.0/22 +103.35.200.0/22 +103.35.220.0/22 +103.36.28.0/22 +103.36.36.0/22 +103.36.56.0/22 +103.36.60.0/22 +103.36.64.0/22 +103.36.72.0/22 +103.36.96.0/22 +103.36.132.0/22 +103.36.136.0/22 +103.36.160.0/22 +103.36.164.0/22 +103.36.168.0/22 +103.36.172.0/22 +103.36.176.0/22 +103.36.180.0/22 +103.36.184.0/22 +103.36.188.0/22 +103.36.192.0/22 +103.36.196.0/22 +103.36.200.0/22 +103.36.204.0/22 +103.36.208.0/22 +103.36.212.0/22 +103.36.216.0/22 +103.36.220.0/22 +103.36.224.0/22 +103.36.228.0/22 +103.36.232.0/22 +103.36.236.0/22 +103.36.240.0/22 +103.36.244.0/22 +103.37.0.0/22 +103.37.12.0/22 +103.37.16.0/22 +103.37.24.0/22 +103.37.44.0/22 +103.37.52.0/22 +103.37.56.0/22 +103.37.72.0/22 +103.37.100.0/22 +103.37.104.0/22 +103.37.124.0/22 +103.37.136.0/22 +103.37.140.0/22 +103.37.144.0/22 +103.37.148.0/22 +103.37.152.0/22 +103.37.156.0/22 +103.37.160.0/22 +103.37.164.0/22 +103.37.172.0/22 +103.37.176.0/22 +103.37.188.0/22 +103.37.208.0/22 +103.37.212.0/22 +103.37.216.0/22 +103.37.220.0/22 +103.37.248.0/22 +103.37.252.0/22 +103.38.0.0/22 +103.38.32.0/22 +103.38.40.0/22 +103.38.44.0/22 +103.38.56.0/22 +103.38.76.0/22 +103.38.84.0/22 +103.38.92.0/22 +103.38.96.0/22 +103.38.116.0/22 +103.38.132.0/22 +103.38.140.0/22 +103.38.224.0/22 +103.38.228.0/22 +103.38.232.0/22 +103.39.64.0/22 +103.39.88.0/22 +103.39.100.0/22 +103.39.104.0/22 +103.39.108.0/22 +103.39.160.0/22 +103.39.164.0/22 +103.39.168.0/22 +103.39.172.0/22 +103.39.176.0/22 +103.39.180.0/22 +103.39.184.0/22 +103.39.188.0/22 +103.39.200.0/22 +103.39.204.0/22 +103.39.208.0/22 +103.39.212.0/22 +103.39.216.0/22 +103.39.220.0/22 +103.39.224.0/22 +103.39.228.0/22 +103.39.232.0/22 +103.40.12.0/22 +103.40.16.0/22 +103.40.20.0/22 +103.40.24.0/22 +103.40.28.0/22 +103.40.32.0/22 +103.40.36.0/22 +103.40.40.0/22 +103.40.44.0/22 +103.40.88.0/22 +103.40.100.0/22 +103.40.192.0/22 +103.40.212.0/22 +103.40.220.0/22 +103.40.228.0/22 +103.40.232.0/22 +103.40.236.0/22 +103.40.240.0/22 +103.40.244.0/22 +103.40.248.0/22 +103.40.252.0/22 +103.41.0.0/22 +103.41.16.0/22 +103.41.52.0/22 +103.41.116.0/22 +103.41.140.0/22 +103.41.148.0/22 +103.41.152.0/22 +103.41.160.0/22 +103.41.164.0/22 +103.41.220.0/22 +103.41.224.0/22 +103.41.228.0/22 +103.41.232.0/22 +103.42.8.0/22 +103.42.24.0/22 +103.42.28.0/22 +103.42.32.0/22 +103.42.64.0/22 +103.42.68.0/22 +103.42.76.0/22 +103.42.104.0/22 +103.42.180.0/22 +103.42.232.0/22 +103.43.16.0/22 +103.43.84.0/22 +103.43.96.0/22 +103.43.100.0/22 +103.43.104.0/22 +103.43.124.0/22 +103.43.184.0/22 +103.43.192.0/22 +103.43.196.0/22 +103.43.208.0/22 +103.43.220.0/22 +103.43.224.0/22 +103.43.240.0/22 +103.44.56.0/22 +103.44.80.0/22 +103.44.88.0/22 +103.44.120.0/22 +103.44.124.0/22 +103.44.132.0/22 +103.44.144.0/22 +103.44.168.0/22 +103.44.176.0/22 +103.44.180.0/22 +103.44.184.0/22 +103.44.188.0/22 +103.44.192.0/22 +103.44.196.0/22 +103.44.200.0/22 +103.44.204.0/22 +103.44.224.0/22 +103.44.236.0/22 +103.44.240.0/22 +103.44.244.0/22 +103.44.248.0/22 +103.44.252.0/22 +103.45.0.0/22 +103.45.4.0/22 +103.45.8.0/22 +103.45.12.0/22 +103.45.16.0/22 +103.45.20.0/22 +103.45.24.0/22 +103.45.28.0/22 +103.45.32.0/22 +103.45.36.0/22 +103.45.40.0/22 +103.45.44.0/22 +103.45.48.0/22 +103.45.52.0/22 +103.45.56.0/22 +103.45.60.0/22 +103.45.72.0/22 +103.45.76.0/22 +103.45.80.0/22 +103.45.84.0/22 +103.45.88.0/22 +103.45.92.0/22 +103.45.96.0/22 +103.45.100.0/22 +103.45.104.0/22 +103.45.108.0/22 +103.45.112.0/22 +103.45.116.0/22 +103.45.120.0/22 +103.45.124.0/22 +103.45.128.0/22 +103.45.132.0/22 +103.45.136.0/22 +103.45.140.0/22 +103.45.144.0/22 +103.45.148.0/22 +103.45.152.0/22 +103.45.156.0/22 +103.45.160.0/22 +103.45.164.0/22 +103.45.168.0/22 +103.45.172.0/22 +103.45.176.0/22 +103.45.180.0/22 +103.45.184.0/22 +103.45.188.0/22 +103.45.192.0/22 +103.45.196.0/22 +103.45.200.0/22 +103.45.204.0/22 +103.45.208.0/22 +103.45.212.0/22 +103.45.216.0/22 +103.45.220.0/22 +103.45.224.0/22 +103.45.248.0/22 +103.46.0.0/22 +103.46.12.0/22 +103.46.16.0/22 +103.46.20.0/22 +103.46.24.0/22 +103.46.28.0/22 +103.46.32.0/22 +103.46.36.0/22 +103.46.40.0/22 +103.46.44.0/22 +103.46.48.0/22 +103.46.52.0/22 +103.46.56.0/22 +103.46.60.0/22 +103.46.64.0/22 +103.46.68.0/22 +103.46.72.0/22 +103.46.76.0/22 +103.46.80.0/22 +103.46.84.0/22 +103.46.88.0/22 +103.46.92.0/22 +103.46.96.0/22 +103.46.100.0/22 +103.46.104.0/22 +103.46.108.0/22 +103.46.112.0/22 +103.46.116.0/22 +103.46.120.0/22 +103.46.124.0/22 +103.46.128.0/22 +103.46.132.0/22 +103.46.136.0/22 +103.46.152.0/22 +103.46.156.0/22 +103.46.160.0/22 +103.46.164.0/22 +103.46.168.0/22 +103.46.172.0/22 +103.46.176.0/22 +103.46.180.0/22 +103.46.244.0/22 +103.46.248.0/22 +103.47.4.0/22 +103.47.20.0/22 +103.47.36.0/22 +103.47.40.0/22 +103.47.48.0/22 +103.47.80.0/22 +103.47.96.0/22 +103.47.108.0/22 +103.47.116.0/22 +103.47.120.0/22 +103.47.136.0/22 +103.47.140.0/22 +103.47.212.0/22 +103.48.52.0/22 +103.48.92.0/22 +103.48.144.0/22 +103.48.148.0/22 +103.48.152.0/22 +103.48.156.0/22 +103.48.202.0/23 +103.48.216.0/22 +103.48.220.0/22 +103.48.224.0/22 +103.48.228.0/22 +103.48.232.0/22 +103.48.236.0/22 +103.48.240.0/22 +103.48.244.0/22 +103.49.12.0/22 +103.49.20.0/22 +103.49.72.0/22 +103.49.76.0/22 +103.49.92.0/22 +103.49.96.0/22 +103.49.108.0/22 +103.49.128.0/22 +103.49.176.0/22 +103.49.180.0/22 +103.49.196.0/22 +103.50.36.0/22 +103.50.44.0/22 +103.50.48.0/22 +103.50.52.0/22 +103.50.56.0/22 +103.50.60.0/22 +103.50.64.0/22 +103.50.68.0/22 +103.50.72.0/22 +103.50.108.0/22 +103.50.112.0/22 +103.50.116.0/22 +103.50.120.0/22 +103.50.124.0/22 +103.50.132.0/22 +103.50.136.0/22 +103.50.140.0/22 +103.50.172.0/22 +103.50.176.0/22 +103.50.180.0/22 +103.50.184.0/22 +103.50.188.0/22 +103.50.192.0/22 +103.50.196.0/22 +103.50.200.0/22 +103.50.220.0/22 +103.50.224.0/22 +103.50.228.0/22 +103.50.232.0/22 +103.50.236.0/22 +103.50.240.0/22 +103.50.244.0/22 +103.50.248.0/22 +103.52.40.0/22 +103.52.72.0/22 +103.52.76.0/22 +103.52.80.0/22 +103.52.84.0/22 +103.52.96.0/22 +103.52.100.0/22 +103.52.104.0/22 +103.52.160.0/22 +103.52.164.0/22 +103.52.172.0/22 +103.52.176.0/22 +103.52.184.0/22 +103.52.196.0/22 +103.53.64.0/22 +103.53.68.0/22 +103.53.92.0/22 +103.53.100.0/22 +103.53.124.0/22 +103.53.128.0/22 +103.53.132.0/22 +103.53.136.0/22 +103.53.140.0/22 +103.53.144.0/22 +103.53.180.0/22 +103.53.204.0/22 +103.53.208.0/22 +103.53.212.0/22 +103.53.216.0/22 +103.53.236.0/22 +103.53.248.0/22 +103.54.8.0/22 +103.54.48.0/22 +103.54.60.0/22 +103.54.160.0/22 +103.54.164.0/22 +103.54.212.0/22 +103.54.240.0/22 +103.55.24.0/22 +103.55.80.0/22 +103.55.120.0/22 +103.55.152.0/22 +103.55.172.0/22 +103.55.204.0/22 +103.55.208.0/22 +103.55.228.0/22 +103.55.236.0/22 +103.56.8.0/22 +103.56.16.0/22 +103.56.20.0/22 +103.56.32.0/22 +103.56.56.0/22 +103.56.60.0/22 +103.56.72.0/22 +103.56.76.0/22 +103.56.100.0/22 +103.56.104.0/22 +103.56.140.0/22 +103.56.152.0/22 +103.56.184.0/22 +103.56.200.0/22 +103.57.12.0/22 +103.57.52.0/22 +103.57.56.0/22 +103.57.76.0/22 +103.57.136.0/22 +103.57.196.0/22 +103.58.24.0/22 +103.59.76.0/22 +103.59.100.0/22 +103.59.112.0/22 +103.59.116.0/22 +103.59.120.0/22 +103.59.124.0/22 +103.59.128.0/22 +103.59.148.0/22 +103.59.164.0/22 +103.60.32.0/22 +103.60.44.0/22 +103.60.164.0/22 +103.60.228.0/22 +103.60.236.0/22 +103.61.60.0/22 +103.61.104.0/22 +103.61.140.0/22 +103.61.152.0/22 +103.61.156.0/22 +103.61.160.0/22 +103.61.172.0/22 +103.61.176.0/22 +103.61.188.0/22 +103.62.24.0/22 +103.62.52.0/22 +103.62.72.0/22 +103.62.76.0/22 +103.62.80.0/22 +103.62.84.0/22 +103.62.88.0/22 +103.62.96.0/22 +103.62.100.0/22 +103.62.104.0/22 +103.62.108.0/22 +103.62.112.0/22 +103.62.116.0/22 +103.62.120.0/22 +103.62.124.0/22 +103.62.128.0/22 +103.62.132.0/22 +103.62.156.0/22 +103.62.160.0/22 +103.62.164.0/22 +103.62.168.0/22 +103.62.172.0/22 +103.62.176.0/22 +103.62.180.0/22 +103.62.184.0/22 +103.62.188.0/22 +103.62.192.0/22 +103.62.204.0/22 +103.62.208.0/22 +103.62.212.0/22 +103.62.216.0/22 +103.62.220.0/22 +103.62.224.0/22 +103.63.32.0/22 +103.63.36.0/22 +103.63.40.0/22 +103.63.44.0/22 +103.63.48.0/22 +103.63.52.0/22 +103.63.56.0/22 +103.63.60.0/22 +103.63.64.0/22 +103.63.68.0/22 +103.63.72.0/22 +103.63.76.0/22 +103.63.80.0/22 +103.63.84.0/22 +103.63.88.0/22 +103.63.140.0/22 +103.63.144.0/22 +103.63.152.0/22 +103.63.160.0/22 +103.63.164.0/22 +103.63.168.0/22 +103.63.172.0/22 +103.63.176.0/22 +103.63.180.0/22 +103.63.184.0/22 +103.63.192.0/22 +103.63.196.0/22 +103.63.200.0/22 +103.63.204.0/22 +103.63.208.0/22 +103.63.240.0/22 +103.63.244.0/22 +103.63.248.0/22 +103.63.252.0/22 +103.64.0.0/22 +103.64.4.0/22 +103.64.24.0/22 +103.64.28.0/22 +103.64.32.0/22 +103.64.36.0/22 +103.64.40.0/22 +103.64.44.0/22 +103.64.48.0/22 +103.64.52.0/22 +103.64.56.0/22 +103.64.60.0/22 +103.64.64.0/22 +103.64.68.0/22 +103.64.72.0/22 +103.64.76.0/22 +103.64.80.0/22 +103.64.84.0/22 +103.64.88.0/22 +103.64.92.0/22 +103.64.96.0/22 +103.64.100.0/22 +103.64.104.0/22 +103.64.108.0/22 +103.64.112.0/22 +103.64.116.0/22 +103.64.120.0/22 +103.64.124.0/22 +103.64.140.0/22 +103.64.144.0/22 +103.64.152.0/22 +103.64.156.0/22 +103.64.160.0/22 +103.64.164.0/22 +103.64.168.0/22 +103.64.172.0/22 +103.64.176.0/22 +103.64.180.0/22 +103.64.184.0/22 +103.64.188.0/22 +103.64.192.0/22 +103.64.196.0/22 +103.64.200.0/22 +103.64.204.0/22 +103.64.208.0/22 +103.64.212.0/22 +103.64.216.0/22 +103.64.220.0/22 +103.64.224.0/22 +103.64.228.0/22 +103.64.232.0/22 +103.64.236.0/22 +103.64.240.0/22 +103.64.244.0/22 +103.64.248.0/22 +103.64.252.0/22 +103.65.0.0/22 +103.65.4.0/22 +103.65.8.0/22 +103.65.12.0/22 +103.65.16.0/22 +103.65.36.0/22 +103.65.40.0/22 +103.65.48.0/22 +103.65.52.0/22 +103.65.56.0/22 +103.65.60.0/22 +103.65.64.0/22 +103.65.68.0/22 +103.65.72.0/22 +103.65.76.0/22 +103.65.80.0/22 +103.65.84.0/22 +103.65.88.0/22 +103.65.92.0/22 +103.65.100.0/22 +103.65.104.0/22 +103.65.108.0/22 +103.65.112.0/22 +103.65.144.0/22 +103.65.148.0/22 +103.65.152.0/22 +103.65.156.0/22 +103.65.160.0/22 +103.65.164.0/22 +103.65.168.0/22 +103.65.172.0/22 +103.66.32.0/22 +103.66.40.0/22 +103.66.92.0/22 +103.66.108.0/22 +103.66.200.0/22 +103.66.216.0/22 +103.66.240.0/22 +103.66.244.0/22 +103.66.248.0/22 +103.66.252.0/22 +103.67.0.0/22 +103.67.4.0/22 +103.67.8.0/22 +103.67.100.0/22 +103.67.104.0/22 +103.67.108.0/22 +103.67.112.0/22 +103.67.116.0/22 +103.67.120.0/22 +103.67.124.0/22 +103.67.128.0/22 +103.67.132.0/22 +103.67.136.0/22 +103.67.140.0/22 +103.67.144.0/22 +103.67.148.0/22 +103.67.172.0/22 +103.67.192.0/22 +103.67.212.0/22 +103.67.252.0/22 +103.68.64.0/22 +103.68.88.0/22 +103.68.100.0/22 +103.68.128.0/22 +103.68.192.0/22 +103.69.16.0/22 +103.69.116.0/22 +103.69.132.0/22 +103.69.152.0/22 +103.69.212.0/22 +103.70.8.0/22 +103.70.148.0/22 +103.70.184.0/22 +103.70.220.0/22 +103.70.224.0/22 +103.70.236.0/22 +103.70.252.0/22 +103.71.0.0/22 +103.71.32.0/22 +103.71.48.0/22 +103.71.68.0/22 +103.71.72.0/22 +103.71.80.0/22 +103.71.84.0/22 +103.71.88.0/22 +103.71.120.0/22 +103.71.124.0/22 +103.71.128.0/22 +103.71.144.0/22 +103.71.196.0/22 +103.71.200.0/22 +103.71.232.0/22 +103.72.12.0/22 +103.72.16.0/22 +103.72.20.0/22 +103.72.24.0/22 +103.72.28.0/22 +103.72.32.0/22 +103.72.36.0/22 +103.72.40.0/22 +103.72.44.0/22 +103.72.48.0/22 +103.72.52.0/22 +103.72.112.0/22 +103.72.116.0/22 +103.72.120.0/22 +103.72.124.0/22 +103.72.128.0/22 +103.72.132.0/22 +103.72.144.0/22 +103.72.148.0/22 +103.72.172.0/22 +103.72.180.0/22 +103.72.224.0/22 +103.72.228.0/22 +103.72.232.0/22 +103.72.236.0/22 +103.72.240.0/22 +103.72.244.0/22 +103.72.248.0/22 +103.72.252.0/22 +103.73.0.0/22 +103.73.4.0/22 +103.73.8.0/22 +103.73.12.0/22 +103.73.16.0/22 +103.73.20.0/22 +103.73.24.0/22 +103.73.28.0/22 +103.73.48.0/22 +103.73.88.0/22 +103.73.96.0/22 +103.73.116.0/22 +103.73.120.0/22 +103.73.128.0/22 +103.73.132.0/22 +103.73.136.0/22 +103.73.140.0/22 +103.73.144.0/22 +103.73.168.0/22 +103.73.176.0/22 +103.73.204.0/22 +103.73.208.0/22 +103.73.240.0/22 +103.73.244.0/22 +103.73.248.0/22 +103.74.24.0/22 +103.74.28.0/22 +103.74.32.0/22 +103.74.36.0/22 +103.74.40.0/22 +103.74.44.0/22 +103.74.48.0/22 +103.74.56.0/22 +103.74.60.0/22 +103.74.80.0/22 +103.74.124.0/22 +103.74.148.0/22 +103.74.152.0/22 +103.74.156.0/22 +103.74.204.0/22 +103.74.232.0/22 +103.75.16.0/22 +103.75.88.0/22 +103.75.92.0/22 +103.75.104.0/22 +103.75.108.0/22 +103.75.112.0/22 +103.75.120.0/22 +103.75.128.0/22 +103.75.144.0/22 +103.75.152.0/22 +103.75.236.0/24 +103.76.60.0/22 +103.76.64.0/22 +103.76.68.0/22 +103.76.72.0/22 +103.76.84.0/22 +103.76.92.0/22 +103.76.216.0/22 +103.76.220.0/22 +103.76.224.0/22 +103.77.28.0/22 +103.77.52.0/22 +103.77.56.0/22 +103.77.72.0/22 +103.77.88.0/22 +103.77.92.0/22 +103.77.132.0/22 +103.77.148.0/22 +103.77.220.0/22 +103.78.56.0/22 +103.78.60.0/22 +103.78.64.0/22 +103.78.68.0/22 +103.78.124.0/22 +103.78.172.0/22 +103.78.176.0/22 +103.78.196.0/22 +103.78.228.0/22 +103.79.24.0/22 +103.79.28.0/22 +103.79.36.0/22 +103.79.40.0/22 +103.79.44.0/22 +103.79.52.0/22 +103.79.56.0/22 +103.79.60.0/22 +103.79.64.0/22 +103.79.68.0/22 +103.79.80.0/22 +103.79.84.0/22 +103.79.120.0/22 +103.79.136.0/22 +103.79.188.0/22 +103.79.192.0/22 +103.79.196.0/22 +103.79.200.0/22 +103.79.204.0/22 +103.79.208.0/22 +103.79.212.0/22 +103.79.240.0/22 +103.80.24.0/22 +103.80.28.0/22 +103.80.44.0/22 +103.80.72.0/22 +103.80.176.0/22 +103.80.180.0/22 +103.80.184.0/22 +103.80.192.0/22 +103.80.200.0/22 +103.80.232.0/22 +103.81.4.0/22 +103.81.8.0/22 +103.81.16.0/22 +103.81.20.0/22 +103.81.44.0/22 +103.81.48.0/22 +103.81.96.0/22 +103.81.120.0/22 +103.81.148.0/22 +103.81.164.0/22 +103.81.168.0/22 +103.81.183.0/24 +103.81.184.0/22 +103.81.200.0/22 +103.81.232.0/22 +103.82.52.0/22 +103.82.60.0/22 +103.82.68.0/22 +103.82.84.0/22 +103.82.104.0/22 +103.82.224.0/22 +103.82.236.0/22 +103.83.44.0/22 +103.83.52.0/22 +103.83.60.0/22 +103.83.64.0/22 +103.83.72.0/22 +103.83.112.0/22 +103.83.120.0/22 +103.83.180.0/22 +103.84.0.0/22 +103.84.12.0/22 +103.84.16.0/22 +103.84.20.0/22 +103.84.24.0/22 +103.84.28.0/22 +103.84.48.0/22 +103.84.64.0/22 +103.84.72.0/22 +103.84.92.0/22 +103.84.108.0/22 +103.84.136.0/22 +103.85.20.0/22 +103.85.24.0/22 +103.85.44.0/22 +103.85.48.0/22 +103.85.84.0/22 +103.85.136.0/22 +103.85.144.0/22 +103.85.164.0/22 +103.85.168.0/22 +103.85.172.0/22 +103.85.176.0/22 +103.85.224.0/22 +103.86.28.0/22 +103.86.32.0/22 +103.86.44.0/22 +103.86.60.0/22 +103.86.80.0/22 +103.86.84.0/22 +103.86.204.0/22 +103.86.208.0/22 +103.86.212.0/22 +103.86.216.0/22 +103.86.220.0/22 +103.86.224.0/22 +103.86.228.0/22 +103.86.232.0/22 +103.86.236.0/22 +103.86.240.0/22 +103.86.244.0/22 +103.86.248.0/22 +103.86.252.0/22 +103.87.0.0/22 +103.87.4.0/22 +103.87.20.0/22 +103.87.32.0/22 +103.87.72.0/22 +103.87.96.0/22 +103.87.132.0/22 +103.87.180.0/22 +103.87.224.0/22 +103.88.4.0/22 +103.88.8.0/22 +103.88.12.0/22 +103.88.16.0/22 +103.88.20.0/22 +103.88.32.0/22 +103.88.36.0/22 +103.88.60.0/22 +103.88.64.0/22 +103.88.72.0/22 +103.88.96.0/22 +103.88.164.0/22 +103.88.176.0/22 +103.88.184.0/22 +103.88.188.0/22 +103.88.212.0/22 +103.89.28.0/22 +103.89.96.0/22 +103.89.100.0/22 +103.89.104.0/22 +103.89.108.0/22 +103.89.112.0/22 +103.89.116.0/22 +103.89.148.0/22 +103.89.172.0/22 +103.89.184.0/22 +103.89.188.0/22 +103.89.192.0/22 +103.89.196.0/22 +103.89.200.0/22 +103.89.204.0/22 +103.89.208.0/22 +103.89.212.0/22 +103.89.216.0/22 +103.89.220.0/22 +103.89.224.0/22 +103.89.228.0/22 +103.90.52.0/22 +103.90.92.0/22 +103.90.100.0/22 +103.90.104.0/22 +103.90.108.0/22 +103.90.112.0/22 +103.90.116.0/22 +103.90.120.0/22 +103.90.124.0/22 +103.90.128.0/22 +103.90.132.0/22 +103.90.152.0/22 +103.90.168.0/22 +103.90.173.0/24 +103.90.176.0/22 +103.90.188.0/22 +103.90.192.0/22 +103.91.36.0/22 +103.91.40.0/22 +103.91.108.0/22 +103.91.152.0/22 +103.91.176.0/22 +103.91.200.0/22 +103.91.208.0/22 +103.91.212.0/22 +103.91.219.0/24 +103.91.236.0/22 +103.91.252.0/22 +103.92.0.0/22 +103.92.4.0/22 +103.92.8.0/22 +103.92.12.0/22 +103.92.48.0/22 +103.92.52.0/22 +103.92.56.0/22 +103.92.60.0/22 +103.92.64.0/22 +103.92.68.0/22 +103.92.72.0/22 +103.92.76.0/22 +103.92.80.0/22 +103.92.86.0/24 +103.92.88.0/22 +103.92.108.0/22 +103.92.124.0/22 +103.92.128.0/24 +103.92.132.0/22 +103.92.156.0/22 +103.92.164.0/22 +103.92.168.0/22 +103.92.172.0/22 +103.92.176.0/22 +103.92.180.0/22 +103.92.184.0/22 +103.92.188.0/22 +103.92.192.0/22 +103.92.236.0/22 +103.92.240.0/22 +103.92.244.0/22 +103.92.248.0/22 +103.92.252.0/22 +103.93.0.0/22 +103.93.4.0/22 +103.93.28.0/22 +103.93.76.0/22 +103.93.84.0/22 +103.93.152.0/22 +103.93.180.0/22 +103.93.204.0/22 +103.94.12.0/22 +103.94.20.0/22 +103.94.28.0/22 +103.94.32.0/22 +103.94.36.0/22 +103.94.40.0/22 +103.94.44.0/22 +103.94.72.0/22 +103.94.88.0/22 +103.94.116.0/22 +103.94.160.0/22 +103.94.180.0/22 +103.94.200.0/22 +103.95.28.0/22 +103.95.52.0/22 +103.95.64.0/22 +103.95.68.0/22 +103.95.88.0/22 +103.95.92.0/22 +103.95.116.0/22 +103.95.128.0/22 +103.95.136.0/22 +103.95.140.0/22 +103.95.144.0/22 +103.95.152.0/22 +103.95.207.0/24 +103.95.216.0/22 +103.95.220.0/22 +103.95.224.0/22 +103.95.236.0/22 +103.95.240.0/22 +103.95.244.0/22 +103.95.248.0/22 +103.95.252.0/22 +103.96.0.0/22 +103.96.8.0/22 +103.96.80.0/22 +103.96.124.0/22 +103.96.136.0/22 +103.96.140.0/24 +103.96.148.0/22 +103.96.152.0/22 +103.96.156.0/22 +103.96.160.0/22 +103.96.164.0/22 +103.96.168.0/22 +103.96.172.0/22 +103.96.176.0/22 +103.96.180.0/22 +103.96.184.0/22 +103.96.188.0/22 +103.96.192.0/22 +103.96.196.0/22 +103.96.200.0/22 +103.96.204.0/22 +103.96.208.0/22 +103.96.212.0/22 +103.96.216.0/22 +103.97.8.0/22 +103.97.12.0/22 +103.97.16.0/22 +103.97.20.0/22 +103.97.24.0/22 +103.97.28.0/22 +103.97.32.0/22 +103.97.36.0/22 +103.97.40.0/22 +103.97.56.0/22 +103.97.60.0/22 +103.97.64.0/22 +103.97.68.0/22 +103.97.72.0/22 +103.97.80.0/22 +103.97.112.0/22 +103.97.116.0/22 +103.97.128.0/22 +103.97.144.0/22 +103.97.148.0/22 +103.97.188.0/22 +103.97.192.0/22 +103.97.224.0/22 +103.97.228.0/23 +103.98.28.0/23 +103.98.40.0/22 +103.98.44.0/22 +103.98.48.0/22 +103.98.56.0/22 +103.98.80.0/22 +103.98.88.0/22 +103.98.92.0/22 +103.98.96.0/22 +103.98.100.0/22 +103.98.124.0/22 +103.98.136.0/22 +103.98.140.0/22 +103.98.144.0/22 +103.98.164.0/22 +103.98.168.0/22 +103.98.180.0/22 +103.98.196.0/22 +103.98.216.0/22 +103.98.220.0/22 +103.98.224.0/22 +103.98.228.0/22 +103.98.232.0/22 +103.98.240.0/22 +103.98.244.0/22 +103.98.248.0/22 +103.98.252.0/22 +103.99.40.0/23 +103.99.52.0/22 +103.99.56.0/22 +103.99.60.0/22 +103.99.76.0/22 +103.99.104.0/22 +103.99.116.0/22 +103.99.120.0/22 +103.99.152.0/22 +103.99.220.0/22 +103.99.232.0/22 +103.99.236.0/22 +103.100.0.0/22 +103.100.32.0/22 +103.100.40.0/22 +103.100.48.0/22 +103.100.52.0/22 +103.100.56.0/22 +103.100.60.0/22 +103.100.64.0/22 +103.100.68.0/22 +103.100.88.0/22 +103.100.116.0/22 +103.100.140.0/22 +103.100.144.0/22 +103.100.236.0/22 +103.100.240.0/22 +103.100.248.0/22 +103.100.252.0/22 +103.101.4.0/22 +103.101.8.0/22 +103.101.12.0/22 +103.101.28.0/22 +103.101.60.0/22 +103.101.120.0/22 +103.101.124.0/22 +103.101.144.0/22 +103.101.148.0/22 +103.101.153.0/24 +103.101.180.0/22 +103.101.184.0/22 +103.102.76.0/22 +103.102.80.0/22 +103.102.168.0/22 +103.102.172.0/22 +103.102.180.0/22 +103.102.184.0/22 +103.102.188.0/22 +103.102.192.0/22 +103.102.196.0/22 +103.102.200.0/22 +103.102.208.0/22 +103.102.212.0/22 +103.103.12.0/22 +103.103.16.0/22 +103.103.36.0/22 +103.103.68.0/22 +103.103.72.0/22 +103.103.176.0/22 +103.103.188.0/22 +103.103.200.0/22 +103.103.204.0/22 +103.103.220.0/22 +103.103.224.0/22 +103.103.228.0/22 +103.103.232.0/22 +103.103.248.0/22 +103.103.252.0/22 +103.104.0.0/22 +103.104.4.0/22 +103.104.36.0/22 +103.104.40.0/22 +103.104.64.0/22 +103.104.104.0/22 +103.104.152.0/22 +103.104.168.0/22 +103.104.172.0/22 +103.104.188.0/22 +103.104.198.0/23 +103.104.252.0/22 +103.105.0.0/22 +103.105.4.0/22 +103.105.12.0/22 +103.105.16.0/22 +103.105.23.0/24 +103.105.56.0/22 +103.105.60.0/22 +103.105.116.0/22 +103.105.132.0/22 +103.105.180.0/22 +103.105.184.0/22 +103.105.200.0/22 +103.105.204.0/22 +103.105.220.0/22 +103.106.36.0/22 +103.106.40.0/22 +103.106.44.0/22 +103.106.60.0/22 +103.106.68.0/22 +103.106.96.0/22 +103.106.120.0/22 +103.106.128.0/22 +103.106.132.0/22 +103.106.160.0/22 +103.106.188.0/22 +103.106.196.0/22 +103.106.202.0/23 +103.106.212.0/22 +103.106.244.0/22 +103.106.252.0/22 +103.107.0.0/22 +103.107.8.0/24 +103.107.28.0/22 +103.107.32.0/22 +103.107.44.0/22 +103.107.72.0/22 +103.107.108.0/22 +103.107.164.0/22 +103.107.168.0/22 +103.107.188.0/22 +103.107.192.0/22 +103.107.208.0/22 +103.107.212.0/22 +103.107.216.0/22 +103.107.220.0/22 +103.108.52.0/22 +103.108.160.0/22 +103.108.164.0/22 +103.108.184.0/23 +103.108.188.0/23 +103.108.192.0/22 +103.108.196.0/22 +103.108.208.0/22 +103.108.212.0/22 +103.108.224.0/22 +103.108.244.0/22 +103.108.251.0/24 +103.109.20.0/22 +103.109.48.0/22 +103.109.88.0/22 +103.109.106.0/23 +103.109.248.0/22 +103.110.80.0/23 +103.110.92.0/22 +103.110.116.0/22 +103.110.127.0/24 +103.110.128.0/23 +103.110.132.0/22 +103.110.136.0/22 +103.110.152.0/22 +103.110.156.0/22 +103.110.188.0/22 +103.110.204.0/22 +103.111.64.0/22 +103.111.172.0/22 +103.111.252.0/22 +103.112.28.0/22 +103.112.68.0/22 +103.112.72.0/22 +103.112.88.0/22 +103.112.92.0/22 +103.112.96.0/22 +103.112.108.0/22 +103.112.112.0/22 +103.112.116.0/22 +103.112.140.0/22 +103.112.172.0/22 +103.112.184.0/22 +103.112.208.0/22 +103.113.4.0/22 +103.113.92.0/22 +103.113.144.0/22 +103.113.220.0/22 +103.113.232.0/22 +103.113.236.0/22 +103.114.4.0/22 +103.114.28.0/22 +103.114.68.0/22 +103.114.72.0/22 +103.114.100.0/22 +103.114.132.0/22 +103.114.148.0/22 +103.114.156.0/22 +103.114.176.0/22 +103.114.212.0/22 +103.114.236.0/22 +103.114.240.0/22 +103.115.16.0/22 +103.115.40.0/22 +103.115.44.0/22 +103.115.48.0/22 +103.115.52.0/22 +103.115.56.0/22 +103.115.60.0/22 +103.115.64.0/22 +103.115.68.0/22 +103.115.92.0/22 +103.115.120.0/22 +103.115.148.0/22 +103.115.204.0/23 +103.115.248.0/22 +103.116.20.0/22 +103.116.40.0/22 +103.116.64.0/22 +103.116.72.0/22 +103.116.76.0/22 +103.116.92.0/22 +103.116.120.0/22 +103.116.128.0/22 +103.116.132.0/23 +103.116.148.0/22 +103.116.184.0/22 +103.116.206.0/23 +103.116.220.0/22 +103.116.224.0/22 +103.116.228.0/22 +103.117.16.0/22 +103.117.72.0/22 +103.117.88.0/22 +103.117.132.0/22 +103.117.136.0/22 +103.117.188.0/22 +103.117.220.0/22 +103.118.19.0/24 +103.118.36.0/22 +103.118.52.0/22 +103.118.56.0/22 +103.118.60.0/22 +103.118.64.0/22 +103.118.68.0/22 +103.118.72.0/22 +103.118.88.0/22 +103.118.173.0/24 +103.118.192.0/22 +103.118.196.0/22 +103.118.200.0/22 +103.118.204.0/22 +103.118.208.0/22 +103.118.212.0/22 +103.118.216.0/22 +103.118.220.0/22 +103.118.240.0/22 +103.118.244.0/22 +103.118.248.0/22 +103.118.252.0/22 +103.119.0.0/22 +103.119.12.0/22 +103.119.16.0/22 +103.119.28.0/22 +103.119.44.0/22 +103.119.104.0/22 +103.119.115.0/24 +103.119.156.0/22 +103.119.180.0/22 +103.119.200.0/22 +103.119.224.0/22 +103.120.52.0/22 +103.120.72.0/22 +103.120.88.0/22 +103.120.96.0/22 +103.120.100.0/22 +103.120.140.0/22 +103.120.196.0/22 +103.120.224.0/22 +103.121.52.0/22 +103.121.92.0/22 +103.121.160.0/22 +103.121.164.0/22 +103.121.250.0/24 +103.121.252.0/22 +103.122.48.0/22 +103.122.176.0/22 +103.122.192.0/22 +103.122.240.0/22 +103.123.4.0/22 +103.123.56.0/22 +103.123.88.0/22 +103.123.92.0/22 +103.123.116.0/22 +103.123.160.0/22 +103.123.176.0/22 +103.123.200.0/22 +103.123.204.0/22 +103.123.208.0/22 +103.123.212.0/22 +103.124.24.0/22 +103.124.48.0/22 +103.124.64.0/22 +103.124.212.0/22 +103.124.216.0/22 +103.125.20.0/22 +103.125.44.0/22 +103.125.132.0/22 +103.125.164.0/22 +103.125.196.0/22 +103.125.236.0/22 +103.125.248.0/22 +103.126.0.0/22 +103.126.16.0/22 +103.126.44.0/22 +103.126.100.0/22 +103.126.124.0/22 +103.126.128.0/22 +103.126.132.0/22 +103.126.208.0/22 +103.126.241.0/24 +103.129.52.0/22 +103.130.132.0/22 +103.130.152.0/24 +103.130.160.0/22 +103.130.228.0/22 +103.131.20.0/22 +103.131.36.0/22 +103.131.152.0/22 +103.131.168.0/22 +103.131.176.0/22 +103.131.224.0/22 +103.131.228.0/22 +103.131.240.0/22 +103.132.60.0/22 +103.132.64.0/22 +103.132.68.0/22 +103.132.72.0/22 +103.132.76.0/22 +103.132.80.0/22 +103.132.104.0/22 +103.132.108.0/22 +103.132.112.0/22 +103.132.116.0/22 +103.132.120.0/22 +103.132.160.0/22 +103.132.164.0/22 +103.132.188.0/22 +103.132.208.0/22 +103.132.212.0/22 +103.132.234.0/23 +103.133.12.0/22 +103.133.40.0/22 +103.133.128.0/22 +103.133.136.0/22 +103.133.176.0/22 +103.133.232.0/22 +103.134.12.0/24 +103.134.196.0/22 +103.135.80.0/22 +103.135.124.0/22 +103.135.148.0/22 +103.135.156.0/22 +103.135.160.0/22 +103.135.164.0/22 +103.135.176.0/22 +103.135.184.0/22 +103.135.192.0/22 +103.135.196.0/22 +103.135.236.0/22 +103.136.128.0/22 +103.136.232.0/22 +103.137.58.0/23 +103.137.60.0/24 +103.137.76.0/22 +103.137.136.0/23 +103.137.149.0/24 +103.137.180.0/22 +103.137.236.0/22 +103.138.2.0/23 +103.138.12.0/23 +103.138.80.0/22 +103.138.134.0/23 +103.138.156.0/23 +103.138.208.0/23 +103.138.220.0/23 +103.138.246.0/23 +103.138.248.0/23 +103.139.0.0/23 +103.139.2.0/23 +103.139.22.0/23 +103.139.113.0/24 +103.139.134.0/23 +103.139.136.0/23 +103.139.172.0/23 +103.139.200.0/23 +103.139.204.0/23 +103.139.212.0/23 +103.140.8.0/23 +103.140.14.0/23 +103.140.70.0/23 +103.140.126.0/23 +103.140.140.0/23 +103.140.144.0/23 +103.140.152.0/23 +103.140.192.0/23 +103.140.194.0/23 +103.140.228.0/23 +103.141.10.0/23 +103.141.36.0/23 +103.141.58.0/23 +103.141.128.0/23 +103.141.186.0/23 +103.141.242.0/23 +103.142.28.0/23 +103.142.58.0/23 +103.142.82.0/23 +103.142.96.0/23 +103.142.102.0/23 +103.142.122.0/23 +103.142.128.0/23 +103.142.140.0/23 +103.142.154.0/23 +103.142.156.0/23 +103.142.172.0/23 +103.142.180.0/23 +103.142.186.0/23 +103.142.190.0/23 +103.142.220.0/23 +103.142.230.0/24 +103.142.234.0/23 +103.142.238.0/23 +103.142.248.0/23 +103.143.16.0/23 +103.143.18.0/23 +103.143.31.0/24 +103.143.74.0/23 +103.143.120.0/23 +103.143.124.0/23 +103.143.132.0/23 +103.143.134.0/23 +103.143.174.0/23 +103.143.228.0/23 +103.144.40.0/23 +103.144.52.0/23 +103.144.66.0/23 +103.144.70.0/23 +103.144.72.0/23 +103.144.108.0/23 +103.144.136.0/23 +103.144.148.0/23 +103.144.158.0/23 +103.144.240.0/23 +103.145.38.0/23 +103.145.40.0/23 +103.145.42.0/23 +103.145.60.0/23 +103.145.72.0/23 +103.145.80.0/23 +103.145.86.0/23 +103.145.92.0/23 +103.145.94.0/23 +103.145.98.0/23 +103.145.106.0/23 +103.145.122.0/23 +103.145.188.0/23 +103.145.190.0/23 +103.146.6.0/23 +103.146.72.0/23 +103.146.88.0/23 +103.146.90.0/23 +103.146.124.0/23 +103.146.126.0/23 +103.146.138.0/23 +103.146.230.0/23 +103.146.236.0/23 +103.146.252.0/23 +103.147.12.0/23 +103.147.124.0/23 +103.147.198.0/23 +103.147.206.0/23 +103.148.174.0/23 +103.149.6.0/23 +103.149.17.0/24 +103.149.44.0/23 +103.149.110.0/23 +103.149.132.0/23 +103.149.144.0/23 +103.149.156.0/23 +103.149.181.0/24 +103.149.190.0/23 +103.149.210.0/23 +103.149.214.0/23 +103.149.220.0/23 +103.149.242.0/23 +103.149.244.0/23 +103.149.246.0/23 +103.149.248.0/23 +103.150.24.0/23 +103.150.66.0/23 +103.150.72.0/23 +103.150.122.0/23 +103.150.126.0/23 +103.150.128.0/23 +103.150.130.0/23 +103.150.146.0/23 +103.150.164.0/23 +103.150.172.0/23 +103.150.180.0/23 +103.150.200.0/23 +103.150.210.0/23 +103.150.214.0/23 +103.150.216.0/23 +103.150.244.0/23 +103.151.4.0/23 +103.151.44.0/23 +103.151.138.0/23 +103.151.142.0/23 +103.151.148.0/23 +103.151.150.0/23 +103.151.158.0/23 +103.151.178.0/23 +103.151.206.0/23 +103.151.216.0/23 +103.151.228.0/23 +103.152.14.0/23 +103.152.24.0/23 +103.152.28.0/23 +103.152.30.0/23 +103.152.56.0/23 +103.152.76.0/23 +103.152.80.0/23 +103.152.98.0/23 +103.152.112.0/23 +103.152.120.0/23 +103.152.122.0/23 +103.152.132.0/23 +103.152.152.0/23 +103.152.168.0/23 +103.152.170.0/23 +103.152.186.0/23 +103.152.190.0/23 +103.152.192.0/23 +103.152.200.0/23 +103.152.208.0/23 +103.152.224.0/23 +103.152.226.0/23 +103.152.246.0/23 +103.152.250.0/23 +103.153.4.0/23 +103.153.36.0/23 +103.153.98.0/23 +103.153.100.0/23 +103.153.114.0/23 +103.153.122.0/23 +103.153.128.0/23 +103.153.132.0/23 +103.153.138.0/23 +103.153.146.0/23 +103.153.160.0/23 +103.154.18.0/23 +103.154.30.0/23 +103.154.32.0/23 +103.154.40.0/23 +103.154.66.0/23 +103.154.162.0/23 +103.154.164.0/23 +103.154.168.0/23 +103.154.242.0/23 +103.155.14.0/23 +103.155.16.0/23 +103.155.34.0/23 +103.155.48.0/23 +103.155.76.0/23 +103.155.100.0/23 +103.155.110.0/23 +103.155.120.0/23 +103.155.214.0/23 +103.155.248.0/23 +103.156.24.0/23 +103.156.28.0/23 +103.156.68.0/23 +103.156.78.0/23 +103.156.104.0/23 +103.156.158.0/23 +103.156.166.0/23 +103.156.174.0/23 +103.156.186.0/23 +103.156.228.0/23 +103.157.30.0/23 +103.157.138.0/23 +103.157.174.0/23 +103.157.212.0/23 +103.157.234.0/23 +103.157.254.0/23 +103.158.0.0/23 +103.158.8.0/23 +103.158.13.0/24 +103.158.16.0/23 +103.158.190.0/23 +103.158.200.0/23 +103.158.224.0/23 +103.159.80.0/23 +103.159.122.0/23 +103.159.124.0/23 +103.159.134.0/23 +103.159.142.0/23 +103.160.32.0/23 +103.160.34.0/23 +103.160.112.0/23 +103.160.114.0/23 +103.160.244.0/23 +103.160.254.0/23 +103.161.14.0/23 +103.161.102.0/23 +103.161.138.0/23 +103.161.208.0/23 +103.161.220.0/23 +103.161.254.0/23 +103.162.10.0/23 +103.162.32.0/23 +103.162.38.0/23 +103.162.116.0/23 +103.163.28.0/23 +103.163.32.0/23 +103.163.46.0/23 +103.163.74.0/23 +103.163.180.0/23 +103.164.4.0/23 +103.164.32.0/23 +103.164.40.0/23 +103.164.42.0/23 +103.164.64.0/23 +103.164.76.0/23 +103.164.178.0/23 +103.164.226.0/23 +103.165.44.0/23 +103.165.52.0/23 +103.165.82.0/23 +103.165.110.0/23 +103.166.20.0/23 +103.166.50.0/23 +103.166.52.0/23 +103.166.54.0/23 +103.166.84.0/23 +103.166.138.0/23 +103.166.242.0/23 +103.166.246.0/23 +103.167.0.0/23 +103.167.36.0/23 +103.168.98.0/23 +103.168.170.0/23 +103.169.50.0/23 +103.169.62.0/23 +103.169.108.0/23 +103.169.162.0/23 +103.169.202.0/23 +103.169.216.0/23 +103.170.4.0/23 +103.192.0.0/22 +103.192.4.0/22 +103.192.8.0/22 +103.192.12.0/22 +103.192.16.0/22 +103.192.20.0/22 +103.192.24.0/22 +103.192.28.0/22 +103.192.48.0/22 +103.192.52.0/22 +103.192.56.0/22 +103.192.84.0/22 +103.192.88.0/22 +103.192.92.0/22 +103.192.96.0/22 +103.192.100.0/22 +103.192.104.0/22 +103.192.108.0/22 +103.192.112.0/22 +103.192.128.0/22 +103.192.132.0/22 +103.192.136.0/22 +103.192.140.0/22 +103.192.144.0/22 +103.192.164.0/22 +103.192.188.0/22 +103.192.208.0/22 +103.192.212.0/22 +103.192.216.0/22 +103.192.252.0/22 +103.193.40.0/22 +103.193.44.0/22 +103.193.120.0/22 +103.193.124.0/22 +103.193.140.0/22 +103.193.144.0/22 +103.193.160.0/22 +103.193.188.0/22 +103.193.192.0/22 +103.193.212.0/22 +103.193.216.0/22 +103.193.220.0/22 +103.193.224.0/22 +103.193.228.0/22 +103.193.232.0/22 +103.193.236.0/22 +103.193.240.0/22 +103.194.16.0/22 +103.195.104.0/22 +103.195.112.0/22 +103.195.136.0/22 +103.195.148.0/22 +103.195.152.0/22 +103.195.160.0/22 +103.196.64.0/22 +103.196.72.0/22 +103.196.88.0/22 +103.196.92.0/22 +103.196.96.0/22 +103.196.168.0/22 +103.196.204.0/22 +103.197.180.0/22 +103.197.228.0/22 +103.198.20.0/22 +103.198.60.0/22 +103.198.64.0/22 +103.198.72.0/22 +103.198.124.0/22 +103.198.156.0/22 +103.198.180.0/22 +103.198.196.0/22 +103.198.216.0/22 +103.198.220.0/22 +103.198.224.0/22 +103.198.228.0/22 +103.198.232.0/22 +103.198.236.0/22 +103.198.240.0/22 +103.198.244.0/22 +103.199.164.0/22 +103.199.196.0/22 +103.199.228.0/22 +103.199.248.0/22 +103.199.252.0/22 +103.200.28.0/22 +103.200.52.0/22 +103.200.64.0/22 +103.200.68.0/22 +103.200.136.0/22 +103.200.140.0/22 +103.200.144.0/22 +103.200.148.0/22 +103.200.152.0/22 +103.200.156.0/22 +103.200.160.0/22 +103.200.164.0/22 +103.200.168.0/22 +103.200.172.0/22 +103.200.176.0/22 +103.200.180.0/22 +103.200.184.0/22 +103.200.188.0/22 +103.200.192.0/22 +103.200.220.0/22 +103.200.224.0/22 +103.200.228.0/22 +103.200.232.0/22 +103.200.236.0/22 +103.200.240.0/22 +103.200.244.0/22 +103.200.248.0/22 +103.200.252.0/22 +103.201.0.0/22 +103.201.4.0/22 +103.201.8.0/22 +103.201.12.0/22 +103.201.16.0/22 +103.201.20.0/22 +103.201.28.0/22 +103.201.32.0/22 +103.201.36.0/22 +103.201.40.0/22 +103.201.44.0/22 +103.201.48.0/22 +103.201.52.0/22 +103.201.56.0/22 +103.201.60.0/22 +103.201.64.0/22 +103.201.76.0/22 +103.201.80.0/22 +103.201.84.0/22 +103.201.88.0/22 +103.201.92.0/22 +103.201.96.0/22 +103.201.100.0/22 +103.201.104.0/22 +103.201.108.0/22 +103.201.112.0/22 +103.201.116.0/22 +103.201.120.0/22 +103.201.152.0/22 +103.201.156.0/22 +103.201.160.0/22 +103.201.164.0/22 +103.201.168.0/22 +103.201.172.0/22 +103.201.176.0/22 +103.201.180.0/22 +103.201.184.0/22 +103.201.188.0/22 +103.201.192.0/22 +103.201.196.0/22 +103.201.200.0/22 +103.201.204.0/22 +103.201.208.0/22 +103.201.212.0/22 +103.201.216.0/22 +103.201.220.0/22 +103.201.224.0/22 +103.201.228.0/22 +103.201.232.0/22 +103.201.236.0/22 +103.201.240.0/22 +103.201.244.0/22 +103.201.248.0/22 +103.201.252.0/22 +103.202.0.0/22 +103.202.4.0/22 +103.202.8.0/22 +103.202.12.0/22 +103.202.16.0/22 +103.202.20.0/22 +103.202.24.0/22 +103.202.28.0/22 +103.202.32.0/22 +103.202.36.0/22 +103.202.40.0/22 +103.202.44.0/22 +103.202.56.0/22 +103.202.60.0/22 +103.202.64.0/22 +103.202.68.0/22 +103.202.72.0/22 +103.202.76.0/22 +103.202.80.0/22 +103.202.84.0/22 +103.202.88.0/22 +103.202.92.0/22 +103.202.96.0/22 +103.202.100.0/22 +103.202.104.0/22 +103.202.108.0/22 +103.202.112.0/22 +103.202.116.0/22 +103.202.120.0/22 +103.202.124.0/22 +103.202.128.0/22 +103.202.132.0/22 +103.202.136.0/22 +103.202.140.0/22 +103.202.144.0/22 +103.202.152.0/22 +103.202.156.0/22 +103.202.160.0/22 +103.202.164.0/22 +103.202.168.0/22 +103.202.172.0/22 +103.202.176.0/22 +103.202.180.0/22 +103.202.184.0/22 +103.202.188.0/22 +103.202.192.0/22 +103.202.196.0/22 +103.202.200.0/21 +103.202.212.0/22 +103.202.228.0/22 +103.202.236.0/22 +103.202.240.0/22 +103.202.244.0/22 +103.202.248.0/22 +103.202.252.0/22 +103.203.0.0/22 +103.203.4.0/22 +103.203.8.0/22 +103.203.12.0/22 +103.203.16.0/22 +103.203.20.0/22 +103.203.24.0/22 +103.203.28.0/22 +103.203.32.0/22 +103.203.56.0/22 +103.203.96.0/22 +103.203.100.0/22 +103.203.104.0/22 +103.203.108.0/22 +103.203.112.0/22 +103.203.116.0/22 +103.203.120.0/22 +103.203.124.0/22 +103.203.128.0/22 +103.203.140.0/22 +103.203.164.0/22 +103.203.168.0/22 +103.203.192.0/22 +103.203.200.0/22 +103.203.212.0/22 +103.203.216.0/22 +103.204.24.0/22 +103.204.72.0/22 +103.204.88.0/22 +103.204.112.0/22 +103.204.136.0/22 +103.204.140.0/22 +103.204.144.0/22 +103.204.148.0/22 +103.204.152.0/22 +103.204.196.0/22 +103.204.232.0/22 +103.204.236.0/22 +103.205.4.0/22 +103.205.8.0/22 +103.205.40.0/22 +103.205.44.0/22 +103.205.52.0/22 +103.205.108.0/22 +103.205.116.0/22 +103.205.120.0/22 +103.205.136.0/22 +103.205.162.0/24 +103.205.188.0/22 +103.205.192.0/22 +103.205.196.0/22 +103.205.200.0/22 +103.205.236.0/22 +103.205.248.0/22 +103.205.252.0/22 +103.206.0.0/22 +103.206.44.0/22 +103.206.148.0/22 +103.207.48.0/22 +103.207.104.0/22 +103.207.164.0/22 +103.207.184.0/22 +103.207.188.0/22 +103.207.192.0/22 +103.207.196.0/22 +103.207.200.0/22 +103.207.204.0/22 +103.207.208.0/22 +103.207.212.0/22 +103.207.220.0/22 +103.207.228.0/22 +103.207.232.0/22 +103.208.12.0/22 +103.208.16.0/22 +103.208.28.0/22 +103.208.40.0/22 +103.208.44.0/22 +103.208.48.0/22 +103.208.148.0/22 +103.209.112.0/22 +103.209.136.0/22 +103.209.200.0/22 +103.209.208.0/22 +103.209.216.0/22 +103.210.0.0/22 +103.210.20.0/22 +103.210.96.0/22 +103.210.156.0/22 +103.210.160.0/22 +103.210.164.0/22 +103.210.168.0/22 +103.210.172.0/22 +103.210.176.0/22 +103.210.180.0/22 +103.210.184.0/22 +103.210.188.0/22 +103.210.216.0/22 +103.211.44.0/22 +103.211.96.0/22 +103.211.100.0/22 +103.211.156.0/22 +103.211.164.0/22 +103.211.192.0/22 +103.211.220.0/22 +103.211.224.0/22 +103.211.248.0/22 +103.212.0.0/22 +103.212.4.0/22 +103.212.8.0/22 +103.212.12.0/22 +103.212.32.0/22 +103.212.44.0/22 +103.212.48.0/22 +103.212.84.0/22 +103.212.100.0/22 +103.212.104.0/22 +103.212.108.0/22 +103.212.148.0/22 +103.212.164.0/22 +103.212.196.0/22 +103.212.200.0/22 +103.212.228.0/22 +103.212.252.0/22 +103.213.40.0/22 +103.213.44.0/22 +103.213.48.0/22 +103.213.52.0/22 +103.213.56.0/22 +103.213.60.0/22 +103.213.64.0/22 +103.213.68.0/22 +103.213.72.0/22 +103.213.76.0/22 +103.213.80.0/22 +103.213.84.0/22 +103.213.88.0/22 +103.213.92.0/22 +103.213.96.0/22 +103.213.132.0/22 +103.213.136.0/22 +103.213.140.0/22 +103.213.144.0/22 +103.213.148.0/22 +103.213.152.0/22 +103.213.156.0/22 +103.213.160.0/22 +103.213.164.0/22 +103.213.168.0/22 +103.213.172.0/22 +103.213.176.0/22 +103.213.180.0/22 +103.213.184.0/22 +103.213.188.0/22 +103.213.248.0/22 +103.214.48.0/22 +103.214.84.0/22 +103.214.168.0/22 +103.214.212.0/22 +103.214.240.0/22 +103.214.244.0/22 +103.215.28.0/22 +103.215.32.0/22 +103.215.36.0/22 +103.215.44.0/22 +103.215.48.0/22 +103.215.100.0/22 +103.215.104.0/22 +103.215.108.0/22 +103.215.116.0/22 +103.215.120.0/22 +103.215.140.0/22 +103.216.4.0/22 +103.216.8.0/22 +103.216.12.0/22 +103.216.16.0/22 +103.216.20.0/22 +103.216.24.0/22 +103.216.28.0/22 +103.216.32.0/22 +103.216.36.0/22 +103.216.40.0/22 +103.216.44.0/22 +103.216.64.0/22 +103.216.108.0/22 +103.216.136.0/22 +103.216.152.0/22 +103.216.224.0/22 +103.216.228.0/22 +103.216.240.0/22 +103.216.244.0/22 +103.216.248.0/22 +103.216.252.0/22 +103.217.0.0/22 +103.217.4.0/22 +103.217.8.0/22 +103.217.12.0/22 +103.217.16.0/22 +103.217.20.0/22 +103.217.24.0/22 +103.217.28.0/22 +103.217.32.0/22 +103.217.36.0/22 +103.217.40.0/22 +103.217.44.0/22 +103.217.48.0/22 +103.217.52.0/22 +103.217.56.0/22 +103.217.60.0/22 +103.217.168.0/22 +103.217.180.0/22 +103.217.184.0/22 +103.217.188.0/22 +103.217.192.0/22 +103.217.196.0/22 +103.217.200.0/22 +103.217.204.0/22 +103.218.0.0/22 +103.218.8.0/22 +103.218.12.0/22 +103.218.16.0/22 +103.218.20.0/22 +103.218.28.0/22 +103.218.32.0/22 +103.218.36.0/22 +103.218.40.0/22 +103.218.44.0/22 +103.218.48.0/22 +103.218.52.0/22 +103.218.56.0/22 +103.218.60.0/22 +103.218.64.0/22 +103.218.68.0/22 +103.218.72.0/22 +103.218.76.0/22 +103.218.80.0/22 +103.218.84.0/22 +103.218.88.0/22 +103.218.92.0/22 +103.218.192.0/22 +103.218.196.0/22 +103.218.200.0/22 +103.218.204.0/22 +103.218.208.0/22 +103.218.212.0/22 +103.218.216.0/22 +103.219.24.0/22 +103.219.28.0/22 +103.219.32.0/22 +103.219.36.0/22 +103.219.64.0/22 +103.219.84.0/22 +103.219.88.0/22 +103.219.92.0/22 +103.219.96.0/22 +103.219.100.0/22 +103.219.176.0/22 +103.219.184.0/22 +103.220.48.0/22 +103.220.52.0/22 +103.220.56.0/22 +103.220.60.0/22 +103.220.64.0/22 +103.220.92.0/22 +103.220.96.0/22 +103.220.100.0/22 +103.220.104.0/22 +103.220.108.0/22 +103.220.116.0/22 +103.220.120.0/22 +103.220.124.0/22 +103.220.128.0/22 +103.220.132.0/22 +103.220.136.0/22 +103.220.140.0/22 +103.220.144.0/22 +103.220.148.0/22 +103.220.152.0/22 +103.220.160.0/22 +103.220.164.0/22 +103.220.168.0/22 +103.220.172.0/22 +103.220.176.0/22 +103.220.180.0/22 +103.220.184.0/22 +103.220.188.0/22 +103.220.192.0/22 +103.220.196.0/22 +103.220.200.0/22 +103.220.240.0/22 +103.220.244.0/22 +103.220.248.0/22 +103.220.252.0/22 +103.221.0.0/22 +103.221.4.0/22 +103.221.8.0/22 +103.221.12.0/22 +103.221.16.0/22 +103.221.20.0/22 +103.221.24.0/22 +103.221.28.0/22 +103.221.32.0/22 +103.221.36.0/22 +103.221.40.0/22 +103.221.44.0/22 +103.221.48.0/22 +103.221.88.0/22 +103.221.92.0/22 +103.221.96.0/22 +103.221.100.0/22 +103.221.104.0/22 +103.221.108.0/22 +103.221.112.0/22 +103.221.116.0/22 +103.221.120.0/22 +103.221.124.0/22 +103.221.128.0/22 +103.221.132.0/22 +103.221.136.0/22 +103.221.140.0/22 +103.221.144.0/22 +103.221.148.0/22 +103.221.152.0/22 +103.221.156.0/22 +103.221.160.0/22 +103.221.164.0/22 +103.221.168.0/22 +103.221.172.0/22 +103.221.176.0/22 +103.221.180.0/22 +103.221.184.0/22 +103.221.188.0/22 +103.221.192.0/22 +103.221.196.0/22 +103.221.200.0/22 +103.221.204.0/22 +103.222.0.0/22 +103.222.4.0/22 +103.222.8.0/22 +103.222.12.0/22 +103.222.16.0/22 +103.222.24.0/22 +103.222.28.0/22 +103.222.32.0/22 +103.222.36.0/22 +103.222.40.0/22 +103.222.44.0/22 +103.222.48.0/22 +103.222.52.0/22 +103.222.56.0/22 +103.222.60.0/22 +103.222.64.0/22 +103.222.68.0/22 +103.222.72.0/22 +103.222.76.0/22 +103.222.80.0/22 +103.222.84.0/22 +103.222.88.0/22 +103.222.92.0/22 +103.222.96.0/22 +103.222.100.0/22 +103.222.104.0/22 +103.222.108.0/22 +103.222.112.0/22 +103.222.116.0/22 +103.222.120.0/22 +103.222.124.0/22 +103.222.128.0/22 +103.222.132.0/22 +103.222.136.0/22 +103.222.140.0/22 +103.222.144.0/22 +103.222.148.0/22 +103.222.152.0/22 +103.222.156.0/22 +103.222.160.0/22 +103.222.164.0/22 +103.222.168.0/22 +103.222.172.0/22 +103.222.176.0/22 +103.222.180.0/22 +103.222.184.0/22 +103.222.188.0/22 +103.222.192.0/22 +103.222.196.0/22 +103.222.200.0/22 +103.222.204.0/22 +103.222.208.0/22 +103.222.212.0/22 +103.222.216.0/22 +103.222.220.0/22 +103.222.224.0/22 +103.222.228.0/22 +103.222.232.0/22 +103.222.240.0/22 +103.222.244.0/22 +103.223.16.0/22 +103.223.20.0/22 +103.223.24.0/22 +103.223.28.0/22 +103.223.32.0/22 +103.223.36.0/22 +103.223.40.0/22 +103.223.44.0/22 +103.223.48.0/22 +103.223.52.0/22 +103.223.56.0/22 +103.223.60.0/22 +103.223.64.0/22 +103.223.68.0/22 +103.223.72.0/22 +103.223.76.0/22 +103.223.80.0/22 +103.223.84.0/22 +103.223.88.0/22 +103.223.92.0/22 +103.223.96.0/22 +103.223.100.0/22 +103.223.104.0/22 +103.223.108.0/22 +103.223.112.0/22 +103.223.116.0/22 +103.223.120.0/22 +103.223.124.0/22 +103.223.128.0/22 +103.223.132.0/22 +103.223.140.0/22 +103.223.144.0/22 +103.223.148.0/22 +103.223.152.0/22 +103.223.156.0/22 +103.223.160.0/22 +103.223.164.0/22 +103.223.168.0/22 +103.223.172.0/22 +103.223.176.0/22 +103.223.180.0/22 +103.223.188.0/22 +103.223.192.0/22 +103.223.196.0/22 +103.223.200.0/22 +103.223.204.0/22 +103.223.208.0/22 +103.223.212.0/22 +103.223.216.0/22 +103.223.220.0/22 +103.223.224.0/22 +103.223.228.0/22 +103.223.232.0/22 +103.223.236.0/22 +103.223.240.0/22 +103.223.244.0/22 +103.223.248.0/22 +103.223.252.0/22 +103.224.0.0/22 +103.224.40.0/22 +103.224.44.0/22 +103.224.60.0/22 +103.224.80.0/22 +103.224.220.0/22 +103.224.224.0/22 +103.224.228.0/22 +103.224.232.0/22 +103.225.84.0/22 +103.226.16.0/22 +103.226.40.0/22 +103.226.56.0/22 +103.226.60.0/22 +103.226.80.0/22 +103.226.132.0/22 +103.226.156.0/22 +103.226.180.0/22 +103.226.196.0/22 +103.227.48.0/22 +103.227.72.0/22 +103.227.76.0/22 +103.227.80.0/22 +103.227.100.0/22 +103.227.120.0/22 +103.227.132.0/22 +103.227.136.0/22 +103.227.196.0/22 +103.227.204.0/22 +103.227.212.0/22 +103.227.228.0/22 +103.228.12.0/22 +103.228.88.0/22 +103.228.128.0/22 +103.228.136.0/22 +103.228.160.0/22 +103.228.176.0/22 +103.228.204.0/22 +103.228.208.0/22 +103.228.228.0/22 +103.228.232.0/22 +103.229.20.0/22 +103.229.60.0/22 +103.229.136.0/22 +103.229.148.0/22 +103.229.172.0/22 +103.229.212.0/22 +103.229.216.0/22 +103.229.220.0/22 +103.229.228.0/22 +103.229.236.0/22 +103.229.240.0/22 +103.230.0.0/22 +103.230.28.0/22 +103.230.44.0/22 +103.230.96.0/22 +103.230.196.0/22 +103.230.200.0/22 +103.230.204.0/22 +103.230.212.0/22 +103.230.236.0/22 +103.231.16.0/22 +103.231.20.0/22 +103.231.64.0/22 +103.231.68.0/22 +103.231.180.0/22 +103.231.184.0/22 +103.231.244.0/22 +103.232.4.0/22 +103.232.144.0/22 +103.232.188.0/22 +103.232.212.0/22 +103.233.4.0/22 +103.233.44.0/22 +103.233.52.0/22 +103.233.104.0/22 +103.233.128.0/22 +103.233.136.0/22 +103.233.228.0/22 +103.234.0.0/22 +103.234.20.0/22 +103.234.56.0/22 +103.234.128.0/22 +103.234.172.0/22 +103.234.180.0/22 +103.234.244.0/22 +103.235.16.0/22 +103.235.48.0/22 +103.235.56.0/22 +103.235.60.0/22 +103.235.80.0/22 +103.235.84.0/22 +103.235.128.0/22 +103.235.132.0/22 +103.235.136.0/22 +103.235.140.0/22 +103.235.144.0/22 +103.235.148.0/22 +103.235.184.0/22 +103.235.192.0/22 +103.235.200.0/22 +103.235.220.0/22 +103.235.224.0/22 +103.235.228.0/22 +103.235.232.0/22 +103.235.236.0/22 +103.235.240.0/22 +103.235.244.0/22 +103.235.248.0/22 +103.235.252.0/22 +103.236.0.0/22 +103.236.4.0/22 +103.236.8.0/22 +103.236.12.0/22 +103.236.16.0/22 +103.236.20.0/22 +103.236.24.0/22 +103.236.28.0/22 +103.236.32.0/22 +103.236.36.0/22 +103.236.40.0/22 +103.236.44.0/22 +103.236.48.0/22 +103.236.52.0/22 +103.236.56.0/22 +103.236.60.0/22 +103.236.64.0/22 +103.236.68.0/22 +103.236.72.0/22 +103.236.76.0/22 +103.236.80.0/22 +103.236.84.0/22 +103.236.88.0/22 +103.236.92.0/22 +103.236.96.0/22 +103.236.120.0/22 +103.236.184.0/22 +103.236.220.0/22 +103.236.232.0/22 +103.236.240.0/22 +103.236.244.0/22 +103.236.248.0/22 +103.236.252.0/22 +103.237.0.0/22 +103.237.4.0/22 +103.237.8.0/22 +103.237.12.0/22 +103.237.24.0/22 +103.237.28.0/22 +103.237.68.0/22 +103.237.88.0/22 +103.237.152.0/22 +103.237.176.0/22 +103.237.180.0/22 +103.237.184.0/22 +103.237.188.0/22 +103.237.192.0/22 +103.237.196.0/22 +103.237.200.0/22 +103.237.204.0/22 +103.237.208.0/22 +103.237.212.0/22 +103.237.216.0/22 +103.237.220.0/22 +103.237.224.0/22 +103.237.228.0/22 +103.237.232.0/22 +103.237.236.0/22 +103.237.240.0/22 +103.237.244.0/22 +103.237.248.0/22 +103.237.252.0/22 +103.238.0.0/22 +103.238.4.0/22 +103.238.16.0/22 +103.238.20.0/22 +103.238.24.0/22 +103.238.28.0/22 +103.238.32.0/22 +103.238.36.0/22 +103.238.40.0/22 +103.238.44.0/22 +103.238.48.0/22 +103.238.52.0/22 +103.238.56.0/22 +103.238.88.0/22 +103.238.92.0/22 +103.238.96.0/22 +103.238.132.0/22 +103.238.140.0/22 +103.238.144.0/22 +103.238.160.0/22 +103.238.164.0/22 +103.238.168.0/22 +103.238.172.0/22 +103.238.176.0/22 +103.238.180.0/22 +103.238.184.0/22 +103.238.188.0/22 +103.238.196.0/22 +103.238.204.0/22 +103.238.252.0/22 +103.239.0.0/22 +103.239.44.0/22 +103.239.68.0/22 +103.239.96.0/22 +103.239.152.0/22 +103.239.156.0/22 +103.239.176.0/22 +103.239.180.0/22 +103.239.184.0/22 +103.239.192.0/22 +103.239.196.0/22 +103.239.204.0/22 +103.239.208.0/22 +103.239.224.0/22 +103.239.244.0/22 +103.240.16.0/22 +103.240.36.0/22 +103.240.72.0/22 +103.240.84.0/22 +103.240.124.0/22 +103.240.156.0/22 +103.240.172.0/22 +103.240.188.0/22 +103.240.244.0/22 +103.241.12.0/22 +103.241.72.0/22 +103.241.92.0/22 +103.241.96.0/22 +103.241.160.0/22 +103.241.184.0/22 +103.241.188.0/22 +103.241.220.0/22 +103.242.64.0/22 +103.242.128.0/22 +103.242.132.0/22 +103.242.160.0/22 +103.242.168.0/22 +103.242.172.0/22 +103.242.176.0/22 +103.242.200.0/22 +103.242.212.0/22 +103.242.220.0/22 +103.242.240.0/22 +103.243.136.0/22 +103.243.252.0/22 +103.244.16.0/22 +103.244.58.0/23 +103.244.60.0/22 +103.244.64.0/22 +103.244.68.0/22 +103.244.72.0/22 +103.244.76.0/22 +103.244.80.0/22 +103.244.84.0/22 +103.244.116.0/22 +103.244.164.0/22 +103.244.232.0/22 +103.244.252.0/22 +103.245.23.0/24 +103.245.52.0/22 +103.245.60.0/22 +103.245.80.0/22 +103.245.124.0/22 +103.245.128.0/22 +103.246.8.0/22 +103.246.12.0/22 +103.246.120.0/22 +103.246.124.0/22 +103.246.132.0/22 +103.246.152.0/22 +103.246.156.0/22 +103.247.168.0/22 +103.247.172.0/22 +103.247.176.0/22 +103.247.200.0/22 +103.247.212.0/22 +103.248.0.0/23 +103.248.64.0/22 +103.248.100.0/22 +103.248.124.0/22 +103.248.152.0/22 +103.248.168.0/22 +103.248.192.0/22 +103.248.212.0/22 +103.248.224.0/22 +103.249.8.0/22 +103.249.12.0/22 +103.249.52.0/22 +103.249.104.0/22 +103.249.128.0/22 +103.249.136.0/22 +103.249.144.0/22 +103.249.164.0/22 +103.249.168.0/22 +103.249.172.0/22 +103.249.176.0/22 +103.249.188.0/22 +103.249.192.0/22 +103.249.244.0/22 +103.249.252.0/22 +103.250.32.0/22 +103.250.104.0/22 +103.250.124.0/22 +103.250.180.0/22 +103.250.192.0/22 +103.250.216.0/22 +103.250.224.0/22 +103.250.236.0/22 +103.250.248.0/22 +103.250.252.0/22 +103.251.32.0/22 +103.251.84.0/22 +103.251.96.0/22 +103.251.124.0/22 +103.251.128.0/22 +103.251.160.0/22 +103.251.192.0/22 +103.251.204.0/22 +103.251.240.0/22 +103.252.28.0/22 +103.252.36.0/22 +103.252.64.0/22 +103.252.96.0/22 +103.252.104.0/22 +103.252.172.0/22 +103.252.204.0/22 +103.252.208.0/22 +103.252.232.0/22 +103.252.248.0/22 +103.253.4.0/22 +103.253.60.0/22 +103.253.204.0/22 +103.253.220.0/22 +103.253.224.0/22 +103.253.232.0/22 +103.254.8.0/22 +103.254.20.0/22 +103.254.64.0/22 +103.254.68.0/22 +103.254.72.0/22 +103.254.76.0/22 +103.254.112.0/22 +103.254.176.0/22 +103.254.188.0/22 +103.254.196.0/24 +103.254.220.0/22 +103.255.56.0/22 +103.255.68.0/22 +103.255.88.0/22 +103.255.92.0/22 +103.255.136.0/22 +103.255.140.0/22 +103.255.184.0/22 +103.255.200.0/22 +103.255.212.0/22 +103.255.228.0/22 +106.0.0.0/24 +106.0.2.0/23 +106.0.4.0/22 +106.0.8.0/21 +106.0.16.0/20 +106.0.44.0/22 +106.0.64.0/18 +106.2.0.0/15 +106.4.0.0/14 +106.8.0.0/15 +106.11.0.0/16 +106.12.0.0/14 +106.16.0.0/12 +106.32.0.0/12 +106.48.0.0/15 +106.50.0.0/16 +106.52.0.0/14 +106.56.0.0/13 +106.74.0.0/16 +106.75.0.0/16 +106.80.0.0/12 +106.108.0.0/14 +106.112.0.0/13 +106.120.0.0/13 +106.224.0.0/12 +109.244.0.0/16 +110.6.0.0/15 +110.16.0.0/14 +110.34.40.0/22 +110.34.44.0/22 +110.40.0.0/14 +110.44.12.0/22 +110.44.144.0/20 +110.48.0.0/16 +110.51.0.0/16 +110.52.0.0/15 +110.56.0.0/13 +110.64.0.0/15 +110.72.0.0/15 +110.75.0.0/17 +110.75.128.0/19 +110.75.160.0/19 +110.75.192.0/18 +110.76.0.0/19 +110.76.32.0/19 +110.76.132.0/22 +110.76.156.0/22 +110.76.184.0/22 +110.76.192.0/18 +110.77.0.0/17 +110.80.0.0/13 +110.88.0.0/14 +110.92.68.0/22 +110.93.32.0/19 +110.94.0.0/15 +110.96.0.0/11 +110.152.0.0/14 +110.156.0.0/15 +110.165.32.0/19 +110.166.0.0/15 +110.172.192.0/18 +110.173.0.0/19 +110.173.32.0/20 +110.173.64.0/19 +110.173.96.0/19 +110.173.192.0/19 +110.176.0.0/13 +110.184.0.0/13 +110.192.0.0/11 +110.228.0.0/14 +110.232.32.0/19 +110.236.0.0/15 +110.240.0.0/12 +111.0.0.0/10 +111.66.0.0/16 +111.67.192.0/20 +111.68.64.0/19 +111.72.0.0/13 +111.85.0.0/16 +111.91.192.0/19 +111.92.248.0/22 +111.92.252.0/22 +111.112.0.0/15 +111.114.0.0/15 +111.116.0.0/15 +111.118.200.0/21 +111.119.64.0/18 +111.119.128.0/19 +111.120.0.0/14 +111.124.0.0/16 +111.126.0.0/15 +111.128.0.0/11 +111.160.0.0/13 +111.170.0.0/16 +111.172.0.0/14 +111.176.0.0/13 +111.186.0.0/15 +111.192.0.0/12 +111.208.0.0/14 +111.212.0.0/14 +111.221.28.0/24 +111.221.128.0/17 +111.222.0.0/16 +111.223.4.0/22 +111.223.8.0/22 +111.223.12.0/22 +111.223.16.0/22 +111.223.240.0/22 +111.223.248.0/22 +111.224.0.0/14 +111.228.0.0/14 +111.235.96.0/19 +111.235.156.0/22 +111.235.160.0/19 +112.0.0.0/10 +112.64.0.0/15 +112.66.0.0/15 +112.73.0.0/16 +112.74.0.0/15 +112.80.0.0/13 +112.88.0.0/13 +112.96.0.0/15 +112.98.0.0/15 +112.100.0.0/14 +112.109.128.0/17 +112.111.0.0/16 +112.112.0.0/14 +112.116.0.0/15 +112.122.0.0/15 +112.124.0.0/14 +112.128.0.0/14 +112.132.0.0/16 +112.137.48.0/21 +112.192.0.0/14 +112.224.0.0/11 +113.0.0.0/13 +113.8.0.0/15 +113.11.192.0/19 +113.12.0.0/14 +113.16.0.0/15 +113.18.0.0/16 +113.21.232.0/22 +113.21.236.0/22 +113.24.0.0/14 +113.31.0.0/16 +113.44.0.0/14 +113.48.0.0/14 +113.52.160.0/19 +113.52.228.0/22 +113.54.0.0/15 +113.56.0.0/15 +113.58.0.0/16 +113.59.0.0/17 +113.59.224.0/22 +113.62.0.0/15 +113.64.0.0/11 +113.96.0.0/12 +113.112.0.0/13 +113.120.0.0/13 +113.128.0.0/15 +113.130.96.0/20 +113.130.112.0/21 +113.132.0.0/14 +113.136.0.0/13 +113.194.0.0/15 +113.197.100.0/22 +113.200.0.0/15 +113.202.0.0/16 +113.204.0.0/14 +113.208.96.0/19 +113.208.128.0/17 +113.209.0.0/16 +113.212.0.0/18 +113.212.88.0/22 +113.212.100.0/22 +113.212.184.0/21 +113.213.0.0/17 +113.214.0.0/15 +113.218.0.0/15 +113.220.0.0/14 +113.224.0.0/12 +113.240.0.0/13 +113.248.0.0/14 +114.28.0.0/16 +114.31.64.0/22 +114.31.68.0/22 +114.54.0.0/15 +114.60.0.0/14 +114.64.0.0/14 +114.68.0.0/16 +114.79.64.0/18 +114.80.0.0/12 +114.96.0.0/13 +114.104.0.0/14 +114.110.0.0/20 +114.110.64.0/18 +114.111.0.0/19 +114.111.160.0/19 +114.112.0.0/14 +114.116.0.0/16 +114.117.0.0/17 +114.117.128.0/17 +114.118.0.0/16 +114.119.0.0/17 +114.119.192.0/21 +114.119.200.0/22 +114.119.204.0/22 +114.119.208.0/20 +114.119.224.0/19 +114.132.0.0/16 +114.135.0.0/16 +114.138.0.0/15 +114.141.64.0/21 +114.141.80.0/22 +114.141.84.0/22 +114.141.128.0/18 +114.196.0.0/15 +114.198.248.0/21 +114.208.0.0/14 +114.212.0.0/15 +114.214.0.0/16 +114.215.0.0/16 +114.216.0.0/13 +114.224.0.0/12 +114.240.0.0/12 +115.24.0.0/14 +115.28.0.0/15 +115.31.64.0/22 +115.31.68.0/22 +115.31.72.0/22 +115.31.76.0/22 +115.32.0.0/14 +115.42.56.0/22 +115.44.0.0/15 +115.46.0.0/16 +115.47.0.0/16 +115.48.0.0/12 +115.69.64.0/20 +115.84.0.0/18 +115.84.192.0/19 +115.85.192.0/18 +115.100.0.0/14 +115.104.0.0/14 +115.120.0.0/14 +115.124.16.0/20 +115.148.0.0/14 +115.152.0.0/15 +115.154.0.0/15 +115.156.0.0/15 +115.158.0.0/16 +115.159.0.0/16 +115.166.64.0/19 +115.168.0.0/14 +115.172.0.0/14 +115.180.0.0/15 +115.182.0.0/16 +115.183.0.0/16 +115.187.0.0/22 +115.187.4.0/22 +115.187.8.0/22 +115.187.12.0/22 +115.190.0.0/15 +115.192.0.0/11 +115.224.0.0/12 +116.0.8.0/21 +116.0.24.0/21 +116.1.0.0/16 +116.2.0.0/15 +116.4.0.0/14 +116.8.0.0/14 +116.13.0.0/16 +116.16.0.0/12 +116.50.0.0/20 +116.52.0.0/14 +116.56.0.0/15 +116.58.128.0/20 +116.58.208.0/20 +116.60.0.0/14 +116.66.0.0/17 +116.66.176.0/22 +116.68.136.0/22 +116.68.140.0/22 +116.68.176.0/22 +116.68.180.0/22 +116.69.0.0/16 +116.70.0.0/17 +116.76.0.0/15 +116.78.0.0/15 +116.85.0.0/16 +116.89.144.0/20 +116.89.240.0/22 +116.90.80.0/20 +116.90.184.0/21 +116.95.0.0/16 +116.112.0.0/14 +116.116.0.0/15 +116.128.0.0/10 +116.192.0.0/16 +116.193.16.0/20 +116.193.32.0/19 +116.193.152.0/22 +116.193.164.0/22 +116.193.176.0/21 +116.194.0.0/15 +116.196.0.0/17 +116.196.128.0/18 +116.196.192.0/18 +116.197.160.0/22 +116.197.164.0/22 +116.198.0.0/16 +116.199.0.0/17 +116.199.128.0/19 +116.204.0.0/17 +116.204.132.0/22 +116.204.168.0/22 +116.204.216.0/22 +116.204.232.0/22 +116.205.0.0/16 +116.206.92.0/22 +116.206.176.0/22 +116.207.0.0/16 +116.208.0.0/14 +116.212.160.0/20 +116.213.44.0/22 +116.213.64.0/18 +116.213.128.0/17 +116.214.32.0/19 +116.214.64.0/20 +116.214.128.0/17 +116.215.0.0/16 +116.216.0.0/14 +116.224.0.0/12 +116.242.0.0/15 +116.244.0.0/15 +116.246.0.0/15 +116.248.0.0/15 +116.251.64.0/18 +116.252.0.0/15 +116.254.104.0/22 +116.254.108.0/22 +116.254.128.0/17 +116.255.128.0/17 +117.8.0.0/13 +117.21.0.0/16 +117.22.0.0/15 +117.24.0.0/13 +117.32.0.0/13 +117.40.0.0/14 +117.44.0.0/15 +117.48.0.0/14 +117.53.48.0/20 +117.53.176.0/20 +117.57.0.0/16 +117.58.0.0/17 +117.59.0.0/16 +117.60.0.0/14 +117.64.0.0/13 +117.72.0.0/15 +117.74.64.0/20 +117.74.80.0/20 +117.74.128.0/17 +117.75.0.0/16 +117.76.0.0/14 +117.80.0.0/12 +117.100.0.0/15 +117.103.16.0/20 +117.103.40.0/21 +117.103.72.0/21 +117.103.128.0/20 +117.104.168.0/21 +117.106.0.0/15 +117.112.0.0/13 +117.120.64.0/18 +117.120.128.0/17 +117.121.0.0/17 +117.121.128.0/18 +117.121.192.0/21 +117.122.128.0/17 +117.124.0.0/14 +117.128.0.0/10 +118.24.0.0/15 +118.26.0.0/19 +118.26.32.0/22 +118.26.40.0/21 +118.26.48.0/21 +118.26.56.0/21 +118.26.64.0/19 +118.26.96.0/21 +118.26.112.0/21 +118.26.120.0/21 +118.26.128.0/20 +118.26.160.0/19 +118.26.192.0/18 +118.28.0.0/15 +118.30.0.0/16 +118.31.0.0/16 +118.64.0.0/15 +118.66.0.0/16 +118.67.112.0/20 +118.72.0.0/13 +118.80.0.0/15 +118.84.0.0/15 +118.88.32.0/19 +118.88.64.0/18 +118.88.128.0/17 +118.89.0.0/16 +118.91.240.0/20 +118.102.16.0/20 +118.102.32.0/21 +118.103.164.0/22 +118.103.168.0/22 +118.103.172.0/22 +118.103.176.0/22 +118.107.180.0/22 +118.112.0.0/13 +118.120.0.0/14 +118.124.0.0/15 +118.126.0.0/16 +118.127.128.0/19 +118.132.0.0/14 +118.144.0.0/14 +118.178.0.0/16 +118.180.0.0/14 +118.184.0.0/17 +118.184.128.0/17 +118.186.0.0/15 +118.188.0.0/16 +118.190.0.0/16 +118.191.0.0/21 +118.191.8.0/22 +118.191.12.0/24 +118.191.16.0/21 +118.191.64.0/20 +118.191.80.0/22 +118.191.128.0/19 +118.191.176.0/20 +118.191.192.0/20 +118.191.208.0/24 +118.191.216.0/22 +118.191.223.0/24 +118.191.224.0/24 +118.191.240.0/20 +118.192.0.0/16 +118.193.0.0/21 +118.193.8.0/21 +118.193.48.0/21 +118.193.96.0/19 +118.193.128.0/17 +118.194.0.0/17 +118.194.128.0/18 +118.194.192.0/19 +118.194.224.0/22 +118.194.240.0/21 +118.195.0.0/17 +118.195.128.0/17 +118.196.0.0/14 +118.202.0.0/15 +118.204.0.0/14 +118.212.0.0/16 +118.213.0.0/16 +118.215.192.0/18 +118.224.0.0/14 +118.228.0.0/15 +118.230.0.0/16 +118.239.0.0/16 +118.242.0.0/16 +118.244.0.0/14 +118.248.0.0/13 +119.0.0.0/15 +119.2.0.0/19 +119.2.128.0/17 +119.3.0.0/16 +119.4.0.0/14 +119.10.0.0/17 +119.15.136.0/21 +119.16.0.0/16 +119.18.192.0/20 +119.18.208.0/21 +119.18.224.0/20 +119.18.240.0/20 +119.19.0.0/16 +119.20.0.0/14 +119.27.64.0/18 +119.27.128.0/19 +119.27.160.0/19 +119.27.192.0/18 +119.28.0.0/15 +119.30.48.0/20 +119.31.192.0/19 +119.32.0.0/14 +119.36.0.0/16 +119.37.0.0/17 +119.37.128.0/18 +119.37.192.0/18 +119.38.0.0/17 +119.38.128.0/18 +119.38.192.0/20 +119.38.208.0/20 +119.38.224.0/19 +119.39.0.0/16 +119.40.0.0/18 +119.40.64.0/20 +119.40.128.0/17 +119.41.0.0/16 +119.42.0.0/19 +119.42.52.0/22 +119.42.128.0/21 +119.42.136.0/21 +119.42.224.0/19 +119.44.0.0/15 +119.48.0.0/13 +119.57.0.0/16 +119.58.0.0/16 +119.59.128.0/17 +119.60.0.0/16 +119.61.0.0/16 +119.62.0.0/16 +119.63.32.0/19 +119.75.208.0/20 +119.78.0.0/15 +119.80.0.0/16 +119.82.208.0/20 +119.84.0.0/14 +119.88.0.0/14 +119.96.0.0/13 +119.108.0.0/15 +119.112.0.0/13 +119.120.0.0/13 +119.128.0.0/12 +119.144.0.0/14 +119.148.160.0/20 +119.148.176.0/20 +119.151.192.0/18 +119.160.200.0/21 +119.161.120.0/22 +119.161.124.0/22 +119.161.128.0/17 +119.162.0.0/15 +119.164.0.0/14 +119.176.0.0/12 +119.232.0.0/15 +119.235.128.0/18 +119.248.0.0/14 +119.252.96.0/21 +119.252.240.0/20 +119.253.0.0/16 +119.254.0.0/15 +120.0.0.0/12 +120.24.0.0/14 +120.30.0.0/16 +120.31.0.0/16 +120.32.0.0/13 +120.40.0.0/14 +120.44.0.0/15 +120.46.0.0/16 +120.47.0.0/16 +120.48.0.0/15 +120.52.0.0/16 +120.53.0.0/16 +120.54.0.0/15 +120.64.0.0/14 +120.68.0.0/14 +120.72.32.0/19 +120.72.128.0/17 +120.76.0.0/14 +120.80.0.0/13 +120.88.8.0/21 +120.90.0.0/15 +120.92.0.0/16 +120.94.0.0/16 +120.95.0.0/16 +120.128.0.0/14 +120.132.0.0/17 +120.132.128.0/17 +120.133.0.0/16 +120.134.0.0/15 +120.136.16.0/22 +120.136.20.0/22 +120.136.128.0/18 +120.137.0.0/17 +120.143.128.0/19 +120.192.0.0/10 +121.0.8.0/21 +121.0.16.0/20 +121.4.0.0/15 +121.8.0.0/13 +121.16.0.0/13 +121.24.0.0/14 +121.28.0.0/15 +121.30.0.0/16 +121.31.0.0/16 +121.32.0.0/14 +121.36.0.0/16 +121.37.0.0/16 +121.38.0.0/15 +121.40.0.0/14 +121.46.0.0/18 +121.46.76.0/22 +121.46.128.0/17 +121.47.0.0/16 +121.48.0.0/15 +121.50.8.0/21 +121.51.0.0/16 +121.52.160.0/19 +121.52.208.0/20 +121.52.224.0/19 +121.54.176.0/21 +121.54.188.0/22 +121.55.0.0/18 +121.56.0.0/15 +121.58.0.0/17 +121.58.136.0/21 +121.58.144.0/20 +121.58.160.0/21 +121.59.0.0/16 +121.60.0.0/14 +121.68.0.0/14 +121.76.0.0/15 +121.79.128.0/18 +121.89.0.0/16 +121.100.128.0/17 +121.101.0.0/18 +121.101.208.0/20 +121.192.0.0/16 +121.193.0.0/16 +121.194.0.0/15 +121.196.0.0/14 +121.200.192.0/21 +121.201.0.0/16 +121.204.0.0/14 +121.224.0.0/12 +121.248.0.0/14 +121.255.0.0/16 +122.0.64.0/18 +122.0.128.0/17 +122.4.0.0/14 +122.8.0.0/16 +122.9.0.0/16 +122.10.128.0/22 +122.10.132.0/23 +122.10.136.0/23 +122.10.164.0/22 +122.10.168.0/21 +122.10.176.0/20 +122.10.192.0/22 +122.10.200.0/21 +122.10.208.0/21 +122.10.216.0/22 +122.10.228.0/22 +122.10.232.0/21 +122.10.240.0/22 +122.11.0.0/17 +122.12.0.0/16 +122.13.0.0/16 +122.14.0.0/17 +122.14.128.0/18 +122.14.192.0/18 +122.48.0.0/16 +122.49.0.0/18 +122.51.0.0/16 +122.64.0.0/11 +122.96.0.0/15 +122.102.0.0/20 +122.102.64.0/20 +122.102.80.0/20 +122.112.0.0/18 +122.112.64.0/18 +122.112.128.0/17 +122.113.0.0/16 +122.114.0.0/16 +122.115.0.0/17 +122.115.128.0/19 +122.115.160.0/19 +122.115.192.0/19 +122.115.224.0/19 +122.119.0.0/16 +122.128.100.0/22 +122.128.120.0/21 +122.136.0.0/13 +122.144.128.0/17 +122.152.192.0/18 +122.156.0.0/14 +122.188.0.0/14 +122.192.0.0/14 +122.198.0.0/16 +122.200.40.0/22 +122.200.44.0/22 +122.200.64.0/18 +122.201.48.0/20 +122.204.0.0/14 +122.224.0.0/12 +122.240.0.0/13 +122.248.24.0/21 +122.248.48.0/20 +122.255.64.0/21 +123.0.128.0/18 +123.4.0.0/14 +123.8.0.0/13 +123.49.128.0/17 +123.50.160.0/19 +123.52.0.0/14 +123.56.0.0/15 +123.58.0.0/20 +123.58.16.0/20 +123.58.32.0/19 +123.58.64.0/19 +123.58.96.0/19 +123.58.128.0/18 +123.58.224.0/20 +123.58.240.0/20 +123.59.0.0/16 +123.60.0.0/16 +123.61.0.0/16 +123.62.0.0/16 +123.64.0.0/11 +123.96.0.0/15 +123.98.0.0/17 +123.99.128.0/17 +123.100.0.0/19 +123.101.0.0/16 +123.103.0.0/17 +123.108.128.0/20 +123.108.208.0/20 +123.112.0.0/12 +123.128.0.0/13 +123.136.80.0/20 +123.137.0.0/16 +123.138.0.0/15 +123.144.0.0/14 +123.148.0.0/16 +123.149.0.0/16 +123.150.0.0/15 +123.152.0.0/13 +123.160.0.0/14 +123.164.0.0/14 +123.168.0.0/14 +123.172.0.0/15 +123.174.0.0/15 +123.176.60.0/22 +123.176.80.0/20 +123.177.0.0/16 +123.178.0.0/15 +123.180.0.0/14 +123.184.0.0/14 +123.188.0.0/14 +123.196.0.0/15 +123.199.128.0/17 +123.206.0.0/15 +123.232.0.0/14 +123.242.0.0/17 +123.242.192.0/22 +123.242.196.0/22 +123.244.0.0/14 +123.249.0.0/16 +123.253.108.0/22 +123.253.240.0/22 +123.254.96.0/22 +123.254.100.0/22 +124.6.64.0/18 +124.14.0.0/15 +124.16.0.0/15 +124.20.0.0/16 +124.21.0.0/20 +124.21.16.0/20 +124.21.32.0/19 +124.21.64.0/18 +124.21.128.0/17 +124.22.0.0/15 +124.28.192.0/18 +124.29.0.0/17 +124.31.0.0/16 +124.40.112.0/20 +124.40.128.0/18 +124.40.192.0/19 +124.40.240.0/22 +124.42.0.0/17 +124.42.128.0/17 +124.47.0.0/18 +124.64.0.0/15 +124.66.0.0/17 +124.67.0.0/16 +124.68.0.0/15 +124.70.0.0/15 +124.72.0.0/16 +124.73.0.0/16 +124.74.0.0/15 +124.76.0.0/14 +124.88.0.0/16 +124.89.0.0/17 +124.89.128.0/17 +124.90.0.0/15 +124.92.0.0/14 +124.108.8.0/21 +124.108.40.0/21 +124.109.96.0/21 +124.112.0.0/15 +124.114.0.0/15 +124.116.0.0/16 +124.117.0.0/16 +124.118.0.0/15 +124.126.0.0/15 +124.128.0.0/13 +124.147.128.0/17 +124.150.137.0/24 +124.151.0.0/16 +124.152.0.0/16 +124.160.0.0/16 +124.161.0.0/16 +124.162.0.0/16 +124.163.0.0/16 +124.164.0.0/14 +124.172.0.0/15 +124.174.0.0/15 +124.192.0.0/15 +124.196.0.0/16 +124.200.0.0/13 +124.220.0.0/14 +124.224.0.0/16 +124.225.0.0/16 +124.226.0.0/15 +124.228.0.0/14 +124.232.0.0/15 +124.234.0.0/15 +124.236.0.0/14 +124.240.0.0/17 +124.240.128.0/18 +124.242.0.0/16 +124.243.192.0/18 +124.248.0.0/17 +124.249.0.0/16 +124.250.0.0/15 +124.254.0.0/18 +125.31.192.0/18 +125.32.0.0/16 +125.33.0.0/16 +125.34.0.0/16 +125.35.0.0/17 +125.35.128.0/17 +125.36.0.0/14 +125.40.0.0/13 +125.58.128.0/17 +125.61.128.0/17 +125.62.0.0/18 +125.64.0.0/13 +125.72.0.0/16 +125.73.0.0/16 +125.74.0.0/15 +125.76.0.0/17 +125.76.128.0/17 +125.77.0.0/16 +125.78.0.0/15 +125.80.0.0/13 +125.88.0.0/13 +125.96.0.0/15 +125.98.0.0/16 +125.104.0.0/13 +125.112.0.0/12 +125.169.0.0/16 +125.171.0.0/16 +125.208.0.0/18 +125.210.0.0/16 +125.211.0.0/16 +125.213.0.0/17 +125.214.96.0/19 +125.215.0.0/18 +125.216.0.0/15 +125.218.0.0/16 +125.219.0.0/16 +125.220.0.0/15 +125.222.0.0/15 +125.254.128.0/18 +125.254.192.0/18 +128.108.0.0/16 +129.28.0.0/16 +129.204.0.0/16 +129.211.0.0/16 +132.232.0.0/16 +134.175.0.0/16 +137.59.59.0/24 +137.59.88.0/22 +139.5.56.0/22 +139.5.60.0/22 +139.5.80.0/22 +139.5.92.0/22 +139.5.108.0/22 +139.5.128.0/22 +139.5.160.0/22 +139.5.192.0/22 +139.5.204.0/22 +139.5.208.0/22 +139.5.212.0/22 +139.5.244.0/22 +139.9.0.0/16 +139.129.0.0/16 +139.148.0.0/16 +139.155.0.0/16 +139.159.0.0/16 +139.170.0.0/16 +139.176.0.0/16 +139.183.0.0/16 +139.186.0.0/16 +139.189.0.0/16 +139.196.0.0/14 +139.200.0.0/13 +139.208.0.0/13 +139.217.0.0/16 +139.219.0.0/16 +139.220.0.0/15 +139.224.0.0/16 +139.226.0.0/15 +140.75.0.0/16 +140.143.0.0/16 +140.179.0.0/16 +140.205.0.0/16 +140.206.0.0/15 +140.210.0.0/17 +140.210.128.0/17 +140.224.0.0/16 +140.237.0.0/16 +140.240.0.0/16 +140.243.0.0/16 +140.246.0.0/16 +140.249.0.0/16 +140.250.0.0/16 +140.255.0.0/16 +142.70.0.0/16 +142.86.0.0/16 +144.0.0.0/16 +144.7.0.0/16 +144.12.0.0/16 +144.48.8.0/22 +144.48.64.0/22 +144.48.88.0/22 +144.48.156.0/22 +144.48.180.0/22 +144.48.184.0/22 +144.48.204.0/22 +144.48.208.0/22 +144.48.212.0/22 +144.48.220.0/22 +144.48.252.0/22 +144.52.0.0/16 +144.123.0.0/16 +144.255.0.0/16 +146.56.192.0/18 +146.196.56.0/22 +146.196.68.0/22 +146.196.72.0/22 +146.196.92.0/22 +146.196.112.0/22 +146.196.116.0/22 +146.196.124.0/22 +148.70.0.0/16 +149.41.0.0/16 +150.0.0.0/16 +150.115.0.0/16 +150.121.0.0/16 +150.122.0.0/16 +150.129.136.0/22 +150.129.192.0/22 +150.129.216.0/22 +150.129.252.0/22 +150.138.0.0/15 +150.158.0.0/16 +150.223.0.0/16 +150.242.0.0/22 +150.242.4.0/22 +150.242.8.0/22 +150.242.28.0/22 +150.242.44.0/22 +150.242.48.0/22 +150.242.52.0/22 +150.242.56.0/22 +150.242.76.0/22 +150.242.80.0/22 +150.242.92.0/22 +150.242.96.0/22 +150.242.112.0/22 +150.242.116.0/22 +150.242.120.0/22 +150.242.152.0/22 +150.242.156.0/22 +150.242.160.0/22 +150.242.164.0/22 +150.242.168.0/22 +150.242.184.0/22 +150.242.188.0/22 +150.242.192.0/22 +150.242.212.0/22 +150.242.224.0/22 +150.242.232.0/22 +150.242.236.0/22 +150.242.240.0/22 +150.242.244.0/22 +150.242.248.0/22 +150.248.0.0/16 +150.255.0.0/16 +152.104.128.0/17 +152.136.0.0/16 +153.0.0.0/16 +153.3.0.0/16 +153.34.0.0/15 +153.36.0.0/15 +153.99.0.0/16 +153.101.0.0/16 +153.118.0.0/15 +154.8.128.0/17 +157.0.0.0/16 +157.18.0.0/16 +157.61.0.0/16 +157.119.0.0/22 +157.119.8.0/22 +157.119.12.0/22 +157.119.16.0/22 +157.119.28.0/22 +157.119.132.0/22 +157.119.136.0/22 +157.119.140.0/22 +157.119.144.0/22 +157.119.148.0/22 +157.119.152.0/22 +157.119.156.0/22 +157.119.160.0/22 +157.119.164.0/22 +157.119.172.0/22 +157.119.192.0/22 +157.119.196.0/22 +157.119.240.0/22 +157.119.252.0/22 +157.122.0.0/16 +157.148.0.0/16 +157.156.0.0/16 +157.255.0.0/16 +158.60.128.0/17 +158.79.0.0/16 +159.27.0.0/16 +159.75.0.0/16 +159.226.0.0/16 +160.19.208.0/22 +160.19.212.0/22 +160.19.216.0/22 +160.20.48.0/22 +160.202.60.0/22 +160.202.148.0/22 +160.202.152.0/22 +160.202.168.0/22 +160.202.212.0/22 +160.202.216.0/22 +160.202.220.0/22 +160.202.224.0/22 +160.202.228.0/22 +160.202.232.0/22 +160.202.236.0/22 +160.202.240.0/22 +160.202.244.0/22 +160.202.248.0/22 +160.202.252.0/22 +160.238.64.0/22 +161.120.0.0/16 +161.189.0.0/16 +161.207.0.0/16 +162.14.0.0/16 +162.105.0.0/16 +163.0.0.0/16 +163.47.4.0/22 +163.53.0.0/22 +163.53.4.0/22 +163.53.8.0/22 +163.53.12.0/22 +163.53.36.0/22 +163.53.40.0/22 +163.53.44.0/22 +163.53.48.0/22 +163.53.52.0/22 +163.53.56.0/22 +163.53.60.0/22 +163.53.64.0/22 +163.53.88.0/22 +163.53.92.0/22 +163.53.96.0/22 +163.53.100.0/22 +163.53.104.0/22 +163.53.108.0/22 +163.53.112.0/22 +163.53.116.0/22 +163.53.120.0/22 +163.53.124.0/22 +163.53.128.0/22 +163.53.132.0/22 +163.53.136.0/22 +163.53.160.0/22 +163.53.164.0/22 +163.53.168.0/22 +163.53.172.0/22 +163.53.188.0/22 +163.53.220.0/22 +163.53.240.0/22 +163.125.0.0/16 +163.142.0.0/16 +163.177.0.0/16 +163.179.0.0/16 +163.204.0.0/16 +163.228.0.0/16 +164.52.0.0/17 +166.111.0.0/16 +167.139.0.0/16 +167.189.0.0/16 +167.220.244.0/22 +168.160.0.0/16 +170.179.0.0/16 +171.8.0.0/13 +171.34.0.0/15 +171.36.0.0/14 +171.40.0.0/13 +171.80.0.0/14 +171.84.0.0/14 +171.88.0.0/13 +171.104.0.0/13 +171.112.0.0/14 +171.116.0.0/14 +171.120.0.0/13 +171.208.0.0/12 +172.81.192.0/18 +175.0.0.0/12 +175.16.0.0/13 +175.24.0.0/16 +175.25.0.0/16 +175.26.0.0/16 +175.27.0.0/16 +175.30.0.0/15 +175.42.0.0/15 +175.44.0.0/16 +175.46.0.0/15 +175.48.0.0/12 +175.64.0.0/11 +175.102.0.0/16 +175.106.128.0/17 +175.111.144.0/22 +175.111.148.0/22 +175.111.152.0/22 +175.111.156.0/22 +175.111.160.0/22 +175.111.164.0/22 +175.111.168.0/22 +175.111.172.0/22 +175.111.184.0/22 +175.146.0.0/15 +175.148.0.0/14 +175.152.0.0/14 +175.158.96.0/22 +175.160.0.0/12 +175.176.156.0/22 +175.176.176.0/22 +175.176.188.0/22 +175.176.192.0/22 +175.178.0.0/16 +175.184.128.0/18 +175.185.0.0/16 +175.186.0.0/15 +175.188.0.0/14 +180.76.0.0/16 +180.77.0.0/16 +180.78.0.0/15 +180.84.0.0/15 +180.86.0.0/16 +180.88.0.0/14 +180.94.56.0/21 +180.94.96.0/20 +180.94.120.0/22 +180.94.124.0/22 +180.95.128.0/17 +180.96.0.0/11 +180.129.128.0/17 +180.130.0.0/16 +180.136.0.0/13 +180.148.16.0/21 +180.148.152.0/21 +180.148.216.0/21 +180.148.224.0/19 +180.149.128.0/19 +180.149.236.0/22 +180.150.160.0/19 +180.152.0.0/13 +180.160.0.0/12 +180.178.112.0/22 +180.178.116.0/22 +180.178.192.0/18 +180.184.0.0/15 +180.186.0.0/16 +180.187.0.0/16 +180.188.0.0/17 +180.189.148.0/22 +180.200.252.0/22 +180.201.0.0/16 +180.202.0.0/15 +180.208.0.0/15 +180.210.212.0/22 +180.210.224.0/19 +180.212.0.0/15 +180.222.224.0/19 +180.223.0.0/16 +180.233.0.0/18 +180.233.64.0/19 +180.233.144.0/22 +180.235.64.0/19 +180.235.112.0/22 +182.16.144.0/22 +182.16.148.0/22 +182.16.192.0/19 +182.18.0.0/17 +182.23.184.0/21 +182.23.200.0/21 +182.32.0.0/12 +182.48.96.0/19 +182.49.0.0/16 +182.50.0.0/20 +182.50.112.0/20 +182.51.0.0/16 +182.54.0.0/17 +182.54.244.0/22 +182.61.0.0/16 +182.80.0.0/14 +182.84.0.0/14 +182.88.0.0/14 +182.92.0.0/16 +182.96.0.0/12 +182.112.0.0/12 +182.128.0.0/12 +182.144.0.0/13 +182.157.0.0/16 +182.160.64.0/19 +182.174.0.0/15 +182.200.0.0/13 +182.236.128.0/17 +182.237.24.0/22 +182.237.28.0/22 +182.238.0.0/16 +182.239.0.0/19 +182.240.0.0/13 +182.254.0.0/16 +182.255.32.0/22 +182.255.36.0/22 +182.255.60.0/22 +183.0.0.0/10 +183.64.0.0/13 +183.78.160.0/22 +183.78.164.0/22 +183.78.180.0/22 +183.81.172.0/22 +183.81.180.0/22 +183.84.0.0/15 +183.91.128.0/22 +183.91.136.0/21 +183.91.144.0/20 +183.92.0.0/14 +183.128.0.0/11 +183.160.0.0/13 +183.168.0.0/15 +183.170.0.0/16 +183.172.0.0/14 +183.182.0.0/19 +183.184.0.0/13 +183.192.0.0/10 +185.203.36.0/22 +188.131.128.0/17 +192.51.188.0/24 +192.55.46.0/24 +192.55.68.0/22 +192.102.204.0/23 +192.124.154.0/24 +192.140.128.0/22 +192.140.132.0/22 +192.140.136.0/22 +192.140.156.0/22 +192.140.160.0/22 +192.140.164.0/22 +192.140.168.0/22 +192.140.172.0/22 +192.140.176.0/22 +192.140.180.0/22 +192.140.184.0/22 +192.140.188.0/22 +192.140.192.0/22 +192.140.196.0/22 +192.140.200.0/22 +192.140.204.0/22 +192.140.208.0/22 +192.140.212.0/22 +192.144.128.0/17 +192.197.113.0/24 +193.112.0.0/16 +198.175.100.0/22 +199.212.57.0/24 +202.0.100.0/23 +202.0.122.0/23 +202.0.176.0/22 +202.3.128.0/23 +202.3.134.0/24 +202.4.128.0/19 +202.4.252.0/22 +202.5.208.0/22 +202.5.212.0/22 +202.5.216.0/22 +202.6.6.0/23 +202.6.66.0/23 +202.6.72.0/23 +202.6.87.0/24 +202.6.88.0/23 +202.6.92.0/23 +202.6.103.0/24 +202.6.108.0/24 +202.6.110.0/23 +202.6.114.0/24 +202.6.176.0/20 +202.8.0.0/24 +202.8.2.0/23 +202.8.4.0/23 +202.8.12.0/24 +202.8.24.0/24 +202.8.77.0/24 +202.8.120.0/22 +202.8.128.0/19 +202.8.192.0/20 +202.9.32.0/24 +202.9.34.0/23 +202.9.48.0/23 +202.9.51.0/24 +202.9.52.0/23 +202.9.54.0/24 +202.9.57.0/24 +202.9.58.0/23 +202.10.64.0/20 +202.10.112.0/22 +202.10.116.0/22 +202.10.120.0/22 +202.10.124.0/22 +202.12.1.0/24 +202.12.2.0/24 +202.12.17.0/24 +202.12.18.0/24 +202.12.19.0/24 +202.12.72.0/24 +202.12.84.0/23 +202.12.96.0/24 +202.12.98.0/23 +202.12.106.0/24 +202.12.111.0/24 +202.12.116.0/24 +202.14.64.0/23 +202.14.69.0/24 +202.14.73.0/24 +202.14.74.0/23 +202.14.76.0/24 +202.14.78.0/23 +202.14.88.0/24 +202.14.97.0/24 +202.14.104.0/23 +202.14.108.0/23 +202.14.111.0/24 +202.14.114.0/23 +202.14.118.0/23 +202.14.124.0/23 +202.14.127.0/24 +202.14.129.0/24 +202.14.135.0/24 +202.14.136.0/24 +202.14.149.0/24 +202.14.151.0/24 +202.14.157.0/24 +202.14.158.0/23 +202.14.169.0/24 +202.14.170.0/23 +202.14.172.0/22 +202.14.176.0/24 +202.14.184.0/23 +202.14.208.0/23 +202.14.213.0/24 +202.14.219.0/24 +202.14.220.0/24 +202.14.222.0/23 +202.14.225.0/24 +202.14.226.0/23 +202.14.231.0/24 +202.14.235.0/24 +202.14.236.0/23 +202.14.238.0/24 +202.14.239.0/24 +202.14.246.0/24 +202.14.251.0/24 +202.20.66.0/24 +202.20.79.0/24 +202.20.87.0/24 +202.20.88.0/23 +202.20.90.0/24 +202.20.94.0/23 +202.20.114.0/24 +202.20.117.0/24 +202.20.120.0/24 +202.20.125.0/24 +202.20.126.0/24 +202.20.127.0/24 +202.21.48.0/22 +202.21.52.0/22 +202.21.56.0/22 +202.21.60.0/22 +202.21.131.0/24 +202.21.132.0/24 +202.21.141.0/24 +202.21.142.0/24 +202.21.147.0/24 +202.21.148.0/24 +202.21.150.0/23 +202.21.152.0/23 +202.21.154.0/24 +202.21.156.0/24 +202.22.248.0/22 +202.22.252.0/22 +202.27.12.0/24 +202.27.14.0/24 +202.27.136.0/23 +202.36.226.0/24 +202.38.0.0/23 +202.38.2.0/23 +202.38.8.0/21 +202.38.48.0/20 +202.38.64.0/19 +202.38.96.0/19 +202.38.128.0/23 +202.38.130.0/23 +202.38.132.0/23 +202.38.134.0/24 +202.38.135.0/24 +202.38.136.0/23 +202.38.138.0/24 +202.38.140.0/23 +202.38.142.0/23 +202.38.146.0/23 +202.38.149.0/24 +202.38.150.0/23 +202.38.152.0/23 +202.38.154.0/23 +202.38.156.0/24 +202.38.158.0/23 +202.38.160.0/23 +202.38.164.0/22 +202.38.168.0/23 +202.38.170.0/24 +202.38.171.0/24 +202.38.176.0/23 +202.38.184.0/21 +202.38.192.0/18 +202.40.4.0/23 +202.40.7.0/24 +202.40.15.0/24 +202.40.135.0/24 +202.40.136.0/24 +202.40.140.0/24 +202.40.143.0/24 +202.40.144.0/23 +202.40.150.0/24 +202.40.155.0/24 +202.40.156.0/24 +202.40.158.0/23 +202.40.162.0/24 +202.41.8.0/23 +202.41.11.0/24 +202.41.12.0/23 +202.41.128.0/24 +202.41.130.0/23 +202.41.152.0/21 +202.41.192.0/24 +202.41.196.0/22 +202.41.200.0/22 +202.41.240.0/20 +202.43.76.0/22 +202.43.144.0/20 +202.44.16.0/20 +202.44.48.0/22 +202.44.67.0/24 +202.44.74.0/24 +202.44.97.0/24 +202.44.129.0/24 +202.44.132.0/23 +202.44.146.0/23 +202.45.0.0/23 +202.45.2.0/24 +202.45.15.0/24 +202.45.16.0/20 +202.46.16.0/23 +202.46.18.0/24 +202.46.20.0/23 +202.46.32.0/19 +202.46.128.0/24 +202.46.224.0/20 +202.47.82.0/23 +202.47.96.0/22 +202.47.100.0/22 +202.47.104.0/22 +202.47.108.0/22 +202.47.126.0/24 +202.47.128.0/24 +202.47.130.0/23 +202.52.33.0/24 +202.52.34.0/24 +202.52.47.0/24 +202.52.143.0/24 +202.52.144.0/24 +202.53.140.0/24 +202.53.143.0/24 +202.57.192.0/22 +202.57.196.0/22 +202.57.200.0/22 +202.57.204.0/22 +202.57.212.0/22 +202.57.216.0/22 +202.57.240.0/20 +202.58.0.0/24 +202.58.101.0/24 +202.58.104.0/22 +202.58.112.0/22 +202.59.0.0/24 +202.59.1.0/24 +202.59.212.0/22 +202.59.236.0/24 +202.59.240.0/24 +202.60.48.0/21 +202.60.96.0/21 +202.60.112.0/20 +202.60.132.0/22 +202.60.136.0/21 +202.60.144.0/20 +202.61.68.0/22 +202.61.76.0/22 +202.61.88.0/22 +202.61.123.0/24 +202.61.127.0/24 +202.62.112.0/22 +202.62.248.0/22 +202.62.252.0/24 +202.62.255.0/24 +202.63.80.0/24 +202.63.81.0/24 +202.63.82.0/23 +202.63.84.0/22 +202.63.88.0/21 +202.63.160.0/19 +202.63.248.0/22 +202.63.253.0/24 +202.65.0.0/21 +202.65.8.0/23 +202.65.96.0/22 +202.65.100.0/22 +202.65.104.0/22 +202.65.108.0/22 +202.66.168.0/22 +202.67.0.0/22 +202.69.4.0/22 +202.69.16.0/20 +202.70.0.0/19 +202.70.96.0/20 +202.70.192.0/20 +202.71.32.0/22 +202.71.36.0/22 +202.71.40.0/22 +202.71.44.0/22 +202.72.40.0/21 +202.72.80.0/20 +202.72.112.0/22 +202.72.116.0/22 +202.72.120.0/22 +202.72.124.0/22 +202.73.128.0/22 +202.73.240.0/22 +202.73.244.0/22 +202.73.248.0/22 +202.73.252.0/22 +202.74.8.0/21 +202.74.36.0/24 +202.74.42.0/24 +202.74.52.0/24 +202.74.80.0/20 +202.74.254.0/23 +202.75.208.0/20 +202.75.252.0/22 +202.76.252.0/22 +202.77.80.0/21 +202.77.92.0/22 +202.78.8.0/21 +202.79.224.0/21 +202.79.248.0/22 +202.80.192.0/21 +202.80.200.0/21 +202.81.0.0/22 +202.81.176.0/22 +202.81.180.0/22 +202.81.184.0/22 +202.81.188.0/22 +202.83.252.0/22 +202.84.0.0/22 +202.84.4.0/22 +202.84.8.0/21 +202.84.16.0/23 +202.84.22.0/24 +202.84.24.0/21 +202.85.208.0/20 +202.86.249.0/24 +202.86.252.0/22 +202.87.80.0/20 +202.88.32.0/22 +202.89.8.0/21 +202.89.96.0/22 +202.89.108.0/22 +202.89.119.0/24 +202.89.232.0/21 +202.90.0.0/22 +202.90.16.0/22 +202.90.20.0/22 +202.90.24.0/22 +202.90.28.0/22 +202.90.37.0/24 +202.90.96.0/22 +202.90.100.0/22 +202.90.104.0/22 +202.90.108.0/22 +202.90.112.0/20 +202.90.193.0/24 +202.90.196.0/24 +202.90.205.0/24 +202.90.224.0/20 +202.91.0.0/22 +202.91.36.0/22 +202.91.96.0/20 +202.91.128.0/22 +202.91.176.0/20 +202.91.224.0/19 +202.92.0.0/22 +202.92.8.0/21 +202.92.48.0/20 +202.92.252.0/22 +202.93.0.0/22 +202.93.252.0/22 +202.94.68.0/24 +202.94.74.0/24 +202.94.81.0/24 +202.94.92.0/22 +202.95.240.0/21 +202.95.252.0/22 +202.96.0.0/18 +202.96.64.0/21 +202.96.72.0/21 +202.96.80.0/20 +202.96.96.0/21 +202.96.104.0/21 +202.96.112.0/20 +202.96.128.0/21 +202.96.136.0/21 +202.96.144.0/20 +202.96.160.0/21 +202.96.168.0/21 +202.96.176.0/20 +202.96.192.0/21 +202.96.200.0/21 +202.96.208.0/20 +202.96.224.0/21 +202.96.232.0/21 +202.96.240.0/20 +202.97.0.0/21 +202.97.8.0/21 +202.97.16.0/20 +202.97.32.0/19 +202.97.64.0/19 +202.97.96.0/20 +202.97.112.0/20 +202.97.128.0/18 +202.97.192.0/19 +202.97.224.0/21 +202.97.232.0/21 +202.97.240.0/20 +202.98.0.0/21 +202.98.8.0/21 +202.98.16.0/20 +202.98.32.0/21 +202.98.40.0/21 +202.98.48.0/20 +202.98.64.0/19 +202.98.96.0/21 +202.98.104.0/21 +202.98.112.0/20 +202.98.128.0/19 +202.98.160.0/21 +202.98.168.0/21 +202.98.176.0/20 +202.98.192.0/21 +202.98.200.0/21 +202.98.208.0/20 +202.98.224.0/21 +202.98.232.0/21 +202.98.240.0/20 +202.99.0.0/18 +202.99.64.0/19 +202.99.96.0/21 +202.99.104.0/21 +202.99.112.0/20 +202.99.128.0/19 +202.99.160.0/21 +202.99.168.0/21 +202.99.176.0/20 +202.99.192.0/21 +202.99.200.0/21 +202.99.208.0/20 +202.99.224.0/21 +202.99.232.0/21 +202.99.240.0/20 +202.100.0.0/21 +202.100.8.0/21 +202.100.16.0/20 +202.100.32.0/19 +202.100.64.0/21 +202.100.72.0/21 +202.100.80.0/20 +202.100.96.0/21 +202.100.104.0/21 +202.100.112.0/20 +202.100.128.0/21 +202.100.136.0/21 +202.100.144.0/20 +202.100.160.0/21 +202.100.168.0/21 +202.100.176.0/20 +202.100.192.0/21 +202.100.200.0/21 +202.100.208.0/20 +202.100.224.0/19 +202.101.0.0/18 +202.101.64.0/19 +202.101.96.0/19 +202.101.128.0/18 +202.101.192.0/19 +202.101.224.0/21 +202.101.232.0/21 +202.101.240.0/20 +202.102.0.0/19 +202.102.32.0/19 +202.102.64.0/18 +202.102.128.0/21 +202.102.136.0/21 +202.102.144.0/20 +202.102.160.0/19 +202.102.192.0/21 +202.102.200.0/21 +202.102.208.0/20 +202.102.224.0/21 +202.102.232.0/21 +202.102.240.0/20 +202.103.0.0/21 +202.103.8.0/21 +202.103.16.0/20 +202.103.32.0/19 +202.103.64.0/19 +202.103.96.0/21 +202.103.104.0/21 +202.103.112.0/20 +202.103.128.0/18 +202.103.192.0/19 +202.103.224.0/21 +202.103.232.0/21 +202.103.240.0/20 +202.104.0.0/15 +202.106.0.0/16 +202.107.0.0/17 +202.107.128.0/17 +202.108.0.0/16 +202.109.0.0/16 +202.110.0.0/18 +202.110.64.0/18 +202.110.128.0/18 +202.110.192.0/18 +202.111.0.0/17 +202.111.128.0/19 +202.111.160.0/19 +202.111.192.0/18 +202.112.0.0/16 +202.113.0.0/20 +202.113.16.0/20 +202.113.32.0/19 +202.113.64.0/18 +202.113.128.0/18 +202.113.192.0/19 +202.113.224.0/20 +202.113.240.0/20 +202.114.0.0/19 +202.114.32.0/19 +202.114.64.0/18 +202.114.128.0/17 +202.115.0.0/19 +202.115.32.0/19 +202.115.64.0/18 +202.115.128.0/17 +202.116.0.0/19 +202.116.32.0/20 +202.116.48.0/20 +202.116.64.0/19 +202.116.96.0/19 +202.116.128.0/17 +202.117.0.0/18 +202.117.64.0/18 +202.117.128.0/17 +202.118.0.0/19 +202.118.32.0/19 +202.118.64.0/18 +202.118.128.0/17 +202.119.0.0/19 +202.119.32.0/19 +202.119.64.0/20 +202.119.80.0/20 +202.119.96.0/19 +202.119.128.0/17 +202.120.0.0/18 +202.120.64.0/18 +202.120.128.0/17 +202.121.0.0/16 +202.122.0.0/21 +202.122.32.0/21 +202.122.64.0/19 +202.122.112.0/21 +202.122.120.0/21 +202.122.128.0/24 +202.122.132.0/24 +202.123.96.0/20 +202.123.116.0/22 +202.123.120.0/22 +202.124.16.0/21 +202.124.24.0/22 +202.125.107.0/24 +202.125.109.0/24 +202.125.112.0/20 +202.125.176.0/20 +202.127.0.0/23 +202.127.2.0/24 +202.127.3.0/24 +202.127.4.0/24 +202.127.5.0/24 +202.127.6.0/23 +202.127.12.0/22 +202.127.16.0/20 +202.127.40.0/21 +202.127.48.0/20 +202.127.112.0/20 +202.127.128.0/20 +202.127.144.0/20 +202.127.160.0/21 +202.127.192.0/23 +202.127.194.0/23 +202.127.196.0/22 +202.127.200.0/21 +202.127.208.0/24 +202.127.209.0/24 +202.127.212.0/22 +202.127.216.0/21 +202.127.224.0/19 +202.129.208.0/24 +202.130.0.0/19 +202.130.39.0/24 +202.130.224.0/19 +202.131.16.0/21 +202.131.48.0/20 +202.131.208.0/20 +202.133.32.0/20 +202.134.58.0/24 +202.134.128.0/20 +202.134.208.0/22 +202.134.212.0/22 +202.134.216.0/22 +202.134.220.0/22 +202.136.48.0/20 +202.136.208.0/20 +202.136.224.0/20 +202.136.248.0/22 +202.137.231.0/24 +202.140.140.0/22 +202.140.144.0/22 +202.140.148.0/22 +202.140.152.0/22 +202.140.156.0/22 +202.141.160.0/19 +202.142.16.0/20 +202.143.4.0/22 +202.143.16.0/20 +202.143.32.0/20 +202.143.56.0/21 +202.143.100.0/22 +202.143.104.0/22 +202.144.196.0/22 +202.146.160.0/20 +202.146.186.0/24 +202.146.188.0/22 +202.146.196.0/22 +202.146.200.0/21 +202.147.144.0/20 +202.148.32.0/20 +202.148.64.0/19 +202.148.96.0/19 +202.149.32.0/19 +202.149.160.0/19 +202.149.224.0/19 +202.150.16.0/20 +202.150.32.0/20 +202.150.56.0/22 +202.150.192.0/20 +202.150.224.0/19 +202.151.0.0/22 +202.151.33.0/24 +202.151.128.0/19 +202.152.176.0/20 +202.153.0.0/22 +202.153.7.0/24 +202.153.48.0/20 +202.157.192.0/19 +202.158.160.0/19 +202.158.242.0/24 +202.160.140.0/22 +202.160.156.0/22 +202.160.176.0/20 +202.162.67.0/24 +202.162.75.0/24 +202.164.0.0/20 +202.164.96.0/19 +202.165.176.0/20 +202.165.208.0/20 +202.165.239.0/24 +202.165.240.0/23 +202.165.243.0/24 +202.165.245.0/24 +202.165.251.0/24 +202.165.252.0/22 +202.166.224.0/19 +202.168.80.0/22 +202.168.128.0/22 +202.168.132.0/22 +202.168.136.0/22 +202.168.140.0/22 +202.168.160.0/20 +202.168.176.0/20 +202.170.128.0/19 +202.170.216.0/21 +202.170.224.0/19 +202.171.216.0/21 +202.171.232.0/24 +202.171.235.0/24 +202.172.0.0/22 +202.172.7.0/24 +202.173.0.0/22 +202.173.6.0/24 +202.173.8.0/21 +202.173.112.0/22 +202.173.224.0/19 +202.174.64.0/20 +202.174.124.0/22 +202.176.224.0/19 +202.179.160.0/22 +202.179.164.0/22 +202.179.168.0/22 +202.179.172.0/22 +202.179.240.0/20 +202.180.128.0/19 +202.180.208.0/21 +202.181.8.0/22 +202.181.28.0/22 +202.181.112.0/20 +202.182.32.0/20 +202.182.192.0/19 +202.189.0.0/18 +202.189.80.0/20 +202.189.184.0/21 +202.191.0.0/24 +202.191.68.0/22 +202.191.72.0/21 +202.191.80.0/20 +202.192.0.0/13 +202.200.0.0/14 +202.204.0.0/14 +203.0.4.0/22 +203.0.10.0/23 +203.0.18.0/24 +203.0.24.0/24 +203.0.42.0/23 +203.0.45.0/24 +203.0.46.0/23 +203.0.81.0/24 +203.0.82.0/23 +203.0.90.0/23 +203.0.96.0/23 +203.0.104.0/21 +203.0.114.0/23 +203.0.122.0/24 +203.0.128.0/24 +203.0.130.0/23 +203.0.132.0/22 +203.0.137.0/24 +203.0.142.0/24 +203.0.144.0/24 +203.0.146.0/24 +203.0.148.0/24 +203.0.150.0/23 +203.0.152.0/24 +203.0.177.0/24 +203.0.224.0/24 +203.1.4.0/22 +203.1.18.0/24 +203.1.26.0/23 +203.1.65.0/24 +203.1.66.0/23 +203.1.70.0/23 +203.1.76.0/23 +203.1.90.0/24 +203.1.97.0/24 +203.1.98.0/23 +203.1.100.0/22 +203.1.108.0/24 +203.1.253.0/24 +203.1.254.0/24 +203.2.64.0/21 +203.2.73.0/24 +203.2.112.0/21 +203.2.126.0/23 +203.2.140.0/24 +203.2.150.0/24 +203.2.152.0/22 +203.2.156.0/23 +203.2.160.0/21 +203.2.180.0/23 +203.2.196.0/23 +203.2.209.0/24 +203.2.214.0/23 +203.2.226.0/23 +203.2.229.0/24 +203.2.236.0/23 +203.3.68.0/24 +203.3.72.0/23 +203.3.75.0/24 +203.3.80.0/21 +203.3.96.0/22 +203.3.105.0/24 +203.3.112.0/21 +203.3.120.0/24 +203.3.123.0/24 +203.3.135.0/24 +203.3.139.0/24 +203.3.143.0/24 +203.4.132.0/23 +203.4.134.0/24 +203.4.151.0/24 +203.4.152.0/22 +203.4.174.0/23 +203.4.180.0/24 +203.4.186.0/24 +203.4.205.0/24 +203.4.208.0/22 +203.4.227.0/24 +203.4.230.0/23 +203.5.4.0/23 +203.5.7.0/24 +203.5.8.0/23 +203.5.11.0/24 +203.5.21.0/24 +203.5.22.0/24 +203.5.44.0/24 +203.5.46.0/23 +203.5.52.0/22 +203.5.56.0/23 +203.5.60.0/23 +203.5.114.0/23 +203.5.118.0/24 +203.5.120.0/24 +203.5.172.0/24 +203.5.180.0/23 +203.5.182.0/24 +203.5.185.0/24 +203.5.186.0/24 +203.5.188.0/23 +203.5.190.0/24 +203.5.195.0/24 +203.5.214.0/23 +203.5.218.0/23 +203.6.131.0/24 +203.6.136.0/24 +203.6.138.0/23 +203.6.142.0/24 +203.6.150.0/23 +203.6.157.0/24 +203.6.159.0/24 +203.6.224.0/20 +203.6.248.0/23 +203.7.129.0/24 +203.7.138.0/23 +203.7.147.0/24 +203.7.150.0/23 +203.7.158.0/24 +203.7.192.0/23 +203.7.200.0/24 +203.8.0.0/24 +203.8.8.0/24 +203.8.23.0/24 +203.8.70.0/24 +203.8.82.0/24 +203.8.86.0/23 +203.8.91.0/24 +203.8.110.0/23 +203.8.115.0/24 +203.8.166.0/23 +203.8.169.0/24 +203.8.173.0/24 +203.8.184.0/24 +203.8.186.0/23 +203.8.190.0/23 +203.8.192.0/24 +203.8.197.0/24 +203.8.198.0/23 +203.8.203.0/24 +203.8.209.0/24 +203.8.210.0/23 +203.8.212.0/22 +203.8.217.0/24 +203.8.220.0/24 +203.9.32.0/24 +203.9.36.0/23 +203.9.57.0/24 +203.9.63.0/24 +203.9.65.0/24 +203.9.70.0/23 +203.9.72.0/24 +203.9.75.0/24 +203.9.76.0/23 +203.9.96.0/22 +203.9.100.0/23 +203.9.108.0/24 +203.9.158.0/24 +203.10.34.0/24 +203.10.56.0/24 +203.10.74.0/23 +203.10.84.0/22 +203.10.88.0/24 +203.10.95.0/24 +203.10.125.0/24 +203.11.70.0/24 +203.11.76.0/22 +203.11.82.0/24 +203.11.84.0/22 +203.11.100.0/22 +203.11.109.0/24 +203.11.117.0/24 +203.11.122.0/24 +203.11.126.0/24 +203.11.136.0/22 +203.11.141.0/24 +203.11.142.0/23 +203.11.180.0/22 +203.11.208.0/22 +203.12.16.0/24 +203.12.19.0/24 +203.12.24.0/24 +203.12.57.0/24 +203.12.65.0/24 +203.12.66.0/24 +203.12.70.0/23 +203.12.87.0/24 +203.12.100.0/23 +203.12.103.0/24 +203.12.114.0/24 +203.12.118.0/24 +203.12.130.0/24 +203.12.137.0/24 +203.12.196.0/22 +203.12.211.0/24 +203.12.219.0/24 +203.12.226.0/24 +203.12.240.0/22 +203.13.18.0/24 +203.13.24.0/24 +203.13.44.0/23 +203.13.88.0/23 +203.13.92.0/22 +203.13.173.0/24 +203.13.224.0/23 +203.13.227.0/24 +203.13.233.0/24 +203.14.24.0/22 +203.14.33.0/24 +203.14.56.0/24 +203.14.61.0/24 +203.14.62.0/24 +203.14.104.0/24 +203.14.114.0/23 +203.14.118.0/24 +203.14.162.0/24 +203.14.192.0/24 +203.14.194.0/23 +203.14.214.0/24 +203.14.231.0/24 +203.14.246.0/24 +203.15.0.0/20 +203.15.20.0/23 +203.15.22.0/24 +203.15.87.0/24 +203.15.88.0/23 +203.15.105.0/24 +203.15.112.0/21 +203.15.130.0/23 +203.15.149.0/24 +203.15.151.0/24 +203.15.156.0/22 +203.15.174.0/24 +203.15.227.0/24 +203.15.232.0/21 +203.15.240.0/23 +203.15.246.0/24 +203.16.10.0/24 +203.16.12.0/23 +203.16.16.0/21 +203.16.27.0/24 +203.16.38.0/24 +203.16.49.0/24 +203.16.50.0/23 +203.16.58.0/24 +203.16.63.0/24 +203.16.133.0/24 +203.16.161.0/24 +203.16.162.0/24 +203.16.186.0/23 +203.16.228.0/24 +203.16.238.0/24 +203.16.240.0/24 +203.16.245.0/24 +203.17.2.0/24 +203.17.18.0/24 +203.17.28.0/24 +203.17.39.0/24 +203.17.56.0/24 +203.17.74.0/23 +203.17.88.0/23 +203.17.136.0/24 +203.17.164.0/24 +203.17.187.0/24 +203.17.190.0/23 +203.17.231.0/24 +203.17.233.0/24 +203.17.248.0/24 +203.17.249.0/24 +203.17.255.0/24 +203.18.2.0/23 +203.18.4.0/24 +203.18.7.0/24 +203.18.31.0/24 +203.18.37.0/24 +203.18.48.0/23 +203.18.52.0/24 +203.18.72.0/22 +203.18.80.0/23 +203.18.87.0/24 +203.18.100.0/23 +203.18.105.0/24 +203.18.107.0/24 +203.18.110.0/24 +203.18.129.0/24 +203.18.131.0/24 +203.18.132.0/23 +203.18.144.0/24 +203.18.153.0/24 +203.18.199.0/24 +203.18.208.0/24 +203.18.211.0/24 +203.18.215.0/24 +203.19.1.0/24 +203.19.18.0/24 +203.19.24.0/24 +203.19.30.0/24 +203.19.32.0/21 +203.19.41.0/24 +203.19.44.0/23 +203.19.46.0/24 +203.19.58.0/24 +203.19.60.0/23 +203.19.64.0/24 +203.19.68.0/24 +203.19.72.0/24 +203.19.101.0/24 +203.19.111.0/24 +203.19.131.0/24 +203.19.133.0/24 +203.19.144.0/24 +203.19.147.0/24 +203.19.149.0/24 +203.19.156.0/24 +203.19.176.0/24 +203.19.178.0/23 +203.19.208.0/24 +203.19.228.0/22 +203.19.233.0/24 +203.19.242.0/24 +203.19.248.0/23 +203.19.255.0/24 +203.20.17.0/24 +203.20.40.0/23 +203.20.44.0/24 +203.20.48.0/24 +203.20.61.0/24 +203.20.65.0/24 +203.20.84.0/23 +203.20.89.0/24 +203.20.106.0/23 +203.20.115.0/24 +203.20.117.0/24 +203.20.118.0/23 +203.20.122.0/24 +203.20.126.0/23 +203.20.135.0/24 +203.20.136.0/21 +203.20.150.0/24 +203.20.230.0/24 +203.20.232.0/24 +203.20.236.0/24 +203.21.0.0/23 +203.21.2.0/24 +203.21.8.0/24 +203.21.10.0/24 +203.21.18.0/24 +203.21.33.0/24 +203.21.34.0/24 +203.21.41.0/24 +203.21.44.0/24 +203.21.68.0/24 +203.21.82.0/24 +203.21.96.0/22 +203.21.124.0/24 +203.21.136.0/23 +203.21.145.0/24 +203.21.206.0/24 +203.22.24.0/24 +203.22.28.0/23 +203.22.31.0/24 +203.22.68.0/24 +203.22.76.0/24 +203.22.78.0/24 +203.22.84.0/24 +203.22.87.0/24 +203.22.92.0/22 +203.22.99.0/24 +203.22.106.0/24 +203.22.122.0/23 +203.22.131.0/24 +203.22.163.0/24 +203.22.166.0/24 +203.22.170.0/24 +203.22.176.0/21 +203.22.194.0/24 +203.22.242.0/23 +203.22.245.0/24 +203.22.246.0/24 +203.22.252.0/23 +203.23.0.0/24 +203.23.47.0/24 +203.23.61.0/24 +203.23.62.0/23 +203.23.73.0/24 +203.23.85.0/24 +203.23.92.0/22 +203.23.98.0/24 +203.23.107.0/24 +203.23.112.0/24 +203.23.130.0/24 +203.23.140.0/23 +203.23.172.0/24 +203.23.182.0/24 +203.23.186.0/23 +203.23.192.0/24 +203.23.197.0/24 +203.23.198.0/24 +203.23.204.0/22 +203.23.224.0/24 +203.23.226.0/23 +203.23.228.0/22 +203.23.249.0/24 +203.23.251.0/24 +203.24.13.0/24 +203.24.18.0/24 +203.24.27.0/24 +203.24.43.0/24 +203.24.56.0/24 +203.24.58.0/24 +203.24.67.0/24 +203.24.74.0/24 +203.24.79.0/24 +203.24.80.0/23 +203.24.84.0/23 +203.24.86.0/24 +203.24.90.0/24 +203.24.111.0/24 +203.24.112.0/24 +203.24.116.0/24 +203.24.122.0/23 +203.24.145.0/24 +203.24.152.0/23 +203.24.157.0/24 +203.24.161.0/24 +203.24.167.0/24 +203.24.186.0/23 +203.24.199.0/24 +203.24.202.0/24 +203.24.212.0/23 +203.24.217.0/24 +203.24.219.0/24 +203.24.244.0/24 +203.25.19.0/24 +203.25.20.0/23 +203.25.46.0/24 +203.25.48.0/21 +203.25.64.0/23 +203.25.91.0/24 +203.25.99.0/24 +203.25.100.0/24 +203.25.106.0/24 +203.25.131.0/24 +203.25.135.0/24 +203.25.138.0/24 +203.25.147.0/24 +203.25.153.0/24 +203.25.154.0/23 +203.25.164.0/24 +203.25.166.0/24 +203.25.174.0/23 +203.25.180.0/24 +203.25.182.0/24 +203.25.191.0/24 +203.25.199.0/24 +203.25.200.0/24 +203.25.202.0/23 +203.25.208.0/20 +203.25.229.0/24 +203.25.235.0/24 +203.25.236.0/24 +203.25.242.0/24 +203.26.12.0/24 +203.26.34.0/24 +203.26.49.0/24 +203.26.50.0/24 +203.26.55.0/24 +203.26.56.0/23 +203.26.60.0/24 +203.26.65.0/24 +203.26.68.0/24 +203.26.76.0/24 +203.26.80.0/24 +203.26.84.0/24 +203.26.97.0/24 +203.26.102.0/23 +203.26.115.0/24 +203.26.116.0/24 +203.26.129.0/24 +203.26.143.0/24 +203.26.144.0/24 +203.26.148.0/23 +203.26.154.0/24 +203.26.158.0/23 +203.26.170.0/24 +203.26.173.0/24 +203.26.176.0/24 +203.26.185.0/24 +203.26.202.0/23 +203.26.210.0/24 +203.26.214.0/24 +203.26.222.0/24 +203.26.224.0/24 +203.26.228.0/24 +203.26.232.0/24 +203.27.0.0/24 +203.27.10.0/24 +203.27.15.0/24 +203.27.16.0/24 +203.27.20.0/24 +203.27.22.0/23 +203.27.40.0/24 +203.27.45.0/24 +203.27.53.0/24 +203.27.65.0/24 +203.27.66.0/24 +203.27.81.0/24 +203.27.88.0/24 +203.27.102.0/24 +203.27.109.0/24 +203.27.117.0/24 +203.27.121.0/24 +203.27.122.0/23 +203.27.125.0/24 +203.27.200.0/24 +203.27.202.0/24 +203.27.233.0/24 +203.27.241.0/24 +203.27.250.0/24 +203.28.10.0/24 +203.28.12.0/24 +203.28.33.0/24 +203.28.34.0/23 +203.28.43.0/24 +203.28.44.0/24 +203.28.54.0/24 +203.28.56.0/24 +203.28.73.0/24 +203.28.74.0/24 +203.28.76.0/24 +203.28.86.0/24 +203.28.88.0/24 +203.28.112.0/24 +203.28.131.0/24 +203.28.136.0/24 +203.28.140.0/24 +203.28.145.0/24 +203.28.165.0/24 +203.28.169.0/24 +203.28.170.0/24 +203.28.178.0/23 +203.28.185.0/24 +203.28.187.0/24 +203.28.196.0/24 +203.28.226.0/23 +203.28.239.0/24 +203.29.2.0/24 +203.29.8.0/23 +203.29.13.0/24 +203.29.14.0/24 +203.29.28.0/24 +203.29.46.0/24 +203.29.57.0/24 +203.29.61.0/24 +203.29.63.0/24 +203.29.69.0/24 +203.29.73.0/24 +203.29.81.0/24 +203.29.90.0/24 +203.29.95.0/24 +203.29.100.0/24 +203.29.103.0/24 +203.29.112.0/24 +203.29.120.0/22 +203.29.182.0/23 +203.29.187.0/24 +203.29.189.0/24 +203.29.190.0/24 +203.29.205.0/24 +203.29.210.0/24 +203.29.217.0/24 +203.29.227.0/24 +203.29.231.0/24 +203.29.233.0/24 +203.29.234.0/24 +203.29.248.0/24 +203.29.254.0/23 +203.30.16.0/23 +203.30.25.0/24 +203.30.27.0/24 +203.30.29.0/24 +203.30.66.0/24 +203.30.81.0/24 +203.30.87.0/24 +203.30.111.0/24 +203.30.121.0/24 +203.30.123.0/24 +203.30.152.0/24 +203.30.156.0/24 +203.30.162.0/24 +203.30.173.0/24 +203.30.175.0/24 +203.30.187.0/24 +203.30.194.0/24 +203.30.217.0/24 +203.30.220.0/24 +203.30.222.0/24 +203.30.232.0/23 +203.30.235.0/24 +203.30.240.0/23 +203.30.246.0/24 +203.30.250.0/23 +203.31.45.0/24 +203.31.46.0/24 +203.31.49.0/24 +203.31.51.0/24 +203.31.54.0/23 +203.31.69.0/24 +203.31.72.0/24 +203.31.80.0/24 +203.31.85.0/24 +203.31.97.0/24 +203.31.105.0/24 +203.31.106.0/24 +203.31.108.0/23 +203.31.124.0/24 +203.31.162.0/24 +203.31.174.0/24 +203.31.177.0/24 +203.31.181.0/24 +203.31.187.0/24 +203.31.189.0/24 +203.31.204.0/24 +203.31.220.0/24 +203.31.222.0/23 +203.31.225.0/24 +203.31.229.0/24 +203.31.248.0/23 +203.31.253.0/24 +203.32.20.0/24 +203.32.48.0/23 +203.32.56.0/24 +203.32.60.0/24 +203.32.62.0/24 +203.32.68.0/23 +203.32.76.0/24 +203.32.81.0/24 +203.32.84.0/23 +203.32.95.0/24 +203.32.102.0/24 +203.32.105.0/24 +203.32.130.0/24 +203.32.133.0/24 +203.32.140.0/24 +203.32.152.0/24 +203.32.186.0/23 +203.32.192.0/24 +203.32.196.0/24 +203.32.203.0/24 +203.32.204.0/23 +203.32.212.0/24 +203.33.4.0/24 +203.33.7.0/24 +203.33.8.0/21 +203.33.21.0/24 +203.33.26.0/24 +203.33.32.0/24 +203.33.63.0/24 +203.33.64.0/24 +203.33.67.0/24 +203.33.68.0/24 +203.33.73.0/24 +203.33.79.0/24 +203.33.100.0/24 +203.33.122.0/24 +203.33.129.0/24 +203.33.131.0/24 +203.33.145.0/24 +203.33.156.0/24 +203.33.158.0/23 +203.33.174.0/24 +203.33.185.0/24 +203.33.200.0/24 +203.33.202.0/23 +203.33.204.0/24 +203.33.206.0/23 +203.33.214.0/23 +203.33.224.0/23 +203.33.226.0/24 +203.33.233.0/24 +203.33.243.0/24 +203.33.250.0/24 +203.34.4.0/24 +203.34.21.0/24 +203.34.27.0/24 +203.34.39.0/24 +203.34.48.0/23 +203.34.54.0/24 +203.34.56.0/23 +203.34.67.0/24 +203.34.69.0/24 +203.34.76.0/24 +203.34.92.0/24 +203.34.106.0/24 +203.34.113.0/24 +203.34.147.0/24 +203.34.150.0/24 +203.34.152.0/23 +203.34.161.0/24 +203.34.162.0/24 +203.34.187.0/24 +203.34.192.0/21 +203.34.204.0/22 +203.34.232.0/24 +203.34.240.0/24 +203.34.242.0/24 +203.34.245.0/24 +203.34.251.0/24 +203.55.2.0/23 +203.55.4.0/24 +203.55.10.0/24 +203.55.13.0/24 +203.55.22.0/24 +203.55.30.0/24 +203.55.93.0/24 +203.55.101.0/24 +203.55.109.0/24 +203.55.110.0/24 +203.55.116.0/23 +203.55.119.0/24 +203.55.128.0/23 +203.55.146.0/23 +203.55.192.0/24 +203.55.196.0/24 +203.55.218.0/23 +203.55.221.0/24 +203.55.224.0/24 +203.56.1.0/24 +203.56.4.0/24 +203.56.12.0/24 +203.56.24.0/24 +203.56.38.0/24 +203.56.40.0/24 +203.56.46.0/24 +203.56.48.0/21 +203.56.68.0/23 +203.56.82.0/23 +203.56.84.0/23 +203.56.95.0/24 +203.56.110.0/24 +203.56.121.0/24 +203.56.161.0/24 +203.56.169.0/24 +203.56.172.0/23 +203.56.175.0/24 +203.56.183.0/24 +203.56.185.0/24 +203.56.187.0/24 +203.56.192.0/24 +203.56.198.0/24 +203.56.201.0/24 +203.56.208.0/23 +203.56.210.0/24 +203.56.214.0/24 +203.56.216.0/24 +203.56.227.0/24 +203.56.228.0/24 +203.56.231.0/24 +203.56.232.0/24 +203.56.240.0/24 +203.56.252.0/24 +203.56.254.0/24 +203.57.5.0/24 +203.57.6.0/24 +203.57.12.0/23 +203.57.28.0/24 +203.57.39.0/24 +203.57.46.0/24 +203.57.58.0/24 +203.57.61.0/24 +203.57.66.0/24 +203.57.69.0/24 +203.57.70.0/23 +203.57.73.0/24 +203.57.90.0/24 +203.57.101.0/24 +203.57.109.0/24 +203.57.123.0/24 +203.57.157.0/24 +203.57.200.0/24 +203.57.202.0/24 +203.57.206.0/24 +203.57.222.0/24 +203.57.224.0/20 +203.57.246.0/23 +203.57.249.0/24 +203.57.253.0/24 +203.57.254.0/23 +203.62.2.0/24 +203.62.131.0/24 +203.62.139.0/24 +203.62.161.0/24 +203.62.197.0/24 +203.62.228.0/22 +203.62.234.0/24 +203.62.246.0/24 +203.76.160.0/22 +203.76.168.0/22 +203.76.208.0/22 +203.76.212.0/22 +203.76.216.0/22 +203.76.240.0/22 +203.76.244.0/22 +203.77.180.0/22 +203.78.48.0/20 +203.78.156.0/22 +203.79.0.0/20 +203.79.32.0/20 +203.80.4.0/23 +203.80.32.0/20 +203.80.57.0/24 +203.80.129.0/24 +203.80.132.0/22 +203.80.136.0/21 +203.80.144.0/20 +203.81.0.0/21 +203.81.16.0/20 +203.81.244.0/22 +203.82.0.0/23 +203.82.16.0/21 +203.82.112.0/22 +203.82.116.0/22 +203.82.120.0/22 +203.82.124.0/22 +203.82.224.0/22 +203.82.228.0/22 +203.82.232.0/22 +203.82.236.0/22 +203.83.0.0/22 +203.83.8.0/22 +203.83.12.0/22 +203.83.56.0/21 +203.83.224.0/20 +203.86.0.0/19 +203.86.32.0/19 +203.86.64.0/20 +203.86.80.0/20 +203.86.96.0/19 +203.86.250.0/24 +203.86.254.0/23 +203.88.32.0/19 +203.88.192.0/19 +203.89.0.0/22 +203.89.8.0/21 +203.89.100.0/22 +203.89.133.0/24 +203.89.136.0/22 +203.89.144.0/24 +203.90.0.0/22 +203.90.8.0/22 +203.90.12.0/22 +203.90.128.0/19 +203.90.160.0/19 +203.90.192.0/19 +203.91.32.0/19 +203.91.96.0/20 +203.91.120.0/21 +203.92.0.0/22 +203.92.6.0/24 +203.92.160.0/19 +203.93.0.0/22 +203.93.4.0/22 +203.93.8.0/24 +203.93.9.0/24 +203.93.10.0/23 +203.93.12.0/22 +203.93.16.0/20 +203.93.32.0/19 +203.93.64.0/18 +203.93.128.0/21 +203.93.136.0/22 +203.93.140.0/24 +203.93.141.0/24 +203.93.142.0/23 +203.93.144.0/20 +203.93.160.0/19 +203.93.192.0/18 +203.94.0.0/22 +203.94.4.0/22 +203.94.8.0/21 +203.94.16.0/20 +203.95.0.0/21 +203.95.96.0/20 +203.95.112.0/20 +203.95.128.0/18 +203.95.200.0/22 +203.95.204.0/22 +203.95.208.0/22 +203.95.224.0/19 +203.99.8.0/21 +203.99.16.0/20 +203.99.80.0/20 +203.100.32.0/20 +203.100.48.0/21 +203.100.58.0/24 +203.100.60.0/24 +203.100.63.0/24 +203.100.80.0/20 +203.100.96.0/19 +203.100.192.0/20 +203.104.32.0/20 +203.105.96.0/19 +203.105.128.0/19 +203.107.0.0/17 +203.110.160.0/19 +203.110.208.0/20 +203.110.232.0/23 +203.110.234.0/24 +203.114.80.0/22 +203.114.84.0/22 +203.114.88.0/22 +203.114.92.0/22 +203.114.244.0/22 +203.118.192.0/19 +203.118.241.0/24 +203.118.248.0/22 +203.119.24.0/21 +203.119.32.0/22 +203.119.80.0/22 +203.119.85.0/24 +203.119.113.0/24 +203.119.114.0/23 +203.119.116.0/22 +203.119.120.0/21 +203.119.128.0/17 +203.123.58.0/24 +203.128.32.0/19 +203.128.96.0/19 +203.128.224.0/21 +203.129.8.0/21 +203.130.32.0/19 +203.132.32.0/19 +203.134.240.0/21 +203.135.96.0/20 +203.135.112.0/20 +203.135.160.0/20 +203.142.219.0/24 +203.142.224.0/19 +203.144.96.0/19 +203.145.0.0/19 +203.148.0.0/18 +203.148.64.0/20 +203.148.80.0/22 +203.148.86.0/23 +203.149.92.0/22 +203.152.64.0/19 +203.152.128.0/19 +203.153.0.0/22 +203.156.192.0/18 +203.158.16.0/21 +203.160.52.0/22 +203.160.104.0/21 +203.160.129.0/24 +203.160.192.0/19 +203.161.0.0/22 +203.161.180.0/24 +203.161.183.0/24 +203.161.192.0/19 +203.166.160.0/19 +203.167.28.0/22 +203.168.0.0/19 +203.170.58.0/23 +203.171.0.0/22 +203.171.208.0/24 +203.171.224.0/20 +203.174.4.0/24 +203.174.6.0/24 +203.174.7.0/24 +203.174.96.0/19 +203.175.128.0/19 +203.175.192.0/18 +203.176.0.0/18 +203.176.64.0/19 +203.176.168.0/21 +203.184.80.0/20 +203.185.189.0/24 +203.187.160.0/19 +203.189.0.0/23 +203.189.6.0/23 +203.189.112.0/22 +203.189.192.0/19 +203.189.232.0/22 +203.189.240.0/22 +203.190.96.0/20 +203.190.249.0/24 +203.191.0.0/23 +203.191.2.0/24 +203.191.5.0/24 +203.191.7.0/24 +203.191.16.0/20 +203.191.64.0/18 +203.191.133.0/24 +203.191.144.0/21 +203.191.152.0/21 +203.192.0.0/19 +203.193.224.0/19 +203.194.120.0/21 +203.195.64.0/19 +203.195.112.0/21 +203.195.128.0/17 +203.196.0.0/21 +203.196.8.0/21 +203.196.28.0/22 +203.201.181.0/24 +203.201.182.0/24 +203.202.236.0/22 +203.205.64.0/19 +203.205.128.0/17 +203.207.64.0/20 +203.207.80.0/21 +203.207.88.0/22 +203.207.92.0/22 +203.207.96.0/20 +203.207.112.0/20 +203.207.128.0/18 +203.207.192.0/21 +203.207.200.0/21 +203.207.208.0/20 +203.207.224.0/19 +203.208.0.0/20 +203.208.16.0/22 +203.208.32.0/19 +203.209.224.0/19 +203.212.0.0/20 +203.212.80.0/20 +203.215.232.0/21 +203.217.164.0/22 +203.223.0.0/20 +203.223.16.0/21 +204.52.191.0/24 +210.2.0.0/20 +210.2.16.0/20 +210.5.0.0/19 +210.5.56.0/21 +210.5.128.0/20 +210.5.144.0/20 +210.7.56.0/22 +210.7.60.0/22 +210.12.0.0/18 +210.12.64.0/18 +210.12.128.0/18 +210.12.192.0/18 +210.13.0.0/18 +210.13.64.0/18 +210.13.128.0/17 +210.14.64.0/19 +210.14.112.0/20 +210.14.128.0/19 +210.14.160.0/19 +210.14.192.0/19 +210.14.224.0/19 +210.15.0.0/19 +210.15.32.0/19 +210.15.64.0/19 +210.15.96.0/19 +210.15.128.0/18 +210.16.104.0/22 +210.16.128.0/18 +210.21.0.0/17 +210.21.128.0/17 +210.22.0.0/16 +210.23.32.0/19 +210.25.0.0/16 +210.26.0.0/15 +210.28.0.0/14 +210.32.0.0/14 +210.36.0.0/14 +210.40.0.0/13 +210.51.0.0/16 +210.52.0.0/18 +210.52.64.0/18 +210.52.128.0/17 +210.53.0.0/17 +210.53.128.0/17 +210.56.192.0/19 +210.72.0.0/17 +210.72.128.0/19 +210.72.160.0/19 +210.72.192.0/18 +210.73.0.0/19 +210.73.32.0/19 +210.73.64.0/18 +210.73.128.0/17 +210.74.0.0/19 +210.74.32.0/19 +210.74.64.0/19 +210.74.96.0/19 +210.74.128.0/19 +210.74.160.0/19 +210.74.192.0/18 +210.75.0.0/16 +210.76.0.0/19 +210.76.32.0/19 +210.76.64.0/18 +210.76.128.0/17 +210.77.0.0/16 +210.78.0.0/19 +210.78.32.0/19 +210.78.64.0/18 +210.78.128.0/19 +210.78.160.0/19 +210.78.192.0/18 +210.79.64.0/18 +210.79.224.0/19 +210.82.0.0/15 +210.87.128.0/20 +210.87.144.0/20 +210.87.160.0/19 +210.185.192.0/18 +210.192.96.0/19 +211.64.0.0/14 +211.68.0.0/15 +211.70.0.0/15 +211.80.0.0/16 +211.81.0.0/16 +211.82.0.0/16 +211.83.0.0/16 +211.84.0.0/15 +211.86.0.0/15 +211.88.0.0/16 +211.89.0.0/16 +211.90.0.0/15 +211.92.0.0/15 +211.94.0.0/15 +211.96.0.0/15 +211.98.0.0/16 +211.99.0.0/18 +211.99.64.0/19 +211.99.96.0/19 +211.99.128.0/17 +211.100.0.0/16 +211.101.0.0/18 +211.101.64.0/18 +211.101.128.0/17 +211.102.0.0/16 +211.103.0.0/17 +211.103.128.0/17 +211.136.0.0/14 +211.140.0.0/15 +211.142.0.0/17 +211.142.128.0/17 +211.143.0.0/16 +211.144.0.0/15 +211.146.0.0/16 +211.147.0.0/16 +211.148.0.0/14 +211.152.0.0/15 +211.154.0.0/16 +211.155.0.0/18 +211.155.64.0/19 +211.155.96.0/19 +211.155.128.0/17 +211.156.0.0/14 +211.160.0.0/14 +211.164.0.0/14 +212.64.0.0/17 +212.129.128.0/17 +218.0.0.0/16 +218.1.0.0/16 +218.2.0.0/15 +218.4.0.0/15 +218.6.0.0/16 +218.7.0.0/16 +218.8.0.0/15 +218.10.0.0/16 +218.11.0.0/16 +218.12.0.0/16 +218.13.0.0/16 +218.14.0.0/15 +218.16.0.0/14 +218.20.0.0/16 +218.21.0.0/17 +218.21.128.0/17 +218.22.0.0/15 +218.24.0.0/15 +218.26.0.0/16 +218.27.0.0/16 +218.28.0.0/15 +218.30.0.0/15 +218.56.0.0/14 +218.60.0.0/15 +218.62.0.0/17 +218.62.128.0/17 +218.63.0.0/16 +218.64.0.0/15 +218.66.0.0/16 +218.67.0.0/17 +218.67.128.0/17 +218.68.0.0/15 +218.70.0.0/15 +218.72.0.0/14 +218.76.0.0/15 +218.78.0.0/15 +218.80.0.0/14 +218.84.0.0/14 +218.88.0.0/13 +218.96.0.0/15 +218.98.0.0/17 +218.98.128.0/18 +218.98.192.0/19 +218.98.224.0/19 +218.99.0.0/16 +218.100.88.0/21 +218.100.96.0/19 +218.100.128.0/17 +218.104.0.0/17 +218.104.128.0/19 +218.104.160.0/19 +218.104.192.0/21 +218.104.200.0/21 +218.104.208.0/20 +218.104.224.0/19 +218.105.0.0/16 +218.106.0.0/15 +218.108.0.0/16 +218.109.0.0/16 +218.185.192.0/19 +218.185.240.0/21 +218.192.0.0/16 +218.193.0.0/16 +218.194.0.0/16 +218.195.0.0/16 +218.196.0.0/14 +218.200.0.0/14 +218.204.0.0/15 +218.206.0.0/15 +218.240.0.0/14 +218.244.0.0/15 +218.246.0.0/15 +218.249.0.0/16 +219.72.0.0/16 +219.82.0.0/16 +219.83.128.0/17 +219.90.68.0/22 +219.90.72.0/22 +219.90.76.0/22 +219.128.0.0/12 +219.144.0.0/14 +219.148.0.0/16 +219.149.0.0/17 +219.149.128.0/18 +219.149.192.0/18 +219.150.0.0/19 +219.150.32.0/19 +219.150.64.0/19 +219.150.96.0/20 +219.150.112.0/20 +219.150.128.0/17 +219.151.0.0/19 +219.151.32.0/19 +219.151.64.0/18 +219.151.128.0/17 +219.152.0.0/15 +219.154.0.0/15 +219.156.0.0/15 +219.158.0.0/17 +219.158.128.0/17 +219.159.0.0/18 +219.159.64.0/18 +219.159.128.0/17 +219.216.0.0/15 +219.218.0.0/15 +219.220.0.0/16 +219.221.0.0/16 +219.222.0.0/15 +219.224.0.0/15 +219.226.0.0/16 +219.227.0.0/16 +219.228.0.0/15 +219.230.0.0/15 +219.232.0.0/14 +219.236.0.0/15 +219.238.0.0/15 +219.242.0.0/15 +219.244.0.0/14 +220.101.192.0/18 +220.112.0.0/14 +220.152.128.0/17 +220.154.0.0/15 +220.158.240.0/22 +220.160.0.0/11 +220.192.0.0/15 +220.194.0.0/15 +220.196.0.0/14 +220.200.0.0/13 +220.231.0.0/18 +220.231.128.0/17 +220.232.64.0/18 +220.234.0.0/16 +220.242.0.0/15 +220.247.136.0/21 +220.248.0.0/14 +220.252.0.0/16 +221.0.0.0/15 +221.2.0.0/16 +221.3.0.0/17 +221.3.128.0/17 +221.4.0.0/16 +221.5.0.0/17 +221.5.128.0/17 +221.6.0.0/16 +221.7.0.0/19 +221.7.32.0/19 +221.7.64.0/19 +221.7.96.0/19 +221.7.128.0/17 +221.8.0.0/15 +221.10.0.0/16 +221.11.0.0/17 +221.11.128.0/18 +221.11.192.0/19 +221.11.224.0/19 +221.12.0.0/17 +221.12.128.0/18 +221.13.0.0/18 +221.13.64.0/19 +221.13.96.0/19 +221.13.128.0/17 +221.14.0.0/15 +221.122.0.0/15 +221.128.128.0/17 +221.129.0.0/16 +221.130.0.0/15 +221.133.224.0/19 +221.136.0.0/16 +221.137.0.0/16 +221.172.0.0/14 +221.176.0.0/13 +221.192.0.0/15 +221.194.0.0/16 +221.195.0.0/16 +221.196.0.0/15 +221.198.0.0/16 +221.199.0.0/19 +221.199.32.0/20 +221.199.48.0/20 +221.199.64.0/18 +221.199.128.0/18 +221.199.192.0/20 +221.199.224.0/19 +221.200.0.0/14 +221.204.0.0/15 +221.206.0.0/16 +221.207.0.0/18 +221.207.64.0/18 +221.207.128.0/17 +221.208.0.0/14 +221.212.0.0/16 +221.213.0.0/16 +221.214.0.0/15 +221.216.0.0/13 +221.224.0.0/13 +221.232.0.0/14 +221.236.0.0/15 +221.238.0.0/16 +221.239.0.0/17 +221.239.128.0/17 +222.16.0.0/15 +222.18.0.0/15 +222.20.0.0/15 +222.22.0.0/16 +222.23.0.0/16 +222.24.0.0/15 +222.26.0.0/15 +222.28.0.0/14 +222.32.0.0/11 +222.64.0.0/13 +222.72.0.0/15 +222.74.0.0/16 +222.75.0.0/16 +222.76.0.0/14 +222.80.0.0/15 +222.82.0.0/16 +222.83.0.0/17 +222.83.128.0/17 +222.84.0.0/16 +222.85.0.0/17 +222.85.128.0/17 +222.86.0.0/15 +222.88.0.0/15 +222.90.0.0/15 +222.92.0.0/14 +222.125.0.0/16 +222.126.128.0/17 +222.128.0.0/14 +222.132.0.0/14 +222.136.0.0/13 +222.160.0.0/15 +222.162.0.0/16 +222.163.0.0/19 +222.163.32.0/19 +222.163.64.0/18 +222.163.128.0/17 +222.168.0.0/15 +222.170.0.0/15 +222.172.0.0/17 +222.172.128.0/17 +222.173.0.0/16 +222.174.0.0/15 +222.176.0.0/13 +222.184.0.0/13 +222.192.0.0/14 +222.196.0.0/15 +222.198.0.0/16 +222.199.0.0/16 +222.200.0.0/14 +222.204.0.0/15 +222.206.0.0/15 +222.208.0.0/13 +222.216.0.0/15 +222.218.0.0/16 +222.219.0.0/16 +222.220.0.0/15 +222.222.0.0/15 +222.240.0.0/13 +222.248.0.0/16 +222.249.0.0/17 +222.249.128.0/19 +222.249.160.0/20 +222.249.176.0/20 +222.249.192.0/18 +223.0.0.0/15 +223.2.0.0/15 +223.4.0.0/14 +223.8.0.0/13 +223.20.0.0/15 +223.27.184.0/22 +223.29.208.0/22 +223.29.252.0/22 +223.64.0.0/11 +223.96.0.0/12 +223.112.0.0/14 +223.116.0.0/15 +223.120.128.0/17 +223.121.128.0/17 +223.122.0.0/15 +223.124.0.0/14 +223.128.0.0/15 +223.144.0.0/12 +223.160.0.0/14 +223.166.0.0/15 +223.192.0.0/15 +223.198.0.0/15 +223.201.0.0/16 +223.202.0.0/15 +223.208.0.0/14 +223.212.0.0/15 +223.214.0.0/15 +223.220.0.0/15 +223.223.176.0/20 +223.223.192.0/20 +223.240.0.0/13 +223.248.0.0/14 +223.252.128.0/17 +223.254.0.0/16 +223.255.0.0/17 +223.255.236.0/22 +223.255.252.0/23 diff --git a/luci-app-ssr-plus/root/etc/ssrplus/deny.list b/luci-app-ssr-plus/root/etc/ssrplus/deny.list new file mode 100644 index 000000000..dc4344e7d --- /dev/null +++ b/luci-app-ssr-plus/root/etc/ssrplus/deny.list @@ -0,0 +1,14 @@ +gvod.aiseejapp.atianqi.com +stat.pandora.xiaomi.com +upgrade.mishop.pandora.xiaomi.com +logonext.tv.kuyun.com +config.kuyun.com +mishop.pandora.xiaomi.com +dvb.pandora.xiaomi.com +api.ad.xiaomi.com +de.pandora.xiaomi.com +data.mistat.xiaomi.com +jellyfish.pandora.xiaomi.com +gallery.pandora.xiaomi.com +o2o.api.xiaomi.com +bss.pandora.xiaomi.com \ No newline at end of file diff --git a/luci-app-ssr-plus/root/etc/ssrplus/gfw_base.conf b/luci-app-ssr-plus/root/etc/ssrplus/gfw_base.conf new file mode 100644 index 000000000..62cec37cd --- /dev/null +++ b/luci-app-ssr-plus/root/etc/ssrplus/gfw_base.conf @@ -0,0 +1,108 @@ +ipset=/91smartyun.pt/gfwlist +ipset=/adobe.com/gfwlist +ipset=/amazonaws.com/gfwlist +ipset=/ampproject.org/gfwlist +ipset=/apple.news/gfwlist +ipset=/aws.amazon.com/gfwlist +ipset=/azureedge.net/gfwlist +ipset=/backpackers.com.tw/gfwlist +ipset=/bitfinex.com/gfwlist +ipset=/buzzfeed.com/gfwlist +ipset=/clockwise.ee/gfwlist +ipset=/cloudfront.net/gfwlist +ipset=/coindesk.com/gfwlist +ipset=/coinsquare.io/gfwlist +ipset=/cryptocompare.com/gfwlist +ipset=/dropboxstatic.com/gfwlist +ipset=/eurecom.fr/gfwlist +ipset=/gdax.com/gfwlist +ipset=/github.com/gfwlist +ipset=/kknews.cc/gfwlist +ipset=/nutaq.com/gfwlist +ipset=/openairinterface.org/gfwlist +ipset=/skype.com/gfwlist +ipset=/sublimetext.com/gfwlist +ipset=/textnow.com/gfwlist +ipset=/textnow.me/gfwlist +ipset=/trouter.io/gfwlist +ipset=/t66y.com/gfwlist +ipset=/uploaded.net/gfwlist +ipset=/whatsapp.com/gfwlist +ipset=/whatsapp.net/gfwlist +ipset=/wsj.net/gfwlist +ipset=/google.com/gfwlist +ipset=/google.com.hk/gfwlist +ipset=/gstatic.com/gfwlist +ipset=/googleusercontent.com/gfwlist +ipset=/googlepages.com/gfwlist +ipset=/googlevideo.com/gfwlist +ipset=/googlecode.com/gfwlist +ipset=/googleapis.com/gfwlist +ipset=/googlesource.com/gfwlist +ipset=/googledrive.com/gfwlist +ipset=/ggpht.com/gfwlist +ipset=/youtube.com/gfwlist +ipset=/youtu.be/gfwlist +ipset=/ytimg.com/gfwlist +ipset=/twitter.com/gfwlist +ipset=/facebook.com/gfwlist +ipset=/fastly.net/gfwlist +ipset=/akamai.net/gfwlist +ipset=/akamaiedge.net/gfwlist +ipset=/akamaihd.net/gfwlist +ipset=/edgesuite.net/gfwlist +ipset=/edgekey.net/gfwlist +server=/91smartyun.pt/127.0.0.1#5335 +server=/adobe.com/127.0.0.1#5335 +server=/amazonaws.com/127.0.0.1#5335 +server=/ampproject.org/127.0.0.1#5335 +server=/apple.news/127.0.0.1#5335 +server=/aws.amazon.com/127.0.0.1#5335 +server=/azureedge.net/127.0.0.1#5335 +server=/backpackers.com.tw/127.0.0.1#5335 +server=/bitfinex.com/127.0.0.1#5335 +server=/buzzfeed.com/127.0.0.1#5335 +server=/clockwise.ee/127.0.0.1#5335 +server=/cloudfront.net/127.0.0.1#5335 +server=/coindesk.com/127.0.0.1#5335 +server=/coinsquare.io/127.0.0.1#5335 +server=/cryptocompare.com/127.0.0.1#5335 +server=/dropboxstatic.com/127.0.0.1#5335 +server=/eurecom.fr/127.0.0.1#5335 +server=/gdax.com/127.0.0.1#5335 +server=/github.com/127.0.0.1#5335 +server=/kknews.cc/127.0.0.1#5335 +server=/nutaq.com/127.0.0.1#5335 +server=/openairinterface.org/127.0.0.1#5335 +server=/skype.com/127.0.0.1#5335 +server=/sublimetext.com/127.0.0.1#5335 +server=/textnow.com/127.0.0.1#5335 +server=/textnow.me/127.0.0.1#5335 +server=/trouter.io/127.0.0.1#5335 +server=/t66y.com/127.0.0.1#5335 +server=/uploaded.net/127.0.0.1#5335 +server=/whatsapp.com/127.0.0.1#5335 +server=/whatsapp.net/127.0.0.1#5335 +server=/wsj.net/127.0.0.1#5335 +server=/google.com/127.0.0.1#5335 +server=/google.com.hk/127.0.0.1#5335 +server=/gstatic.com/127.0.0.1#5335 +server=/googleusercontent.com/127.0.0.1#5335 +server=/googlepages.com/127.0.0.1#5335 +server=/googlevideo.com/127.0.0.1#5335 +server=/googlecode.com/127.0.0.1#5335 +server=/googleapis.com/127.0.0.1#5335 +server=/googlesource.com/127.0.0.1#5335 +server=/googledrive.com/127.0.0.1#5335 +server=/ggpht.com/127.0.0.1#5335 +server=/youtube.com/127.0.0.1#5335 +server=/youtu.be/127.0.0.1#5335 +server=/ytimg.com/127.0.0.1#5335 +server=/twitter.com/127.0.0.1#5335 +server=/facebook.com/127.0.0.1#5335 +server=/fastly.net/127.0.0.1#5335 +server=/akamai.net/127.0.0.1#5335 +server=/akamaiedge.net/127.0.0.1#5335 +server=/akamaihd.net/127.0.0.1#5335 +server=/edgesuite.net/127.0.0.1#5335 +server=/edgekey.net/127.0.0.1#5335 diff --git a/luci-app-ssr-plus/root/etc/ssrplus/gfw_list.conf b/luci-app-ssr-plus/root/etc/ssrplus/gfw_list.conf new file mode 100644 index 000000000..98e17f650 --- /dev/null +++ b/luci-app-ssr-plus/root/etc/ssrplus/gfw_list.conf @@ -0,0 +1,23036 @@ +server=/samebags.com/127.0.0.1#5335 +ipset=/samebags.com/gfwlist +server=/ameba.jp/127.0.0.1#5335 +ipset=/ameba.jp/gfwlist +server=/facebool.com/127.0.0.1#5335 +ipset=/facebool.com/gfwlist +server=/intel.md/127.0.0.1#5335 +ipset=/intel.md/gfwlist +server=/disneystore.com/127.0.0.1#5335 +ipset=/disneystore.com/gfwlist +server=/lcsmerch.com/127.0.0.1#5335 +ipset=/lcsmerch.com/gfwlist +server=/youtube.my/127.0.0.1#5335 +ipset=/youtube.my/gfwlist +server=/nintendo.nl/127.0.0.1#5335 +ipset=/nintendo.nl/gfwlist +server=/lasvegasbmw.com/127.0.0.1#5335 +ipset=/lasvegasbmw.com/gfwlist +server=/zeit.sh/127.0.0.1#5335 +ipset=/zeit.sh/gfwlist +server=/huffpostmaghreb.com/127.0.0.1#5335 +ipset=/huffpostmaghreb.com/gfwlist +server=/nikewear.com/127.0.0.1#5335 +ipset=/nikewear.com/gfwlist +server=/myaccountglobalcash.com/127.0.0.1#5335 +ipset=/myaccountglobalcash.com/gfwlist +server=/visacheckout.org/127.0.0.1#5335 +ipset=/visacheckout.org/gfwlist +server=/discordapp.net/127.0.0.1#5335 +ipset=/discordapp.net/gfwlist +server=/bbycontent.net/127.0.0.1#5335 +ipset=/bbycontent.net/gfwlist +server=/mybestbuy.com/127.0.0.1#5335 +ipset=/mybestbuy.com/gfwlist +server=/blogspot.bj/127.0.0.1#5335 +ipset=/blogspot.bj/gfwlist +server=/oreillystatic.com/127.0.0.1#5335 +ipset=/oreillystatic.com/gfwlist +server=/xhamsterlive.com/127.0.0.1#5335 +ipset=/xhamsterlive.com/gfwlist +server=/akamai.com/127.0.0.1#5335 +ipset=/akamai.com/gfwlist +server=/unraveltwo.com/127.0.0.1#5335 +ipset=/unraveltwo.com/gfwlist +server=/bmw.com.gt/127.0.0.1#5335 +ipset=/bmw.com.gt/gfwlist +server=/duckduckco.com/127.0.0.1#5335 +ipset=/duckduckco.com/gfwlist +server=/facebookwork.com/127.0.0.1#5335 +ipset=/facebookwork.com/gfwlist +server=/iwork.se/127.0.0.1#5335 +ipset=/iwork.se/gfwlist +server=/nurofen.hu/127.0.0.1#5335 +ipset=/nurofen.hu/gfwlist +server=/buyitnow.org/127.0.0.1#5335 +ipset=/buyitnow.org/gfwlist +server=/thinkboxsoftware.com/127.0.0.1#5335 +ipset=/thinkboxsoftware.com/gfwlist +server=/paypali.net/127.0.0.1#5335 +ipset=/paypali.net/gfwlist +server=/sellercommunity.com/127.0.0.1#5335 +ipset=/sellercommunity.com/gfwlist +server=/washingtonpost.com/127.0.0.1#5335 +ipset=/washingtonpost.com/gfwlist +server=/livestream.com/127.0.0.1#5335 +ipset=/livestream.com/gfwlist +server=/homebrew.bintray.com/127.0.0.1#5335 +ipset=/homebrew.bintray.com/gfwlist +server=/brightcove.com/127.0.0.1#5335 +ipset=/brightcove.com/gfwlist +server=/morteincam.com/127.0.0.1#5335 +ipset=/morteincam.com/gfwlist +server=/gettyimages.ae/127.0.0.1#5335 +ipset=/gettyimages.ae/gfwlist +server=/ulifestyle.com.hk/127.0.0.1#5335 +ipset=/ulifestyle.com.hk/gfwlist +server=/itunes.mx/127.0.0.1#5335 +ipset=/itunes.mx/gfwlist +server=/beatssingaporeshop.com/127.0.0.1#5335 +ipset=/beatssingaporeshop.com/gfwlist +server=/beatsbydreuk.net/127.0.0.1#5335 +ipset=/beatsbydreuk.net/gfwlist +server=/bandgirlz.com/127.0.0.1#5335 +ipset=/bandgirlz.com/gfwlist +server=/cloudchoose.com/127.0.0.1#5335 +ipset=/cloudchoose.com/gfwlist +server=/bmw-rrdays.com/127.0.0.1#5335 +ipset=/bmw-rrdays.com/gfwlist +server=/lizol.co.in/127.0.0.1#5335 +ipset=/lizol.co.in/gfwlist +server=/applecomputer.com.hk/127.0.0.1#5335 +ipset=/applecomputer.com.hk/gfwlist +server=/bridgestonearena.com/127.0.0.1#5335 +ipset=/bridgestonearena.com/gfwlist +server=/huluteam.com/127.0.0.1#5335 +ipset=/huluteam.com/gfwlist +server=/developer-advisor.com/127.0.0.1#5335 +ipset=/developer-advisor.com/gfwlist +server=/myhelpinglab.com/127.0.0.1#5335 +ipset=/myhelpinglab.com/gfwlist +server=/oxfordmusiconline.com/127.0.0.1#5335 +ipset=/oxfordmusiconline.com/gfwlist +server=/stripchat.com/127.0.0.1#5335 +ipset=/stripchat.com/gfwlist +server=/youtube.co.uk/127.0.0.1#5335 +ipset=/youtube.co.uk/gfwlist +server=/supermario3dworld.com/127.0.0.1#5335 +ipset=/supermario3dworld.com/gfwlist +server=/huffingtonpost.com.au/127.0.0.1#5335 +ipset=/huffingtonpost.com.au/gfwlist +server=/thebeatsbydre.net/127.0.0.1#5335 +ipset=/thebeatsbydre.net/gfwlist +server=/alphabet.pt/127.0.0.1#5335 +ipset=/alphabet.pt/gfwlist +server=/thesims4.com/127.0.0.1#5335 +ipset=/thesims4.com/gfwlist +server=/teenchoice.com/127.0.0.1#5335 +ipset=/teenchoice.com/gfwlist +server=/quicktime.cc/127.0.0.1#5335 +ipset=/quicktime.cc/gfwlist +server=/dribbble.com/127.0.0.1#5335 +ipset=/dribbble.com/gfwlist +server=/applestore.sg/127.0.0.1#5335 +ipset=/applestore.sg/gfwlist +server=/kindle.co.jp/127.0.0.1#5335 +ipset=/kindle.co.jp/gfwlist +server=/terraform.io/127.0.0.1#5335 +ipset=/terraform.io/gfwlist +server=/btcbox.co.jp/127.0.0.1#5335 +ipset=/btcbox.co.jp/gfwlist +server=/faycbok.com/127.0.0.1#5335 +ipset=/faycbok.com/gfwlist +server=/scpwiki.com/127.0.0.1#5335 +ipset=/scpwiki.com/gfwlist +server=/google.vg/127.0.0.1#5335 +ipset=/google.vg/gfwlist +server=/picasaweb.net/127.0.0.1#5335 +ipset=/picasaweb.net/gfwlist +server=/alivertsm.com/127.0.0.1#5335 +ipset=/alivertsm.com/gfwlist +server=/youtube.lt/127.0.0.1#5335 +ipset=/youtube.lt/gfwlist +server=/wolfatbestbuy.net/127.0.0.1#5335 +ipset=/wolfatbestbuy.net/gfwlist +server=/hptouchpointmanager.com/127.0.0.1#5335 +ipset=/hptouchpointmanager.com/gfwlist +server=/usvimosquito.com/127.0.0.1#5335 +ipset=/usvimosquito.com/gfwlist +server=/legaltracker.com/127.0.0.1#5335 +ipset=/legaltracker.com/gfwlist +server=/akadeem.net/127.0.0.1#5335 +ipset=/akadeem.net/gfwlist +server=/llnwd.net/127.0.0.1#5335 +ipset=/llnwd.net/gfwlist +server=/fox13memphis.com/127.0.0.1#5335 +ipset=/fox13memphis.com/gfwlist +server=/appleone.cloud/127.0.0.1#5335 +ipset=/appleone.cloud/gfwlist +server=/yahoo.rw/127.0.0.1#5335 +ipset=/yahoo.rw/gfwlist +server=/powerautomate.com/127.0.0.1#5335 +ipset=/powerautomate.com/gfwlist +server=/volvotrucks.pl/127.0.0.1#5335 +ipset=/volvotrucks.pl/gfwlist +server=/urduvoa.com/127.0.0.1#5335 +ipset=/urduvoa.com/gfwlist +server=/ouplaw.com/127.0.0.1#5335 +ipset=/ouplaw.com/gfwlist +server=/paypal-specialoffers.com/127.0.0.1#5335 +ipset=/paypal-specialoffers.com/gfwlist +server=/epochtimes.fr/127.0.0.1#5335 +ipset=/epochtimes.fr/gfwlist +server=/freedirecttvspecial.com/127.0.0.1#5335 +ipset=/freedirecttvspecial.com/gfwlist +server=/nurofen.com.au/127.0.0.1#5335 +ipset=/nurofen.com.au/gfwlist +server=/iina.io/127.0.0.1#5335 +ipset=/iina.io/gfwlist +server=/appleos.tv/127.0.0.1#5335 +ipset=/appleos.tv/gfwlist +server=/foxnewspolitics.com/127.0.0.1#5335 +ipset=/foxnewspolitics.com/gfwlist +server=/quicktime.net/127.0.0.1#5335 +ipset=/quicktime.net/gfwlist +server=/beatsheadphonesonline.com/127.0.0.1#5335 +ipset=/beatsheadphonesonline.com/gfwlist +server=/w3.org/127.0.0.1#5335 +ipset=/w3.org/gfwlist +server=/visasoutheasteurope.com/127.0.0.1#5335 +ipset=/visasoutheasteurope.com/gfwlist +server=/foxd.tv/127.0.0.1#5335 +ipset=/foxd.tv/gfwlist +server=/forthethrone.com/127.0.0.1#5335 +ipset=/forthethrone.com/gfwlist +server=/telesco.pe/127.0.0.1#5335 +ipset=/telesco.pe/gfwlist +server=/monsterbeatsoutlet.us/127.0.0.1#5335 +ipset=/monsterbeatsoutlet.us/gfwlist +server=/gettyimages.it/127.0.0.1#5335 +ipset=/gettyimages.it/gfwlist +server=/visualstudio.net/127.0.0.1#5335 +ipset=/visualstudio.net/gfwlist +server=/disneymovieinsiders.com/127.0.0.1#5335 +ipset=/disneymovieinsiders.com/gfwlist +server=/ipadair.ie/127.0.0.1#5335 +ipset=/ipadair.ie/gfwlist +server=/20thcenturystudios.com.br/127.0.0.1#5335 +ipset=/20thcenturystudios.com.br/gfwlist +server=/conda.io/127.0.0.1#5335 +ipset=/conda.io/gfwlist +server=/fbthirdpartypixel.net/127.0.0.1#5335 +ipset=/fbthirdpartypixel.net/gfwlist +server=/beatsbydreoksale.com/127.0.0.1#5335 +ipset=/beatsbydreoksale.com/gfwlist +server=/heaven-burns-red.com/127.0.0.1#5335 +ipset=/heaven-burns-red.com/gfwlist +server=/visa.com.hk/127.0.0.1#5335 +ipset=/visa.com.hk/gfwlist +server=/stackoverflow.blog/127.0.0.1#5335 +ipset=/stackoverflow.blog/gfwlist +server=/vipheadphones.com/127.0.0.1#5335 +ipset=/vipheadphones.com/gfwlist +server=/hanime.tv/127.0.0.1#5335 +ipset=/hanime.tv/gfwlist +server=/beatsbymusic.net/127.0.0.1#5335 +ipset=/beatsbymusic.net/gfwlist +server=/intel.tw/127.0.0.1#5335 +ipset=/intel.tw/gfwlist +server=/half.com/127.0.0.1#5335 +ipset=/half.com/gfwlist +server=/sourceforge.net/127.0.0.1#5335 +ipset=/sourceforge.net/gfwlist +server=/amazonianblog.com/127.0.0.1#5335 +ipset=/amazonianblog.com/gfwlist +server=/visa.com.vn/127.0.0.1#5335 +ipset=/visa.com.vn/gfwlist +server=/hcaptcha.com/127.0.0.1#5335 +ipset=/hcaptcha.com/gfwlist +server=/oculusdiving.com/127.0.0.1#5335 +ipset=/oculusdiving.com/gfwlist +server=/blogspot.pt/127.0.0.1#5335 +ipset=/blogspot.pt/gfwlist +server=/cbsnews.com/127.0.0.1#5335 +ipset=/cbsnews.com/gfwlist +server=/paypal-latam.com/127.0.0.1#5335 +ipset=/paypal-latam.com/gfwlist +server=/beatsdreoutletsale.com/127.0.0.1#5335 +ipset=/beatsdreoutletsale.com/gfwlist +server=/youtube.com.co/127.0.0.1#5335 +ipset=/youtube.com.co/gfwlist +server=/v.gd/127.0.0.1#5335 +ipset=/v.gd/gfwlist +server=/apple.pk/127.0.0.1#5335 +ipset=/apple.pk/gfwlist +server=/huluqa.com/127.0.0.1#5335 +ipset=/huluqa.com/gfwlist +server=/casquesbeatsaudio.com/127.0.0.1#5335 +ipset=/casquesbeatsaudio.com/gfwlist +server=/oculus2014.com/127.0.0.1#5335 +ipset=/oculus2014.com/gfwlist +server=/intel.co.za/127.0.0.1#5335 +ipset=/intel.co.za/gfwlist +server=/canon.at/127.0.0.1#5335 +ipset=/canon.at/gfwlist +server=/facboo.com/127.0.0.1#5335 +ipset=/facboo.com/gfwlist +server=/appmediagroup.com/127.0.0.1#5335 +ipset=/appmediagroup.com/gfwlist +server=/casquemonsterbeatsbydre2013.com/127.0.0.1#5335 +ipset=/casquemonsterbeatsbydre2013.com/gfwlist +server=/mapbox.com/127.0.0.1#5335 +ipset=/mapbox.com/gfwlist +server=/pvp.net/127.0.0.1#5335 +ipset=/pvp.net/gfwlist +server=/kanzhongguo.com/127.0.0.1#5335 +ipset=/kanzhongguo.com/gfwlist +server=/shopbydre.com/127.0.0.1#5335 +ipset=/shopbydre.com/gfwlist +server=/swisssigngroup.ch/127.0.0.1#5335 +ipset=/swisssigngroup.ch/gfwlist +server=/ebaymotors.ca/127.0.0.1#5335 +ipset=/ebaymotors.ca/gfwlist +server=/intel.nl/127.0.0.1#5335 +ipset=/intel.nl/gfwlist +server=/bingapistatistics.com/127.0.0.1#5335 +ipset=/bingapistatistics.com/gfwlist +server=/seaofsolitude.com/127.0.0.1#5335 +ipset=/seaofsolitude.com/gfwlist +server=/riotpoints.com/127.0.0.1#5335 +ipset=/riotpoints.com/gfwlist +server=/yahooapis.com/127.0.0.1#5335 +ipset=/yahooapis.com/gfwlist +server=/facebuk.com/127.0.0.1#5335 +ipset=/facebuk.com/gfwlist +server=/gosq.co/127.0.0.1#5335 +ipset=/gosq.co/gfwlist +server=/yandex.com.am/127.0.0.1#5335 +ipset=/yandex.com.am/gfwlist +server=/aapl.tw/127.0.0.1#5335 +ipset=/aapl.tw/gfwlist +server=/finishinfo.nl/127.0.0.1#5335 +ipset=/finishinfo.nl/gfwlist +server=/hpindigopress.com/127.0.0.1#5335 +ipset=/hpindigopress.com/gfwlist +server=/webex.com.hk/127.0.0.1#5335 +ipset=/webex.com.hk/gfwlist +server=/bmw.fr/127.0.0.1#5335 +ipset=/bmw.fr/gfwlist +server=/msauth.net/127.0.0.1#5335 +ipset=/msauth.net/gfwlist +server=/activelearnprimary.co.uk/127.0.0.1#5335 +ipset=/activelearnprimary.co.uk/gfwlist +server=/dell-brand.com/127.0.0.1#5335 +ipset=/dell-brand.com/gfwlist +server=/championshipseriesleague.com/127.0.0.1#5335 +ipset=/championshipseriesleague.com/gfwlist +server=/bmw.com.sv/127.0.0.1#5335 +ipset=/bmw.com.sv/gfwlist +server=/microsoft.be/127.0.0.1#5335 +ipset=/microsoft.be/gfwlist +server=/spankbang.com/127.0.0.1#5335 +ipset=/spankbang.com/gfwlist +server=/needforspeedundergroundeast.com/127.0.0.1#5335 +ipset=/needforspeedundergroundeast.com/gfwlist +server=/sslpaypal.org/127.0.0.1#5335 +ipset=/sslpaypal.org/gfwlist +server=/qualcomm.cn/127.0.0.1#5335 +ipset=/qualcomm.cn/gfwlist +server=/etnet.com.hk/127.0.0.1#5335 +ipset=/etnet.com.hk/gfwlist +server=/nikeconfluence.com/127.0.0.1#5335 +ipset=/nikeconfluence.com/gfwlist +server=/applewatch.hk/127.0.0.1#5335 +ipset=/applewatch.hk/gfwlist +server=/foxfiles.com/127.0.0.1#5335 +ipset=/foxfiles.com/gfwlist +server=/beatsdrenewcolorful4usale.com/127.0.0.1#5335 +ipset=/beatsdrenewcolorful4usale.com/gfwlist +server=/facebooe.com/127.0.0.1#5335 +ipset=/facebooe.com/gfwlist +server=/applemusic.com.au/127.0.0.1#5335 +ipset=/applemusic.com.au/gfwlist +server=/dkbeatsbydre.com/127.0.0.1#5335 +ipset=/dkbeatsbydre.com/gfwlist +server=/apple.net.gr/127.0.0.1#5335 +ipset=/apple.net.gr/gfwlist +server=/google.sn/127.0.0.1#5335 +ipset=/google.sn/gfwlist +server=/beats-bydrestore.com/127.0.0.1#5335 +ipset=/beats-bydrestore.com/gfwlist +server=/einstein.com/127.0.0.1#5335 +ipset=/einstein.com/gfwlist +server=/kkbox.com/127.0.0.1#5335 +ipset=/kkbox.com/gfwlist +server=/ebaylisting.com/127.0.0.1#5335 +ipset=/ebaylisting.com/gfwlist +server=/i-book.com/127.0.0.1#5335 +ipset=/i-book.com/gfwlist +server=/ads.pubmatic.com/127.0.0.1#5335 +ipset=/ads.pubmatic.com/gfwlist +server=/icloud.ee/127.0.0.1#5335 +ipset=/icloud.ee/gfwlist +server=/tail-f.com/127.0.0.1#5335 +ipset=/tail-f.com/gfwlist +server=/muscdn.com/127.0.0.1#5335 +ipset=/muscdn.com/gfwlist +server=/onedrive.com/127.0.0.1#5335 +ipset=/onedrive.com/gfwlist +server=/harpercollins.co.uk/127.0.0.1#5335 +ipset=/harpercollins.co.uk/gfwlist +server=/yogalayout.com/127.0.0.1#5335 +ipset=/yogalayout.com/gfwlist +server=/yahoo.sh/127.0.0.1#5335 +ipset=/yahoo.sh/gfwlist +server=/parstream.net/127.0.0.1#5335 +ipset=/parstream.net/gfwlist +server=/vim.org/127.0.0.1#5335 +ipset=/vim.org/gfwlist +server=/ebayincconnectedcommerce.net/127.0.0.1#5335 +ipset=/ebayincconnectedcommerce.net/gfwlist +server=/mini-connected.nl/127.0.0.1#5335 +ipset=/mini-connected.nl/gfwlist +server=/disney.it/127.0.0.1#5335 +ipset=/disney.it/gfwlist +server=/seqingx.com/127.0.0.1#5335 +ipset=/seqingx.com/gfwlist +server=/drdrebeatsbillig.com/127.0.0.1#5335 +ipset=/drdrebeatsbillig.com/gfwlist +server=/espn.net/127.0.0.1#5335 +ipset=/espn.net/gfwlist +server=/beatsheadphones-discount.com/127.0.0.1#5335 +ipset=/beatsheadphones-discount.com/gfwlist +server=/vfsco.it/127.0.0.1#5335 +ipset=/vfsco.it/gfwlist +server=/openweave.io/127.0.0.1#5335 +ipset=/openweave.io/gfwlist +server=/dvdstudiopro.info/127.0.0.1#5335 +ipset=/dvdstudiopro.info/gfwlist +server=/shopee.tw/127.0.0.1#5335 +ipset=/shopee.tw/gfwlist +server=/beatsbydrestorevip.com/127.0.0.1#5335 +ipset=/beatsbydrestorevip.com/gfwlist +server=/garena.com/127.0.0.1#5335 +ipset=/garena.com/gfwlist +server=/bmw.bg/127.0.0.1#5335 +ipset=/bmw.bg/gfwlist +server=/gearspop.com/127.0.0.1#5335 +ipset=/gearspop.com/gfwlist +server=/fire-emblem-heroes.com/127.0.0.1#5335 +ipset=/fire-emblem-heroes.com/gfwlist +server=/dewitwithdurex.com/127.0.0.1#5335 +ipset=/dewitwithdurex.com/gfwlist +server=/ebayon.com/127.0.0.1#5335 +ipset=/ebayon.com/gfwlist +server=/pricelesssantiago.com/127.0.0.1#5335 +ipset=/pricelesssantiago.com/gfwlist +server=/miamifintechfestival.com/127.0.0.1#5335 +ipset=/miamifintechfestival.com/gfwlist +server=/minidowntown.com/127.0.0.1#5335 +ipset=/minidowntown.com/gfwlist +server=/mini.am/127.0.0.1#5335 +ipset=/mini.am/gfwlist +server=/realestatejournal.com/127.0.0.1#5335 +ipset=/realestatejournal.com/gfwlist +server=/mini-connected.at/127.0.0.1#5335 +ipset=/mini-connected.at/gfwlist +server=/ebaypark.com/127.0.0.1#5335 +ipset=/ebaypark.com/gfwlist +server=/appleone.space/127.0.0.1#5335 +ipset=/appleone.space/gfwlist +server=/youlucky.com/127.0.0.1#5335 +ipset=/youlucky.com/gfwlist +server=/qingse.one/127.0.0.1#5335 +ipset=/qingse.one/gfwlist +server=/oculusblog.com/127.0.0.1#5335 +ipset=/oculusblog.com/gfwlist +server=/developria.com/127.0.0.1#5335 +ipset=/developria.com/gfwlist +server=/kali.org/127.0.0.1#5335 +ipset=/kali.org/gfwlist +server=/amazonlaunchpad.com/127.0.0.1#5335 +ipset=/amazonlaunchpad.com/gfwlist +server=/headphonessupply.com/127.0.0.1#5335 +ipset=/headphonessupply.com/gfwlist +server=/icloudos.de/127.0.0.1#5335 +ipset=/icloudos.de/gfwlist +server=/sony.nl/127.0.0.1#5335 +ipset=/sony.nl/gfwlist +server=/bmwmotorcycleusa.com/127.0.0.1#5335 +ipset=/bmwmotorcycleusa.com/gfwlist +server=/vendu.com/127.0.0.1#5335 +ipset=/vendu.com/gfwlist +server=/facebook-newsroom.org/127.0.0.1#5335 +ipset=/facebook-newsroom.org/gfwlist +server=/poweredbyintel.com/127.0.0.1#5335 +ipset=/poweredbyintel.com/gfwlist +server=/brightcove.imgix.net/127.0.0.1#5335 +ipset=/brightcove.imgix.net/gfwlist +server=/disneychannelonstage.com/127.0.0.1#5335 +ipset=/disneychannelonstage.com/gfwlist +server=/aerogardcn.com/127.0.0.1#5335 +ipset=/aerogardcn.com/gfwlist +server=/beatsbydrespeakers.com/127.0.0.1#5335 +ipset=/beatsbydrespeakers.com/gfwlist +server=/iphonefc.com/127.0.0.1#5335 +ipset=/iphonefc.com/gfwlist +server=/movenetworks.com/127.0.0.1#5335 +ipset=/movenetworks.com/gfwlist +server=/veryshortintroductions.com/127.0.0.1#5335 +ipset=/veryshortintroductions.com/gfwlist +server=/tvbweekly.com/127.0.0.1#5335 +ipset=/tvbweekly.com/gfwlist +server=/avsee01.tv/127.0.0.1#5335 +ipset=/avsee01.tv/gfwlist +server=/volvotrucks.co.nz/127.0.0.1#5335 +ipset=/volvotrucks.co.nz/gfwlist +server=/paypal-exchanges.com/127.0.0.1#5335 +ipset=/paypal-exchanges.com/gfwlist +server=/gooddaychicago.com/127.0.0.1#5335 +ipset=/gooddaychicago.com/gfwlist +server=/bestbuysolutions.net/127.0.0.1#5335 +ipset=/bestbuysolutions.net/gfwlist +server=/attwatchtv.com/127.0.0.1#5335 +ipset=/attwatchtv.com/gfwlist +server=/ampproject.net/127.0.0.1#5335 +ipset=/ampproject.net/gfwlist +server=/tnt-ea.com/127.0.0.1#5335 +ipset=/tnt-ea.com/gfwlist +server=/huffingtonpost.in/127.0.0.1#5335 +ipset=/huffingtonpost.in/gfwlist +server=/veet.co.nz/127.0.0.1#5335 +ipset=/veet.co.nz/gfwlist +server=/lovesexdurex.com/127.0.0.1#5335 +ipset=/lovesexdurex.com/gfwlist +server=/shp.ee/127.0.0.1#5335 +ipset=/shp.ee/gfwlist +server=/bnetcmsus-a.akamaihd.net/127.0.0.1#5335 +ipset=/bnetcmsus-a.akamaihd.net/gfwlist +server=/periscope.tv/127.0.0.1#5335 +ipset=/periscope.tv/gfwlist +server=/mini-connected.lv/127.0.0.1#5335 +ipset=/mini-connected.lv/gfwlist +server=/bmw-pakistan.com/127.0.0.1#5335 +ipset=/bmw-pakistan.com/gfwlist +server=/developer.mozilla.org/127.0.0.1#5335 +ipset=/developer.mozilla.org/gfwlist +server=/ciscojabbervideo.net/127.0.0.1#5335 +ipset=/ciscojabbervideo.net/gfwlist +server=/omtrdc.net/127.0.0.1#5335 +ipset=/omtrdc.net/gfwlist +server=/wsjbarrons.com/127.0.0.1#5335 +ipset=/wsjbarrons.com/gfwlist +server=/theporndude.com/127.0.0.1#5335 +ipset=/theporndude.com/gfwlist +server=/mini.lu/127.0.0.1#5335 +ipset=/mini.lu/gfwlist +server=/pixnet.net/127.0.0.1#5335 +ipset=/pixnet.net/gfwlist +server=/qmap.pub/127.0.0.1#5335 +ipset=/qmap.pub/gfwlist +server=/r18lu.com/127.0.0.1#5335 +ipset=/r18lu.com/gfwlist +server=/hackerfacebook.com/127.0.0.1#5335 +ipset=/hackerfacebook.com/gfwlist +server=/721av.com/127.0.0.1#5335 +ipset=/721av.com/gfwlist +server=/hbo.com/127.0.0.1#5335 +ipset=/hbo.com/gfwlist +server=/apple-store.net/127.0.0.1#5335 +ipset=/apple-store.net/gfwlist +server=/theaustralian.com.au/127.0.0.1#5335 +ipset=/theaustralian.com.au/gfwlist +server=/ms-studiosmedia.com/127.0.0.1#5335 +ipset=/ms-studiosmedia.com/gfwlist +server=/windows.net/127.0.0.1#5335 +ipset=/windows.net/gfwlist +server=/compresspdf.new/127.0.0.1#5335 +ipset=/compresspdf.new/gfwlist +server=/amazonvideo.com/127.0.0.1#5335 +ipset=/amazonvideo.com/gfwlist +server=/yahoo.co.il/127.0.0.1#5335 +ipset=/yahoo.co.il/gfwlist +server=/squarecdn.com/127.0.0.1#5335 +ipset=/squarecdn.com/gfwlist +server=/pinterest.dk/127.0.0.1#5335 +ipset=/pinterest.dk/gfwlist +server=/identrust.net/127.0.0.1#5335 +ipset=/identrust.net/gfwlist +server=/xn--pearsonenespaol-brb.com/127.0.0.1#5335 +ipset=/xn--pearsonenespaol-brb.com/gfwlist +server=/hpeventcenter.com/127.0.0.1#5335 +ipset=/hpeventcenter.com/gfwlist +server=/apple.co/127.0.0.1#5335 +ipset=/apple.co/gfwlist +server=/appleenews.com/127.0.0.1#5335 +ipset=/appleenews.com/gfwlist +server=/google.mw/127.0.0.1#5335 +ipset=/google.mw/gfwlist +server=/baazee.com/127.0.0.1#5335 +ipset=/baazee.com/gfwlist +server=/tomonews.net/127.0.0.1#5335 +ipset=/tomonews.net/gfwlist +server=/certificate-transparency.org/127.0.0.1#5335 +ipset=/certificate-transparency.org/gfwlist +server=/custom-iphonecase.com/127.0.0.1#5335 +ipset=/custom-iphonecase.com/gfwlist +server=/txdirectv.com/127.0.0.1#5335 +ipset=/txdirectv.com/gfwlist +server=/foxsports.com.co/127.0.0.1#5335 +ipset=/foxsports.com.co/gfwlist +server=/bmw.lv/127.0.0.1#5335 +ipset=/bmw.lv/gfwlist +server=/myfoxdc.com/127.0.0.1#5335 +ipset=/myfoxdc.com/gfwlist +server=/rmbl.ws/127.0.0.1#5335 +ipset=/rmbl.ws/gfwlist +server=/foxnetworks.info/127.0.0.1#5335 +ipset=/foxnetworks.info/gfwlist +server=/jfengtime.com/127.0.0.1#5335 +ipset=/jfengtime.com/gfwlist +server=/microsoftteams.com/127.0.0.1#5335 +ipset=/microsoftteams.com/gfwlist +server=/visa.com.mx/127.0.0.1#5335 +ipset=/visa.com.mx/gfwlist +server=/euroipad.com/127.0.0.1#5335 +ipset=/euroipad.com/gfwlist +server=/touchid.wang/127.0.0.1#5335 +ipset=/touchid.wang/gfwlist +server=/bitly.is/127.0.0.1#5335 +ipset=/bitly.is/gfwlist +server=/readthedocs.com/127.0.0.1#5335 +ipset=/readthedocs.com/gfwlist +server=/uug26.com/127.0.0.1#5335 +ipset=/uug26.com/gfwlist +server=/bmw-motorrad.pl/127.0.0.1#5335 +ipset=/bmw-motorrad.pl/gfwlist +server=/akamam.com/127.0.0.1#5335 +ipset=/akamam.com/gfwlist +server=/ekhindi.com/127.0.0.1#5335 +ipset=/ekhindi.com/gfwlist +server=/epoch.cloud/127.0.0.1#5335 +ipset=/epoch.cloud/gfwlist +server=/friendbook.info/127.0.0.1#5335 +ipset=/friendbook.info/gfwlist +server=/thisismoney.co.uk/127.0.0.1#5335 +ipset=/thisismoney.co.uk/gfwlist +server=/google.it/127.0.0.1#5335 +ipset=/google.it/gfwlist +server=/leecountytimes.com/127.0.0.1#5335 +ipset=/leecountytimes.com/gfwlist +server=/yahoo.com.pr/127.0.0.1#5335 +ipset=/yahoo.com.pr/gfwlist +server=/mcrouter.net/127.0.0.1#5335 +ipset=/mcrouter.net/gfwlist +server=/awseducate.com/127.0.0.1#5335 +ipset=/awseducate.com/gfwlist +server=/directvsavings.com/127.0.0.1#5335 +ipset=/directvsavings.com/gfwlist +server=/lagranepoca.com/127.0.0.1#5335 +ipset=/lagranepoca.com/gfwlist +server=/bloombergpolarlake.com/127.0.0.1#5335 +ipset=/bloombergpolarlake.com/gfwlist +server=/hpbundle.com/127.0.0.1#5335 +ipset=/hpbundle.com/gfwlist +server=/google.tl/127.0.0.1#5335 +ipset=/google.tl/gfwlist +server=/cortanaanalytics.com/127.0.0.1#5335 +ipset=/cortanaanalytics.com/gfwlist +server=/disneyjuniortreataday.com/127.0.0.1#5335 +ipset=/disneyjuniortreataday.com/gfwlist +server=/minidealer.com/127.0.0.1#5335 +ipset=/minidealer.com/gfwlist +server=/thelegendarystarfy.com/127.0.0.1#5335 +ipset=/thelegendarystarfy.com/gfwlist +server=/webex.es/127.0.0.1#5335 +ipset=/webex.es/gfwlist +server=/gogole.com/127.0.0.1#5335 +ipset=/gogole.com/gfwlist +server=/intelemeastore.com/127.0.0.1#5335 +ipset=/intelemeastore.com/gfwlist +server=/kodi.tv/127.0.0.1#5335 +ipset=/kodi.tv/gfwlist +server=/blackstonespoliceservice.com/127.0.0.1#5335 +ipset=/blackstonespoliceservice.com/gfwlist +server=/pinterest.uk/127.0.0.1#5335 +ipset=/pinterest.uk/gfwlist +server=/avsforum.com/127.0.0.1#5335 +ipset=/avsforum.com/gfwlist +server=/cnnlabs.com/127.0.0.1#5335 +ipset=/cnnlabs.com/gfwlist +server=/usercontent.dev/127.0.0.1#5335 +ipset=/usercontent.dev/gfwlist +server=/mbheadphone.com/127.0.0.1#5335 +ipset=/mbheadphone.com/gfwlist +server=/xn--gtvq61aiijy0b.xn--hxt814e/127.0.0.1#5335 +ipset=/xn--gtvq61aiijy0b.xn--hxt814e/gfwlist +server=/outbound.io/127.0.0.1#5335 +ipset=/outbound.io/gfwlist +server=/buynikechina.com/127.0.0.1#5335 +ipset=/buynikechina.com/gfwlist +server=/durex.com.my/127.0.0.1#5335 +ipset=/durex.com.my/gfwlist +server=/pearsonhighered.com/127.0.0.1#5335 +ipset=/pearsonhighered.com/gfwlist +server=/applefilmaker.com/127.0.0.1#5335 +ipset=/applefilmaker.com/gfwlist +server=/visualstudio.com/127.0.0.1#5335 +ipset=/visualstudio.com/gfwlist +server=/wofl.tv/127.0.0.1#5335 +ipset=/wofl.tv/gfwlist +server=/mediawiki.org/127.0.0.1#5335 +ipset=/mediawiki.org/gfwlist +server=/instagran.com/127.0.0.1#5335 +ipset=/instagran.com/gfwlist +server=/beatsdre-monster.com/127.0.0.1#5335 +ipset=/beatsdre-monster.com/gfwlist +server=/pocketcasts.com/127.0.0.1#5335 +ipset=/pocketcasts.com/gfwlist +server=/s-cashonmobile.com/127.0.0.1#5335 +ipset=/s-cashonmobile.com/gfwlist +server=/steamcontent.com/127.0.0.1#5335 +ipset=/steamcontent.com/gfwlist +server=/applicationinsights.net/127.0.0.1#5335 +ipset=/applicationinsights.net/gfwlist +server=/immxd.com/127.0.0.1#5335 +ipset=/immxd.com/gfwlist +server=/bmw.com.ky/127.0.0.1#5335 +ipset=/bmw.com.ky/gfwlist +server=/brew.sh/127.0.0.1#5335 +ipset=/brew.sh/gfwlist +server=/cheapbeatsbydremonster.com/127.0.0.1#5335 +ipset=/cheapbeatsbydremonster.com/gfwlist +server=/fastly.com/127.0.0.1#5335 +ipset=/fastly.com/gfwlist +server=/shields.io/127.0.0.1#5335 +ipset=/shields.io/gfwlist +server=/bmwstartupgarage.com/127.0.0.1#5335 +ipset=/bmwstartupgarage.com/gfwlist +server=/wwwfacebok.com/127.0.0.1#5335 +ipset=/wwwfacebok.com/gfwlist +server=/jwt.ms/127.0.0.1#5335 +ipset=/jwt.ms/gfwlist +server=/ebay.be/127.0.0.1#5335 +ipset=/ebay.be/gfwlist +server=/pypa.io/127.0.0.1#5335 +ipset=/pypa.io/gfwlist +server=/drebeats-singaporecheap.net/127.0.0.1#5335 +ipset=/drebeats-singaporecheap.net/gfwlist +server=/masseffect.com/127.0.0.1#5335 +ipset=/masseffect.com/gfwlist +server=/ducksear.ch/127.0.0.1#5335 +ipset=/ducksear.ch/gfwlist +server=/bmwmotorradhk.com/127.0.0.1#5335 +ipset=/bmwmotorradhk.com/gfwlist +server=/minirichmond.com/127.0.0.1#5335 +ipset=/minirichmond.com/gfwlist +server=/thomsonreutersmexico.com/127.0.0.1#5335 +ipset=/thomsonreutersmexico.com/gfwlist +server=/ieee-vics.org/127.0.0.1#5335 +ipset=/ieee-vics.org/gfwlist +server=/minilangley.com/127.0.0.1#5335 +ipset=/minilangley.com/gfwlist +server=/raponlinereview.com/127.0.0.1#5335 +ipset=/raponlinereview.com/gfwlist +server=/alibabacloud.com.my/127.0.0.1#5335 +ipset=/alibabacloud.com.my/gfwlist +server=/volvobuses.com/127.0.0.1#5335 +ipset=/volvobuses.com/gfwlist +server=/veet.be/127.0.0.1#5335 +ipset=/veet.be/gfwlist +server=/fsdn.com/127.0.0.1#5335 +ipset=/fsdn.com/gfwlist +server=/googledomains.com/127.0.0.1#5335 +ipset=/googledomains.com/gfwlist +server=/hcpdts.com/127.0.0.1#5335 +ipset=/hcpdts.com/gfwlist +server=/swisssign-group.li/127.0.0.1#5335 +ipset=/swisssign-group.li/gfwlist +server=/sovec.net/127.0.0.1#5335 +ipset=/sovec.net/gfwlist +server=/carekit.org/127.0.0.1#5335 +ipset=/carekit.org/gfwlist +server=/apple.hu/127.0.0.1#5335 +ipset=/apple.hu/gfwlist +server=/simplifycommerce.com/127.0.0.1#5335 +ipset=/simplifycommerce.com/gfwlist +server=/minisaskatoon.com/127.0.0.1#5335 +ipset=/minisaskatoon.com/gfwlist +server=/nflximg.net/127.0.0.1#5335 +ipset=/nflximg.net/gfwlist +server=/espn.hb.omtrdc.net/127.0.0.1#5335 +ipset=/espn.hb.omtrdc.net/gfwlist +server=/avn.com/127.0.0.1#5335 +ipset=/avn.com/gfwlist +server=/google.by/127.0.0.1#5335 +ipset=/google.by/gfwlist +server=/apple.ee/127.0.0.1#5335 +ipset=/apple.ee/gfwlist +server=/wasdj.com/127.0.0.1#5335 +ipset=/wasdj.com/gfwlist +server=/bmwlat.com/127.0.0.1#5335 +ipset=/bmwlat.com/gfwlist +server=/alphera-finance.in/127.0.0.1#5335 +ipset=/alphera-finance.in/gfwlist +server=/youtubemobilesupport.com/127.0.0.1#5335 +ipset=/youtubemobilesupport.com/gfwlist +server=/adobepress.ch/127.0.0.1#5335 +ipset=/adobepress.ch/gfwlist +server=/bttzyw.net/127.0.0.1#5335 +ipset=/bttzyw.net/gfwlist +server=/galaxymobile.jp/127.0.0.1#5335 +ipset=/galaxymobile.jp/gfwlist +server=/smartonesolutions.hk/127.0.0.1#5335 +ipset=/smartonesolutions.hk/gfwlist +server=/mini.dk/127.0.0.1#5335 +ipset=/mini.dk/gfwlist +server=/volvobuses.fi/127.0.0.1#5335 +ipset=/volvobuses.fi/gfwlist +server=/beats-bydreoutletsale.com/127.0.0.1#5335 +ipset=/beats-bydreoutletsale.com/gfwlist +server=/cairnspost.com.au/127.0.0.1#5335 +ipset=/cairnspost.com.au/gfwlist +server=/easy.ac/127.0.0.1#5335 +ipset=/easy.ac/gfwlist +server=/k8s.io/127.0.0.1#5335 +ipset=/k8s.io/gfwlist +server=/akamai-trials.com/127.0.0.1#5335 +ipset=/akamai-trials.com/gfwlist +server=/opengraphprotocol.org/127.0.0.1#5335 +ipset=/opengraphprotocol.org/gfwlist +server=/vilavpn.xyz/127.0.0.1#5335 +ipset=/vilavpn.xyz/gfwlist +server=/facebgook.com/127.0.0.1#5335 +ipset=/facebgook.com/gfwlist +server=/firestoneip.com/127.0.0.1#5335 +ipset=/firestoneip.com/gfwlist +server=/appleone.guide/127.0.0.1#5335 +ipset=/appleone.guide/gfwlist +server=/jetfuelapp.com/127.0.0.1#5335 +ipset=/jetfuelapp.com/gfwlist +server=/ocul.us/127.0.0.1#5335 +ipset=/ocul.us/gfwlist +server=/gsccdn.com/127.0.0.1#5335 +ipset=/gsccdn.com/gfwlist +server=/microsoftcloudsummit.com/127.0.0.1#5335 +ipset=/microsoftcloudsummit.com/gfwlist +server=/facebookexchange.net/127.0.0.1#5335 +ipset=/facebookexchange.net/gfwlist +server=/akami.com/127.0.0.1#5335 +ipset=/akami.com/gfwlist +server=/intel.ua/127.0.0.1#5335 +ipset=/intel.ua/gfwlist +server=/vmwareemeablog.com/127.0.0.1#5335 +ipset=/vmwareemeablog.com/gfwlist +server=/xn--xsq421m.com/127.0.0.1#5335 +ipset=/xn--xsq421m.com/gfwlist +server=/facebooksite.net/127.0.0.1#5335 +ipset=/facebooksite.net/gfwlist +server=/bmw-product-highlights.com/127.0.0.1#5335 +ipset=/bmw-product-highlights.com/gfwlist +server=/darkageofcamelot.com/127.0.0.1#5335 +ipset=/darkageofcamelot.com/gfwlist +server=/pixapp.net/127.0.0.1#5335 +ipset=/pixapp.net/gfwlist +server=/vfsco.hu/127.0.0.1#5335 +ipset=/vfsco.hu/gfwlist +server=/mysdn.com/127.0.0.1#5335 +ipset=/mysdn.com/gfwlist +server=/line.me/127.0.0.1#5335 +ipset=/line.me/gfwlist +server=/netflixdnstest10.com/127.0.0.1#5335 +ipset=/netflixdnstest10.com/gfwlist +server=/durex.no/127.0.0.1#5335 +ipset=/durex.no/gfwlist +server=/awsloft-stockholm.com/127.0.0.1#5335 +ipset=/awsloft-stockholm.com/gfwlist +server=/sony.cz/127.0.0.1#5335 +ipset=/sony.cz/gfwlist +server=/faecebok.com/127.0.0.1#5335 +ipset=/faecebok.com/gfwlist +server=/needforspeedredline.com/127.0.0.1#5335 +ipset=/needforspeedredline.com/gfwlist +server=/bmw.pl/127.0.0.1#5335 +ipset=/bmw.pl/gfwlist +server=/dvdstudiopro.net/127.0.0.1#5335 +ipset=/dvdstudiopro.net/gfwlist +server=/qt.io/127.0.0.1#5335 +ipset=/qt.io/gfwlist +server=/garenanow.com/127.0.0.1#5335 +ipset=/garenanow.com/gfwlist +server=/boltdns.net/127.0.0.1#5335 +ipset=/boltdns.net/gfwlist +server=/mastercard.az/127.0.0.1#5335 +ipset=/mastercard.az/gfwlist +server=/nikebetterworld.net/127.0.0.1#5335 +ipset=/nikebetterworld.net/gfwlist +server=/asahi.com/127.0.0.1#5335 +ipset=/asahi.com/gfwlist +server=/vimeostatus.com/127.0.0.1#5335 +ipset=/vimeostatus.com/gfwlist +server=/googlefinland.com/127.0.0.1#5335 +ipset=/googlefinland.com/gfwlist +server=/masterpassteststore.com/127.0.0.1#5335 +ipset=/masterpassteststore.com/gfwlist +server=/nextmgz.com/127.0.0.1#5335 +ipset=/nextmgz.com/gfwlist +server=/volvotrucks.co.zm/127.0.0.1#5335 +ipset=/volvotrucks.co.zm/gfwlist +server=/attalascom.com/127.0.0.1#5335 +ipset=/attalascom.com/gfwlist +server=/volvogroup.ru/127.0.0.1#5335 +ipset=/volvogroup.ru/gfwlist +server=/pearsonassessment.se/127.0.0.1#5335 +ipset=/pearsonassessment.se/gfwlist +server=/cybertrust.co.jp/127.0.0.1#5335 +ipset=/cybertrust.co.jp/gfwlist +server=/mini-jordan.com/127.0.0.1#5335 +ipset=/mini-jordan.com/gfwlist +server=/chimeforchange.org/127.0.0.1#5335 +ipset=/chimeforchange.org/gfwlist +server=/intelrxt.com/127.0.0.1#5335 +ipset=/intelrxt.com/gfwlist +server=/voandebele.com/127.0.0.1#5335 +ipset=/voandebele.com/gfwlist +server=/tryrating.com/127.0.0.1#5335 +ipset=/tryrating.com/gfwlist +server=/signalbar.com/127.0.0.1#5335 +ipset=/signalbar.com/gfwlist +server=/axios.com/127.0.0.1#5335 +ipset=/axios.com/gfwlist +server=/appleswift.com/127.0.0.1#5335 +ipset=/appleswift.com/gfwlist +server=/imacsources.com/127.0.0.1#5335 +ipset=/imacsources.com/gfwlist +server=/insidefilms.com/127.0.0.1#5335 +ipset=/insidefilms.com/gfwlist +server=/foxbet.com/127.0.0.1#5335 +ipset=/foxbet.com/gfwlist +server=/ebayenterprise.net/127.0.0.1#5335 +ipset=/ebayenterprise.net/gfwlist +server=/thebayuk.com/127.0.0.1#5335 +ipset=/thebayuk.com/gfwlist +server=/ebaymarketplace.net/127.0.0.1#5335 +ipset=/ebaymarketplace.net/gfwlist +server=/cheapbeatsbydremall.com/127.0.0.1#5335 +ipset=/cheapbeatsbydremall.com/gfwlist +server=/muji.com/127.0.0.1#5335 +ipset=/muji.com/gfwlist +server=/macbookair.com.es/127.0.0.1#5335 +ipset=/macbookair.com.es/gfwlist +server=/iphone5.com/127.0.0.1#5335 +ipset=/iphone5.com/gfwlist +server=/rolsociety.org/127.0.0.1#5335 +ipset=/rolsociety.org/gfwlist +server=/akaint.net/127.0.0.1#5335 +ipset=/akaint.net/gfwlist +server=/acm.org/127.0.0.1#5335 +ipset=/acm.org/gfwlist +server=/whyiwantciscotelepresence.com/127.0.0.1#5335 +ipset=/whyiwantciscotelepresence.com/gfwlist +server=/apkpure.com/127.0.0.1#5335 +ipset=/apkpure.com/gfwlist +server=/fotolja.com/127.0.0.1#5335 +ipset=/fotolja.com/gfwlist +server=/nintendo-europe-sales.com/127.0.0.1#5335 +ipset=/nintendo-europe-sales.com/gfwlist +server=/kindleoasis.jp/127.0.0.1#5335 +ipset=/kindleoasis.jp/gfwlist +server=/durex.es/127.0.0.1#5335 +ipset=/durex.es/gfwlist +server=/nikeshoesinc.com/127.0.0.1#5335 +ipset=/nikeshoesinc.com/gfwlist +server=/eprc.com.hk/127.0.0.1#5335 +ipset=/eprc.com.hk/gfwlist +server=/youtube-nocookie.com/127.0.0.1#5335 +ipset=/youtube-nocookie.com/gfwlist +server=/bastillepost.com/127.0.0.1#5335 +ipset=/bastillepost.com/gfwlist +server=/paypal-login.com/127.0.0.1#5335 +ipset=/paypal-login.com/gfwlist +server=/macbook.wang/127.0.0.1#5335 +ipset=/macbook.wang/gfwlist +server=/facebook.tv/127.0.0.1#5335 +ipset=/facebook.tv/gfwlist +server=/volvopenta.es/127.0.0.1#5335 +ipset=/volvopenta.es/gfwlist +server=/foxsports.pe/127.0.0.1#5335 +ipset=/foxsports.pe/gfwlist +server=/msft.info/127.0.0.1#5335 +ipset=/msft.info/gfwlist +server=/bmw-motorrad.co/127.0.0.1#5335 +ipset=/bmw-motorrad.co/gfwlist +server=/mini.com.pe/127.0.0.1#5335 +ipset=/mini.com.pe/gfwlist +server=/codeish.io/127.0.0.1#5335 +ipset=/codeish.io/gfwlist +server=/hpcatridge.com/127.0.0.1#5335 +ipset=/hpcatridge.com/gfwlist +server=/bmw-connecteddrive.ru/127.0.0.1#5335 +ipset=/bmw-connecteddrive.ru/gfwlist +server=/starbuckssummergame.com/127.0.0.1#5335 +ipset=/starbuckssummergame.com/gfwlist +server=/womenwill.id/127.0.0.1#5335 +ipset=/womenwill.id/gfwlist +server=/experiencebillmelater.com/127.0.0.1#5335 +ipset=/experiencebillmelater.com/gfwlist +server=/avpanda.cc/127.0.0.1#5335 +ipset=/avpanda.cc/gfwlist +server=/oxfordwesternmusic.com/127.0.0.1#5335 +ipset=/oxfordwesternmusic.com/gfwlist +server=/disney.asia/127.0.0.1#5335 +ipset=/disney.asia/gfwlist +server=/erabaru.net/127.0.0.1#5335 +ipset=/erabaru.net/gfwlist +server=/readthedocs.io/127.0.0.1#5335 +ipset=/readthedocs.io/gfwlist +server=/zoho.com.au/127.0.0.1#5335 +ipset=/zoho.com.au/gfwlist +server=/sonykigyo.jp/127.0.0.1#5335 +ipset=/sonykigyo.jp/gfwlist +server=/orlandohurricane.com/127.0.0.1#5335 +ipset=/orlandohurricane.com/gfwlist +server=/bmw-museum.com/127.0.0.1#5335 +ipset=/bmw-museum.com/gfwlist +server=/qualcomm.sc.omtrdc.net/127.0.0.1#5335 +ipset=/qualcomm.sc.omtrdc.net/gfwlist +server=/volvobuses.pl/127.0.0.1#5335 +ipset=/volvobuses.pl/gfwlist +server=/knovel.com/127.0.0.1#5335 +ipset=/knovel.com/gfwlist +server=/intel.uz/127.0.0.1#5335 +ipset=/intel.uz/gfwlist +server=/vmwlabconnect.com/127.0.0.1#5335 +ipset=/vmwlabconnect.com/gfwlist +server=/edcity.hk/127.0.0.1#5335 +ipset=/edcity.hk/gfwlist +server=/5278.cc/127.0.0.1#5335 +ipset=/5278.cc/gfwlist +server=/t21ipau.nikkei.co.jp/127.0.0.1#5335 +ipset=/t21ipau.nikkei.co.jp/gfwlist +server=/youtubecisco.com/127.0.0.1#5335 +ipset=/youtubecisco.com/gfwlist +server=/ebay-cz.com/127.0.0.1#5335 +ipset=/ebay-cz.com/gfwlist +server=/mariadb.org/127.0.0.1#5335 +ipset=/mariadb.org/gfwlist +server=/acmvalidationsaws.com/127.0.0.1#5335 +ipset=/acmvalidationsaws.com/gfwlist +server=/ituneslatino.com/127.0.0.1#5335 +ipset=/ituneslatino.com/gfwlist +server=/beatsbydreheadphones-nz.com/127.0.0.1#5335 +ipset=/beatsbydreheadphones-nz.com/gfwlist +server=/metart.com/127.0.0.1#5335 +ipset=/metart.com/gfwlist +server=/httpsfacebook.com/127.0.0.1#5335 +ipset=/httpsfacebook.com/gfwlist +server=/ssrpass.pw/127.0.0.1#5335 +ipset=/ssrpass.pw/gfwlist +server=/scala-sbt.org/127.0.0.1#5335 +ipset=/scala-sbt.org/gfwlist +server=/appleiphone.net/127.0.0.1#5335 +ipset=/appleiphone.net/gfwlist +server=/monitrix.net/127.0.0.1#5335 +ipset=/monitrix.net/gfwlist +server=/patenttruth.org/127.0.0.1#5335 +ipset=/patenttruth.org/gfwlist +server=/airwick.co.uk/127.0.0.1#5335 +ipset=/airwick.co.uk/gfwlist +server=/beatsbysdrbre.com/127.0.0.1#5335 +ipset=/beatsbysdrbre.com/gfwlist +server=/fblitho.com/127.0.0.1#5335 +ipset=/fblitho.com/gfwlist +server=/iphonehangzhou.com/127.0.0.1#5335 +ipset=/iphonehangzhou.com/gfwlist +server=/youtube.com.ni/127.0.0.1#5335 +ipset=/youtube.com.ni/gfwlist +server=/alphabet.com.mx/127.0.0.1#5335 +ipset=/alphabet.com.mx/gfwlist +server=/vfsco.ch/127.0.0.1#5335 +ipset=/vfsco.ch/gfwlist +server=/beatsbydreonlines-uk.com/127.0.0.1#5335 +ipset=/beatsbydreonlines-uk.com/gfwlist +server=/startpath.com/127.0.0.1#5335 +ipset=/startpath.com/gfwlist +server=/yourfantasybeginsnow.com/127.0.0.1#5335 +ipset=/yourfantasybeginsnow.com/gfwlist +server=/monsterbeats-cheap.com/127.0.0.1#5335 +ipset=/monsterbeats-cheap.com/gfwlist +server=/smartcommunitiescoalition.org/127.0.0.1#5335 +ipset=/smartcommunitiescoalition.org/gfwlist +server=/mickey.tv/127.0.0.1#5335 +ipset=/mickey.tv/gfwlist +server=/91.51rmc.com/127.0.0.1#5335 +ipset=/91.51rmc.com/gfwlist +server=/pinterest.info/127.0.0.1#5335 +ipset=/pinterest.info/gfwlist +server=/appleid.hk/127.0.0.1#5335 +ipset=/appleid.hk/gfwlist +server=/volvotrucks.se/127.0.0.1#5335 +ipset=/volvotrucks.se/gfwlist +server=/facebooksecurity.net/127.0.0.1#5335 +ipset=/facebooksecurity.net/gfwlist +server=/mini.mu/127.0.0.1#5335 +ipset=/mini.mu/gfwlist +server=/infowars.com/127.0.0.1#5335 +ipset=/infowars.com/gfwlist +server=/lyzsxx.com/127.0.0.1#5335 +ipset=/lyzsxx.com/gfwlist +server=/bsw.jp/127.0.0.1#5335 +ipset=/bsw.jp/gfwlist +server=/hktpremier.com/127.0.0.1#5335 +ipset=/hktpremier.com/gfwlist +server=/biowarestore.com/127.0.0.1#5335 +ipset=/biowarestore.com/gfwlist +server=/gitlab.net/127.0.0.1#5335 +ipset=/gitlab.net/gfwlist +server=/jav.guru/127.0.0.1#5335 +ipset=/jav.guru/gfwlist +server=/oxfordscholarship.com/127.0.0.1#5335 +ipset=/oxfordscholarship.com/gfwlist +server=/inoreader.com/127.0.0.1#5335 +ipset=/inoreader.com/gfwlist +server=/strepsils.com.ph/127.0.0.1#5335 +ipset=/strepsils.com.ph/gfwlist +server=/minneapolisbmw.net/127.0.0.1#5335 +ipset=/minneapolisbmw.net/gfwlist +server=/dandalinvoa.com/127.0.0.1#5335 +ipset=/dandalinvoa.com/gfwlist +server=/nintendo.de/127.0.0.1#5335 +ipset=/nintendo.de/gfwlist +server=/spotifyjobs.com/127.0.0.1#5335 +ipset=/spotifyjobs.com/gfwlist +server=/metacloud.com/127.0.0.1#5335 +ipset=/metacloud.com/gfwlist +server=/canon.kz/127.0.0.1#5335 +ipset=/canon.kz/gfwlist +server=/facebooklogs.com/127.0.0.1#5335 +ipset=/facebooklogs.com/gfwlist +server=/uun82.com/127.0.0.1#5335 +ipset=/uun82.com/gfwlist +server=/audio-ak-spotify-com.akamaized.net/127.0.0.1#5335 +ipset=/audio-ak-spotify-com.akamaized.net/gfwlist +server=/youtube.ng/127.0.0.1#5335 +ipset=/youtube.ng/gfwlist +server=/xn--xsq605n.com/127.0.0.1#5335 +ipset=/xn--xsq605n.com/gfwlist +server=/microsoft.rs/127.0.0.1#5335 +ipset=/microsoft.rs/gfwlist +server=/beatsboxingdayuksale.com/127.0.0.1#5335 +ipset=/beatsboxingdayuksale.com/gfwlist +server=/bmwgroupna.com/127.0.0.1#5335 +ipset=/bmwgroupna.com/gfwlist +server=/beatsbydrecustomwireless.com/127.0.0.1#5335 +ipset=/beatsbydrecustomwireless.com/gfwlist +server=/media-imdb.com/127.0.0.1#5335 +ipset=/media-imdb.com/gfwlist +server=/vmwhorizonair.com/127.0.0.1#5335 +ipset=/vmwhorizonair.com/gfwlist +server=/akamaisingapore.net/127.0.0.1#5335 +ipset=/akamaisingapore.net/gfwlist +server=/wireless.radio/127.0.0.1#5335 +ipset=/wireless.radio/gfwlist +server=/youtube.ni/127.0.0.1#5335 +ipset=/youtube.ni/gfwlist +server=/nyti.ms/127.0.0.1#5335 +ipset=/nyti.ms/gfwlist +server=/renchead.com/127.0.0.1#5335 +ipset=/renchead.com/gfwlist +server=/abc-studios.com/127.0.0.1#5335 +ipset=/abc-studios.com/gfwlist +server=/cheapbeatsbydreoutlet.com/127.0.0.1#5335 +ipset=/cheapbeatsbydreoutlet.com/gfwlist +server=/nvidia.jp/127.0.0.1#5335 +ipset=/nvidia.jp/gfwlist +server=/nvidia.com.pl/127.0.0.1#5335 +ipset=/nvidia.com.pl/gfwlist +server=/travelex.com.au/127.0.0.1#5335 +ipset=/travelex.com.au/gfwlist +server=/gnews.org/127.0.0.1#5335 +ipset=/gnews.org/gfwlist +server=/visamiddleeast.com/127.0.0.1#5335 +ipset=/visamiddleeast.com/gfwlist +server=/akamci.com/127.0.0.1#5335 +ipset=/akamci.com/gfwlist +server=/visaluxuryhotelcollection.com.mx/127.0.0.1#5335 +ipset=/visaluxuryhotelcollection.com.mx/gfwlist +server=/vanish.com.br/127.0.0.1#5335 +ipset=/vanish.com.br/gfwlist +server=/imovie.eu/127.0.0.1#5335 +ipset=/imovie.eu/gfwlist +server=/mgo.com/127.0.0.1#5335 +ipset=/mgo.com/gfwlist +server=/naver.jp/127.0.0.1#5335 +ipset=/naver.jp/gfwlist +server=/haveibeenpwned.com/127.0.0.1#5335 +ipset=/haveibeenpwned.com/gfwlist +server=/dawngate.com/127.0.0.1#5335 +ipset=/dawngate.com/gfwlist +server=/icloud.de/127.0.0.1#5335 +ipset=/icloud.de/gfwlist +server=/mini.be/127.0.0.1#5335 +ipset=/mini.be/gfwlist +server=/dawngatechronicles.com/127.0.0.1#5335 +ipset=/dawngatechronicles.com/gfwlist +server=/sunbingo.co.uk/127.0.0.1#5335 +ipset=/sunbingo.co.uk/gfwlist +server=/ebaybank.com/127.0.0.1#5335 +ipset=/ebaybank.com/gfwlist +server=/ms365surfaceoffer.com/127.0.0.1#5335 +ipset=/ms365surfaceoffer.com/gfwlist +server=/azureedge.net/127.0.0.1#5335 +ipset=/azureedge.net/gfwlist +server=/foxbusiness.tv/127.0.0.1#5335 +ipset=/foxbusiness.tv/gfwlist +server=/gettyimages.co.nz/127.0.0.1#5335 +ipset=/gettyimages.co.nz/gfwlist +server=/cash.app/127.0.0.1#5335 +ipset=/cash.app/gfwlist +server=/applewatchedition.com/127.0.0.1#5335 +ipset=/applewatchedition.com/gfwlist +server=/premobay.com/127.0.0.1#5335 +ipset=/premobay.com/gfwlist +server=/dssott.com/127.0.0.1#5335 +ipset=/dssott.com/gfwlist +server=/applelink.com/127.0.0.1#5335 +ipset=/applelink.com/gfwlist +server=/youtube.co.ug/127.0.0.1#5335 +ipset=/youtube.co.ug/gfwlist +server=/youtube.pt/127.0.0.1#5335 +ipset=/youtube.pt/gfwlist +server=/ipodcleaner.com/127.0.0.1#5335 +ipset=/ipodcleaner.com/gfwlist +server=/bmwmontreal.ca/127.0.0.1#5335 +ipset=/bmwmontreal.ca/gfwlist +server=/facebof.com/127.0.0.1#5335 +ipset=/facebof.com/gfwlist +server=/dollarphotoclub.com/127.0.0.1#5335 +ipset=/dollarphotoclub.com/gfwlist +server=/jenkins.io/127.0.0.1#5335 +ipset=/jenkins.io/gfwlist +server=/activelearnprimary.com.au/127.0.0.1#5335 +ipset=/activelearnprimary.com.au/gfwlist +server=/volvotruckcenter.kz/127.0.0.1#5335 +ipset=/volvotruckcenter.kz/gfwlist +server=/bestbuybusinessadvantageaccount.com/127.0.0.1#5335 +ipset=/bestbuybusinessadvantageaccount.com/gfwlist +server=/avmoo.cyou/127.0.0.1#5335 +ipset=/avmoo.cyou/gfwlist +server=/foampositeshoes.com/127.0.0.1#5335 +ipset=/foampositeshoes.com/gfwlist +server=/ilecture.co.nz/127.0.0.1#5335 +ipset=/ilecture.co.nz/gfwlist +server=/visacards.com/127.0.0.1#5335 +ipset=/visacards.com/gfwlist +server=/nab.demdex.net/127.0.0.1#5335 +ipset=/nab.demdex.net/gfwlist +server=/volvotrucks.pe/127.0.0.1#5335 +ipset=/volvotrucks.pe/gfwlist +server=/wheelworks.net/127.0.0.1#5335 +ipset=/wheelworks.net/gfwlist +server=/office.com/127.0.0.1#5335 +ipset=/office.com/gfwlist +server=/pinterestmail.com/127.0.0.1#5335 +ipset=/pinterestmail.com/gfwlist +server=/proxyrarbg.org/127.0.0.1#5335 +ipset=/proxyrarbg.org/gfwlist +server=/boxofficemojo.com/127.0.0.1#5335 +ipset=/boxofficemojo.com/gfwlist +server=/bodyandsoul.com.au/127.0.0.1#5335 +ipset=/bodyandsoul.com.au/gfwlist +server=/veet.no/127.0.0.1#5335 +ipset=/veet.no/gfwlist +server=/m2m.com/127.0.0.1#5335 +ipset=/m2m.com/gfwlist +server=/adidas.at/127.0.0.1#5335 +ipset=/adidas.at/gfwlist +server=/saleblackfridaydrebeats.com/127.0.0.1#5335 +ipset=/saleblackfridaydrebeats.com/gfwlist +server=/youtube.mn/127.0.0.1#5335 +ipset=/youtube.mn/gfwlist +server=/lightbridge.com/127.0.0.1#5335 +ipset=/lightbridge.com/gfwlist +server=/fury.co/127.0.0.1#5335 +ipset=/fury.co/gfwlist +server=/icloud-isupport.com/127.0.0.1#5335 +ipset=/icloud-isupport.com/gfwlist +server=/south-plus.net/127.0.0.1#5335 +ipset=/south-plus.net/gfwlist +server=/foxsports.com.pe/127.0.0.1#5335 +ipset=/foxsports.com.pe/gfwlist +server=/mydirtyhobby.com/127.0.0.1#5335 +ipset=/mydirtyhobby.com/gfwlist +server=/visa.com.py/127.0.0.1#5335 +ipset=/visa.com.py/gfwlist +server=/internetexplorer.co/127.0.0.1#5335 +ipset=/internetexplorer.co/gfwlist +server=/ifontcloud.com/127.0.0.1#5335 +ipset=/ifontcloud.com/gfwlist +server=/dettolsitishield.co.in/127.0.0.1#5335 +ipset=/dettolsitishield.co.in/gfwlist +server=/hightopnikes.com/127.0.0.1#5335 +ipset=/hightopnikes.com/gfwlist +server=/ebay-delivery.com/127.0.0.1#5335 +ipset=/ebay-delivery.com/gfwlist +server=/bmw-motorrad.com.py/127.0.0.1#5335 +ipset=/bmw-motorrad.com.py/gfwlist +server=/hulu.tv/127.0.0.1#5335 +ipset=/hulu.tv/gfwlist +server=/archiveofourown.com/127.0.0.1#5335 +ipset=/archiveofourown.com/gfwlist +server=/hellokittybeats.com/127.0.0.1#5335 +ipset=/hellokittybeats.com/gfwlist +server=/apple.dk/127.0.0.1#5335 +ipset=/apple.dk/gfwlist +server=/kidsnikeshoes.com/127.0.0.1#5335 +ipset=/kidsnikeshoes.com/gfwlist +server=/macports.org/127.0.0.1#5335 +ipset=/macports.org/gfwlist +server=/citizenlab.ca/127.0.0.1#5335 +ipset=/citizenlab.ca/gfwlist +server=/bby.com/127.0.0.1#5335 +ipset=/bby.com/gfwlist +server=/alpherafinancialservices.in/127.0.0.1#5335 +ipset=/alpherafinancialservices.in/gfwlist +server=/thomsonreuters.cn/127.0.0.1#5335 +ipset=/thomsonreuters.cn/gfwlist +server=/youtube.sv/127.0.0.1#5335 +ipset=/youtube.sv/gfwlist +server=/venmo.info/127.0.0.1#5335 +ipset=/venmo.info/gfwlist +server=/mini.in/127.0.0.1#5335 +ipset=/mini.in/gfwlist +server=/youtube.pe/127.0.0.1#5335 +ipset=/youtube.pe/gfwlist +server=/duckduckgo.ca/127.0.0.1#5335 +ipset=/duckduckgo.ca/gfwlist +server=/xvideos.com/127.0.0.1#5335 +ipset=/xvideos.com/gfwlist +server=/youtube.bg/127.0.0.1#5335 +ipset=/youtube.bg/gfwlist +server=/getadblock.com/127.0.0.1#5335 +ipset=/getadblock.com/gfwlist +server=/beatsbydrenorge1.net/127.0.0.1#5335 +ipset=/beatsbydrenorge1.net/gfwlist +server=/strepsils.si/127.0.0.1#5335 +ipset=/strepsils.si/gfwlist +server=/inmediahk.net/127.0.0.1#5335 +ipset=/inmediahk.net/gfwlist +server=/microsoft.ch/127.0.0.1#5335 +ipset=/microsoft.ch/gfwlist +server=/winudf.com/127.0.0.1#5335 +ipset=/winudf.com/gfwlist +server=/paypal-center.org/127.0.0.1#5335 +ipset=/paypal-center.org/gfwlist +server=/foxinc.com/127.0.0.1#5335 +ipset=/foxinc.com/gfwlist +server=/familymart.com.my/127.0.0.1#5335 +ipset=/familymart.com.my/gfwlist +server=/githubpreview.dev/127.0.0.1#5335 +ipset=/githubpreview.dev/gfwlist +server=/bmw-motorrad.pt/127.0.0.1#5335 +ipset=/bmw-motorrad.pt/gfwlist +server=/nikefind.com/127.0.0.1#5335 +ipset=/nikefind.com/gfwlist +server=/nintendoswitch.net/127.0.0.1#5335 +ipset=/nintendoswitch.net/gfwlist +server=/crowdtangle.com/127.0.0.1#5335 +ipset=/crowdtangle.com/gfwlist +server=/baselinestudy.com/127.0.0.1#5335 +ipset=/baselinestudy.com/gfwlist +server=/dependabot.com/127.0.0.1#5335 +ipset=/dependabot.com/gfwlist +server=/braventures.com/127.0.0.1#5335 +ipset=/braventures.com/gfwlist +server=/disney.ru/127.0.0.1#5335 +ipset=/disney.ru/gfwlist +server=/airsupportapp.com/127.0.0.1#5335 +ipset=/airsupportapp.com/gfwlist +server=/akatns.net/127.0.0.1#5335 +ipset=/akatns.net/gfwlist +server=/ipfs.io/127.0.0.1#5335 +ipset=/ipfs.io/gfwlist +server=/slack-redir.net/127.0.0.1#5335 +ipset=/slack-redir.net/gfwlist +server=/findmyipad.com/127.0.0.1#5335 +ipset=/findmyipad.com/gfwlist +server=/adobeccstatic.com/127.0.0.1#5335 +ipset=/adobeccstatic.com/gfwlist +server=/ipod.co.za/127.0.0.1#5335 +ipset=/ipod.co.za/gfwlist +server=/zeenews.com/127.0.0.1#5335 +ipset=/zeenews.com/gfwlist +server=/facebookcanadianelectionintegrityinitiative.com/127.0.0.1#5335 +ipset=/facebookcanadianelectionintegrityinitiative.com/gfwlist +server=/dengeamerika.com/127.0.0.1#5335 +ipset=/dengeamerika.com/gfwlist +server=/macosxlion.com/127.0.0.1#5335 +ipset=/macosxlion.com/gfwlist +server=/dartpad.dev/127.0.0.1#5335 +ipset=/dartpad.dev/gfwlist +server=/applewatchsport.com/127.0.0.1#5335 +ipset=/applewatchsport.com/gfwlist +server=/google.com.np/127.0.0.1#5335 +ipset=/google.com.np/gfwlist +server=/tube8.com/127.0.0.1#5335 +ipset=/tube8.com/gfwlist +server=/airwick.sk/127.0.0.1#5335 +ipset=/airwick.sk/gfwlist +server=/apple.be/127.0.0.1#5335 +ipset=/apple.be/gfwlist +server=/clco.cc/127.0.0.1#5335 +ipset=/clco.cc/gfwlist +server=/intel.ba/127.0.0.1#5335 +ipset=/intel.ba/gfwlist +server=/canon.nl/127.0.0.1#5335 +ipset=/canon.nl/gfwlist +server=/duckduckgo.com.mx/127.0.0.1#5335 +ipset=/duckduckgo.com.mx/gfwlist +server=/blogspot.com.by/127.0.0.1#5335 +ipset=/blogspot.com.by/gfwlist +server=/tesla-cdn.thron.com/127.0.0.1#5335 +ipset=/tesla-cdn.thron.com/gfwlist +server=/mastercard.qa/127.0.0.1#5335 +ipset=/mastercard.qa/gfwlist +server=/mythicentertainment.com/127.0.0.1#5335 +ipset=/mythicentertainment.com/gfwlist +server=/braintreegateway.com/127.0.0.1#5335 +ipset=/braintreegateway.com/gfwlist +server=/pearsoncmg.com/127.0.0.1#5335 +ipset=/pearsoncmg.com/gfwlist +server=/facebooklive.com/127.0.0.1#5335 +ipset=/facebooklive.com/gfwlist +server=/llnw-trials.com/127.0.0.1#5335 +ipset=/llnw-trials.com/gfwlist +server=/amdfanstore.com/127.0.0.1#5335 +ipset=/amdfanstore.com/gfwlist +server=/beatsbydressolo.com/127.0.0.1#5335 +ipset=/beatsbydressolo.com/gfwlist +server=/rarbgaccess.org/127.0.0.1#5335 +ipset=/rarbgaccess.org/gfwlist +server=/underlords.com/127.0.0.1#5335 +ipset=/underlords.com/gfwlist +server=/drebeatscanada.com/127.0.0.1#5335 +ipset=/drebeatscanada.com/gfwlist +server=/nflximg.com/127.0.0.1#5335 +ipset=/nflximg.com/gfwlist +server=/wholesalediscountpurses.com/127.0.0.1#5335 +ipset=/wholesalediscountpurses.com/gfwlist +server=/beatsdre.net/127.0.0.1#5335 +ipset=/beatsdre.net/gfwlist +server=/debian.org/127.0.0.1#5335 +ipset=/debian.org/gfwlist +server=/revenue-performance-management.com/127.0.0.1#5335 +ipset=/revenue-performance-management.com/gfwlist +server=/cashpassport.net/127.0.0.1#5335 +ipset=/cashpassport.net/gfwlist +server=/india.com/127.0.0.1#5335 +ipset=/india.com/gfwlist +server=/cnnmoney.com/127.0.0.1#5335 +ipset=/cnnmoney.com/gfwlist +server=/page3.com/127.0.0.1#5335 +ipset=/page3.com/gfwlist +server=/ntdtv.kr/127.0.0.1#5335 +ipset=/ntdtv.kr/gfwlist +server=/bmwgroupdirect.com/127.0.0.1#5335 +ipset=/bmwgroupdirect.com/gfwlist +server=/movefreeoffers.com/127.0.0.1#5335 +ipset=/movefreeoffers.com/gfwlist +server=/mini.com.pl/127.0.0.1#5335 +ipset=/mini.com.pl/gfwlist +server=/pearsonclinical.ca/127.0.0.1#5335 +ipset=/pearsonclinical.ca/gfwlist +server=/miniso.by/127.0.0.1#5335 +ipset=/miniso.by/gfwlist +server=/google.fr/127.0.0.1#5335 +ipset=/google.fr/gfwlist +server=/foxnewschannel.com/127.0.0.1#5335 +ipset=/foxnewschannel.com/gfwlist +server=/beatsbydres-shop.com/127.0.0.1#5335 +ipset=/beatsbydres-shop.com/gfwlist +server=/youtube.it/127.0.0.1#5335 +ipset=/youtube.it/gfwlist +server=/pokemon.com/127.0.0.1#5335 +ipset=/pokemon.com/gfwlist +server=/alphabet.pl/127.0.0.1#5335 +ipset=/alphabet.pl/gfwlist +server=/videoindexer.ai/127.0.0.1#5335 +ipset=/videoindexer.ai/gfwlist +server=/wmflabs.org/127.0.0.1#5335 +ipset=/wmflabs.org/gfwlist +server=/widevine.com/127.0.0.1#5335 +ipset=/widevine.com/gfwlist +server=/alteraforums.com/127.0.0.1#5335 +ipset=/alteraforums.com/gfwlist +server=/realestate.com.au/127.0.0.1#5335 +ipset=/realestate.com.au/gfwlist +server=/imgix.com/127.0.0.1#5335 +ipset=/imgix.com/gfwlist +server=/mini-connected.se/127.0.0.1#5335 +ipset=/mini-connected.se/gfwlist +server=/beatbydreheadphonesonsale.com/127.0.0.1#5335 +ipset=/beatbydreheadphonesonsale.com/gfwlist +server=/radeon.com/127.0.0.1#5335 +ipset=/radeon.com/gfwlist +server=/hplaptopbattery.com/127.0.0.1#5335 +ipset=/hplaptopbattery.com/gfwlist +server=/foxsports.uy/127.0.0.1#5335 +ipset=/foxsports.uy/gfwlist +server=/google.fm/127.0.0.1#5335 +ipset=/google.fm/gfwlist +server=/ipod.com.tw/127.0.0.1#5335 +ipset=/ipod.com.tw/gfwlist +server=/zaobao.sg/127.0.0.1#5335 +ipset=/zaobao.sg/gfwlist +server=/xbox360.eu/127.0.0.1#5335 +ipset=/xbox360.eu/gfwlist +server=/zeetv.com/127.0.0.1#5335 +ipset=/zeetv.com/gfwlist +server=/askubuntu.com/127.0.0.1#5335 +ipset=/askubuntu.com/gfwlist +server=/myfonts.net/127.0.0.1#5335 +ipset=/myfonts.net/gfwlist +server=/krux.com/127.0.0.1#5335 +ipset=/krux.com/gfwlist +server=/github.community/127.0.0.1#5335 +ipset=/github.community/gfwlist +server=/cheapbeats365.com/127.0.0.1#5335 +ipset=/cheapbeats365.com/gfwlist +server=/intel.hu/127.0.0.1#5335 +ipset=/intel.hu/gfwlist +server=/directvcincinnatioh.com/127.0.0.1#5335 +ipset=/directvcincinnatioh.com/gfwlist +server=/gputechconf.co.kr/127.0.0.1#5335 +ipset=/gputechconf.co.kr/gfwlist +server=/svp-team.com/127.0.0.1#5335 +ipset=/svp-team.com/gfwlist +server=/xn--6eup7j.net/127.0.0.1#5335 +ipset=/xn--6eup7j.net/gfwlist +server=/directvcrossvilletn.com/127.0.0.1#5335 +ipset=/directvcrossvilletn.com/gfwlist +server=/wsjwine.com/127.0.0.1#5335 +ipset=/wsjwine.com/gfwlist +server=/msft.net/127.0.0.1#5335 +ipset=/msft.net/gfwlist +server=/beats1.tv/127.0.0.1#5335 +ipset=/beats1.tv/gfwlist +server=/packer.io/127.0.0.1#5335 +ipset=/packer.io/gfwlist +server=/apple-pay.wang/127.0.0.1#5335 +ipset=/apple-pay.wang/gfwlist +server=/bethsoft.com/127.0.0.1#5335 +ipset=/bethsoft.com/gfwlist +server=/atttvnow.com/127.0.0.1#5335 +ipset=/atttvnow.com/gfwlist +server=/milofetch.com/127.0.0.1#5335 +ipset=/milofetch.com/gfwlist +server=/microsoftgamestack.com/127.0.0.1#5335 +ipset=/microsoftgamestack.com/gfwlist +server=/airport.eu/127.0.0.1#5335 +ipset=/airport.eu/gfwlist +server=/alpherafs.in/127.0.0.1#5335 +ipset=/alpherafs.in/gfwlist +server=/travelex.it/127.0.0.1#5335 +ipset=/travelex.it/gfwlist +server=/nuget.org/127.0.0.1#5335 +ipset=/nuget.org/gfwlist +server=/asproexapi.com/127.0.0.1#5335 +ipset=/asproexapi.com/gfwlist +server=/idvd.eu/127.0.0.1#5335 +ipset=/idvd.eu/gfwlist +server=/garena.co.th/127.0.0.1#5335 +ipset=/garena.co.th/gfwlist +server=/scholar.google.dk/127.0.0.1#5335 +ipset=/scholar.google.dk/gfwlist +server=/isca-speech.org/127.0.0.1#5335 +ipset=/isca-speech.org/gfwlist +server=/icloud.fr/127.0.0.1#5335 +ipset=/icloud.fr/gfwlist +server=/intel.ly/127.0.0.1#5335 +ipset=/intel.ly/gfwlist +server=/ohyeah1080.com/127.0.0.1#5335 +ipset=/ohyeah1080.com/gfwlist +server=/businessinsider.de/127.0.0.1#5335 +ipset=/businessinsider.de/gfwlist +server=/veet.us/127.0.0.1#5335 +ipset=/veet.us/gfwlist +server=/finish.si/127.0.0.1#5335 +ipset=/finish.si/gfwlist +server=/beatsheadphonestudio.com/127.0.0.1#5335 +ipset=/beatsheadphonestudio.com/gfwlist +server=/yarnpkg.com/127.0.0.1#5335 +ipset=/yarnpkg.com/gfwlist +server=/ntdtv.com.tw/127.0.0.1#5335 +ipset=/ntdtv.com.tw/gfwlist +server=/adidas.co.in/127.0.0.1#5335 +ipset=/adidas.co.in/gfwlist +server=/aka-ai.net/127.0.0.1#5335 +ipset=/aka-ai.net/gfwlist +server=/wmt.co/127.0.0.1#5335 +ipset=/wmt.co/gfwlist +server=/sky.com/127.0.0.1#5335 +ipset=/sky.com/gfwlist +server=/facebook.org/127.0.0.1#5335 +ipset=/facebook.org/gfwlist +server=/attic.io/127.0.0.1#5335 +ipset=/attic.io/gfwlist +server=/drmario-world.com/127.0.0.1#5335 +ipset=/drmario-world.com/gfwlist +server=/beatsbydrdrestore.com/127.0.0.1#5335 +ipset=/beatsbydrdrestore.com/gfwlist +server=/insider-intelligence.com/127.0.0.1#5335 +ipset=/insider-intelligence.com/gfwlist +server=/gclubs.com/127.0.0.1#5335 +ipset=/gclubs.com/gfwlist +server=/dctbeatsbydre.com/127.0.0.1#5335 +ipset=/dctbeatsbydre.com/gfwlist +server=/shopify.com/127.0.0.1#5335 +ipset=/shopify.com/gfwlist +server=/kilmeadeandfriends.com/127.0.0.1#5335 +ipset=/kilmeadeandfriends.com/gfwlist +server=/zndsk.com/127.0.0.1#5335 +ipset=/zndsk.com/gfwlist +server=/nikenews.com/127.0.0.1#5335 +ipset=/nikenews.com/gfwlist +server=/disney.com.hk/127.0.0.1#5335 +ipset=/disney.com.hk/gfwlist +server=/onenote.com/127.0.0.1#5335 +ipset=/onenote.com/gfwlist +server=/nurofen.ro/127.0.0.1#5335 +ipset=/nurofen.ro/gfwlist +server=/bmwmass.com/127.0.0.1#5335 +ipset=/bmwmass.com/gfwlist +server=/mini.ch/127.0.0.1#5335 +ipset=/mini.ch/gfwlist +server=/facebookpokerchips.info/127.0.0.1#5335 +ipset=/facebookpokerchips.info/gfwlist +server=/researchkit.tv/127.0.0.1#5335 +ipset=/researchkit.tv/gfwlist +server=/facebookstudios.org/127.0.0.1#5335 +ipset=/facebookstudios.org/gfwlist +server=/zeplin.io/127.0.0.1#5335 +ipset=/zeplin.io/gfwlist +server=/buyitnow.net/127.0.0.1#5335 +ipset=/buyitnow.net/gfwlist +server=/blogspot.nl/127.0.0.1#5335 +ipset=/blogspot.nl/gfwlist +server=/quicktime.tv/127.0.0.1#5335 +ipset=/quicktime.tv/gfwlist +server=/aesworkshops.com/127.0.0.1#5335 +ipset=/aesworkshops.com/gfwlist +server=/beeg.com/127.0.0.1#5335 +ipset=/beeg.com/gfwlist +server=/macbookair.co.uk/127.0.0.1#5335 +ipset=/macbookair.co.uk/gfwlist +server=/bmw-world.net/127.0.0.1#5335 +ipset=/bmw-world.net/gfwlist +server=/mini-stjohns.com/127.0.0.1#5335 +ipset=/mini-stjohns.com/gfwlist +server=/dengiamerika.com/127.0.0.1#5335 +ipset=/dengiamerika.com/gfwlist +server=/attproxy.com/127.0.0.1#5335 +ipset=/attproxy.com/gfwlist +server=/hayabusa.dev/127.0.0.1#5335 +ipset=/hayabusa.dev/gfwlist +server=/miniso.my/127.0.0.1#5335 +ipset=/miniso.my/gfwlist +server=/yahoo-news.com.hk/127.0.0.1#5335 +ipset=/yahoo-news.com.hk/gfwlist +server=/pearsonassessment.be/127.0.0.1#5335 +ipset=/pearsonassessment.be/gfwlist +server=/v2ex.com/127.0.0.1#5335 +ipset=/v2ex.com/gfwlist +server=/onsalekey.com/127.0.0.1#5335 +ipset=/onsalekey.com/gfwlist +server=/yahoo.jo/127.0.0.1#5335 +ipset=/yahoo.jo/gfwlist +server=/disneysrivieraresort.com/127.0.0.1#5335 +ipset=/disneysrivieraresort.com/gfwlist +server=/canon.lv/127.0.0.1#5335 +ipset=/canon.lv/gfwlist +server=/oreil.ly/127.0.0.1#5335 +ipset=/oreil.ly/gfwlist +server=/hk01.com/127.0.0.1#5335 +ipset=/hk01.com/gfwlist +server=/lencr.org/127.0.0.1#5335 +ipset=/lencr.org/gfwlist +server=/amplifyapp.com/127.0.0.1#5335 +ipset=/amplifyapp.com/gfwlist +server=/lge.co.kr/127.0.0.1#5335 +ipset=/lge.co.kr/gfwlist +server=/beatsbydrsmonsterinusa.com/127.0.0.1#5335 +ipset=/beatsbydrsmonsterinusa.com/gfwlist +server=/google.com.ua/127.0.0.1#5335 +ipset=/google.com.ua/gfwlist +server=/hrsaz.com/127.0.0.1#5335 +ipset=/hrsaz.com/gfwlist +server=/q13.com/127.0.0.1#5335 +ipset=/q13.com/gfwlist +server=/bmw-motorrad-dubai.com/127.0.0.1#5335 +ipset=/bmw-motorrad-dubai.com/gfwlist +server=/fsacebok.com/127.0.0.1#5335 +ipset=/fsacebok.com/gfwlist +server=/steamcommunity.com/127.0.0.1#5335 +ipset=/steamcommunity.com/gfwlist +server=/beats-bydrecheapsale.com/127.0.0.1#5335 +ipset=/beats-bydrecheapsale.com/gfwlist +server=/airwick.cl/127.0.0.1#5335 +ipset=/airwick.cl/gfwlist +server=/facebookpay.com/127.0.0.1#5335 +ipset=/facebookpay.com/gfwlist +server=/ebayads.net/127.0.0.1#5335 +ipset=/ebayads.net/gfwlist +server=/amazon-jp-recruiting.com/127.0.0.1#5335 +ipset=/amazon-jp-recruiting.com/gfwlist +server=/fox10.tv/127.0.0.1#5335 +ipset=/fox10.tv/gfwlist +server=/canon.ua/127.0.0.1#5335 +ipset=/canon.ua/gfwlist +server=/pearson-intl.com/127.0.0.1#5335 +ipset=/pearson-intl.com/gfwlist +server=/npm.community/127.0.0.1#5335 +ipset=/npm.community/gfwlist +server=/scopus.com/127.0.0.1#5335 +ipset=/scopus.com/gfwlist +server=/bmw-motorrad.jp/127.0.0.1#5335 +ipset=/bmw-motorrad.jp/gfwlist +server=/mortein.co.in/127.0.0.1#5335 +ipset=/mortein.co.in/gfwlist +server=/usertrust.com/127.0.0.1#5335 +ipset=/usertrust.com/gfwlist +server=/rakuten.com.tw/127.0.0.1#5335 +ipset=/rakuten.com.tw/gfwlist +server=/facebookemail.com/127.0.0.1#5335 +ipset=/facebookemail.com/gfwlist +server=/googleoptimize.com/127.0.0.1#5335 +ipset=/googleoptimize.com/gfwlist +server=/intel.pe/127.0.0.1#5335 +ipset=/intel.pe/gfwlist +server=/beatsbydreshops.net/127.0.0.1#5335 +ipset=/beatsbydreshops.net/gfwlist +server=/bmw-voli.me/127.0.0.1#5335 +ipset=/bmw-voli.me/gfwlist +server=/nikecraft.com/127.0.0.1#5335 +ipset=/nikecraft.com/gfwlist +server=/pearson.com.hk/127.0.0.1#5335 +ipset=/pearson.com.hk/gfwlist +server=/webex.de/127.0.0.1#5335 +ipset=/webex.de/gfwlist +server=/skypeassets.net/127.0.0.1#5335 +ipset=/skypeassets.net/gfwlist +server=/verisign.co.in/127.0.0.1#5335 +ipset=/verisign.co.in/gfwlist +server=/alphera.co.nz/127.0.0.1#5335 +ipset=/alphera.co.nz/gfwlist +server=/stateofthemap.org/127.0.0.1#5335 +ipset=/stateofthemap.org/gfwlist +server=/ffprofile.com/127.0.0.1#5335 +ipset=/ffprofile.com/gfwlist +server=/menshin-channel.com/127.0.0.1#5335 +ipset=/menshin-channel.com/gfwlist +server=/scholar.google.com.ni/127.0.0.1#5335 +ipset=/scholar.google.com.ni/gfwlist +server=/cbsiam.com/127.0.0.1#5335 +ipset=/cbsiam.com/gfwlist +server=/scholar.google.li/127.0.0.1#5335 +ipset=/scholar.google.li/gfwlist +server=/devcon.org/127.0.0.1#5335 +ipset=/devcon.org/gfwlist +server=/thomsonreuters.co.kr/127.0.0.1#5335 +ipset=/thomsonreuters.co.kr/gfwlist +server=/apple.fr/127.0.0.1#5335 +ipset=/apple.fr/gfwlist +server=/macbookpro.com/127.0.0.1#5335 +ipset=/macbookpro.com/gfwlist +server=/ebayopen.com/127.0.0.1#5335 +ipset=/ebayopen.com/gfwlist +server=/kubeacademy.com/127.0.0.1#5335 +ipset=/kubeacademy.com/gfwlist +server=/e-bay.it/127.0.0.1#5335 +ipset=/e-bay.it/gfwlist +server=/fontawesome.com/127.0.0.1#5335 +ipset=/fontawesome.com/gfwlist +server=/soundofhope.kr/127.0.0.1#5335 +ipset=/soundofhope.kr/gfwlist +server=/mysocialworklab.com/127.0.0.1#5335 +ipset=/mysocialworklab.com/gfwlist +server=/volvotrucks.al/127.0.0.1#5335 +ipset=/volvotrucks.al/gfwlist +server=/rule34.xxx/127.0.0.1#5335 +ipset=/rule34.xxx/gfwlist +server=/youtube.co.ve/127.0.0.1#5335 +ipset=/youtube.co.ve/gfwlist +server=/calgon.ch/127.0.0.1#5335 +ipset=/calgon.ch/gfwlist +server=/facfebook.com/127.0.0.1#5335 +ipset=/facfebook.com/gfwlist +server=/v2fly.org/127.0.0.1#5335 +ipset=/v2fly.org/gfwlist +server=/edisebay.com/127.0.0.1#5335 +ipset=/edisebay.com/gfwlist +server=/ipad.co.kr/127.0.0.1#5335 +ipset=/ipad.co.kr/gfwlist +server=/udn.com/127.0.0.1#5335 +ipset=/udn.com/gfwlist +server=/bmw.sn/127.0.0.1#5335 +ipset=/bmw.sn/gfwlist +server=/yahoo.fr/127.0.0.1#5335 +ipset=/yahoo.fr/gfwlist +server=/bbcmedia.co.uk/127.0.0.1#5335 +ipset=/bbcmedia.co.uk/gfwlist +server=/minirichmond.ca/127.0.0.1#5335 +ipset=/minirichmond.ca/gfwlist +server=/paypal-communication.com/127.0.0.1#5335 +ipset=/paypal-communication.com/gfwlist +server=/rumah123.com/127.0.0.1#5335 +ipset=/rumah123.com/gfwlist +server=/fxnetworks.com/127.0.0.1#5335 +ipset=/fxnetworks.com/gfwlist +server=/icloude.com/127.0.0.1#5335 +ipset=/icloude.com/gfwlist +server=/beatsbydreoutletsale.com/127.0.0.1#5335 +ipset=/beatsbydreoutletsale.com/gfwlist +server=/virsto.net/127.0.0.1#5335 +ipset=/virsto.net/gfwlist +server=/strikinglycdn.com/127.0.0.1#5335 +ipset=/strikinglycdn.com/gfwlist +server=/sbitravelcard.com/127.0.0.1#5335 +ipset=/sbitravelcard.com/gfwlist +server=/mirrorsedge.com/127.0.0.1#5335 +ipset=/mirrorsedge.com/gfwlist +server=/beatsbydrecolors.com/127.0.0.1#5335 +ipset=/beatsbydrecolors.com/gfwlist +server=/disneybaby.com/127.0.0.1#5335 +ipset=/disneybaby.com/gfwlist +server=/nextwork.hk/127.0.0.1#5335 +ipset=/nextwork.hk/gfwlist +server=/applestore.de/127.0.0.1#5335 +ipset=/applestore.de/gfwlist +server=/directvbundles.com/127.0.0.1#5335 +ipset=/directvbundles.com/gfwlist +server=/xboxone.eu/127.0.0.1#5335 +ipset=/xboxone.eu/gfwlist +server=/pokemon-sunmoon.com/127.0.0.1#5335 +ipset=/pokemon-sunmoon.com/gfwlist +server=/serialssolutions.com/127.0.0.1#5335 +ipset=/serialssolutions.com/gfwlist +server=/salecheaphandbags.com/127.0.0.1#5335 +ipset=/salecheaphandbags.com/gfwlist +server=/aliveipc.com/127.0.0.1#5335 +ipset=/aliveipc.com/gfwlist +server=/vanish.si/127.0.0.1#5335 +ipset=/vanish.si/gfwlist +server=/geeksquadcentral.com/127.0.0.1#5335 +ipset=/geeksquadcentral.com/gfwlist +server=/myhpsupport.com/127.0.0.1#5335 +ipset=/myhpsupport.com/gfwlist +server=/vipoo.es/127.0.0.1#5335 +ipset=/vipoo.es/gfwlist +server=/buycheapbeatsbus.com/127.0.0.1#5335 +ipset=/buycheapbeatsbus.com/gfwlist +server=/beatsbydre-outlet.com/127.0.0.1#5335 +ipset=/beatsbydre-outlet.com/gfwlist +server=/bmw-golfsport.com/127.0.0.1#5335 +ipset=/bmw-golfsport.com/gfwlist +server=/hponlinehelp.com/127.0.0.1#5335 +ipset=/hponlinehelp.com/gfwlist +server=/giratina.com/127.0.0.1#5335 +ipset=/giratina.com/gfwlist +server=/honawalaan.com/127.0.0.1#5335 +ipset=/honawalaan.com/gfwlist +server=/behance.net/127.0.0.1#5335 +ipset=/behance.net/gfwlist +server=/brotli.org/127.0.0.1#5335 +ipset=/brotli.org/gfwlist +server=/newsamerica.com/127.0.0.1#5335 +ipset=/newsamerica.com/gfwlist +server=/durexusa.com/127.0.0.1#5335 +ipset=/durexusa.com/gfwlist +server=/customizedbeatsdre.com/127.0.0.1#5335 +ipset=/customizedbeatsdre.com/gfwlist +server=/nikecdn.com/127.0.0.1#5335 +ipset=/nikecdn.com/gfwlist +server=/sciencedirectassets.com/127.0.0.1#5335 +ipset=/sciencedirectassets.com/gfwlist +server=/medium.systems/127.0.0.1#5335 +ipset=/medium.systems/gfwlist +server=/gettyimages.de/127.0.0.1#5335 +ipset=/gettyimages.de/gfwlist +server=/hkej.com/127.0.0.1#5335 +ipset=/hkej.com/gfwlist +server=/awseducate.net/127.0.0.1#5335 +ipset=/awseducate.net/gfwlist +server=/kirbysuperstarultra.com/127.0.0.1#5335 +ipset=/kirbysuperstarultra.com/gfwlist +server=/ajplus.net/127.0.0.1#5335 +ipset=/ajplus.net/gfwlist +server=/muji.tw/127.0.0.1#5335 +ipset=/muji.tw/gfwlist +server=/mochajs.org/127.0.0.1#5335 +ipset=/mochajs.org/gfwlist +server=/youtube.bh/127.0.0.1#5335 +ipset=/youtube.bh/gfwlist +server=/globalsign.com.sg/127.0.0.1#5335 +ipset=/globalsign.com.sg/gfwlist +server=/flipnotestudio.com/127.0.0.1#5335 +ipset=/flipnotestudio.com/gfwlist +server=/amazon.in/127.0.0.1#5335 +ipset=/amazon.in/gfwlist +server=/omniture.com/127.0.0.1#5335 +ipset=/omniture.com/gfwlist +server=/microsoftnews.org/127.0.0.1#5335 +ipset=/microsoftnews.org/gfwlist +server=/bmwdealerdirect.com/127.0.0.1#5335 +ipset=/bmwdealerdirect.com/gfwlist +server=/mach-os.com/127.0.0.1#5335 +ipset=/mach-os.com/gfwlist +server=/mini.nl/127.0.0.1#5335 +ipset=/mini.nl/gfwlist +server=/mastercard.com.lb/127.0.0.1#5335 +ipset=/mastercard.com.lb/gfwlist +server=/bloombergindustry.com/127.0.0.1#5335 +ipset=/bloombergindustry.com/gfwlist +server=/beatsbydreforyououtlet.com/127.0.0.1#5335 +ipset=/beatsbydreforyououtlet.com/gfwlist +server=/canon.com.mt/127.0.0.1#5335 +ipset=/canon.com.mt/gfwlist +server=/follasian.com/127.0.0.1#5335 +ipset=/follasian.com/gfwlist +server=/shopminiusa.com/127.0.0.1#5335 +ipset=/shopminiusa.com/gfwlist +server=/economistgroupcareers.com/127.0.0.1#5335 +ipset=/economistgroupcareers.com/gfwlist +server=/gitstar.com/127.0.0.1#5335 +ipset=/gitstar.com/gfwlist +server=/drebeats-solo.com/127.0.0.1#5335 +ipset=/drebeats-solo.com/gfwlist +server=/visa.is/127.0.0.1#5335 +ipset=/visa.is/gfwlist +server=/youtubego.co.id/127.0.0.1#5335 +ipset=/youtubego.co.id/gfwlist +server=/guo.media/127.0.0.1#5335 +ipset=/guo.media/gfwlist +server=/cheapbeatsbydrefau.com/127.0.0.1#5335 +ipset=/cheapbeatsbydrefau.com/gfwlist +server=/youtube.cl/127.0.0.1#5335 +ipset=/youtube.cl/gfwlist +server=/talksport.com/127.0.0.1#5335 +ipset=/talksport.com/gfwlist +server=/epochtimes.se/127.0.0.1#5335 +ipset=/epochtimes.se/gfwlist +server=/alphabet.com.pt/127.0.0.1#5335 +ipset=/alphabet.com.pt/gfwlist +server=/ebayclassifiedsgroup.info/127.0.0.1#5335 +ipset=/ebayclassifiedsgroup.info/gfwlist +server=/visiontimes.com/127.0.0.1#5335 +ipset=/visiontimes.com/gfwlist +server=/applepay.tv/127.0.0.1#5335 +ipset=/applepay.tv/gfwlist +server=/apple.co.hu/127.0.0.1#5335 +ipset=/apple.co.hu/gfwlist +server=/riot.com/127.0.0.1#5335 +ipset=/riot.com/gfwlist +server=/bmw-rp.com/127.0.0.1#5335 +ipset=/bmw-rp.com/gfwlist +server=/beatsep.net/127.0.0.1#5335 +ipset=/beatsep.net/gfwlist +server=/beatsbydreol.com/127.0.0.1#5335 +ipset=/beatsbydreol.com/gfwlist +server=/g-technology.com/127.0.0.1#5335 +ipset=/g-technology.com/gfwlist +server=/duck.co/127.0.0.1#5335 +ipset=/duck.co/gfwlist +server=/bmw.ca/127.0.0.1#5335 +ipset=/bmw.ca/gfwlist +server=/tssp.best/127.0.0.1#5335 +ipset=/tssp.best/gfwlist +server=/beats-soaho.com/127.0.0.1#5335 +ipset=/beats-soaho.com/gfwlist +server=/bitvise.com/127.0.0.1#5335 +ipset=/bitvise.com/gfwlist +server=/ciscoknowledgenetwork.com/127.0.0.1#5335 +ipset=/ciscoknowledgenetwork.com/gfwlist +server=/pdncommunity.com/127.0.0.1#5335 +ipset=/pdncommunity.com/gfwlist +server=/yahoo.ph/127.0.0.1#5335 +ipset=/yahoo.ph/gfwlist +server=/needforspeedtimeattack.com/127.0.0.1#5335 +ipset=/needforspeedtimeattack.com/gfwlist +server=/worldemojiday.com/127.0.0.1#5335 +ipset=/worldemojiday.com/gfwlist +server=/beatsdrdre-headphones.com/127.0.0.1#5335 +ipset=/beatsdrdre-headphones.com/gfwlist +server=/nike.com.hk/127.0.0.1#5335 +ipset=/nike.com.hk/gfwlist +server=/spotifycdn.com/127.0.0.1#5335 +ipset=/spotifycdn.com/gfwlist +server=/adelaidenow.com.au/127.0.0.1#5335 +ipset=/adelaidenow.com.au/gfwlist +server=/scholar.google.com.eg/127.0.0.1#5335 +ipset=/scholar.google.com.eg/gfwlist +server=/visasavingsedge.ca/127.0.0.1#5335 +ipset=/visasavingsedge.ca/gfwlist +server=/echocdn.com/127.0.0.1#5335 +ipset=/echocdn.com/gfwlist +server=/starbucks.com.bn/127.0.0.1#5335 +ipset=/starbucks.com.bn/gfwlist +server=/icloud.is/127.0.0.1#5335 +ipset=/icloud.is/gfwlist +server=/nurofen.co.uk/127.0.0.1#5335 +ipset=/nurofen.co.uk/gfwlist +server=/disney.es/127.0.0.1#5335 +ipset=/disney.es/gfwlist +server=/blogspot.ug/127.0.0.1#5335 +ipset=/blogspot.ug/gfwlist +server=/r10s.com/127.0.0.1#5335 +ipset=/r10s.com/gfwlist +server=/icloud.fi/127.0.0.1#5335 +ipset=/icloud.fi/gfwlist +server=/yahoomusic.com/127.0.0.1#5335 +ipset=/yahoomusic.com/gfwlist +server=/facebookdusexe.org/127.0.0.1#5335 +ipset=/facebookdusexe.org/gfwlist +server=/sportswomanoftheyear.co.uk/127.0.0.1#5335 +ipset=/sportswomanoftheyear.co.uk/gfwlist +server=/googletagmanager.com/127.0.0.1#5335 +ipset=/googletagmanager.com/gfwlist +server=/visaicsdirect.com/127.0.0.1#5335 +ipset=/visaicsdirect.com/gfwlist +server=/teamneedforspeed.com/127.0.0.1#5335 +ipset=/teamneedforspeed.com/gfwlist +server=/scholar.google.co.in/127.0.0.1#5335 +ipset=/scholar.google.co.in/gfwlist +server=/beatsbydressale.com/127.0.0.1#5335 +ipset=/beatsbydressale.com/gfwlist +server=/volvotrucks.be/127.0.0.1#5335 +ipset=/volvotrucks.be/gfwlist +server=/adidas.ch/127.0.0.1#5335 +ipset=/adidas.ch/gfwlist +server=/ffmpeg.org/127.0.0.1#5335 +ipset=/ffmpeg.org/gfwlist +server=/move-free.net/127.0.0.1#5335 +ipset=/move-free.net/gfwlist +server=/applewallet.tv/127.0.0.1#5335 +ipset=/applewallet.tv/gfwlist +server=/mirrorsedge2.com/127.0.0.1#5335 +ipset=/mirrorsedge2.com/gfwlist +server=/01.org/127.0.0.1#5335 +ipset=/01.org/gfwlist +server=/sony.com.br/127.0.0.1#5335 +ipset=/sony.com.br/gfwlist +server=/alphabetfinance.net/127.0.0.1#5335 +ipset=/alphabetfinance.net/gfwlist +server=/springer.com/127.0.0.1#5335 +ipset=/springer.com/gfwlist +server=/volvobuses.my/127.0.0.1#5335 +ipset=/volvobuses.my/gfwlist +server=/emac.co.in/127.0.0.1#5335 +ipset=/emac.co.in/gfwlist +server=/altmetric.com/127.0.0.1#5335 +ipset=/altmetric.com/gfwlist +server=/azure.microsoft.com/127.0.0.1#5335 +ipset=/azure.microsoft.com/gfwlist +server=/drebeatssolocybermondaysale.com/127.0.0.1#5335 +ipset=/drebeatssolocybermondaysale.com/gfwlist +server=/insiderdevtour.com/127.0.0.1#5335 +ipset=/insiderdevtour.com/gfwlist +server=/mastercard.ch/127.0.0.1#5335 +ipset=/mastercard.ch/gfwlist +server=/bbg.gov/127.0.0.1#5335 +ipset=/bbg.gov/gfwlist +server=/visa.com.ms/127.0.0.1#5335 +ipset=/visa.com.ms/gfwlist +server=/mucinex.cn/127.0.0.1#5335 +ipset=/mucinex.cn/gfwlist +server=/java.com/127.0.0.1#5335 +ipset=/java.com/gfwlist +server=/apple.xyz/127.0.0.1#5335 +ipset=/apple.xyz/gfwlist +server=/paypalnet.net/127.0.0.1#5335 +ipset=/paypalnet.net/gfwlist +server=/javdoe.com/127.0.0.1#5335 +ipset=/javdoe.com/gfwlist +server=/applereach.com/127.0.0.1#5335 +ipset=/applereach.com/gfwlist +server=/chihair-straightener.com/127.0.0.1#5335 +ipset=/chihair-straightener.com/gfwlist +server=/foxnewsplayer-a.akamaihd.net/127.0.0.1#5335 +ipset=/foxnewsplayer-a.akamaihd.net/gfwlist +server=/bellsouth.net/127.0.0.1#5335 +ipset=/bellsouth.net/gfwlist +server=/cloudflarewarp.com/127.0.0.1#5335 +ipset=/cloudflarewarp.com/gfwlist +server=/indaznlab.com/127.0.0.1#5335 +ipset=/indaznlab.com/gfwlist +server=/projectapex.com/127.0.0.1#5335 +ipset=/projectapex.com/gfwlist +server=/volvotrucks.es/127.0.0.1#5335 +ipset=/volvotrucks.es/gfwlist +server=/ubisoft-orbit-savegames.s3.amazonaws.com/127.0.0.1#5335 +ipset=/ubisoft-orbit-savegames.s3.amazonaws.com/gfwlist +server=/vfsco.nl/127.0.0.1#5335 +ipset=/vfsco.nl/gfwlist +server=/herringnetwork.com/127.0.0.1#5335 +ipset=/herringnetwork.com/gfwlist +server=/monsterbeatscommunity.com/127.0.0.1#5335 +ipset=/monsterbeatscommunity.com/gfwlist +server=/cmpaas.com/127.0.0.1#5335 +ipset=/cmpaas.com/gfwlist +server=/zeit-world.com/127.0.0.1#5335 +ipset=/zeit-world.com/gfwlist +server=/beatsbydrecheaper.com/127.0.0.1#5335 +ipset=/beatsbydrecheaper.com/gfwlist +server=/bestbuycanada.ca/127.0.0.1#5335 +ipset=/bestbuycanada.ca/gfwlist +server=/nbc.co/127.0.0.1#5335 +ipset=/nbc.co/gfwlist +server=/yahoo.co.jp/127.0.0.1#5335 +ipset=/yahoo.co.jp/gfwlist +server=/nikeoutletstores.com/127.0.0.1#5335 +ipset=/nikeoutletstores.com/gfwlist +server=/amazon.red/127.0.0.1#5335 +ipset=/amazon.red/gfwlist +server=/mastercardacademy.com/127.0.0.1#5335 +ipset=/mastercardacademy.com/gfwlist +server=/happymeal.com.au/127.0.0.1#5335 +ipset=/happymeal.com.au/gfwlist +server=/volvomerchandise.com/127.0.0.1#5335 +ipset=/volvomerchandise.com/gfwlist +server=/intel.la/127.0.0.1#5335 +ipset=/intel.la/gfwlist +server=/wenzhao.ca/127.0.0.1#5335 +ipset=/wenzhao.ca/gfwlist +server=/bridgestonecomercial.com.ar/127.0.0.1#5335 +ipset=/bridgestonecomercial.com.ar/gfwlist +server=/myfoxhouston.com/127.0.0.1#5335 +ipset=/myfoxhouston.com/gfwlist +server=/quora.com/127.0.0.1#5335 +ipset=/quora.com/gfwlist +server=/iop.org/127.0.0.1#5335 +ipset=/iop.org/gfwlist +server=/ebayvalet.com/127.0.0.1#5335 +ipset=/ebayvalet.com/gfwlist +server=/blogspot.com/127.0.0.1#5335 +ipset=/blogspot.com/gfwlist +server=/oculus3d.com/127.0.0.1#5335 +ipset=/oculus3d.com/gfwlist +server=/aria.ms/127.0.0.1#5335 +ipset=/aria.ms/gfwlist +server=/applestore.bg/127.0.0.1#5335 +ipset=/applestore.bg/gfwlist +server=/instagify.com/127.0.0.1#5335 +ipset=/instagify.com/gfwlist +server=/awsthinkbox.com/127.0.0.1#5335 +ipset=/awsthinkbox.com/gfwlist +server=/asahishimbun.sc.omtrdc.net/127.0.0.1#5335 +ipset=/asahishimbun.sc.omtrdc.net/gfwlist +server=/beatsbydreformall2013-nl.com/127.0.0.1#5335 +ipset=/beatsbydreformall2013-nl.com/gfwlist +server=/facebooksz.com/127.0.0.1#5335 +ipset=/facebooksz.com/gfwlist +server=/paypallabs.com/127.0.0.1#5335 +ipset=/paypallabs.com/gfwlist +server=/eachpay.net/127.0.0.1#5335 +ipset=/eachpay.net/gfwlist +server=/cheapbeatsbydresale.com/127.0.0.1#5335 +ipset=/cheapbeatsbydresale.com/gfwlist +server=/bmwmotorshowblog.com/127.0.0.1#5335 +ipset=/bmwmotorshowblog.com/gfwlist +server=/paypal-login.org/127.0.0.1#5335 +ipset=/paypal-login.org/gfwlist +server=/flow.org/127.0.0.1#5335 +ipset=/flow.org/gfwlist +server=/espressif.com/127.0.0.1#5335 +ipset=/espressif.com/gfwlist +server=/lysol.cl/127.0.0.1#5335 +ipset=/lysol.cl/gfwlist +server=/adobe-video-partner-finder.com/127.0.0.1#5335 +ipset=/adobe-video-partner-finder.com/gfwlist +server=/dev-theguardian.com/127.0.0.1#5335 +ipset=/dev-theguardian.com/gfwlist +server=/dropbox-dns.com/127.0.0.1#5335 +ipset=/dropbox-dns.com/gfwlist +server=/immidio.com/127.0.0.1#5335 +ipset=/immidio.com/gfwlist +server=/thomsonreuters.com/127.0.0.1#5335 +ipset=/thomsonreuters.com/gfwlist +server=/85tube.com/127.0.0.1#5335 +ipset=/85tube.com/gfwlist +server=/fox.tv/127.0.0.1#5335 +ipset=/fox.tv/gfwlist +server=/tristatebmw.com/127.0.0.1#5335 +ipset=/tristatebmw.com/gfwlist +server=/bmw.bs/127.0.0.1#5335 +ipset=/bmw.bs/gfwlist +server=/apigee.com/127.0.0.1#5335 +ipset=/apigee.com/gfwlist +server=/marvelparty.net/127.0.0.1#5335 +ipset=/marvelparty.net/gfwlist +server=/cloupia.com/127.0.0.1#5335 +ipset=/cloupia.com/gfwlist +server=/huffingtonpost.com.mx/127.0.0.1#5335 +ipset=/huffingtonpost.com.mx/gfwlist +server=/bmw-connecteddrive.co.za/127.0.0.1#5335 +ipset=/bmw-connecteddrive.co.za/gfwlist +server=/bloomberg.co.kr/127.0.0.1#5335 +ipset=/bloomberg.co.kr/gfwlist +server=/cython.org/127.0.0.1#5335 +ipset=/cython.org/gfwlist +server=/bintray.com/127.0.0.1#5335 +ipset=/bintray.com/gfwlist +server=/meridian.net/127.0.0.1#5335 +ipset=/meridian.net/gfwlist +server=/c-span.org/127.0.0.1#5335 +ipset=/c-span.org/gfwlist +server=/mediafiles-cisco.com/127.0.0.1#5335 +ipset=/mediafiles-cisco.com/gfwlist +server=/sb-telecom.net/127.0.0.1#5335 +ipset=/sb-telecom.net/gfwlist +server=/amiibo.com/127.0.0.1#5335 +ipset=/amiibo.com/gfwlist +server=/clojure.org/127.0.0.1#5335 +ipset=/clojure.org/gfwlist +server=/riotgames.com/127.0.0.1#5335 +ipset=/riotgames.com/gfwlist +server=/python.org/127.0.0.1#5335 +ipset=/python.org/gfwlist +server=/blogspot.co.id/127.0.0.1#5335 +ipset=/blogspot.co.id/gfwlist +server=/12diasderegalosdeitunes.com.co/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.com.co/gfwlist +server=/xn--gtvz22d.wang/127.0.0.1#5335 +ipset=/xn--gtvz22d.wang/gfwlist +server=/reabble.com/127.0.0.1#5335 +ipset=/reabble.com/gfwlist +server=/intel-university-collaboration.net/127.0.0.1#5335 +ipset=/intel-university-collaboration.net/gfwlist +server=/matrix.org/127.0.0.1#5335 +ipset=/matrix.org/gfwlist +server=/vanishcentroamerica.com/127.0.0.1#5335 +ipset=/vanishcentroamerica.com/gfwlist +server=/ebayshoesstore.com/127.0.0.1#5335 +ipset=/ebayshoesstore.com/gfwlist +server=/epochhk.com/127.0.0.1#5335 +ipset=/epochhk.com/gfwlist +server=/gotraffic.net/127.0.0.1#5335 +ipset=/gotraffic.net/gfwlist +server=/ebayinc.org/127.0.0.1#5335 +ipset=/ebayinc.org/gfwlist +server=/storage.live.com/127.0.0.1#5335 +ipset=/storage.live.com/gfwlist +server=/drebeats-monsterusa.com/127.0.0.1#5335 +ipset=/drebeats-monsterusa.com/gfwlist +server=/epochtimes.com.ua/127.0.0.1#5335 +ipset=/epochtimes.com.ua/gfwlist +server=/beatsbydrebeatsby.com/127.0.0.1#5335 +ipset=/beatsbydrebeatsby.com/gfwlist +server=/billmelater.net/127.0.0.1#5335 +ipset=/billmelater.net/gfwlist +server=/abeatsbydrdre.com/127.0.0.1#5335 +ipset=/abeatsbydrdre.com/gfwlist +server=/cheapcustombeatsbydre.com/127.0.0.1#5335 +ipset=/cheapcustombeatsbydre.com/gfwlist +server=/casquebeatsdocteurdre.com/127.0.0.1#5335 +ipset=/casquebeatsdocteurdre.com/gfwlist +server=/12diasderegalosdeitunes.cl/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.cl/gfwlist +server=/drebeatsstudio2013.com/127.0.0.1#5335 +ipset=/drebeatsstudio2013.com/gfwlist +server=/account-paypal.info/127.0.0.1#5335 +ipset=/account-paypal.info/gfwlist +server=/google.de/127.0.0.1#5335 +ipset=/google.de/gfwlist +server=/artstation.com/127.0.0.1#5335 +ipset=/artstation.com/gfwlist +server=/hpconnected.net/127.0.0.1#5335 +ipset=/hpconnected.net/gfwlist +server=/nikeit.com/127.0.0.1#5335 +ipset=/nikeit.com/gfwlist +server=/binance.com/127.0.0.1#5335 +ipset=/binance.com/gfwlist +server=/mini.is/127.0.0.1#5335 +ipset=/mini.is/gfwlist +server=/p-events-delivery.akamaized.net/127.0.0.1#5335 +ipset=/p-events-delivery.akamaized.net/gfwlist +server=/youtube.az/127.0.0.1#5335 +ipset=/youtube.az/gfwlist +server=/hacklang.org/127.0.0.1#5335 +ipset=/hacklang.org/gfwlist +server=/webtoons.com/127.0.0.1#5335 +ipset=/webtoons.com/gfwlist +server=/microsoftnews.cc/127.0.0.1#5335 +ipset=/microsoftnews.cc/gfwlist +server=/next.com/127.0.0.1#5335 +ipset=/next.com/gfwlist +server=/smpte.org/127.0.0.1#5335 +ipset=/smpte.org/gfwlist +server=/quicktime.eu/127.0.0.1#5335 +ipset=/quicktime.eu/gfwlist +server=/consul.io/127.0.0.1#5335 +ipset=/consul.io/gfwlist +server=/volvobuses.com.au/127.0.0.1#5335 +ipset=/volvobuses.com.au/gfwlist +server=/beatsbydrestudio.com/127.0.0.1#5335 +ipset=/beatsbydrestudio.com/gfwlist +server=/paypal-survey.com/127.0.0.1#5335 +ipset=/paypal-survey.com/gfwlist +server=/aboutamazon.jp/127.0.0.1#5335 +ipset=/aboutamazon.jp/gfwlist +server=/valuegb.com/127.0.0.1#5335 +ipset=/valuegb.com/gfwlist +server=/disney.no/127.0.0.1#5335 +ipset=/disney.no/gfwlist +server=/hololens.com/127.0.0.1#5335 +ipset=/hololens.com/gfwlist +server=/mastercard.com.ar/127.0.0.1#5335 +ipset=/mastercard.com.ar/gfwlist +server=/borderlessprepaid.com/127.0.0.1#5335 +ipset=/borderlessprepaid.com/gfwlist +server=/miraheze.org/127.0.0.1#5335 +ipset=/miraheze.org/gfwlist +server=/drebeatsbuy.com/127.0.0.1#5335 +ipset=/drebeatsbuy.com/gfwlist +server=/headphones-outlet-online.com/127.0.0.1#5335 +ipset=/headphones-outlet-online.com/gfwlist +server=/microsoft.is/127.0.0.1#5335 +ipset=/microsoft.is/gfwlist +server=/starfox.com/127.0.0.1#5335 +ipset=/starfox.com/gfwlist +server=/enpirion.com/127.0.0.1#5335 +ipset=/enpirion.com/gfwlist +server=/miniso.co.id/127.0.0.1#5335 +ipset=/miniso.co.id/gfwlist +server=/adobeoobe.com/127.0.0.1#5335 +ipset=/adobeoobe.com/gfwlist +server=/minicanada.ca/127.0.0.1#5335 +ipset=/minicanada.ca/gfwlist +server=/gamedownloads-rockstargames-com.akamaized.net/127.0.0.1#5335 +ipset=/gamedownloads-rockstargames-com.akamaized.net/gfwlist +server=/adobeku.com/127.0.0.1#5335 +ipset=/adobeku.com/gfwlist +server=/bandwagonhost.com/127.0.0.1#5335 +ipset=/bandwagonhost.com/gfwlist +server=/syhacked.com/127.0.0.1#5335 +ipset=/syhacked.com/gfwlist +server=/fedoraforum.org/127.0.0.1#5335 +ipset=/fedoraforum.org/gfwlist +server=/alpherafs.ca/127.0.0.1#5335 +ipset=/alpherafs.ca/gfwlist +server=/facebookenespanol.com/127.0.0.1#5335 +ipset=/facebookenespanol.com/gfwlist +server=/av6k.com/127.0.0.1#5335 +ipset=/av6k.com/gfwlist +server=/foxdeportes.tv/127.0.0.1#5335 +ipset=/foxdeportes.tv/gfwlist +server=/bridgestonecomercial.com.mx/127.0.0.1#5335 +ipset=/bridgestonecomercial.com.mx/gfwlist +server=/dkr.com/127.0.0.1#5335 +ipset=/dkr.com/gfwlist +server=/paypal-excelinvoicing.com/127.0.0.1#5335 +ipset=/paypal-excelinvoicing.com/gfwlist +server=/googlecompare.co.uk/127.0.0.1#5335 +ipset=/googlecompare.co.uk/gfwlist +server=/nflxso.net/127.0.0.1#5335 +ipset=/nflxso.net/gfwlist +server=/marketingcloud.com/127.0.0.1#5335 +ipset=/marketingcloud.com/gfwlist +server=/weareebay.com/127.0.0.1#5335 +ipset=/weareebay.com/gfwlist +server=/bejewled-stars.com/127.0.0.1#5335 +ipset=/bejewled-stars.com/gfwlist +server=/volvotruckcenter.dk/127.0.0.1#5335 +ipset=/volvotruckcenter.dk/gfwlist +server=/visiontimes.de/127.0.0.1#5335 +ipset=/visiontimes.de/gfwlist +server=/intel.com.br/127.0.0.1#5335 +ipset=/intel.com.br/gfwlist +server=/bayvoice.net/127.0.0.1#5335 +ipset=/bayvoice.net/gfwlist +server=/freebasics.net/127.0.0.1#5335 +ipset=/freebasics.net/gfwlist +server=/needforspeedtherun.com/127.0.0.1#5335 +ipset=/needforspeedtherun.com/gfwlist +server=/aljazeera.com/127.0.0.1#5335 +ipset=/aljazeera.com/gfwlist +server=/google.com.hk/127.0.0.1#5335 +ipset=/google.com.hk/gfwlist +server=/meetfasttrack.com/127.0.0.1#5335 +ipset=/meetfasttrack.com/gfwlist +server=/vod-sub-uk-live.akamaized.net/127.0.0.1#5335 +ipset=/vod-sub-uk-live.akamaized.net/gfwlist +server=/googleapps.com/127.0.0.1#5335 +ipset=/googleapps.com/gfwlist +server=/firestone.com.br/127.0.0.1#5335 +ipset=/firestone.com.br/gfwlist +server=/tiktokv.com/127.0.0.1#5335 +ipset=/tiktokv.com/gfwlist +server=/mastercard.com.eg/127.0.0.1#5335 +ipset=/mastercard.com.eg/gfwlist +server=/hpbuiltforlearning.com/127.0.0.1#5335 +ipset=/hpbuiltforlearning.com/gfwlist +server=/harpercollinsspeakersbureau.com/127.0.0.1#5335 +ipset=/harpercollinsspeakersbureau.com/gfwlist +server=/nikesnowboarding.com/127.0.0.1#5335 +ipset=/nikesnowboarding.com/gfwlist +server=/sony.hr/127.0.0.1#5335 +ipset=/sony.hr/gfwlist +server=/dlercloud.com/127.0.0.1#5335 +ipset=/dlercloud.com/gfwlist +server=/issquareup.com/127.0.0.1#5335 +ipset=/issquareup.com/gfwlist +server=/youtube.co.th/127.0.0.1#5335 +ipset=/youtube.co.th/gfwlist +server=/smartcommunitiescoalition.com/127.0.0.1#5335 +ipset=/smartcommunitiescoalition.com/gfwlist +server=/jjdong7.com/127.0.0.1#5335 +ipset=/jjdong7.com/gfwlist +server=/cheapmonsterbeatsusa.us/127.0.0.1#5335 +ipset=/cheapmonsterbeatsusa.us/gfwlist +server=/epochtimes.ru/127.0.0.1#5335 +ipset=/epochtimes.ru/gfwlist +server=/directtvreviews.com/127.0.0.1#5335 +ipset=/directtvreviews.com/gfwlist +server=/nikebetterworld.com/127.0.0.1#5335 +ipset=/nikebetterworld.com/gfwlist +server=/beatsbydreoutletscheap.com/127.0.0.1#5335 +ipset=/beatsbydreoutletscheap.com/gfwlist +server=/volvotrucks.ge/127.0.0.1#5335 +ipset=/volvotrucks.ge/gfwlist +server=/mini-connected.dk/127.0.0.1#5335 +ipset=/mini-connected.dk/gfwlist +server=/google.dm/127.0.0.1#5335 +ipset=/google.dm/gfwlist +server=/vhx.tv/127.0.0.1#5335 +ipset=/vhx.tv/gfwlist +server=/adwords.com/127.0.0.1#5335 +ipset=/adwords.com/gfwlist +server=/bmw-motorrad.cl/127.0.0.1#5335 +ipset=/bmw-motorrad.cl/gfwlist +server=/kidspot.com.au/127.0.0.1#5335 +ipset=/kidspot.com.au/gfwlist +server=/terapeak.com.hk/127.0.0.1#5335 +ipset=/terapeak.com.hk/gfwlist +server=/theverge.com/127.0.0.1#5335 +ipset=/theverge.com/gfwlist +server=/youtube.com.py/127.0.0.1#5335 +ipset=/youtube.com.py/gfwlist +server=/cisconetspace.info/127.0.0.1#5335 +ipset=/cisconetspace.info/gfwlist +server=/paypal-database.us/127.0.0.1#5335 +ipset=/paypal-database.us/gfwlist +server=/crossmediapanel.com/127.0.0.1#5335 +ipset=/crossmediapanel.com/gfwlist +server=/bnbstatic.com/127.0.0.1#5335 +ipset=/bnbstatic.com/gfwlist +server=/salesforce.org/127.0.0.1#5335 +ipset=/salesforce.org/gfwlist +server=/google.com.mx/127.0.0.1#5335 +ipset=/google.com.mx/gfwlist +server=/googlecert.net/127.0.0.1#5335 +ipset=/googlecert.net/gfwlist +server=/foxsportsflorida.com/127.0.0.1#5335 +ipset=/foxsportsflorida.com/gfwlist +server=/nikerunningshoes.com/127.0.0.1#5335 +ipset=/nikerunningshoes.com/gfwlist +server=/ipadaustralia.com/127.0.0.1#5335 +ipset=/ipadaustralia.com/gfwlist +server=/foxsports.cl/127.0.0.1#5335 +ipset=/foxsports.cl/gfwlist +server=/bmw-motorrad.fr/127.0.0.1#5335 +ipset=/bmw-motorrad.fr/gfwlist +server=/duckduckgo.in/127.0.0.1#5335 +ipset=/duckduckgo.in/gfwlist +server=/collins.co.uk/127.0.0.1#5335 +ipset=/collins.co.uk/gfwlist +server=/disney.com.au/127.0.0.1#5335 +ipset=/disney.com.au/gfwlist +server=/acer.com/127.0.0.1#5335 +ipset=/acer.com/gfwlist +server=/thesundaytimes.co.uk/127.0.0.1#5335 +ipset=/thesundaytimes.co.uk/gfwlist +server=/realclear.com/127.0.0.1#5335 +ipset=/realclear.com/gfwlist +server=/google.co.uz/127.0.0.1#5335 +ipset=/google.co.uz/gfwlist +server=/durexukraine.com/127.0.0.1#5335 +ipset=/durexukraine.com/gfwlist +server=/finishinfo.com.au/127.0.0.1#5335 +ipset=/finishinfo.com.au/gfwlist +server=/bmw-connecteddrive.com.au/127.0.0.1#5335 +ipset=/bmw-connecteddrive.com.au/gfwlist +server=/stxmosquito.com/127.0.0.1#5335 +ipset=/stxmosquito.com/gfwlist +server=/bloombergtax1.com/127.0.0.1#5335 +ipset=/bloombergtax1.com/gfwlist +server=/sony.no/127.0.0.1#5335 +ipset=/sony.no/gfwlist +server=/radiyoyacuvoa.com/127.0.0.1#5335 +ipset=/radiyoyacuvoa.com/gfwlist +server=/www-paypal.us/127.0.0.1#5335 +ipset=/www-paypal.us/gfwlist +server=/openthread.io/127.0.0.1#5335 +ipset=/openthread.io/gfwlist +server=/apple.bs/127.0.0.1#5335 +ipset=/apple.bs/gfwlist +server=/foxweatherwatch.com/127.0.0.1#5335 +ipset=/foxweatherwatch.com/gfwlist +server=/go-lang.net/127.0.0.1#5335 +ipset=/go-lang.net/gfwlist +server=/ipadair.tw/127.0.0.1#5335 +ipset=/ipadair.tw/gfwlist +server=/walmart-content.com/127.0.0.1#5335 +ipset=/walmart-content.com/gfwlist +server=/nextwork.tw/127.0.0.1#5335 +ipset=/nextwork.tw/gfwlist +server=/office365.com/127.0.0.1#5335 +ipset=/office365.com/gfwlist +server=/pinterest.ph/127.0.0.1#5335 +ipset=/pinterest.ph/gfwlist +server=/paypal-communications.com/127.0.0.1#5335 +ipset=/paypal-communications.com/gfwlist +server=/manoramanews.com/127.0.0.1#5335 +ipset=/manoramanews.com/gfwlist +server=/bmwccrc.ca/127.0.0.1#5335 +ipset=/bmwccrc.ca/gfwlist +server=/foxsoccer.net/127.0.0.1#5335 +ipset=/foxsoccer.net/gfwlist +server=/yahoo.com.do/127.0.0.1#5335 +ipset=/yahoo.com.do/gfwlist +server=/bmw-connecteddrive.at/127.0.0.1#5335 +ipset=/bmw-connecteddrive.at/gfwlist +server=/bestbuyrewards.com/127.0.0.1#5335 +ipset=/bestbuyrewards.com/gfwlist +server=/facebooklivestaging.org/127.0.0.1#5335 +ipset=/facebooklivestaging.org/gfwlist +server=/magentomobile.com/127.0.0.1#5335 +ipset=/magentomobile.com/gfwlist +server=/softbank-ipo.com/127.0.0.1#5335 +ipset=/softbank-ipo.com/gfwlist +server=/facebock.com/127.0.0.1#5335 +ipset=/facebock.com/gfwlist +server=/facerbooik.com/127.0.0.1#5335 +ipset=/facerbooik.com/gfwlist +server=/alpherafinance.com.hk/127.0.0.1#5335 +ipset=/alpherafinance.com.hk/gfwlist +server=/mini-oman.com/127.0.0.1#5335 +ipset=/mini-oman.com/gfwlist +server=/ping.pe/127.0.0.1#5335 +ipset=/ping.pe/gfwlist +server=/nintendo.pt/127.0.0.1#5335 +ipset=/nintendo.pt/gfwlist +server=/dollarphotosclub.com/127.0.0.1#5335 +ipset=/dollarphotosclub.com/gfwlist +server=/beats-bydre-mall.com/127.0.0.1#5335 +ipset=/beats-bydre-mall.com/gfwlist +server=/verisign.asia/127.0.0.1#5335 +ipset=/verisign.asia/gfwlist +server=/hpdesktopcomputer.com/127.0.0.1#5335 +ipset=/hpdesktopcomputer.com/gfwlist +server=/monsterbeats365buy.com/127.0.0.1#5335 +ipset=/monsterbeats365buy.com/gfwlist +server=/beatsaudios.net/127.0.0.1#5335 +ipset=/beatsaudios.net/gfwlist +server=/secom.co.jp/127.0.0.1#5335 +ipset=/secom.co.jp/gfwlist +server=/skysports.ie/127.0.0.1#5335 +ipset=/skysports.ie/gfwlist +server=/scientificlinux.org/127.0.0.1#5335 +ipset=/scientificlinux.org/gfwlist +server=/beatsheadphoness.com/127.0.0.1#5335 +ipset=/beatsheadphoness.com/gfwlist +server=/pyrobot.org/127.0.0.1#5335 +ipset=/pyrobot.org/gfwlist +server=/researchandcare.org/127.0.0.1#5335 +ipset=/researchandcare.org/gfwlist +server=/lovebeatsdr.com/127.0.0.1#5335 +ipset=/lovebeatsdr.com/gfwlist +server=/bmw-motorcycles.vn/127.0.0.1#5335 +ipset=/bmw-motorcycles.vn/gfwlist +server=/minisaskatoon.ca/127.0.0.1#5335 +ipset=/minisaskatoon.ca/gfwlist +server=/scholar.google.cl/127.0.0.1#5335 +ipset=/scholar.google.cl/gfwlist +server=/phxbmw.com/127.0.0.1#5335 +ipset=/phxbmw.com/gfwlist +server=/wiivc.net/127.0.0.1#5335 +ipset=/wiivc.net/gfwlist +server=/hpeurope.com/127.0.0.1#5335 +ipset=/hpeurope.com/gfwlist +server=/bridgestone-korea.co.kr/127.0.0.1#5335 +ipset=/bridgestone-korea.co.kr/gfwlist +server=/blznav.akamaized.net/127.0.0.1#5335 +ipset=/blznav.akamaized.net/gfwlist +server=/canon.hr/127.0.0.1#5335 +ipset=/canon.hr/gfwlist +server=/catalina.hk/127.0.0.1#5335 +ipset=/catalina.hk/gfwlist +server=/apple.it/127.0.0.1#5335 +ipset=/apple.it/gfwlist +server=/volvobuses.ma/127.0.0.1#5335 +ipset=/volvobuses.ma/gfwlist +server=/nintendo.com.hk/127.0.0.1#5335 +ipset=/nintendo.com.hk/gfwlist +server=/shopifysvc.com/127.0.0.1#5335 +ipset=/shopifysvc.com/gfwlist +server=/sexzy4.com/127.0.0.1#5335 +ipset=/sexzy4.com/gfwlist +server=/blackboxgames.com/127.0.0.1#5335 +ipset=/blackboxgames.com/gfwlist +server=/1pondo.tv/127.0.0.1#5335 +ipset=/1pondo.tv/gfwlist +server=/xn--mts47c3w9b1qr.net/127.0.0.1#5335 +ipset=/xn--mts47c3w9b1qr.net/gfwlist +server=/scholar.google.pl/127.0.0.1#5335 +ipset=/scholar.google.pl/gfwlist +server=/pixnet.tw/127.0.0.1#5335 +ipset=/pixnet.tw/gfwlist +server=/beatsbydrdrebiz.com/127.0.0.1#5335 +ipset=/beatsbydrdrebiz.com/gfwlist +server=/applecoronavirus.com/127.0.0.1#5335 +ipset=/applecoronavirus.com/gfwlist +server=/goodsdunk.net/127.0.0.1#5335 +ipset=/goodsdunk.net/gfwlist +server=/sweetandmaxwell.co.uk/127.0.0.1#5335 +ipset=/sweetandmaxwell.co.uk/gfwlist +server=/salesforce.com/127.0.0.1#5335 +ipset=/salesforce.com/gfwlist +server=/businesswebwise.com/127.0.0.1#5335 +ipset=/businesswebwise.com/gfwlist +server=/vaultproject.io/127.0.0.1#5335 +ipset=/vaultproject.io/gfwlist +server=/drdreprobeatssale.com/127.0.0.1#5335 +ipset=/drdreprobeatssale.com/gfwlist +server=/microsoftnewsforkids.net/127.0.0.1#5335 +ipset=/microsoftnewsforkids.net/gfwlist +server=/visa.co.id/127.0.0.1#5335 +ipset=/visa.co.id/gfwlist +server=/getlantern.org/127.0.0.1#5335 +ipset=/getlantern.org/gfwlist +server=/travelex.bh/127.0.0.1#5335 +ipset=/travelex.bh/gfwlist +server=/ieeer8.org/127.0.0.1#5335 +ipset=/ieeer8.org/gfwlist +server=/akacrypto.net/127.0.0.1#5335 +ipset=/akacrypto.net/gfwlist +server=/static9.net.au/127.0.0.1#5335 +ipset=/static9.net.au/gfwlist +server=/cheapmonstersbeatsonsale.com/127.0.0.1#5335 +ipset=/cheapmonstersbeatsonsale.com/gfwlist +server=/vmware20mosaic.com/127.0.0.1#5335 +ipset=/vmware20mosaic.com/gfwlist +server=/bmw.lc/127.0.0.1#5335 +ipset=/bmw.lc/gfwlist +server=/volvotrucks.ma/127.0.0.1#5335 +ipset=/volvotrucks.ma/gfwlist +server=/bmw-motorrad-now-or-never.com/127.0.0.1#5335 +ipset=/bmw-motorrad-now-or-never.com/gfwlist +server=/vfsco.ru/127.0.0.1#5335 +ipset=/vfsco.ru/gfwlist +server=/kubernetes.io/127.0.0.1#5335 +ipset=/kubernetes.io/gfwlist +server=/bridgestonecomercial.com.co/127.0.0.1#5335 +ipset=/bridgestonecomercial.com.co/gfwlist +server=/nikeplus.com/127.0.0.1#5335 +ipset=/nikeplus.com/gfwlist +server=/intel.je/127.0.0.1#5335 +ipset=/intel.je/gfwlist +server=/devopsassessment.net/127.0.0.1#5335 +ipset=/devopsassessment.net/gfwlist +server=/facebook.ca/127.0.0.1#5335 +ipset=/facebook.ca/gfwlist +server=/yahoo.hu/127.0.0.1#5335 +ipset=/yahoo.hu/gfwlist +server=/epicgames.com/127.0.0.1#5335 +ipset=/epicgames.com/gfwlist +server=/beatsbydrdremall.com/127.0.0.1#5335 +ipset=/beatsbydrdremall.com/gfwlist +server=/bmw-tahiti.com/127.0.0.1#5335 +ipset=/bmw-tahiti.com/gfwlist +server=/drdreheadphonekey.com/127.0.0.1#5335 +ipset=/drdreheadphonekey.com/gfwlist +server=/pics.ee/127.0.0.1#5335 +ipset=/pics.ee/gfwlist +server=/ueberamazon.de/127.0.0.1#5335 +ipset=/ueberamazon.de/gfwlist +server=/yahoo.pt/127.0.0.1#5335 +ipset=/yahoo.pt/gfwlist +server=/yahoo.com.kw/127.0.0.1#5335 +ipset=/yahoo.com.kw/gfwlist +server=/ebay.sg/127.0.0.1#5335 +ipset=/ebay.sg/gfwlist +server=/connected-drive.com/127.0.0.1#5335 +ipset=/connected-drive.com/gfwlist +server=/fcaebook.com/127.0.0.1#5335 +ipset=/fcaebook.com/gfwlist +server=/udemycdn.com/127.0.0.1#5335 +ipset=/udemycdn.com/gfwlist +server=/one.one.one/127.0.0.1#5335 +ipset=/one.one.one/gfwlist +server=/cookiechoices.org/127.0.0.1#5335 +ipset=/cookiechoices.org/gfwlist +server=/bloomberggovernment.com/127.0.0.1#5335 +ipset=/bloomberggovernment.com/gfwlist +server=/logitechg.fr/127.0.0.1#5335 +ipset=/logitechg.fr/gfwlist +server=/g.dev/127.0.0.1#5335 +ipset=/g.dev/gfwlist +server=/quatrum.com.br/127.0.0.1#5335 +ipset=/quatrum.com.br/gfwlist +server=/nikefr.com/127.0.0.1#5335 +ipset=/nikefr.com/gfwlist +server=/pagecdn.com/127.0.0.1#5335 +ipset=/pagecdn.com/gfwlist +server=/deviantart.net/127.0.0.1#5335 +ipset=/deviantart.net/gfwlist +server=/tiltbrush.com/127.0.0.1#5335 +ipset=/tiltbrush.com/gfwlist +server=/imac.com/127.0.0.1#5335 +ipset=/imac.com/gfwlist +server=/videos-rockstargames-com.akamaized.net/127.0.0.1#5335 +ipset=/videos-rockstargames-com.akamaized.net/gfwlist +server=/beatsbydresold.com/127.0.0.1#5335 +ipset=/beatsbydresold.com/gfwlist +server=/powerbeats2wireless.com/127.0.0.1#5335 +ipset=/powerbeats2wireless.com/gfwlist +server=/kktv.me/127.0.0.1#5335 +ipset=/kktv.me/gfwlist +server=/coinonecore.com/127.0.0.1#5335 +ipset=/coinonecore.com/gfwlist +server=/minimarkham.com/127.0.0.1#5335 +ipset=/minimarkham.com/gfwlist +server=/gittigidiyorsikayet.com/127.0.0.1#5335 +ipset=/gittigidiyorsikayet.com/gfwlist +server=/wwwwebay.com/127.0.0.1#5335 +ipset=/wwwwebay.com/gfwlist +server=/disneytickets.co.uk/127.0.0.1#5335 +ipset=/disneytickets.co.uk/gfwlist +server=/hulufree.com/127.0.0.1#5335 +ipset=/hulufree.com/gfwlist +server=/minispace.com/127.0.0.1#5335 +ipset=/minispace.com/gfwlist +server=/connectcommerce.hk/127.0.0.1#5335 +ipset=/connectcommerce.hk/gfwlist +server=/dirctv.com/127.0.0.1#5335 +ipset=/dirctv.com/gfwlist +server=/zohocdn.com/127.0.0.1#5335 +ipset=/zohocdn.com/gfwlist +server=/netflix.net/127.0.0.1#5335 +ipset=/netflix.net/gfwlist +server=/dreprobeats.com/127.0.0.1#5335 +ipset=/dreprobeats.com/gfwlist +server=/imgur.com/127.0.0.1#5335 +ipset=/imgur.com/gfwlist +server=/bloombergmedia.com/127.0.0.1#5335 +ipset=/bloombergmedia.com/gfwlist +server=/ipod.com.sg/127.0.0.1#5335 +ipset=/ipod.com.sg/gfwlist +server=/teraperk.com/127.0.0.1#5335 +ipset=/teraperk.com/gfwlist +server=/vfsco.lt/127.0.0.1#5335 +ipset=/vfsco.lt/gfwlist +server=/aljazeera.net/127.0.0.1#5335 +ipset=/aljazeera.net/gfwlist +server=/paypal-cash.com/127.0.0.1#5335 +ipset=/paypal-cash.com/gfwlist +server=/airwick.at/127.0.0.1#5335 +ipset=/airwick.at/gfwlist +server=/yahoo.sn/127.0.0.1#5335 +ipset=/yahoo.sn/gfwlist +server=/enfabebe.com.mx/127.0.0.1#5335 +ipset=/enfabebe.com.mx/gfwlist +server=/firewire.eu/127.0.0.1#5335 +ipset=/firewire.eu/gfwlist +server=/worldcurrencycard.co.za/127.0.0.1#5335 +ipset=/worldcurrencycard.co.za/gfwlist +server=/mobileme.dk/127.0.0.1#5335 +ipset=/mobileme.dk/gfwlist +server=/myvisaluxuryhotels.com/127.0.0.1#5335 +ipset=/myvisaluxuryhotels.com/gfwlist +server=/mdlf.xyz/127.0.0.1#5335 +ipset=/mdlf.xyz/gfwlist +server=/eablackbox.com/127.0.0.1#5335 +ipset=/eablackbox.com/gfwlist +server=/bmw.bb/127.0.0.1#5335 +ipset=/bmw.bb/gfwlist +server=/appule.com/127.0.0.1#5335 +ipset=/appule.com/gfwlist +server=/newscareers.co.uk/127.0.0.1#5335 +ipset=/newscareers.co.uk/gfwlist +server=/bmwgroup-plants.com/127.0.0.1#5335 +ipset=/bmwgroup-plants.com/gfwlist +server=/google.nr/127.0.0.1#5335 +ipset=/google.nr/gfwlist +server=/ntdtv.org/127.0.0.1#5335 +ipset=/ntdtv.org/gfwlist +server=/applepay.hamburg/127.0.0.1#5335 +ipset=/applepay.hamburg/gfwlist +server=/wwwmfacebook.com/127.0.0.1#5335 +ipset=/wwwmfacebook.com/gfwlist +server=/pp-soc.com/127.0.0.1#5335 +ipset=/pp-soc.com/gfwlist +server=/edu-research.org/127.0.0.1#5335 +ipset=/edu-research.org/gfwlist +server=/bridgestone-bandag.com/127.0.0.1#5335 +ipset=/bridgestone-bandag.com/gfwlist +server=/watchjavonline.com/127.0.0.1#5335 +ipset=/watchjavonline.com/gfwlist +server=/visa.com.lc/127.0.0.1#5335 +ipset=/visa.com.lc/gfwlist +server=/starbuckscardb2b.com/127.0.0.1#5335 +ipset=/starbuckscardb2b.com/gfwlist +server=/love7.xyz/127.0.0.1#5335 +ipset=/love7.xyz/gfwlist +server=/awsbraket.com/127.0.0.1#5335 +ipset=/awsbraket.com/gfwlist +server=/dart.dev/127.0.0.1#5335 +ipset=/dart.dev/gfwlist +server=/google.com.ar/127.0.0.1#5335 +ipset=/google.com.ar/gfwlist +server=/shopee.co.th/127.0.0.1#5335 +ipset=/shopee.co.th/gfwlist +server=/facebookck.com/127.0.0.1#5335 +ipset=/facebookck.com/gfwlist +server=/porntea.com/127.0.0.1#5335 +ipset=/porntea.com/gfwlist +server=/travelex.co.jp/127.0.0.1#5335 +ipset=/travelex.co.jp/gfwlist +server=/yahoo.md/127.0.0.1#5335 +ipset=/yahoo.md/gfwlist +server=/disney-plus.net/127.0.0.1#5335 +ipset=/disney-plus.net/gfwlist +server=/cambridge.org/127.0.0.1#5335 +ipset=/cambridge.org/gfwlist +server=/mono-project.com/127.0.0.1#5335 +ipset=/mono-project.com/gfwlist +server=/facebooa.com/127.0.0.1#5335 +ipset=/facebooa.com/gfwlist +server=/ichat.co.in/127.0.0.1#5335 +ipset=/ichat.co.in/gfwlist +server=/kannewyork.com/127.0.0.1#5335 +ipset=/kannewyork.com/gfwlist +server=/rokutime.com/127.0.0.1#5335 +ipset=/rokutime.com/gfwlist +server=/alphabet.mx/127.0.0.1#5335 +ipset=/alphabet.mx/gfwlist +server=/cdkworkshop.com/127.0.0.1#5335 +ipset=/cdkworkshop.com/gfwlist +server=/rtings.com/127.0.0.1#5335 +ipset=/rtings.com/gfwlist +server=/compass.is/127.0.0.1#5335 +ipset=/compass.is/gfwlist +server=/xn--tkry91n.com/127.0.0.1#5335 +ipset=/xn--tkry91n.com/gfwlist +server=/mini.com.cy/127.0.0.1#5335 +ipset=/mini.com.cy/gfwlist +server=/eporner.com/127.0.0.1#5335 +ipset=/eporner.com/gfwlist +server=/volvobuses.om/127.0.0.1#5335 +ipset=/volvobuses.om/gfwlist +server=/faceid99.net/127.0.0.1#5335 +ipset=/faceid99.net/gfwlist +server=/alphera.com.es/127.0.0.1#5335 +ipset=/alphera.com.es/gfwlist +server=/pearsonelt.com/127.0.0.1#5335 +ipset=/pearsonelt.com/gfwlist +server=/visa.ie/127.0.0.1#5335 +ipset=/visa.ie/gfwlist +server=/hpcontinuum.com/127.0.0.1#5335 +ipset=/hpcontinuum.com/gfwlist +server=/beatsbydrdresale.net/127.0.0.1#5335 +ipset=/beatsbydrdresale.net/gfwlist +server=/mini.co.id/127.0.0.1#5335 +ipset=/mini.co.id/gfwlist +server=/yahoo.com.bd/127.0.0.1#5335 +ipset=/yahoo.com.bd/gfwlist +server=/ebayinkblog.com/127.0.0.1#5335 +ipset=/ebayinkblog.com/gfwlist +server=/govforce.com/127.0.0.1#5335 +ipset=/govforce.com/gfwlist +server=/awssecworkshops.com/127.0.0.1#5335 +ipset=/awssecworkshops.com/gfwlist +server=/appleiservices.com/127.0.0.1#5335 +ipset=/appleiservices.com/gfwlist +server=/fireemblemawakening.com/127.0.0.1#5335 +ipset=/fireemblemawakening.com/gfwlist +server=/swiftfinancial.net/127.0.0.1#5335 +ipset=/swiftfinancial.net/gfwlist +server=/imdb.to/127.0.0.1#5335 +ipset=/imdb.to/gfwlist +server=/telega.one/127.0.0.1#5335 +ipset=/telega.one/gfwlist +server=/2013cheapestbeats.com/127.0.0.1#5335 +ipset=/2013cheapestbeats.com/gfwlist +server=/mcdelivery.co.id/127.0.0.1#5335 +ipset=/mcdelivery.co.id/gfwlist +server=/twitter.jp/127.0.0.1#5335 +ipset=/twitter.jp/gfwlist +server=/cbsaavideo.com/127.0.0.1#5335 +ipset=/cbsaavideo.com/gfwlist +server=/google.cat/127.0.0.1#5335 +ipset=/google.cat/gfwlist +server=/facebook.wang/127.0.0.1#5335 +ipset=/facebook.wang/gfwlist +server=/dazn-api.com/127.0.0.1#5335 +ipset=/dazn-api.com/gfwlist +server=/ebaysocial.ru/127.0.0.1#5335 +ipset=/ebaysocial.ru/gfwlist +server=/v2ray.com/127.0.0.1#5335 +ipset=/v2ray.com/gfwlist +server=/vanish.com.tr/127.0.0.1#5335 +ipset=/vanish.com.tr/gfwlist +server=/quicinc.com/127.0.0.1#5335 +ipset=/quicinc.com/gfwlist +server=/mastercard.lu/127.0.0.1#5335 +ipset=/mastercard.lu/gfwlist +server=/fbrpms.com/127.0.0.1#5335 +ipset=/fbrpms.com/gfwlist +server=/azure-dns.org/127.0.0.1#5335 +ipset=/azure-dns.org/gfwlist +server=/pinterest.be/127.0.0.1#5335 +ipset=/pinterest.be/gfwlist +server=/fontbook.com/127.0.0.1#5335 +ipset=/fontbook.com/gfwlist +server=/verisign.net/127.0.0.1#5335 +ipset=/verisign.net/gfwlist +server=/bmw-connecteddrive.mx/127.0.0.1#5335 +ipset=/bmw-connecteddrive.mx/gfwlist +server=/bmwarchiv.at/127.0.0.1#5335 +ipset=/bmwarchiv.at/gfwlist +server=/fox.com/127.0.0.1#5335 +ipset=/fox.com/gfwlist +server=/aavs.xyz/127.0.0.1#5335 +ipset=/aavs.xyz/gfwlist +server=/bestbuycanada.com/127.0.0.1#5335 +ipset=/bestbuycanada.com/gfwlist +server=/bmw-connecteddrive.dk/127.0.0.1#5335 +ipset=/bmw-connecteddrive.dk/gfwlist +server=/scholar.google.es/127.0.0.1#5335 +ipset=/scholar.google.es/gfwlist +server=/igoogle.com/127.0.0.1#5335 +ipset=/igoogle.com/gfwlist +server=/ntdtv.ca/127.0.0.1#5335 +ipset=/ntdtv.ca/gfwlist +server=/ggoogle.com/127.0.0.1#5335 +ipset=/ggoogle.com/gfwlist +server=/ebaymotors.org/127.0.0.1#5335 +ipset=/ebaymotors.org/gfwlist +server=/imperialbusiness.school/127.0.0.1#5335 +ipset=/imperialbusiness.school/gfwlist +server=/applecard.tv/127.0.0.1#5335 +ipset=/applecard.tv/gfwlist +server=/vox.com/127.0.0.1#5335 +ipset=/vox.com/gfwlist +server=/n3ro.wtf/127.0.0.1#5335 +ipset=/n3ro.wtf/gfwlist +server=/epicreads.com/127.0.0.1#5335 +ipset=/epicreads.com/gfwlist +server=/minivalueservice.com/127.0.0.1#5335 +ipset=/minivalueservice.com/gfwlist +server=/heroesofthestorm.com/127.0.0.1#5335 +ipset=/heroesofthestorm.com/gfwlist +server=/sectigo.com/127.0.0.1#5335 +ipset=/sectigo.com/gfwlist +server=/acer-group.com/127.0.0.1#5335 +ipset=/acer-group.com/gfwlist +server=/drebeatspill.com/127.0.0.1#5335 +ipset=/drebeatspill.com/gfwlist +server=/xeon.com/127.0.0.1#5335 +ipset=/xeon.com/gfwlist +server=/bmw.mn/127.0.0.1#5335 +ipset=/bmw.mn/gfwlist +server=/adobetechcommcallback.com/127.0.0.1#5335 +ipset=/adobetechcommcallback.com/gfwlist +server=/pinterest.com.py/127.0.0.1#5335 +ipset=/pinterest.com.py/gfwlist +server=/yandex.lt/127.0.0.1#5335 +ipset=/yandex.lt/gfwlist +server=/stxmosquitoproject.org/127.0.0.1#5335 +ipset=/stxmosquitoproject.org/gfwlist +server=/hppage5000.com/127.0.0.1#5335 +ipset=/hppage5000.com/gfwlist +server=/blinkload.zone/127.0.0.1#5335 +ipset=/blinkload.zone/gfwlist +server=/clickserver.googleads.com/127.0.0.1#5335 +ipset=/clickserver.googleads.com/gfwlist +server=/ipod.no/127.0.0.1#5335 +ipset=/ipod.no/gfwlist +server=/apple.de/127.0.0.1#5335 +ipset=/apple.de/gfwlist +server=/singtaobooks.com/127.0.0.1#5335 +ipset=/singtaobooks.com/gfwlist +server=/marketexecutive.net/127.0.0.1#5335 +ipset=/marketexecutive.net/gfwlist +server=/pinterest.com.uy/127.0.0.1#5335 +ipset=/pinterest.com.uy/gfwlist +server=/voaportugues.com/127.0.0.1#5335 +ipset=/voaportugues.com/gfwlist +server=/cursecdn.com/127.0.0.1#5335 +ipset=/cursecdn.com/gfwlist +server=/starwars.com/127.0.0.1#5335 +ipset=/starwars.com/gfwlist +server=/camwhores.tv/127.0.0.1#5335 +ipset=/camwhores.tv/gfwlist +server=/embs.org/127.0.0.1#5335 +ipset=/embs.org/gfwlist +server=/annstores.net/127.0.0.1#5335 +ipset=/annstores.net/gfwlist +server=/wolfatbestbuy.com/127.0.0.1#5335 +ipset=/wolfatbestbuy.com/gfwlist +server=/applepay.hk/127.0.0.1#5335 +ipset=/applepay.hk/gfwlist +server=/paypal-media.com/127.0.0.1#5335 +ipset=/paypal-media.com/gfwlist +server=/s-msn.com/127.0.0.1#5335 +ipset=/s-msn.com/gfwlist +server=/disney-studio.com/127.0.0.1#5335 +ipset=/disney-studio.com/gfwlist +server=/themessengeradelaide.com.au/127.0.0.1#5335 +ipset=/themessengeradelaide.com.au/gfwlist +server=/exploreintel.com/127.0.0.1#5335 +ipset=/exploreintel.com/gfwlist +server=/facebooi.com/127.0.0.1#5335 +ipset=/facebooi.com/gfwlist +server=/scholar.google.co.ve/127.0.0.1#5335 +ipset=/scholar.google.co.ve/gfwlist +server=/alphabet.com.es/127.0.0.1#5335 +ipset=/alphabet.com.es/gfwlist +server=/wheelpop.com/127.0.0.1#5335 +ipset=/wheelpop.com/gfwlist +server=/softbankci.com/127.0.0.1#5335 +ipset=/softbankci.com/gfwlist +server=/wikimediacloud.org/127.0.0.1#5335 +ipset=/wikimediacloud.org/gfwlist +server=/beatssbydredanmark.com/127.0.0.1#5335 +ipset=/beatssbydredanmark.com/gfwlist +server=/buzzardflapper.com/127.0.0.1#5335 +ipset=/buzzardflapper.com/gfwlist +server=/bugzilla.org/127.0.0.1#5335 +ipset=/bugzilla.org/gfwlist +server=/bgov.com/127.0.0.1#5335 +ipset=/bgov.com/gfwlist +server=/poshtestgallery.com/127.0.0.1#5335 +ipset=/poshtestgallery.com/gfwlist +server=/airport-gov-cn.com/127.0.0.1#5335 +ipset=/airport-gov-cn.com/gfwlist +server=/line-apps.com/127.0.0.1#5335 +ipset=/line-apps.com/gfwlist +server=/mspairlift.com/127.0.0.1#5335 +ipset=/mspairlift.com/gfwlist +server=/riotgames.tv/127.0.0.1#5335 +ipset=/riotgames.tv/gfwlist +server=/camelphat.com/127.0.0.1#5335 +ipset=/camelphat.com/gfwlist +server=/ankarazirvesi2018.com/127.0.0.1#5335 +ipset=/ankarazirvesi2018.com/gfwlist +server=/techatbloomberg.com/127.0.0.1#5335 +ipset=/techatbloomberg.com/gfwlist +server=/winhec.com/127.0.0.1#5335 +ipset=/winhec.com/gfwlist +server=/bmw-motorrad-authorities.com/127.0.0.1#5335 +ipset=/bmw-motorrad-authorities.com/gfwlist +server=/sony.kz/127.0.0.1#5335 +ipset=/sony.kz/gfwlist +server=/hdrplusdata.org/127.0.0.1#5335 +ipset=/hdrplusdata.org/gfwlist +server=/volvo.se/127.0.0.1#5335 +ipset=/volvo.se/gfwlist +server=/ebayhabit.com/127.0.0.1#5335 +ipset=/ebayhabit.com/gfwlist +server=/torcidadeouro.com/127.0.0.1#5335 +ipset=/torcidadeouro.com/gfwlist +server=/facebookhome.info/127.0.0.1#5335 +ipset=/facebookhome.info/gfwlist +server=/becomeindex.com/127.0.0.1#5335 +ipset=/becomeindex.com/gfwlist +server=/pinterest.engineering/127.0.0.1#5335 +ipset=/pinterest.engineering/gfwlist +server=/disney.dk/127.0.0.1#5335 +ipset=/disney.dk/gfwlist +server=/videobreakdown.com/127.0.0.1#5335 +ipset=/videobreakdown.com/gfwlist +server=/paypal-prepagata.net/127.0.0.1#5335 +ipset=/paypal-prepagata.net/gfwlist +server=/apple.at/127.0.0.1#5335 +ipset=/apple.at/gfwlist +server=/wzmyg.com/127.0.0.1#5335 +ipset=/wzmyg.com/gfwlist +server=/experience-vmware.com/127.0.0.1#5335 +ipset=/experience-vmware.com/gfwlist +server=/monsterbeats-solo.net/127.0.0.1#5335 +ipset=/monsterbeats-solo.net/gfwlist +server=/facebookphotos.com/127.0.0.1#5335 +ipset=/facebookphotos.com/gfwlist +server=/eaaccess.com/127.0.0.1#5335 +ipset=/eaaccess.com/gfwlist +server=/comodoca2.com/127.0.0.1#5335 +ipset=/comodoca2.com/gfwlist +server=/mini-connected.ie/127.0.0.1#5335 +ipset=/mini-connected.ie/gfwlist +server=/visa.se/127.0.0.1#5335 +ipset=/visa.se/gfwlist +server=/hp-webplatform.com/127.0.0.1#5335 +ipset=/hp-webplatform.com/gfwlist +server=/visacheckout.net/127.0.0.1#5335 +ipset=/visacheckout.net/gfwlist +server=/airport.com/127.0.0.1#5335 +ipset=/airport.com/gfwlist +server=/beatfactoryoutlets.com/127.0.0.1#5335 +ipset=/beatfactoryoutlets.com/gfwlist +server=/realcleardefense.com/127.0.0.1#5335 +ipset=/realcleardefense.com/gfwlist +server=/maktoob.com/127.0.0.1#5335 +ipset=/maktoob.com/gfwlist +server=/openwrt.org/127.0.0.1#5335 +ipset=/openwrt.org/gfwlist +server=/nikegrid.com/127.0.0.1#5335 +ipset=/nikegrid.com/gfwlist +server=/tuta.io/127.0.0.1#5335 +ipset=/tuta.io/gfwlist +server=/paaypal.com/127.0.0.1#5335 +ipset=/paaypal.com/gfwlist +server=/ebaytopratedseller.net/127.0.0.1#5335 +ipset=/ebaytopratedseller.net/gfwlist +server=/naiadsystems.com/127.0.0.1#5335 +ipset=/naiadsystems.com/gfwlist +server=/hpusertraining.com/127.0.0.1#5335 +ipset=/hpusertraining.com/gfwlist +server=/analytictech.com/127.0.0.1#5335 +ipset=/analytictech.com/gfwlist +server=/foxsportsworld.com/127.0.0.1#5335 +ipset=/foxsportsworld.com/gfwlist +server=/avgle.com/127.0.0.1#5335 +ipset=/avgle.com/gfwlist +server=/ixquick.com/127.0.0.1#5335 +ipset=/ixquick.com/gfwlist +server=/volvobuses.ch/127.0.0.1#5335 +ipset=/volvobuses.ch/gfwlist +server=/ebayimg.com/127.0.0.1#5335 +ipset=/ebayimg.com/gfwlist +server=/registerhulu.com/127.0.0.1#5335 +ipset=/registerhulu.com/gfwlist +server=/ok.ru/127.0.0.1#5335 +ipset=/ok.ru/gfwlist +server=/durex.ru/127.0.0.1#5335 +ipset=/durex.ru/gfwlist +server=/volvotrucks.ch/127.0.0.1#5335 +ipset=/volvotrucks.ch/gfwlist +server=/bmw-motorrad.co.za/127.0.0.1#5335 +ipset=/bmw-motorrad.co.za/gfwlist +server=/lolpcs.com/127.0.0.1#5335 +ipset=/lolpcs.com/gfwlist +server=/visa.co.ao/127.0.0.1#5335 +ipset=/visa.co.ao/gfwlist +server=/dreamtoplay.com/127.0.0.1#5335 +ipset=/dreamtoplay.com/gfwlist +server=/paypal-notify.com/127.0.0.1#5335 +ipset=/paypal-notify.com/gfwlist +server=/buydrdrebeatbox.com/127.0.0.1#5335 +ipset=/buydrdrebeatbox.com/gfwlist +server=/tryfunctions.com/127.0.0.1#5335 +ipset=/tryfunctions.com/gfwlist +server=/disney.com.br/127.0.0.1#5335 +ipset=/disney.com.br/gfwlist +server=/pypl.info/127.0.0.1#5335 +ipset=/pypl.info/gfwlist +server=/family.co.jp/127.0.0.1#5335 +ipset=/family.co.jp/gfwlist +server=/finish.com.tr/127.0.0.1#5335 +ipset=/finish.com.tr/gfwlist +server=/nbcuni.com/127.0.0.1#5335 +ipset=/nbcuni.com/gfwlist +server=/account-paypal.org/127.0.0.1#5335 +ipset=/account-paypal.org/gfwlist +server=/altera.com/127.0.0.1#5335 +ipset=/altera.com/gfwlist +server=/ubisoft.com/127.0.0.1#5335 +ipset=/ubisoft.com/gfwlist +server=/voasomali.com/127.0.0.1#5335 +ipset=/voasomali.com/gfwlist +server=/audiobeatsbydre.com/127.0.0.1#5335 +ipset=/audiobeatsbydre.com/gfwlist +server=/beatsbydreonlie2013-nl.com/127.0.0.1#5335 +ipset=/beatsbydreonlie2013-nl.com/gfwlist +server=/xboxab.com/127.0.0.1#5335 +ipset=/xboxab.com/gfwlist +server=/intel.ar/127.0.0.1#5335 +ipset=/intel.ar/gfwlist +server=/fox23maine.com/127.0.0.1#5335 +ipset=/fox23maine.com/gfwlist +server=/youtube.mx/127.0.0.1#5335 +ipset=/youtube.mx/gfwlist +server=/bmw-connecteddrive.nl/127.0.0.1#5335 +ipset=/bmw-connecteddrive.nl/gfwlist +server=/google.com.cu/127.0.0.1#5335 +ipset=/google.com.cu/gfwlist +server=/xhamster.com/127.0.0.1#5335 +ipset=/xhamster.com/gfwlist +server=/nikehyperdunk.com/127.0.0.1#5335 +ipset=/nikehyperdunk.com/gfwlist +server=/ieeenano.org/127.0.0.1#5335 +ipset=/ieeenano.org/gfwlist +server=/ltn.com.tw/127.0.0.1#5335 +ipset=/ltn.com.tw/gfwlist +server=/calgonit.com/127.0.0.1#5335 +ipset=/calgonit.com/gfwlist +server=/shopee.com.my/127.0.0.1#5335 +ipset=/shopee.com.my/gfwlist +server=/sonypcl.jp/127.0.0.1#5335 +ipset=/sonypcl.jp/gfwlist +server=/paypalhere.tv/127.0.0.1#5335 +ipset=/paypalhere.tv/gfwlist +server=/blogspot.ro/127.0.0.1#5335 +ipset=/blogspot.ro/gfwlist +server=/vanish.it/127.0.0.1#5335 +ipset=/vanish.it/gfwlist +server=/bmwconnecteddrive.com/127.0.0.1#5335 +ipset=/bmwconnecteddrive.com/gfwlist +server=/scholar.google.hu/127.0.0.1#5335 +ipset=/scholar.google.hu/gfwlist +server=/canon.cz/127.0.0.1#5335 +ipset=/canon.cz/gfwlist +server=/dajiyuan.eu/127.0.0.1#5335 +ipset=/dajiyuan.eu/gfwlist +server=/vod-thumb-uk-live.akamaized.net/127.0.0.1#5335 +ipset=/vod-thumb-uk-live.akamaized.net/gfwlist +server=/yahoo.gr/127.0.0.1#5335 +ipset=/yahoo.gr/gfwlist +server=/lgecareers.com/127.0.0.1#5335 +ipset=/lgecareers.com/gfwlist +server=/voacantonese.com/127.0.0.1#5335 +ipset=/voacantonese.com/gfwlist +server=/ipadmini.cm/127.0.0.1#5335 +ipset=/ipadmini.cm/gfwlist +server=/pdf.new/127.0.0.1#5335 +ipset=/pdf.new/gfwlist +server=/cebay.com/127.0.0.1#5335 +ipset=/cebay.com/gfwlist +server=/cbsstatic.com/127.0.0.1#5335 +ipset=/cbsstatic.com/gfwlist +server=/appletips.net/127.0.0.1#5335 +ipset=/appletips.net/gfwlist +server=/pokemon-moon.com/127.0.0.1#5335 +ipset=/pokemon-moon.com/gfwlist +server=/facebookthreads.net/127.0.0.1#5335 +ipset=/facebookthreads.net/gfwlist +server=/disneymagicmoments.es/127.0.0.1#5335 +ipset=/disneymagicmoments.es/gfwlist +server=/airwick.ca/127.0.0.1#5335 +ipset=/airwick.ca/gfwlist +server=/durexcanada.com/127.0.0.1#5335 +ipset=/durexcanada.com/gfwlist +server=/fox5ny.com/127.0.0.1#5335 +ipset=/fox5ny.com/gfwlist +server=/wwwinstagram.com/127.0.0.1#5335 +ipset=/wwwinstagram.com/gfwlist +server=/bloombergchina.com/127.0.0.1#5335 +ipset=/bloombergchina.com/gfwlist +server=/docker.com/127.0.0.1#5335 +ipset=/docker.com/gfwlist +server=/cheapbeatsbydrdrepro.com/127.0.0.1#5335 +ipset=/cheapbeatsbydrdrepro.com/gfwlist +server=/eebay.com/127.0.0.1#5335 +ipset=/eebay.com/gfwlist +server=/pricelessmarketingengine.com/127.0.0.1#5335 +ipset=/pricelessmarketingengine.com/gfwlist +server=/bmw-motorrad.se/127.0.0.1#5335 +ipset=/bmw-motorrad.se/gfwlist +server=/tvbeventpower.com.hk/127.0.0.1#5335 +ipset=/tvbeventpower.com.hk/gfwlist +server=/ebayshop111.com/127.0.0.1#5335 +ipset=/ebayshop111.com/gfwlist +server=/soccerfanz.com.my/127.0.0.1#5335 +ipset=/soccerfanz.com.my/gfwlist +server=/wiley.com/127.0.0.1#5335 +ipset=/wiley.com/gfwlist +server=/beatsonblackfriday2013.com/127.0.0.1#5335 +ipset=/beatsonblackfriday2013.com/gfwlist +server=/mymmode.com/127.0.0.1#5335 +ipset=/mymmode.com/gfwlist +server=/visa.fr/127.0.0.1#5335 +ipset=/visa.fr/gfwlist +server=/line.naver.jp/127.0.0.1#5335 +ipset=/line.naver.jp/gfwlist +server=/starbucks.ch/127.0.0.1#5335 +ipset=/starbucks.ch/gfwlist +server=/rclon.com/127.0.0.1#5335 +ipset=/rclon.com/gfwlist +server=/mypearsonshop.com.mx/127.0.0.1#5335 +ipset=/mypearsonshop.com.mx/gfwlist +server=/sony.com.bo/127.0.0.1#5335 +ipset=/sony.com.bo/gfwlist +server=/mini.dz/127.0.0.1#5335 +ipset=/mini.dz/gfwlist +server=/928.plus/127.0.0.1#5335 +ipset=/928.plus/gfwlist +server=/speedracegear.com/127.0.0.1#5335 +ipset=/speedracegear.com/gfwlist +server=/prodrive-japan.com/127.0.0.1#5335 +ipset=/prodrive-japan.com/gfwlist +server=/bitquick.co/127.0.0.1#5335 +ipset=/bitquick.co/gfwlist +server=/yahoo.com.tw/127.0.0.1#5335 +ipset=/yahoo.com.tw/gfwlist +server=/itunesu.com/127.0.0.1#5335 +ipset=/itunesu.com/gfwlist +server=/macosforge.org/127.0.0.1#5335 +ipset=/macosforge.org/gfwlist +server=/buyonlineheadphones.com/127.0.0.1#5335 +ipset=/buyonlineheadphones.com/gfwlist +server=/truedepth3d.com/127.0.0.1#5335 +ipset=/truedepth3d.com/gfwlist +server=/wwwebay.com/127.0.0.1#5335 +ipset=/wwwebay.com/gfwlist +server=/mirrorsedge.net/127.0.0.1#5335 +ipset=/mirrorsedge.net/gfwlist +server=/buyaapl.net/127.0.0.1#5335 +ipset=/buyaapl.net/gfwlist +server=/zoomingin.tv/127.0.0.1#5335 +ipset=/zoomingin.tv/gfwlist +server=/adobedc.net/127.0.0.1#5335 +ipset=/adobedc.net/gfwlist +server=/minivilledequebec.com/127.0.0.1#5335 +ipset=/minivilledequebec.com/gfwlist +server=/sndcdn.com/127.0.0.1#5335 +ipset=/sndcdn.com/gfwlist +server=/daytontrucktires.com/127.0.0.1#5335 +ipset=/daytontrucktires.com/gfwlist +server=/yandex.uz/127.0.0.1#5335 +ipset=/yandex.uz/gfwlist +server=/cabletvdirectv.com/127.0.0.1#5335 +ipset=/cabletvdirectv.com/gfwlist +server=/ebaymag.com/127.0.0.1#5335 +ipset=/ebaymag.com/gfwlist +server=/icloudhome.com/127.0.0.1#5335 +ipset=/icloudhome.com/gfwlist +server=/rtm.tnt-ea.com/127.0.0.1#5335 +ipset=/rtm.tnt-ea.com/gfwlist +server=/getdrebeatssale.com/127.0.0.1#5335 +ipset=/getdrebeatssale.com/gfwlist +server=/apple.co.kr/127.0.0.1#5335 +ipset=/apple.co.kr/gfwlist +server=/dealerspeed.net/127.0.0.1#5335 +ipset=/dealerspeed.net/gfwlist +server=/freeviewplus.net.au/127.0.0.1#5335 +ipset=/freeviewplus.net.au/gfwlist +server=/herokucdn.com/127.0.0.1#5335 +ipset=/herokucdn.com/gfwlist +server=/hpspeaker.com/127.0.0.1#5335 +ipset=/hpspeaker.com/gfwlist +server=/bisq.network/127.0.0.1#5335 +ipset=/bisq.network/gfwlist +server=/globalsecurity.org/127.0.0.1#5335 +ipset=/globalsecurity.org/gfwlist +server=/0x0.st/127.0.0.1#5335 +ipset=/0x0.st/gfwlist +server=/durex.co.th/127.0.0.1#5335 +ipset=/durex.co.th/gfwlist +server=/daoc.net/127.0.0.1#5335 +ipset=/daoc.net/gfwlist +server=/theav.cc/127.0.0.1#5335 +ipset=/theav.cc/gfwlist +server=/dmmapis.com/127.0.0.1#5335 +ipset=/dmmapis.com/gfwlist +server=/disney-asia.com/127.0.0.1#5335 +ipset=/disney-asia.com/gfwlist +server=/apple.hn/127.0.0.1#5335 +ipset=/apple.hn/gfwlist +server=/binance.cloud/127.0.0.1#5335 +ipset=/binance.cloud/gfwlist +server=/hackerguardian.com/127.0.0.1#5335 +ipset=/hackerguardian.com/gfwlist +server=/ams02.space/127.0.0.1#5335 +ipset=/ams02.space/gfwlist +server=/sony.it/127.0.0.1#5335 +ipset=/sony.it/gfwlist +server=/bmwusfactory.com/127.0.0.1#5335 +ipset=/bmwusfactory.com/gfwlist +server=/disney.com.tw/127.0.0.1#5335 +ipset=/disney.com.tw/gfwlist +server=/youtube.bo/127.0.0.1#5335 +ipset=/youtube.bo/gfwlist +server=/herokussl.com/127.0.0.1#5335 +ipset=/herokussl.com/gfwlist +server=/harpercollins.com.au/127.0.0.1#5335 +ipset=/harpercollins.com.au/gfwlist +server=/beatsbydrediscount.com/127.0.0.1#5335 +ipset=/beatsbydrediscount.com/gfwlist +server=/instagramhashtags.net/127.0.0.1#5335 +ipset=/instagramhashtags.net/gfwlist +server=/ebayy.com/127.0.0.1#5335 +ipset=/ebayy.com/gfwlist +server=/rolls-roycemotorcars.com/127.0.0.1#5335 +ipset=/rolls-roycemotorcars.com/gfwlist +server=/google.co.jp/127.0.0.1#5335 +ipset=/google.co.jp/gfwlist +server=/7mm.tv/127.0.0.1#5335 +ipset=/7mm.tv/gfwlist +server=/archiveofourown.org/127.0.0.1#5335 +ipset=/archiveofourown.org/gfwlist +server=/bmw-antilles.fr/127.0.0.1#5335 +ipset=/bmw-antilles.fr/gfwlist +server=/unstyle.us/127.0.0.1#5335 +ipset=/unstyle.us/gfwlist +server=/yandexcloud.net/127.0.0.1#5335 +ipset=/yandexcloud.net/gfwlist +server=/ubi.com/127.0.0.1#5335 +ipset=/ubi.com/gfwlist +server=/4cdn.org/127.0.0.1#5335 +ipset=/4cdn.org/gfwlist +server=/ds-linear-abematv.akamaized.net/127.0.0.1#5335 +ipset=/ds-linear-abematv.akamaized.net/gfwlist +server=/akamai.co.kr/127.0.0.1#5335 +ipset=/akamai.co.kr/gfwlist +server=/trello.com/127.0.0.1#5335 +ipset=/trello.com/gfwlist +server=/nikeelite.com/127.0.0.1#5335 +ipset=/nikeelite.com/gfwlist +server=/nomulus.foo/127.0.0.1#5335 +ipset=/nomulus.foo/gfwlist +server=/telegram.dog/127.0.0.1#5335 +ipset=/telegram.dog/gfwlist +server=/beatsblackfridayretails.com/127.0.0.1#5335 +ipset=/beatsblackfridayretails.com/gfwlist +server=/whatsapp.com/127.0.0.1#5335 +ipset=/whatsapp.com/gfwlist +server=/bmw-connecteddrive.no/127.0.0.1#5335 +ipset=/bmw-connecteddrive.no/gfwlist +server=/na-att-idns.net/127.0.0.1#5335 +ipset=/na-att-idns.net/gfwlist +server=/geeksquad.ca/127.0.0.1#5335 +ipset=/geeksquad.ca/gfwlist +server=/ipod.ch/127.0.0.1#5335 +ipset=/ipod.ch/gfwlist +server=/bloombergquint.com/127.0.0.1#5335 +ipset=/bloombergquint.com/gfwlist +server=/volvo.ca/127.0.0.1#5335 +ipset=/volvo.ca/gfwlist +server=/hulunet.com/127.0.0.1#5335 +ipset=/hulunet.com/gfwlist +server=/hindawi.com/127.0.0.1#5335 +ipset=/hindawi.com/gfwlist +server=/onefifteen.net/127.0.0.1#5335 +ipset=/onefifteen.net/gfwlist +server=/toplayerserver.com/127.0.0.1#5335 +ipset=/toplayerserver.com/gfwlist +server=/dmm.co.jp/127.0.0.1#5335 +ipset=/dmm.co.jp/gfwlist +server=/wanokokorosoh.com/127.0.0.1#5335 +ipset=/wanokokorosoh.com/gfwlist +server=/shopibay.net/127.0.0.1#5335 +ipset=/shopibay.net/gfwlist +server=/mbeats-tech.com/127.0.0.1#5335 +ipset=/mbeats-tech.com/gfwlist +server=/cnnarabic.com/127.0.0.1#5335 +ipset=/cnnarabic.com/gfwlist +server=/myappleid.com/127.0.0.1#5335 +ipset=/myappleid.com/gfwlist +server=/salesforceiq.com/127.0.0.1#5335 +ipset=/salesforceiq.com/gfwlist +server=/fxnetwork.com/127.0.0.1#5335 +ipset=/fxnetwork.com/gfwlist +server=/bmw.co.ao/127.0.0.1#5335 +ipset=/bmw.co.ao/gfwlist +server=/betterexplained.com/127.0.0.1#5335 +ipset=/betterexplained.com/gfwlist +server=/google.ga/127.0.0.1#5335 +ipset=/google.ga/gfwlist +server=/google.no/127.0.0.1#5335 +ipset=/google.no/gfwlist +server=/worldofwarcraft.com/127.0.0.1#5335 +ipset=/worldofwarcraft.com/gfwlist +server=/youtube.is/127.0.0.1#5335 +ipset=/youtube.is/gfwlist +server=/sony.dk/127.0.0.1#5335 +ipset=/sony.dk/gfwlist +server=/appletv.fr/127.0.0.1#5335 +ipset=/appletv.fr/gfwlist +server=/storyful.com/127.0.0.1#5335 +ipset=/storyful.com/gfwlist +server=/bmw.es/127.0.0.1#5335 +ipset=/bmw.es/gfwlist +server=/sub147.com/127.0.0.1#5335 +ipset=/sub147.com/gfwlist +server=/facebboc.com/127.0.0.1#5335 +ipset=/facebboc.com/gfwlist +server=/myfoxtampa.com/127.0.0.1#5335 +ipset=/myfoxtampa.com/gfwlist +server=/miniso.ca/127.0.0.1#5335 +ipset=/miniso.ca/gfwlist +server=/itunesfestivals.com/127.0.0.1#5335 +ipset=/itunesfestivals.com/gfwlist +server=/disquscdn.com/127.0.0.1#5335 +ipset=/disquscdn.com/gfwlist +server=/pastebin.com/127.0.0.1#5335 +ipset=/pastebin.com/gfwlist +server=/enfagrow4.com/127.0.0.1#5335 +ipset=/enfagrow4.com/gfwlist +server=/applenews.tv/127.0.0.1#5335 +ipset=/applenews.tv/gfwlist +server=/beatspascher-bydre.com/127.0.0.1#5335 +ipset=/beatspascher-bydre.com/gfwlist +server=/nintendo.no/127.0.0.1#5335 +ipset=/nintendo.no/gfwlist +server=/bmwauslieferungszentrum.com/127.0.0.1#5335 +ipset=/bmwauslieferungszentrum.com/gfwlist +server=/nbcnews.com/127.0.0.1#5335 +ipset=/nbcnews.com/gfwlist +server=/volvogroup.com.br/127.0.0.1#5335 +ipset=/volvogroup.com.br/gfwlist +server=/harpercollins.ca/127.0.0.1#5335 +ipset=/harpercollins.ca/gfwlist +server=/www-cdn.icloud.com.akadns.net/127.0.0.1#5335 +ipset=/www-cdn.icloud.com.akadns.net/gfwlist +server=/bbc.net.uk/127.0.0.1#5335 +ipset=/bbc.net.uk/gfwlist +server=/volvotrucks.co.za/127.0.0.1#5335 +ipset=/volvotrucks.co.za/gfwlist +server=/appleaustralia.net.au/127.0.0.1#5335 +ipset=/appleaustralia.net.au/gfwlist +server=/my-magazine.me/127.0.0.1#5335 +ipset=/my-magazine.me/gfwlist +server=/cnshopin.com/127.0.0.1#5335 +ipset=/cnshopin.com/gfwlist +server=/matters.news/127.0.0.1#5335 +ipset=/matters.news/gfwlist +server=/keytransparency.foo/127.0.0.1#5335 +ipset=/keytransparency.foo/gfwlist +server=/google.ru/127.0.0.1#5335 +ipset=/google.ru/gfwlist +server=/paypal-corp.com/127.0.0.1#5335 +ipset=/paypal-corp.com/gfwlist +server=/intelamericasstore.com/127.0.0.1#5335 +ipset=/intelamericasstore.com/gfwlist +server=/foxcredit.org/127.0.0.1#5335 +ipset=/foxcredit.org/gfwlist +server=/applestore.com.hk/127.0.0.1#5335 +ipset=/applestore.com.hk/gfwlist +server=/google.com.gt/127.0.0.1#5335 +ipset=/google.com.gt/gfwlist +server=/charlestonroadregistry.com/127.0.0.1#5335 +ipset=/charlestonroadregistry.com/gfwlist +server=/asha.org/127.0.0.1#5335 +ipset=/asha.org/gfwlist +server=/creativesdk.com/127.0.0.1#5335 +ipset=/creativesdk.com/gfwlist +server=/fox46.com/127.0.0.1#5335 +ipset=/fox46.com/gfwlist +server=/reddit.com/127.0.0.1#5335 +ipset=/reddit.com/gfwlist +server=/asianpornmovies.com/127.0.0.1#5335 +ipset=/asianpornmovies.com/gfwlist +server=/cloudrobotics.com/127.0.0.1#5335 +ipset=/cloudrobotics.com/gfwlist +server=/java.net/127.0.0.1#5335 +ipset=/java.net/gfwlist +server=/pokemon-sun.com/127.0.0.1#5335 +ipset=/pokemon-sun.com/gfwlist +server=/ieeemce.org/127.0.0.1#5335 +ipset=/ieeemce.org/gfwlist +server=/koubaibu.jp/127.0.0.1#5335 +ipset=/koubaibu.jp/gfwlist +server=/volvobuses.de/127.0.0.1#5335 +ipset=/volvobuses.de/gfwlist +server=/bmw-oman.com/127.0.0.1#5335 +ipset=/bmw-oman.com/gfwlist +server=/uun99.com/127.0.0.1#5335 +ipset=/uun99.com/gfwlist +server=/gopivotal.net/127.0.0.1#5335 +ipset=/gopivotal.net/gfwlist +server=/ebayclassifieds.info/127.0.0.1#5335 +ipset=/ebayclassifieds.info/gfwlist +server=/manyvids.com/127.0.0.1#5335 +ipset=/manyvids.com/gfwlist +server=/volvotrucks.it/127.0.0.1#5335 +ipset=/volvotrucks.it/gfwlist +server=/pearson.cl/127.0.0.1#5335 +ipset=/pearson.cl/gfwlist +server=/epochcar.com/127.0.0.1#5335 +ipset=/epochcar.com/gfwlist +server=/cdnpure.com/127.0.0.1#5335 +ipset=/cdnpure.com/gfwlist +server=/lululu.one/127.0.0.1#5335 +ipset=/lululu.one/gfwlist +server=/cinemax.com/127.0.0.1#5335 +ipset=/cinemax.com/gfwlist +server=/movidius.com/127.0.0.1#5335 +ipset=/movidius.com/gfwlist +server=/whatisairwatch.com/127.0.0.1#5335 +ipset=/whatisairwatch.com/gfwlist +server=/pvzgw2.com/127.0.0.1#5335 +ipset=/pvzgw2.com/gfwlist +server=/1e100.net/127.0.0.1#5335 +ipset=/1e100.net/gfwlist +server=/mastercardidtheftalerts.com/127.0.0.1#5335 +ipset=/mastercardidtheftalerts.com/gfwlist +server=/paypal-secure.net/127.0.0.1#5335 +ipset=/paypal-secure.net/gfwlist +server=/nike-fr.com/127.0.0.1#5335 +ipset=/nike-fr.com/gfwlist +server=/tedcdn.com/127.0.0.1#5335 +ipset=/tedcdn.com/gfwlist +server=/facebookgames.com/127.0.0.1#5335 +ipset=/facebookgames.com/gfwlist +server=/youtube.com.ua/127.0.0.1#5335 +ipset=/youtube.com.ua/gfwlist +server=/twitchcdn.net/127.0.0.1#5335 +ipset=/twitchcdn.net/gfwlist +server=/intunewiki.com/127.0.0.1#5335 +ipset=/intunewiki.com/gfwlist +server=/vmwsalesrewards.com/127.0.0.1#5335 +ipset=/vmwsalesrewards.com/gfwlist +server=/bitnami.com/127.0.0.1#5335 +ipset=/bitnami.com/gfwlist +server=/beatsdreforsale.com/127.0.0.1#5335 +ipset=/beatsdreforsale.com/gfwlist +server=/disneynewseries.com/127.0.0.1#5335 +ipset=/disneynewseries.com/gfwlist +server=/intel.dz/127.0.0.1#5335 +ipset=/intel.dz/gfwlist +server=/conair.me/127.0.0.1#5335 +ipset=/conair.me/gfwlist +server=/applewatch.tv/127.0.0.1#5335 +ipset=/applewatch.tv/gfwlist +server=/nvidia.fi/127.0.0.1#5335 +ipset=/nvidia.fi/gfwlist +server=/nvidia.it/127.0.0.1#5335 +ipset=/nvidia.it/gfwlist +server=/nikefoamposites.com/127.0.0.1#5335 +ipset=/nikefoamposites.com/gfwlist +server=/pentium.com/127.0.0.1#5335 +ipset=/pentium.com/gfwlist +server=/cispaletter.com/127.0.0.1#5335 +ipset=/cispaletter.com/gfwlist +server=/buyminibeatbox.com/127.0.0.1#5335 +ipset=/buyminibeatbox.com/gfwlist +server=/volvotrucks.tn/127.0.0.1#5335 +ipset=/volvotrucks.tn/gfwlist +server=/bmwperformancecenter.com/127.0.0.1#5335 +ipset=/bmwperformancecenter.com/gfwlist +server=/adbecrsl.com/127.0.0.1#5335 +ipset=/adbecrsl.com/gfwlist +server=/newscorp.com/127.0.0.1#5335 +ipset=/newscorp.com/gfwlist +server=/paypal-profile.com/127.0.0.1#5335 +ipset=/paypal-profile.com/gfwlist +server=/yandex.st/127.0.0.1#5335 +ipset=/yandex.st/gfwlist +server=/vfsco.bg/127.0.0.1#5335 +ipset=/vfsco.bg/gfwlist +server=/ebaycoins.com/127.0.0.1#5335 +ipset=/ebaycoins.com/gfwlist +server=/awsstatic.com/127.0.0.1#5335 +ipset=/awsstatic.com/gfwlist +server=/bmw.md/127.0.0.1#5335 +ipset=/bmw.md/gfwlist +server=/facebookdating.net/127.0.0.1#5335 +ipset=/facebookdating.net/gfwlist +server=/gosq.com/127.0.0.1#5335 +ipset=/gosq.com/gfwlist +server=/instagainer.com/127.0.0.1#5335 +ipset=/instagainer.com/gfwlist +server=/a.kslive.tv/127.0.0.1#5335 +ipset=/a.kslive.tv/gfwlist +server=/pincong.rocks/127.0.0.1#5335 +ipset=/pincong.rocks/gfwlist +server=/blpprofessional.com/127.0.0.1#5335 +ipset=/blpprofessional.com/gfwlist +server=/4myminicard.com/127.0.0.1#5335 +ipset=/4myminicard.com/gfwlist +server=/uhub.com/127.0.0.1#5335 +ipset=/uhub.com/gfwlist +server=/datasheets360.com/127.0.0.1#5335 +ipset=/datasheets360.com/gfwlist +server=/airwick.us/127.0.0.1#5335 +ipset=/airwick.us/gfwlist +server=/cricketcountry.com/127.0.0.1#5335 +ipset=/cricketcountry.com/gfwlist +server=/pinterest.ru/127.0.0.1#5335 +ipset=/pinterest.ru/gfwlist +server=/adidas.cz/127.0.0.1#5335 +ipset=/adidas.cz/gfwlist +server=/rarbg.is/127.0.0.1#5335 +ipset=/rarbg.is/gfwlist +server=/businessinsider.com/127.0.0.1#5335 +ipset=/businessinsider.com/gfwlist +server=/torproject.org/127.0.0.1#5335 +ipset=/torproject.org/gfwlist +server=/visa.gr/127.0.0.1#5335 +ipset=/visa.gr/gfwlist +server=/txvia.com/127.0.0.1#5335 +ipset=/txvia.com/gfwlist +server=/daytonbmw.com/127.0.0.1#5335 +ipset=/daytonbmw.com/gfwlist +server=/netflixdnstest5.com/127.0.0.1#5335 +ipset=/netflixdnstest5.com/gfwlist +server=/newsukadops.com/127.0.0.1#5335 +ipset=/newsukadops.com/gfwlist +server=/applepay.jp/127.0.0.1#5335 +ipset=/applepay.jp/gfwlist +server=/jav321.com/127.0.0.1#5335 +ipset=/jav321.com/gfwlist +server=/finish.lv/127.0.0.1#5335 +ipset=/finish.lv/gfwlist +server=/fbinfer.com/127.0.0.1#5335 +ipset=/fbinfer.com/gfwlist +server=/thetimes.co.uk/127.0.0.1#5335 +ipset=/thetimes.co.uk/gfwlist +server=/picnik.com/127.0.0.1#5335 +ipset=/picnik.com/gfwlist +server=/starbucksathome.com/127.0.0.1#5335 +ipset=/starbucksathome.com/gfwlist +server=/qualcommlabs.com/127.0.0.1#5335 +ipset=/qualcommlabs.com/gfwlist +server=/bmw.com.my/127.0.0.1#5335 +ipset=/bmw.com.my/gfwlist +server=/applepaysupplies.net/127.0.0.1#5335 +ipset=/applepaysupplies.net/gfwlist +server=/faeboook.com/127.0.0.1#5335 +ipset=/faeboook.com/gfwlist +server=/ecimg.tw/127.0.0.1#5335 +ipset=/ecimg.tw/gfwlist +server=/duckduckgo.ke/127.0.0.1#5335 +ipset=/duckduckgo.ke/gfwlist +server=/dogatch.jp/127.0.0.1#5335 +ipset=/dogatch.jp/gfwlist +server=/guardianapps.co.uk/127.0.0.1#5335 +ipset=/guardianapps.co.uk/gfwlist +server=/durex.com.tr/127.0.0.1#5335 +ipset=/durex.com.tr/gfwlist +server=/amazonprimevideos.com/127.0.0.1#5335 +ipset=/amazonprimevideos.com/gfwlist +server=/mastercard.com/127.0.0.1#5335 +ipset=/mastercard.com/gfwlist +server=/earphonescheapest.com/127.0.0.1#5335 +ipset=/earphonescheapest.com/gfwlist +server=/insiderintelligence.com/127.0.0.1#5335 +ipset=/insiderintelligence.com/gfwlist +server=/bridgestonemarketing.com/127.0.0.1#5335 +ipset=/bridgestonemarketing.com/gfwlist +server=/connectcommerce.info/127.0.0.1#5335 +ipset=/connectcommerce.info/gfwlist +server=/bmw-ghana.com/127.0.0.1#5335 +ipset=/bmw-ghana.com/gfwlist +server=/microsoftads.com/127.0.0.1#5335 +ipset=/microsoftads.com/gfwlist +server=/reuters.com/127.0.0.1#5335 +ipset=/reuters.com/gfwlist +server=/payhulu.com/127.0.0.1#5335 +ipset=/payhulu.com/gfwlist +server=/vanish.at/127.0.0.1#5335 +ipset=/vanish.at/gfwlist +server=/gfycat.com/127.0.0.1#5335 +ipset=/gfycat.com/gfwlist +server=/google.be/127.0.0.1#5335 +ipset=/google.be/gfwlist +server=/vfsco.lv/127.0.0.1#5335 +ipset=/vfsco.lv/gfwlist +server=/oann.com/127.0.0.1#5335 +ipset=/oann.com/gfwlist +server=/smartonesolutions.com.hk/127.0.0.1#5335 +ipset=/smartonesolutions.com.hk/gfwlist +server=/ebayenterprise.com/127.0.0.1#5335 +ipset=/ebayenterprise.com/gfwlist +server=/pittpatt.com/127.0.0.1#5335 +ipset=/pittpatt.com/gfwlist +server=/blackfridaydrebeatsshop.com/127.0.0.1#5335 +ipset=/blackfridaydrebeatsshop.com/gfwlist +server=/zdusercontent.com/127.0.0.1#5335 +ipset=/zdusercontent.com/gfwlist +server=/amznl.com/127.0.0.1#5335 +ipset=/amznl.com/gfwlist +server=/incentivetravelgifts.com/127.0.0.1#5335 +ipset=/incentivetravelgifts.com/gfwlist +server=/volvotrucks.rs/127.0.0.1#5335 +ipset=/volvotrucks.rs/gfwlist +server=/youtube.com.ng/127.0.0.1#5335 +ipset=/youtube.com.ng/gfwlist +server=/reuters.tv/127.0.0.1#5335 +ipset=/reuters.tv/gfwlist +server=/vmwdemo.com/127.0.0.1#5335 +ipset=/vmwdemo.com/gfwlist +server=/facebzook.com/127.0.0.1#5335 +ipset=/facebzook.com/gfwlist +server=/intel.si/127.0.0.1#5335 +ipset=/intel.si/gfwlist +server=/thomsonreuters.com.my/127.0.0.1#5335 +ipset=/thomsonreuters.com.my/gfwlist +server=/putty.org/127.0.0.1#5335 +ipset=/putty.org/gfwlist +server=/voahausa.com/127.0.0.1#5335 +ipset=/voahausa.com/gfwlist +server=/mini-connected.cz/127.0.0.1#5335 +ipset=/mini-connected.cz/gfwlist +server=/sonybo.co.jp/127.0.0.1#5335 +ipset=/sonybo.co.jp/gfwlist +server=/apple-mapkit.com/127.0.0.1#5335 +ipset=/apple-mapkit.com/gfwlist +server=/businessinsider.fr/127.0.0.1#5335 +ipset=/businessinsider.fr/gfwlist +server=/nekoxxx.com/127.0.0.1#5335 +ipset=/nekoxxx.com/gfwlist +server=/digitalassetlinks.org/127.0.0.1#5335 +ipset=/digitalassetlinks.org/gfwlist +server=/javfor.me/127.0.0.1#5335 +ipset=/javfor.me/gfwlist +server=/monsterbeatstudio.com/127.0.0.1#5335 +ipset=/monsterbeatstudio.com/gfwlist +server=/iphone.com/127.0.0.1#5335 +ipset=/iphone.com/gfwlist +server=/php.net/127.0.0.1#5335 +ipset=/php.net/gfwlist +server=/snapcraft.io/127.0.0.1#5335 +ipset=/snapcraft.io/gfwlist +server=/beatsstudiohodetelefoner.com/127.0.0.1#5335 +ipset=/beatsstudiohodetelefoner.com/gfwlist +server=/mdpi.com/127.0.0.1#5335 +ipset=/mdpi.com/gfwlist +server=/nginx.org/127.0.0.1#5335 +ipset=/nginx.org/gfwlist +server=/paypal-redeem.com/127.0.0.1#5335 +ipset=/paypal-redeem.com/gfwlist +server=/canon.ee/127.0.0.1#5335 +ipset=/canon.ee/gfwlist +server=/marketolive.com/127.0.0.1#5335 +ipset=/marketolive.com/gfwlist +server=/bridgestone.com.br/127.0.0.1#5335 +ipset=/bridgestone.com.br/gfwlist +server=/scholar.google.com.ly/127.0.0.1#5335 +ipset=/scholar.google.com.ly/gfwlist +server=/emagic.de/127.0.0.1#5335 +ipset=/emagic.de/gfwlist +server=/shopdisney.com/127.0.0.1#5335 +ipset=/shopdisney.com/gfwlist +server=/foxsports.net/127.0.0.1#5335 +ipset=/foxsports.net/gfwlist +server=/beatsep.com/127.0.0.1#5335 +ipset=/beatsep.com/gfwlist +server=/paypal-merchantloyalty.com/127.0.0.1#5335 +ipset=/paypal-merchantloyalty.com/gfwlist +server=/jkbeats.com/127.0.0.1#5335 +ipset=/jkbeats.com/gfwlist +server=/visakorea.com/127.0.0.1#5335 +ipset=/visakorea.com/gfwlist +server=/universalpicturesinternational.com/127.0.0.1#5335 +ipset=/universalpicturesinternational.com/gfwlist +server=/mastercard.com.sa/127.0.0.1#5335 +ipset=/mastercard.com.sa/gfwlist +server=/vilavpn.com/127.0.0.1#5335 +ipset=/vilavpn.com/gfwlist +server=/skyoceanrescue.de/127.0.0.1#5335 +ipset=/skyoceanrescue.de/gfwlist +server=/bucketeer.jp/127.0.0.1#5335 +ipset=/bucketeer.jp/gfwlist +server=/namemybeats.com/127.0.0.1#5335 +ipset=/namemybeats.com/gfwlist +server=/facebooj.com/127.0.0.1#5335 +ipset=/facebooj.com/gfwlist +server=/jstage.jst.go.jp/127.0.0.1#5335 +ipset=/jstage.jst.go.jp/gfwlist +server=/youtube.mk/127.0.0.1#5335 +ipset=/youtube.mk/gfwlist +server=/facebookawards.com/127.0.0.1#5335 +ipset=/facebookawards.com/gfwlist +server=/cloudflare-dns.com/127.0.0.1#5335 +ipset=/cloudflare-dns.com/gfwlist +server=/microsoftmxfilantropia.com/127.0.0.1#5335 +ipset=/microsoftmxfilantropia.com/gfwlist +server=/facecbgook.com/127.0.0.1#5335 +ipset=/facecbgook.com/gfwlist +server=/bmwgroup-posdigital.com/127.0.0.1#5335 +ipset=/bmwgroup-posdigital.com/gfwlist +server=/wiipartyu.com/127.0.0.1#5335 +ipset=/wiipartyu.com/gfwlist +server=/bridgestone.com.mx/127.0.0.1#5335 +ipset=/bridgestone.com.mx/gfwlist +server=/newsprinters.co.uk/127.0.0.1#5335 +ipset=/newsprinters.co.uk/gfwlist +server=/lolusercontent.com/127.0.0.1#5335 +ipset=/lolusercontent.com/gfwlist +server=/anaconda.org/127.0.0.1#5335 +ipset=/anaconda.org/gfwlist +server=/whychoosehorizon.com/127.0.0.1#5335 +ipset=/whychoosehorizon.com/gfwlist +server=/pinterest.co.uk/127.0.0.1#5335 +ipset=/pinterest.co.uk/gfwlist +server=/chromeos.dev/127.0.0.1#5335 +ipset=/chromeos.dev/gfwlist +server=/volvotrucks.com.ua/127.0.0.1#5335 +ipset=/volvotrucks.com.ua/gfwlist +server=/wrenchead.com/127.0.0.1#5335 +ipset=/wrenchead.com/gfwlist +server=/mariokart8.com/127.0.0.1#5335 +ipset=/mariokart8.com/gfwlist +server=/intercom.io/127.0.0.1#5335 +ipset=/intercom.io/gfwlist +server=/starbucks.co.id/127.0.0.1#5335 +ipset=/starbucks.co.id/gfwlist +server=/hpdrivers.com/127.0.0.1#5335 +ipset=/hpdrivers.com/gfwlist +server=/pearsonassessment.dk/127.0.0.1#5335 +ipset=/pearsonassessment.dk/gfwlist +server=/ktvu.com/127.0.0.1#5335 +ipset=/ktvu.com/gfwlist +server=/gittigidiyor.net/127.0.0.1#5335 +ipset=/gittigidiyor.net/gfwlist +server=/typeisbeautiful.com/127.0.0.1#5335 +ipset=/typeisbeautiful.com/gfwlist +server=/ciscoconnectcloud.org/127.0.0.1#5335 +ipset=/ciscoconnectcloud.org/gfwlist +server=/letsencrypt.org/127.0.0.1#5335 +ipset=/letsencrypt.org/gfwlist +server=/archive.org/127.0.0.1#5335 +ipset=/archive.org/gfwlist +server=/visa.com.bs/127.0.0.1#5335 +ipset=/visa.com.bs/gfwlist +server=/morisawa.co.jp/127.0.0.1#5335 +ipset=/morisawa.co.jp/gfwlist +server=/nikeaw77.com/127.0.0.1#5335 +ipset=/nikeaw77.com/gfwlist +server=/cbsinteractive.com/127.0.0.1#5335 +ipset=/cbsinteractive.com/gfwlist +server=/cashpassport.ca/127.0.0.1#5335 +ipset=/cashpassport.ca/gfwlist +server=/cordcloud.org/127.0.0.1#5335 +ipset=/cordcloud.org/gfwlist +server=/laracasts.com/127.0.0.1#5335 +ipset=/laracasts.com/gfwlist +server=/omotenashi.cygames.jp/127.0.0.1#5335 +ipset=/omotenashi.cygames.jp/gfwlist +server=/blogspot.al/127.0.0.1#5335 +ipset=/blogspot.al/gfwlist +server=/myfoxzone.com/127.0.0.1#5335 +ipset=/myfoxzone.com/gfwlist +server=/nvidia.be/127.0.0.1#5335 +ipset=/nvidia.be/gfwlist +server=/cslpldyb.me/127.0.0.1#5335 +ipset=/cslpldyb.me/gfwlist +server=/playwarcraft3.com/127.0.0.1#5335 +ipset=/playwarcraft3.com/gfwlist +server=/bbhub.io/127.0.0.1#5335 +ipset=/bbhub.io/gfwlist +server=/google.co.il/127.0.0.1#5335 +ipset=/google.co.il/gfwlist +server=/nintendoswitchtogether.com/127.0.0.1#5335 +ipset=/nintendoswitchtogether.com/gfwlist +server=/hegre.com/127.0.0.1#5335 +ipset=/hegre.com/gfwlist +server=/primevideo.org/127.0.0.1#5335 +ipset=/primevideo.org/gfwlist +server=/authorxml.com/127.0.0.1#5335 +ipset=/authorxml.com/gfwlist +server=/logitechg.com/127.0.0.1#5335 +ipset=/logitechg.com/gfwlist +server=/hawaiibmw.com/127.0.0.1#5335 +ipset=/hawaiibmw.com/gfwlist +server=/nicodic.jp/127.0.0.1#5335 +ipset=/nicodic.jp/gfwlist +server=/kindle.de/127.0.0.1#5335 +ipset=/kindle.de/gfwlist +server=/yahoo.bi/127.0.0.1#5335 +ipset=/yahoo.bi/gfwlist +server=/steamusercontent-a.akamaihd.net/127.0.0.1#5335 +ipset=/steamusercontent-a.akamaihd.net/gfwlist +server=/mageconf.com/127.0.0.1#5335 +ipset=/mageconf.com/gfwlist +server=/voatiengviet.com/127.0.0.1#5335 +ipset=/voatiengviet.com/gfwlist +server=/latencytop.com/127.0.0.1#5335 +ipset=/latencytop.com/gfwlist +server=/youtube.ly/127.0.0.1#5335 +ipset=/youtube.ly/gfwlist +server=/alexa.com/127.0.0.1#5335 +ipset=/alexa.com/gfwlist +server=/airport.brussels/127.0.0.1#5335 +ipset=/airport.brussels/gfwlist +server=/shopee.vn/127.0.0.1#5335 +ipset=/shopee.vn/gfwlist +server=/wikinews.org/127.0.0.1#5335 +ipset=/wikinews.org/gfwlist +server=/mini.si/127.0.0.1#5335 +ipset=/mini.si/gfwlist +server=/dontbubble.us/127.0.0.1#5335 +ipset=/dontbubble.us/gfwlist +server=/services-exchange.com/127.0.0.1#5335 +ipset=/services-exchange.com/gfwlist +server=/geeksquadonline.com/127.0.0.1#5335 +ipset=/geeksquadonline.com/gfwlist +server=/yes123.com.tw/127.0.0.1#5335 +ipset=/yes123.com.tw/gfwlist +server=/marketo.co.uk/127.0.0.1#5335 +ipset=/marketo.co.uk/gfwlist +server=/nintendo-europe.com/127.0.0.1#5335 +ipset=/nintendo-europe.com/gfwlist +server=/nxtdig.com.tw/127.0.0.1#5335 +ipset=/nxtdig.com.tw/gfwlist +server=/openstreetmaps.org/127.0.0.1#5335 +ipset=/openstreetmaps.org/gfwlist +server=/launchpad.net/127.0.0.1#5335 +ipset=/launchpad.net/gfwlist +server=/blogspot.co.at/127.0.0.1#5335 +ipset=/blogspot.co.at/gfwlist +server=/visa.com.cy/127.0.0.1#5335 +ipset=/visa.com.cy/gfwlist +server=/youtube.ee/127.0.0.1#5335 +ipset=/youtube.ee/gfwlist +server=/intel.my/127.0.0.1#5335 +ipset=/intel.my/gfwlist +server=/nintendo.co.uk/127.0.0.1#5335 +ipset=/nintendo.co.uk/gfwlist +server=/bmw-motorrad.co.uk/127.0.0.1#5335 +ipset=/bmw-motorrad.co.uk/gfwlist +server=/visa.com.jm/127.0.0.1#5335 +ipset=/visa.com.jm/gfwlist +server=/bmw-connecteddrive.sk/127.0.0.1#5335 +ipset=/bmw-connecteddrive.sk/gfwlist +server=/minivaughanwest.com/127.0.0.1#5335 +ipset=/minivaughanwest.com/gfwlist +server=/ippog.org/127.0.0.1#5335 +ipset=/ippog.org/gfwlist +server=/ntdtv.com/127.0.0.1#5335 +ipset=/ntdtv.com/gfwlist +server=/aeasyshop.com/127.0.0.1#5335 +ipset=/aeasyshop.com/gfwlist +server=/battlefieldbadcompany2.com/127.0.0.1#5335 +ipset=/battlefieldbadcompany2.com/gfwlist +server=/adobeexchange.com/127.0.0.1#5335 +ipset=/adobeexchange.com/gfwlist +server=/visb.org/127.0.0.1#5335 +ipset=/visb.org/gfwlist +server=/faebok.com/127.0.0.1#5335 +ipset=/faebok.com/gfwlist +server=/localizejs.com/127.0.0.1#5335 +ipset=/localizejs.com/gfwlist +server=/bmworegon.com/127.0.0.1#5335 +ipset=/bmworegon.com/gfwlist +server=/pcre.org/127.0.0.1#5335 +ipset=/pcre.org/gfwlist +server=/paypal-special.com/127.0.0.1#5335 +ipset=/paypal-special.com/gfwlist +server=/applescreensavers.com/127.0.0.1#5335 +ipset=/applescreensavers.com/gfwlist +server=/scholar.google.com.pr/127.0.0.1#5335 +ipset=/scholar.google.com.pr/gfwlist +server=/itunesu.net/127.0.0.1#5335 +ipset=/itunesu.net/gfwlist +server=/nikefoundation.org/127.0.0.1#5335 +ipset=/nikefoundation.org/gfwlist +server=/vercel-status.com/127.0.0.1#5335 +ipset=/vercel-status.com/gfwlist +server=/bmw-connecteddrive.ro/127.0.0.1#5335 +ipset=/bmw-connecteddrive.ro/gfwlist +server=/directvforhotels.com/127.0.0.1#5335 +ipset=/directvforhotels.com/gfwlist +server=/anidom.com/127.0.0.1#5335 +ipset=/anidom.com/gfwlist +server=/beatsbydrdrecustom.com/127.0.0.1#5335 +ipset=/beatsbydrdrecustom.com/gfwlist +server=/durex.co.il/127.0.0.1#5335 +ipset=/durex.co.il/gfwlist +server=/niketaiwan.net/127.0.0.1#5335 +ipset=/niketaiwan.net/gfwlist +server=/gannett-cdn.com/127.0.0.1#5335 +ipset=/gannett-cdn.com/gfwlist +server=/bmw-military-sales.com/127.0.0.1#5335 +ipset=/bmw-military-sales.com/gfwlist +server=/buyitnow.com/127.0.0.1#5335 +ipset=/buyitnow.com/gfwlist +server=/razer.com/127.0.0.1#5335 +ipset=/razer.com/gfwlist +server=/oxforddnb.com/127.0.0.1#5335 +ipset=/oxforddnb.com/gfwlist +server=/nurofen.hr/127.0.0.1#5335 +ipset=/nurofen.hr/gfwlist +server=/applicationinsights.io/127.0.0.1#5335 +ipset=/applicationinsights.io/gfwlist +server=/mastercard.hr/127.0.0.1#5335 +ipset=/mastercard.hr/gfwlist +server=/playnintendo.com/127.0.0.1#5335 +ipset=/playnintendo.com/gfwlist +server=/jneurosci.org/127.0.0.1#5335 +ipset=/jneurosci.org/gfwlist +server=/amazon.co.jp/127.0.0.1#5335 +ipset=/amazon.co.jp/gfwlist +server=/paypal-gifts.com/127.0.0.1#5335 +ipset=/paypal-gifts.com/gfwlist +server=/visa.com.ge/127.0.0.1#5335 +ipset=/visa.com.ge/gfwlist +server=/didce.com/127.0.0.1#5335 +ipset=/didce.com/gfwlist +server=/voxops.net/127.0.0.1#5335 +ipset=/voxops.net/gfwlist +server=/okex.com/127.0.0.1#5335 +ipset=/okex.com/gfwlist +server=/rustup.rs/127.0.0.1#5335 +ipset=/rustup.rs/gfwlist +server=/optanedifference.com/127.0.0.1#5335 +ipset=/optanedifference.com/gfwlist +server=/iphonecase5.com/127.0.0.1#5335 +ipset=/iphonecase5.com/gfwlist +server=/akamai-cdn.com/127.0.0.1#5335 +ipset=/akamai-cdn.com/gfwlist +server=/itu.int/127.0.0.1#5335 +ipset=/itu.int/gfwlist +server=/bydrebeats.com/127.0.0.1#5335 +ipset=/bydrebeats.com/gfwlist +server=/beatscheap-nz.com/127.0.0.1#5335 +ipset=/beatscheap-nz.com/gfwlist +server=/pagecdn.io/127.0.0.1#5335 +ipset=/pagecdn.io/gfwlist +server=/verisigninc.com/127.0.0.1#5335 +ipset=/verisigninc.com/gfwlist +server=/facebookcareer.com/127.0.0.1#5335 +ipset=/facebookcareer.com/gfwlist +server=/intercomcdn.com/127.0.0.1#5335 +ipset=/intercomcdn.com/gfwlist +server=/tunsafe.com/127.0.0.1#5335 +ipset=/tunsafe.com/gfwlist +server=/editorx.com/127.0.0.1#5335 +ipset=/editorx.com/gfwlist +server=/componentkit.org/127.0.0.1#5335 +ipset=/componentkit.org/gfwlist +server=/wholeplanetfoundation.org/127.0.0.1#5335 +ipset=/wholeplanetfoundation.org/gfwlist +server=/trustsign.ch/127.0.0.1#5335 +ipset=/trustsign.ch/gfwlist +server=/xn--kput3imi374g.xn--hxt814e/127.0.0.1#5335 +ipset=/xn--kput3imi374g.xn--hxt814e/gfwlist +server=/schemer.com/127.0.0.1#5335 +ipset=/schemer.com/gfwlist +server=/keytransparency.com/127.0.0.1#5335 +ipset=/keytransparency.com/gfwlist +server=/wwwxoom.com/127.0.0.1#5335 +ipset=/wwwxoom.com/gfwlist +server=/pinterest.it/127.0.0.1#5335 +ipset=/pinterest.it/gfwlist +server=/msropendata.com/127.0.0.1#5335 +ipset=/msropendata.com/gfwlist +server=/amd.com/127.0.0.1#5335 +ipset=/amd.com/gfwlist +server=/ie10.com/127.0.0.1#5335 +ipset=/ie10.com/gfwlist +server=/google.com.py/127.0.0.1#5335 +ipset=/google.com.py/gfwlist +server=/hulucall.com/127.0.0.1#5335 +ipset=/hulucall.com/gfwlist +server=/azuredigitaltwins.net/127.0.0.1#5335 +ipset=/azuredigitaltwins.net/gfwlist +server=/etbc.com.hk/127.0.0.1#5335 +ipset=/etbc.com.hk/gfwlist +server=/nikeidshoes.com/127.0.0.1#5335 +ipset=/nikeidshoes.com/gfwlist +server=/google.rs/127.0.0.1#5335 +ipset=/google.rs/gfwlist +server=/jmlr.org/127.0.0.1#5335 +ipset=/jmlr.org/gfwlist +server=/bloombergtv.mn/127.0.0.1#5335 +ipset=/bloombergtv.mn/gfwlist +server=/speedhunters.com/127.0.0.1#5335 +ipset=/speedhunters.com/gfwlist +server=/camelot-europe.com/127.0.0.1#5335 +ipset=/camelot-europe.com/gfwlist +server=/myfoxny.com/127.0.0.1#5335 +ipset=/myfoxny.com/gfwlist +server=/digitalcertvalidation.com/127.0.0.1#5335 +ipset=/digitalcertvalidation.com/gfwlist +server=/xn--xsq959n.com/127.0.0.1#5335 +ipset=/xn--xsq959n.com/gfwlist +server=/foxnews.tv/127.0.0.1#5335 +ipset=/foxnews.tv/gfwlist +server=/themercury.com.au/127.0.0.1#5335 +ipset=/themercury.com.au/gfwlist +server=/zoom.com.cn/127.0.0.1#5335 +ipset=/zoom.com.cn/gfwlist +server=/oanencore.com/127.0.0.1#5335 +ipset=/oanencore.com/gfwlist +server=/pearsonperu.pe/127.0.0.1#5335 +ipset=/pearsonperu.pe/gfwlist +server=/chromebook.com/127.0.0.1#5335 +ipset=/chromebook.com/gfwlist +server=/mol.im/127.0.0.1#5335 +ipset=/mol.im/gfwlist +server=/paypalbenefits.com/127.0.0.1#5335 +ipset=/paypalbenefits.com/gfwlist +server=/velkaepocha.cz/127.0.0.1#5335 +ipset=/velkaepocha.cz/gfwlist +server=/mini.re/127.0.0.1#5335 +ipset=/mini.re/gfwlist +server=/nvidia.fr/127.0.0.1#5335 +ipset=/nvidia.fr/gfwlist +server=/ieeemagnetics.org/127.0.0.1#5335 +ipset=/ieeemagnetics.org/gfwlist +server=/halfjapan.com/127.0.0.1#5335 +ipset=/halfjapan.com/gfwlist +server=/practicalbusinessskills.com/127.0.0.1#5335 +ipset=/practicalbusinessskills.com/gfwlist +server=/kphimsex.net/127.0.0.1#5335 +ipset=/kphimsex.net/gfwlist +server=/studiobeatsbydrdre.com/127.0.0.1#5335 +ipset=/studiobeatsbydrdre.com/gfwlist +server=/rubygems.org/127.0.0.1#5335 +ipset=/rubygems.org/gfwlist +server=/yahoo.com.mx/127.0.0.1#5335 +ipset=/yahoo.com.mx/gfwlist +server=/volvobuses.fr/127.0.0.1#5335 +ipset=/volvobuses.fr/gfwlist +server=/huffingtonpost.gr/127.0.0.1#5335 +ipset=/huffingtonpost.gr/gfwlist +server=/makecode.org/127.0.0.1#5335 +ipset=/makecode.org/gfwlist +server=/icashpassport.com.mx/127.0.0.1#5335 +ipset=/icashpassport.com.mx/gfwlist +server=/getwsone.com/127.0.0.1#5335 +ipset=/getwsone.com/gfwlist +server=/bmw-motorrad.dk/127.0.0.1#5335 +ipset=/bmw-motorrad.dk/gfwlist +server=/cbssports.com/127.0.0.1#5335 +ipset=/cbssports.com/gfwlist +server=/durex.com/127.0.0.1#5335 +ipset=/durex.com/gfwlist +server=/paypalnetwork.info/127.0.0.1#5335 +ipset=/paypalnetwork.info/gfwlist +server=/anaconda.com/127.0.0.1#5335 +ipset=/anaconda.com/gfwlist +server=/monbeats2013.com/127.0.0.1#5335 +ipset=/monbeats2013.com/gfwlist +server=/atlantaminidealers.com/127.0.0.1#5335 +ipset=/atlantaminidealers.com/gfwlist +server=/microsoft.fi/127.0.0.1#5335 +ipset=/microsoft.fi/gfwlist +server=/slack-files.com/127.0.0.1#5335 +ipset=/slack-files.com/gfwlist +server=/iphone4.com.br/127.0.0.1#5335 +ipset=/iphone4.com.br/gfwlist +server=/ddh.gg/127.0.0.1#5335 +ipset=/ddh.gg/gfwlist +server=/espndotcom.tt.omtrdc.net/127.0.0.1#5335 +ipset=/espndotcom.tt.omtrdc.net/gfwlist +server=/buypass.com/127.0.0.1#5335 +ipset=/buypass.com/gfwlist +server=/facebookblueprint.net/127.0.0.1#5335 +ipset=/facebookblueprint.net/gfwlist +server=/nvidia.asia/127.0.0.1#5335 +ipset=/nvidia.asia/gfwlist +server=/mastercardworldwide.com/127.0.0.1#5335 +ipset=/mastercardworldwide.com/gfwlist +server=/instaplayer.net/127.0.0.1#5335 +ipset=/instaplayer.net/gfwlist +server=/foxsportsuniversity.com/127.0.0.1#5335 +ipset=/foxsportsuniversity.com/gfwlist +server=/minivictoria.ca/127.0.0.1#5335 +ipset=/minivictoria.ca/gfwlist +server=/starbucks.com.gr/127.0.0.1#5335 +ipset=/starbucks.com.gr/gfwlist +server=/amazon.nl/127.0.0.1#5335 +ipset=/amazon.nl/gfwlist +server=/google.com.tw/127.0.0.1#5335 +ipset=/google.com.tw/gfwlist +server=/intel.ch/127.0.0.1#5335 +ipset=/intel.ch/gfwlist +server=/apa.org/127.0.0.1#5335 +ipset=/apa.org/gfwlist +server=/casquebeatsofficiel-fr.com/127.0.0.1#5335 +ipset=/casquebeatsofficiel-fr.com/gfwlist +server=/strikingly.com/127.0.0.1#5335 +ipset=/strikingly.com/gfwlist +server=/yahoo.tl/127.0.0.1#5335 +ipset=/yahoo.tl/gfwlist +server=/voxmedia.com/127.0.0.1#5335 +ipset=/voxmedia.com/gfwlist +server=/appleone.chat/127.0.0.1#5335 +ipset=/appleone.chat/gfwlist +server=/cargigileads.com/127.0.0.1#5335 +ipset=/cargigileads.com/gfwlist +server=/mfg-inspector.com/127.0.0.1#5335 +ipset=/mfg-inspector.com/gfwlist +server=/google.com.kh/127.0.0.1#5335 +ipset=/google.com.kh/gfwlist +server=/latampartneruniversity.com/127.0.0.1#5335 +ipset=/latampartneruniversity.com/gfwlist +server=/facecbook.com/127.0.0.1#5335 +ipset=/facecbook.com/gfwlist +server=/coinonecorp.com/127.0.0.1#5335 +ipset=/coinonecorp.com/gfwlist +server=/bmw.com.bn/127.0.0.1#5335 +ipset=/bmw.com.bn/gfwlist +server=/fox49.tv/127.0.0.1#5335 +ipset=/fox49.tv/gfwlist +server=/2o7.net/127.0.0.1#5335 +ipset=/2o7.net/gfwlist +server=/scholar.google.com.vn/127.0.0.1#5335 +ipset=/scholar.google.com.vn/gfwlist +server=/collins.in/127.0.0.1#5335 +ipset=/collins.in/gfwlist +server=/skysports.com/127.0.0.1#5335 +ipset=/skysports.com/gfwlist +server=/freenode.net/127.0.0.1#5335 +ipset=/freenode.net/gfwlist +server=/brill.com/127.0.0.1#5335 +ipset=/brill.com/gfwlist +server=/mini.ru/127.0.0.1#5335 +ipset=/mini.ru/gfwlist +server=/intel.com.mx/127.0.0.1#5335 +ipset=/intel.com.mx/gfwlist +server=/hboasia.com/127.0.0.1#5335 +ipset=/hboasia.com/gfwlist +server=/mastercard.eu/127.0.0.1#5335 +ipset=/mastercard.eu/gfwlist +server=/bcvp0rtal.com/127.0.0.1#5335 +ipset=/bcvp0rtal.com/gfwlist +server=/maddenrewards.com/127.0.0.1#5335 +ipset=/maddenrewards.com/gfwlist +server=/pogobeta.com/127.0.0.1#5335 +ipset=/pogobeta.com/gfwlist +server=/udnfunlife.com/127.0.0.1#5335 +ipset=/udnfunlife.com/gfwlist +server=/newsmax.in/127.0.0.1#5335 +ipset=/newsmax.in/gfwlist +server=/youtube.ru/127.0.0.1#5335 +ipset=/youtube.ru/gfwlist +server=/nypost.help/127.0.0.1#5335 +ipset=/nypost.help/gfwlist +server=/mini.com.py/127.0.0.1#5335 +ipset=/mini.com.py/gfwlist +server=/visa.be/127.0.0.1#5335 +ipset=/visa.be/gfwlist +server=/musical.ly/127.0.0.1#5335 +ipset=/musical.ly/gfwlist +server=/app0le.com/127.0.0.1#5335 +ipset=/app0le.com/gfwlist +server=/whonix.org/127.0.0.1#5335 +ipset=/whonix.org/gfwlist +server=/delicious.com.au/127.0.0.1#5335 +ipset=/delicious.com.au/gfwlist +server=/facebook-studio.com/127.0.0.1#5335 +ipset=/facebook-studio.com/gfwlist +server=/macreach.com/127.0.0.1#5335 +ipset=/macreach.com/gfwlist +server=/adobeexperienceawards.com/127.0.0.1#5335 +ipset=/adobeexperienceawards.com/gfwlist +server=/pki-post.ch/127.0.0.1#5335 +ipset=/pki-post.ch/gfwlist +server=/hp3dsamplepromo.com/127.0.0.1#5335 +ipset=/hp3dsamplepromo.com/gfwlist +server=/blogspot.co.uk/127.0.0.1#5335 +ipset=/blogspot.co.uk/gfwlist +server=/mewe.com/127.0.0.1#5335 +ipset=/mewe.com/gfwlist +server=/minecraft.net/127.0.0.1#5335 +ipset=/minecraft.net/gfwlist +server=/androidify.com/127.0.0.1#5335 +ipset=/androidify.com/gfwlist +server=/gputechconf.eu/127.0.0.1#5335 +ipset=/gputechconf.eu/gfwlist +server=/bmw-motorrad.be/127.0.0.1#5335 +ipset=/bmw-motorrad.be/gfwlist +server=/boxun.com/127.0.0.1#5335 +ipset=/boxun.com/gfwlist +server=/mcdonalds.se/127.0.0.1#5335 +ipset=/mcdonalds.se/gfwlist +server=/dropboxbusiness.com/127.0.0.1#5335 +ipset=/dropboxbusiness.com/gfwlist +server=/foxsmallbusinesscenter.com/127.0.0.1#5335 +ipset=/foxsmallbusinesscenter.com/gfwlist +server=/jfrog.com/127.0.0.1#5335 +ipset=/jfrog.com/gfwlist +server=/forzamotorsport.net/127.0.0.1#5335 +ipset=/forzamotorsport.net/gfwlist +server=/fox9.com/127.0.0.1#5335 +ipset=/fox9.com/gfwlist +server=/dreamteamfc.com/127.0.0.1#5335 +ipset=/dreamteamfc.com/gfwlist +server=/facebook-program.com/127.0.0.1#5335 +ipset=/facebook-program.com/gfwlist +server=/amebaowndme.com/127.0.0.1#5335 +ipset=/amebaowndme.com/gfwlist +server=/bmwartjourney.com/127.0.0.1#5335 +ipset=/bmwartjourney.com/gfwlist +server=/sdcountybmw.com/127.0.0.1#5335 +ipset=/sdcountybmw.com/gfwlist +server=/bmw-classic.com/127.0.0.1#5335 +ipset=/bmw-classic.com/gfwlist +server=/paramount.com/127.0.0.1#5335 +ipset=/paramount.com/gfwlist +server=/visa.co.nz/127.0.0.1#5335 +ipset=/visa.co.nz/gfwlist +server=/bmw.hu/127.0.0.1#5335 +ipset=/bmw.hu/gfwlist +server=/terapeak.hk/127.0.0.1#5335 +ipset=/terapeak.hk/gfwlist +server=/easports.com/127.0.0.1#5335 +ipset=/easports.com/gfwlist +server=/swisssign.net/127.0.0.1#5335 +ipset=/swisssign.net/gfwlist +server=/bloombergsurvey.com/127.0.0.1#5335 +ipset=/bloombergsurvey.com/gfwlist +server=/airwick.se/127.0.0.1#5335 +ipset=/airwick.se/gfwlist +server=/huluapp.com/127.0.0.1#5335 +ipset=/huluapp.com/gfwlist +server=/oed.com/127.0.0.1#5335 +ipset=/oed.com/gfwlist +server=/icloudo.net/127.0.0.1#5335 +ipset=/icloudo.net/gfwlist +server=/vfsforgit.com/127.0.0.1#5335 +ipset=/vfsforgit.com/gfwlist +server=/ebayt.com/127.0.0.1#5335 +ipset=/ebayt.com/gfwlist +server=/apple-cloudkit.com/127.0.0.1#5335 +ipset=/apple-cloudkit.com/gfwlist +server=/bmw.hn/127.0.0.1#5335 +ipset=/bmw.hn/gfwlist +server=/quoracdn.net/127.0.0.1#5335 +ipset=/quoracdn.net/gfwlist +server=/nbcolympics.com/127.0.0.1#5335 +ipset=/nbcolympics.com/gfwlist +server=/sony.pl/127.0.0.1#5335 +ipset=/sony.pl/gfwlist +server=/gonike.com/127.0.0.1#5335 +ipset=/gonike.com/gfwlist +server=/geeksquad.cc/127.0.0.1#5335 +ipset=/geeksquad.cc/gfwlist +server=/foxsports.com.ve/127.0.0.1#5335 +ipset=/foxsports.com.ve/gfwlist +server=/pearsoneducacion.net/127.0.0.1#5335 +ipset=/pearsoneducacion.net/gfwlist +server=/apple.nl/127.0.0.1#5335 +ipset=/apple.nl/gfwlist +server=/verisign.es/127.0.0.1#5335 +ipset=/verisign.es/gfwlist +server=/brightcove.net/127.0.0.1#5335 +ipset=/brightcove.net/gfwlist +server=/bmw.com.pe/127.0.0.1#5335 +ipset=/bmw.com.pe/gfwlist +server=/facebookexchange.com/127.0.0.1#5335 +ipset=/facebookexchange.com/gfwlist +server=/democracy.earth/127.0.0.1#5335 +ipset=/democracy.earth/gfwlist +server=/ipodnano.net/127.0.0.1#5335 +ipset=/ipodnano.net/gfwlist +server=/needforspeedoverdrive.com/127.0.0.1#5335 +ipset=/needforspeedoverdrive.com/gfwlist +server=/visiontimes.net/127.0.0.1#5335 +ipset=/visiontimes.net/gfwlist +server=/drebeatsdeutschland.net/127.0.0.1#5335 +ipset=/drebeatsdeutschland.net/gfwlist +server=/bestbuyideax.com/127.0.0.1#5335 +ipset=/bestbuyideax.com/gfwlist +server=/beatsbydreirelandonlines.com/127.0.0.1#5335 +ipset=/beatsbydreirelandonlines.com/gfwlist +server=/ccnsite.com/127.0.0.1#5335 +ipset=/ccnsite.com/gfwlist +server=/o0-2.com/127.0.0.1#5335 +ipset=/o0-2.com/gfwlist +server=/volvotrucks.co.uk/127.0.0.1#5335 +ipset=/volvotrucks.co.uk/gfwlist +server=/attspecial.com/127.0.0.1#5335 +ipset=/attspecial.com/gfwlist +server=/adidas.pl/127.0.0.1#5335 +ipset=/adidas.pl/gfwlist +server=/google.la/127.0.0.1#5335 +ipset=/google.la/gfwlist +server=/huloo.cc/127.0.0.1#5335 +ipset=/huloo.cc/gfwlist +server=/miniinvasion.ca/127.0.0.1#5335 +ipset=/miniinvasion.ca/gfwlist +server=/intel.ca/127.0.0.1#5335 +ipset=/intel.ca/gfwlist +server=/httpwwwfacebook.com/127.0.0.1#5335 +ipset=/httpwwwfacebook.com/gfwlist +server=/idnike.com/127.0.0.1#5335 +ipset=/idnike.com/gfwlist +server=/mini.mq/127.0.0.1#5335 +ipset=/mini.mq/gfwlist +server=/pearsonactivelearn.com/127.0.0.1#5335 +ipset=/pearsonactivelearn.com/gfwlist +server=/linotype.com/127.0.0.1#5335 +ipset=/linotype.com/gfwlist +server=/bmw-connecteddrive.ch/127.0.0.1#5335 +ipset=/bmw-connecteddrive.ch/gfwlist +server=/bmw-motorrad.bh/127.0.0.1#5335 +ipset=/bmw-motorrad.bh/gfwlist +server=/alphera.ie/127.0.0.1#5335 +ipset=/alphera.ie/gfwlist +server=/zeeuk.com/127.0.0.1#5335 +ipset=/zeeuk.com/gfwlist +server=/bmw.hr/127.0.0.1#5335 +ipset=/bmw.hr/gfwlist +server=/finishinfo.se/127.0.0.1#5335 +ipset=/finishinfo.se/gfwlist +server=/bbycloud.com/127.0.0.1#5335 +ipset=/bbycloud.com/gfwlist +server=/realmilwaukeenow.com/127.0.0.1#5335 +ipset=/realmilwaukeenow.com/gfwlist +server=/bmw-motorrad.no/127.0.0.1#5335 +ipset=/bmw-motorrad.no/gfwlist +server=/icloudsetup.com/127.0.0.1#5335 +ipset=/icloudsetup.com/gfwlist +server=/pinterest.at/127.0.0.1#5335 +ipset=/pinterest.at/gfwlist +server=/itunesessentials.com/127.0.0.1#5335 +ipset=/itunesessentials.com/gfwlist +server=/netvigator.com/127.0.0.1#5335 +ipset=/netvigator.com/gfwlist +server=/eenike.com/127.0.0.1#5335 +ipset=/eenike.com/gfwlist +server=/cisco-returns.com/127.0.0.1#5335 +ipset=/cisco-returns.com/gfwlist +server=/apple.ro/127.0.0.1#5335 +ipset=/apple.ro/gfwlist +server=/netflix.com/127.0.0.1#5335 +ipset=/netflix.com/gfwlist +server=/appleexpo.eu/127.0.0.1#5335 +ipset=/appleexpo.eu/gfwlist +server=/magento.com/127.0.0.1#5335 +ipset=/magento.com/gfwlist +server=/dettolarabia.com/127.0.0.1#5335 +ipset=/dettolarabia.com/gfwlist +server=/trustwave.com/127.0.0.1#5335 +ipset=/trustwave.com/gfwlist +server=/encoretvb.com/127.0.0.1#5335 +ipset=/encoretvb.com/gfwlist +server=/starbucks.ad/127.0.0.1#5335 +ipset=/starbucks.ad/gfwlist +server=/eacodigos.com/127.0.0.1#5335 +ipset=/eacodigos.com/gfwlist +server=/intel.mw/127.0.0.1#5335 +ipset=/intel.mw/gfwlist +server=/slackdemo.com/127.0.0.1#5335 +ipset=/slackdemo.com/gfwlist +server=/ebay25.com/127.0.0.1#5335 +ipset=/ebay25.com/gfwlist +server=/charticulator.com/127.0.0.1#5335 +ipset=/charticulator.com/gfwlist +server=/fastlane.tools/127.0.0.1#5335 +ipset=/fastlane.tools/gfwlist +server=/kindgirls.com/127.0.0.1#5335 +ipset=/kindgirls.com/gfwlist +server=/hpfaqs.com/127.0.0.1#5335 +ipset=/hpfaqs.com/gfwlist +server=/mcdonalds.com/127.0.0.1#5335 +ipset=/mcdonalds.com/gfwlist +server=/sign.new/127.0.0.1#5335 +ipset=/sign.new/gfwlist +server=/chroniclesec.com/127.0.0.1#5335 +ipset=/chroniclesec.com/gfwlist +server=/yahoo.by/127.0.0.1#5335 +ipset=/yahoo.by/gfwlist +server=/voacambodia.com/127.0.0.1#5335 +ipset=/voacambodia.com/gfwlist +server=/cutt.ly/127.0.0.1#5335 +ipset=/cutt.ly/gfwlist +server=/sextop1.net/127.0.0.1#5335 +ipset=/sextop1.net/gfwlist +server=/hulugans.com/127.0.0.1#5335 +ipset=/hulugans.com/gfwlist +server=/realamericanstories.tv/127.0.0.1#5335 +ipset=/realamericanstories.tv/gfwlist +server=/bmw-gta.ca/127.0.0.1#5335 +ipset=/bmw-gta.ca/gfwlist +server=/favebook.com/127.0.0.1#5335 +ipset=/favebook.com/gfwlist +server=/beatsbydre-headphones.com/127.0.0.1#5335 +ipset=/beatsbydre-headphones.com/gfwlist +server=/marvelsuperwar.com/127.0.0.1#5335 +ipset=/marvelsuperwar.com/gfwlist +server=/swissid.ch/127.0.0.1#5335 +ipset=/swissid.ch/gfwlist +server=/fastlane.ci/127.0.0.1#5335 +ipset=/fastlane.ci/gfwlist +server=/applestore.com.tw/127.0.0.1#5335 +ipset=/applestore.com.tw/gfwlist +server=/xnxx-cdn.com/127.0.0.1#5335 +ipset=/xnxx-cdn.com/gfwlist +server=/applestore.com.ee/127.0.0.1#5335 +ipset=/applestore.com.ee/gfwlist +server=/tegrazone.co.kr/127.0.0.1#5335 +ipset=/tegrazone.co.kr/gfwlist +server=/maddenseason.org/127.0.0.1#5335 +ipset=/maddenseason.org/gfwlist +server=/drebeatsheadphones-nz.com/127.0.0.1#5335 +ipset=/drebeatsheadphones-nz.com/gfwlist +server=/bloomberg.fm/127.0.0.1#5335 +ipset=/bloomberg.fm/gfwlist +server=/vhxqa2.com/127.0.0.1#5335 +ipset=/vhxqa2.com/gfwlist +server=/mini.by/127.0.0.1#5335 +ipset=/mini.by/gfwlist +server=/picasa.com/127.0.0.1#5335 +ipset=/picasa.com/gfwlist +server=/zoom.com/127.0.0.1#5335 +ipset=/zoom.com/gfwlist +server=/xoom.com/127.0.0.1#5335 +ipset=/xoom.com/gfwlist +server=/pokemonbank.com/127.0.0.1#5335 +ipset=/pokemonbank.com/gfwlist +server=/adaptivecards.io/127.0.0.1#5335 +ipset=/adaptivecards.io/gfwlist +server=/i-book.net/127.0.0.1#5335 +ipset=/i-book.net/gfwlist +server=/salebeatslasteststyle4you.com/127.0.0.1#5335 +ipset=/salebeatslasteststyle4you.com/gfwlist +server=/google.tg/127.0.0.1#5335 +ipset=/google.tg/gfwlist +server=/ebay.ie/127.0.0.1#5335 +ipset=/ebay.ie/gfwlist +server=/eakorea.co.kr/127.0.0.1#5335 +ipset=/eakorea.co.kr/gfwlist +server=/microsoft.az/127.0.0.1#5335 +ipset=/microsoft.az/gfwlist +server=/doom.com/127.0.0.1#5335 +ipset=/doom.com/gfwlist +server=/yahoo.co.bw/127.0.0.1#5335 +ipset=/yahoo.co.bw/gfwlist +server=/nikemarketing.com/127.0.0.1#5335 +ipset=/nikemarketing.com/gfwlist +server=/dropbox.tech/127.0.0.1#5335 +ipset=/dropbox.tech/gfwlist +server=/cambridgeschoolshakespeare.com/127.0.0.1#5335 +ipset=/cambridgeschoolshakespeare.com/gfwlist +server=/onedinesfree.com/127.0.0.1#5335 +ipset=/onedinesfree.com/gfwlist +server=/miniccrc.ca/127.0.0.1#5335 +ipset=/miniccrc.ca/gfwlist +server=/diabloimmortal.com/127.0.0.1#5335 +ipset=/diabloimmortal.com/gfwlist +server=/espn.com/127.0.0.1#5335 +ipset=/espn.com/gfwlist +server=/nikkei.co.jp/127.0.0.1#5335 +ipset=/nikkei.co.jp/gfwlist +server=/paypal-secure.org/127.0.0.1#5335 +ipset=/paypal-secure.org/gfwlist +server=/venmo-touch.com/127.0.0.1#5335 +ipset=/venmo-touch.com/gfwlist +server=/mini-coupe.ca/127.0.0.1#5335 +ipset=/mini-coupe.ca/gfwlist +server=/bmw-sports.com/127.0.0.1#5335 +ipset=/bmw-sports.com/gfwlist +server=/akamaihd-staging.net/127.0.0.1#5335 +ipset=/akamaihd-staging.net/gfwlist +server=/realamericanstories.com/127.0.0.1#5335 +ipset=/realamericanstories.com/gfwlist +server=/google-syndication.com/127.0.0.1#5335 +ipset=/google-syndication.com/gfwlist +server=/google.berlin/127.0.0.1#5335 +ipset=/google.berlin/gfwlist +server=/marvel.com/127.0.0.1#5335 +ipset=/marvel.com/gfwlist +server=/xn--9kr7l.com/127.0.0.1#5335 +ipset=/xn--9kr7l.com/gfwlist +server=/beatscasque-france.com/127.0.0.1#5335 +ipset=/beatscasque-france.com/gfwlist +server=/bmw.ht/127.0.0.1#5335 +ipset=/bmw.ht/gfwlist +server=/yahoo.dk/127.0.0.1#5335 +ipset=/yahoo.dk/gfwlist +server=/mastercard.us/127.0.0.1#5335 +ipset=/mastercard.us/gfwlist +server=/vkmessenger.app/127.0.0.1#5335 +ipset=/vkmessenger.app/gfwlist +server=/bitsquare.io/127.0.0.1#5335 +ipset=/bitsquare.io/gfwlist +server=/spiritofecstasy.com/127.0.0.1#5335 +ipset=/spiritofecstasy.com/gfwlist +server=/paypal-donations.com/127.0.0.1#5335 +ipset=/paypal-donations.com/gfwlist +server=/ravm.tv/127.0.0.1#5335 +ipset=/ravm.tv/gfwlist +server=/starwarstheoldrepublic.com/127.0.0.1#5335 +ipset=/starwarstheoldrepublic.com/gfwlist +server=/asahicom.jp/127.0.0.1#5335 +ipset=/asahicom.jp/gfwlist +server=/gitbook.io/127.0.0.1#5335 +ipset=/gitbook.io/gfwlist +server=/visainfinite.ca/127.0.0.1#5335 +ipset=/visainfinite.ca/gfwlist +server=/bmw.cc/127.0.0.1#5335 +ipset=/bmw.cc/gfwlist +server=/foxnewsnetwork.com/127.0.0.1#5335 +ipset=/foxnewsnetwork.com/gfwlist +server=/visainfiniteluxuryhotels.ca/127.0.0.1#5335 +ipset=/visainfiniteluxuryhotels.ca/gfwlist +server=/2013beatsbydrdreonline.com/127.0.0.1#5335 +ipset=/2013beatsbydrdreonline.com/gfwlist +server=/bloombergstatus.com/127.0.0.1#5335 +ipset=/bloombergstatus.com/gfwlist +server=/yarininsuyu.com/127.0.0.1#5335 +ipset=/yarininsuyu.com/gfwlist +server=/monotype.com/127.0.0.1#5335 +ipset=/monotype.com/gfwlist +server=/starwarsbattlefront.com/127.0.0.1#5335 +ipset=/starwarsbattlefront.com/gfwlist +server=/visa.no/127.0.0.1#5335 +ipset=/visa.no/gfwlist +server=/realamericanstories.info/127.0.0.1#5335 +ipset=/realamericanstories.info/gfwlist +server=/disneyadsales.com/127.0.0.1#5335 +ipset=/disneyadsales.com/gfwlist +server=/needforspeedlightning.com/127.0.0.1#5335 +ipset=/needforspeedlightning.com/gfwlist +server=/fandom.com/127.0.0.1#5335 +ipset=/fandom.com/gfwlist +server=/ebaycom.com/127.0.0.1#5335 +ipset=/ebaycom.com/gfwlist +server=/tver.co.jp/127.0.0.1#5335 +ipset=/tver.co.jp/gfwlist +server=/fashionnike.com/127.0.0.1#5335 +ipset=/fashionnike.com/gfwlist +server=/foxnewsb2b.com/127.0.0.1#5335 +ipset=/foxnewsb2b.com/gfwlist +server=/iphoneacessorios.com.br/127.0.0.1#5335 +ipset=/iphoneacessorios.com.br/gfwlist +server=/financialsoccer.ca/127.0.0.1#5335 +ipset=/financialsoccer.ca/gfwlist +server=/fox26houston.com/127.0.0.1#5335 +ipset=/fox26houston.com/gfwlist +server=/upjav.cc/127.0.0.1#5335 +ipset=/upjav.cc/gfwlist +server=/blazor.net/127.0.0.1#5335 +ipset=/blazor.net/gfwlist +server=/facebcook.com/127.0.0.1#5335 +ipset=/facebcook.com/gfwlist +server=/nextwork.com.tw/127.0.0.1#5335 +ipset=/nextwork.com.tw/gfwlist +server=/blogspot.lt/127.0.0.1#5335 +ipset=/blogspot.lt/gfwlist +server=/firestonecomercial.cl/127.0.0.1#5335 +ipset=/firestonecomercial.cl/gfwlist +server=/onefifteen.org/127.0.0.1#5335 +ipset=/onefifteen.org/gfwlist +server=/life-global.org/127.0.0.1#5335 +ipset=/life-global.org/gfwlist +server=/ebay-authenticate.net/127.0.0.1#5335 +ipset=/ebay-authenticate.net/gfwlist +server=/pca.st/127.0.0.1#5335 +ipset=/pca.st/gfwlist +server=/nationalgeographic.com/127.0.0.1#5335 +ipset=/nationalgeographic.com/gfwlist +server=/volvotruckcenter.it/127.0.0.1#5335 +ipset=/volvotruckcenter.it/gfwlist +server=/blogspot.in/127.0.0.1#5335 +ipset=/blogspot.in/gfwlist +server=/feacbooke.com/127.0.0.1#5335 +ipset=/feacbooke.com/gfwlist +server=/bcovlive.io/127.0.0.1#5335 +ipset=/bcovlive.io/gfwlist +server=/wikihow.com/127.0.0.1#5335 +ipset=/wikihow.com/gfwlist +server=/mini-qatar.com/127.0.0.1#5335 +ipset=/mini-qatar.com/gfwlist +server=/volvotrucks.ee/127.0.0.1#5335 +ipset=/volvotrucks.ee/gfwlist +server=/xenoblade.com/127.0.0.1#5335 +ipset=/xenoblade.com/gfwlist +server=/magentoliveconference.com/127.0.0.1#5335 +ipset=/magentoliveconference.com/gfwlist +server=/omnitek.tv/127.0.0.1#5335 +ipset=/omnitek.tv/gfwlist +server=/monsterbeatsbydres.com/127.0.0.1#5335 +ipset=/monsterbeatsbydres.com/gfwlist +server=/epochtimes-bg.com/127.0.0.1#5335 +ipset=/epochtimes-bg.com/gfwlist +server=/starbucksrewardsstarland.com/127.0.0.1#5335 +ipset=/starbucksrewardsstarland.com/gfwlist +server=/udn.com.tw/127.0.0.1#5335 +ipset=/udn.com.tw/gfwlist +server=/mastercard.co.in/127.0.0.1#5335 +ipset=/mastercard.co.in/gfwlist +server=/bitballoon.com/127.0.0.1#5335 +ipset=/bitballoon.com/gfwlist +server=/mktorest.com/127.0.0.1#5335 +ipset=/mktorest.com/gfwlist +server=/epochtimes.com.tw/127.0.0.1#5335 +ipset=/epochtimes.com.tw/gfwlist +server=/cex.io/127.0.0.1#5335 +ipset=/cex.io/gfwlist +server=/volvopenta.com/127.0.0.1#5335 +ipset=/volvopenta.com/gfwlist +server=/faststone.org/127.0.0.1#5335 +ipset=/faststone.org/gfwlist +server=/youtube.com.tn/127.0.0.1#5335 +ipset=/youtube.com.tn/gfwlist +server=/googledrive.com/127.0.0.1#5335 +ipset=/googledrive.com/gfwlist +server=/mybmw.ca/127.0.0.1#5335 +ipset=/mybmw.ca/gfwlist +server=/strepsils.hu/127.0.0.1#5335 +ipset=/strepsils.hu/gfwlist +server=/ebayradio.com/127.0.0.1#5335 +ipset=/ebayradio.com/gfwlist +server=/swisssign-group.ch/127.0.0.1#5335 +ipset=/swisssign-group.ch/gfwlist +server=/realvision.com/127.0.0.1#5335 +ipset=/realvision.com/gfwlist +server=/attpurchasing.com/127.0.0.1#5335 +ipset=/attpurchasing.com/gfwlist +server=/apple-dns.net/127.0.0.1#5335 +ipset=/apple-dns.net/gfwlist +server=/ipod.com.hk/127.0.0.1#5335 +ipset=/ipod.com.hk/gfwlist +server=/bbgevent.com/127.0.0.1#5335 +ipset=/bbgevent.com/gfwlist +server=/espnqa.com/127.0.0.1#5335 +ipset=/espnqa.com/gfwlist +server=/travelexch.com/127.0.0.1#5335 +ipset=/travelexch.com/gfwlist +server=/bmw.com.co/127.0.0.1#5335 +ipset=/bmw.com.co/gfwlist +server=/londonreal.tv/127.0.0.1#5335 +ipset=/londonreal.tv/gfwlist +server=/adidas.dk/127.0.0.1#5335 +ipset=/adidas.dk/gfwlist +server=/yahoo.com.tj/127.0.0.1#5335 +ipset=/yahoo.com.tj/gfwlist +server=/gamer2-cds.cdn.hinet.net/127.0.0.1#5335 +ipset=/gamer2-cds.cdn.hinet.net/gfwlist +server=/ebayenterprise.info/127.0.0.1#5335 +ipset=/ebayenterprise.info/gfwlist +server=/yandex.ee/127.0.0.1#5335 +ipset=/yandex.ee/gfwlist +server=/beatsoutlet.net/127.0.0.1#5335 +ipset=/beatsoutlet.net/gfwlist +server=/starwarskids.com/127.0.0.1#5335 +ipset=/starwarskids.com/gfwlist +server=/amazonvideodirect.com/127.0.0.1#5335 +ipset=/amazonvideodirect.com/gfwlist +server=/trycloudflare.com/127.0.0.1#5335 +ipset=/trycloudflare.com/gfwlist +server=/dealbay.com/127.0.0.1#5335 +ipset=/dealbay.com/gfwlist +server=/opensuse.org/127.0.0.1#5335 +ipset=/opensuse.org/gfwlist +server=/bookclubgirl.com/127.0.0.1#5335 +ipset=/bookclubgirl.com/gfwlist +server=/attsuppliers.com/127.0.0.1#5335 +ipset=/attsuppliers.com/gfwlist +server=/finishinfo.jp/127.0.0.1#5335 +ipset=/finishinfo.jp/gfwlist +server=/hpdownloadstore.com/127.0.0.1#5335 +ipset=/hpdownloadstore.com/gfwlist +server=/newmonst1erbeatsto1re.com/127.0.0.1#5335 +ipset=/newmonst1erbeatsto1re.com/gfwlist +server=/townsvillebulletin.com.au/127.0.0.1#5335 +ipset=/townsvillebulletin.com.au/gfwlist +server=/headlinejobs.hk/127.0.0.1#5335 +ipset=/headlinejobs.hk/gfwlist +server=/huffpostbrasil.com/127.0.0.1#5335 +ipset=/huffpostbrasil.com/gfwlist +server=/mini.co.kr/127.0.0.1#5335 +ipset=/mini.co.kr/gfwlist +server=/appledaily.com.tw/127.0.0.1#5335 +ipset=/appledaily.com.tw/gfwlist +server=/facebook30.net/127.0.0.1#5335 +ipset=/facebook30.net/gfwlist +server=/mastercard.my/127.0.0.1#5335 +ipset=/mastercard.my/gfwlist +server=/dreamworks.com/127.0.0.1#5335 +ipset=/dreamworks.com/gfwlist +server=/digicert.com/127.0.0.1#5335 +ipset=/digicert.com/gfwlist +server=/canonical.com/127.0.0.1#5335 +ipset=/canonical.com/gfwlist +server=/straightouttasomewhere.com/127.0.0.1#5335 +ipset=/straightouttasomewhere.com/gfwlist +server=/volvotrucks.ro/127.0.0.1#5335 +ipset=/volvotrucks.ro/gfwlist +server=/bmwdealercareers.com/127.0.0.1#5335 +ipset=/bmwdealercareers.com/gfwlist +server=/canon-ois.qa/127.0.0.1#5335 +ipset=/canon-ois.qa/gfwlist +server=/dragonage.com/127.0.0.1#5335 +ipset=/dragonage.com/gfwlist +server=/netflixdnstest2.com/127.0.0.1#5335 +ipset=/netflixdnstest2.com/gfwlist +server=/weltweitwachsen.de/127.0.0.1#5335 +ipset=/weltweitwachsen.de/gfwlist +server=/visa.sx/127.0.0.1#5335 +ipset=/visa.sx/gfwlist +server=/xo104.com/127.0.0.1#5335 +ipset=/xo104.com/gfwlist +server=/aboutamazon.it/127.0.0.1#5335 +ipset=/aboutamazon.it/gfwlist +server=/cashpassport.com/127.0.0.1#5335 +ipset=/cashpassport.com/gfwlist +server=/facebookmarketingpartners.com/127.0.0.1#5335 +ipset=/facebookmarketingpartners.com/gfwlist +server=/jetfuelapps.com/127.0.0.1#5335 +ipset=/jetfuelapps.com/gfwlist +server=/osdn.net/127.0.0.1#5335 +ipset=/osdn.net/gfwlist +server=/bestbuy24x7solutions.com/127.0.0.1#5335 +ipset=/bestbuy24x7solutions.com/gfwlist +server=/applefinalcutproworld.com/127.0.0.1#5335 +ipset=/applefinalcutproworld.com/gfwlist +server=/youtube.com.ec/127.0.0.1#5335 +ipset=/youtube.com.ec/gfwlist +server=/icloudbox.net/127.0.0.1#5335 +ipset=/icloudbox.net/gfwlist +server=/google.kg/127.0.0.1#5335 +ipset=/google.kg/gfwlist +server=/paypal-proserv.com/127.0.0.1#5335 +ipset=/paypal-proserv.com/gfwlist +server=/cheapbeatsbydreonsale.com/127.0.0.1#5335 +ipset=/cheapbeatsbydreonsale.com/gfwlist +server=/zdassets.com/127.0.0.1#5335 +ipset=/zdassets.com/gfwlist +server=/localizecdn.com/127.0.0.1#5335 +ipset=/localizecdn.com/gfwlist +server=/office365tw.com/127.0.0.1#5335 +ipset=/office365tw.com/gfwlist +server=/onedrive.co.uk/127.0.0.1#5335 +ipset=/onedrive.co.uk/gfwlist +server=/businessinsider.mx/127.0.0.1#5335 +ipset=/businessinsider.mx/gfwlist +server=/github.blog/127.0.0.1#5335 +ipset=/github.blog/gfwlist +server=/yahoo.com.pk/127.0.0.1#5335 +ipset=/yahoo.com.pk/gfwlist +server=/paypal.us/127.0.0.1#5335 +ipset=/paypal.us/gfwlist +server=/macromedia.com/127.0.0.1#5335 +ipset=/macromedia.com/gfwlist +server=/appleone.club/127.0.0.1#5335 +ipset=/appleone.club/gfwlist +server=/volvobuses.tn/127.0.0.1#5335 +ipset=/volvobuses.tn/gfwlist +server=/admeld.com/127.0.0.1#5335 +ipset=/admeld.com/gfwlist +server=/worldsecuresystems.com/127.0.0.1#5335 +ipset=/worldsecuresystems.com/gfwlist +server=/fastly.net/127.0.0.1#5335 +ipset=/fastly.net/gfwlist +server=/scholar.google.com.pa/127.0.0.1#5335 +ipset=/scholar.google.com.pa/gfwlist +server=/aaex.uk/127.0.0.1#5335 +ipset=/aaex.uk/gfwlist +server=/voadeewanews.com/127.0.0.1#5335 +ipset=/voadeewanews.com/gfwlist +server=/bttzyw.com/127.0.0.1#5335 +ipset=/bttzyw.com/gfwlist +server=/gorin.jp/127.0.0.1#5335 +ipset=/gorin.jp/gfwlist +server=/verisign.co.uk/127.0.0.1#5335 +ipset=/verisign.co.uk/gfwlist +server=/singtaoopo.com/127.0.0.1#5335 +ipset=/singtaoopo.com/gfwlist +server=/eamirrorsedge.com/127.0.0.1#5335 +ipset=/eamirrorsedge.com/gfwlist +server=/ruinedking.com/127.0.0.1#5335 +ipset=/ruinedking.com/gfwlist +server=/monsterbeatsbydrenew.com/127.0.0.1#5335 +ipset=/monsterbeatsbydrenew.com/gfwlist +server=/centrino.com/127.0.0.1#5335 +ipset=/centrino.com/gfwlist +server=/paulsimon-music.com/127.0.0.1#5335 +ipset=/paulsimon-music.com/gfwlist +server=/facebook.cc/127.0.0.1#5335 +ipset=/facebook.cc/gfwlist +server=/beatsodre.com/127.0.0.1#5335 +ipset=/beatsodre.com/gfwlist +server=/duckduckgo.org/127.0.0.1#5335 +ipset=/duckduckgo.org/gfwlist +server=/bmwgroup-gaad.com/127.0.0.1#5335 +ipset=/bmwgroup-gaad.com/gfwlist +server=/simcity-buildit.com/127.0.0.1#5335 +ipset=/simcity-buildit.com/gfwlist +server=/microsoftiotinsiderlabs.com/127.0.0.1#5335 +ipset=/microsoftiotinsiderlabs.com/gfwlist +server=/volvopenta.de/127.0.0.1#5335 +ipset=/volvopenta.de/gfwlist +server=/mastercard.com.sg/127.0.0.1#5335 +ipset=/mastercard.com.sg/gfwlist +server=/businessinsider.com.pl/127.0.0.1#5335 +ipset=/businessinsider.com.pl/gfwlist +server=/yahoodns.net/127.0.0.1#5335 +ipset=/yahoodns.net/gfwlist +server=/geph.io/127.0.0.1#5335 +ipset=/geph.io/gfwlist +server=/mastercard.co.uk/127.0.0.1#5335 +ipset=/mastercard.co.uk/gfwlist +server=/adidas.com.tw/127.0.0.1#5335 +ipset=/adidas.com.tw/gfwlist +server=/cdnjs.com/127.0.0.1#5335 +ipset=/cdnjs.com/gfwlist +server=/canon-cee.com/127.0.0.1#5335 +ipset=/canon-cee.com/gfwlist +server=/feedly.com/127.0.0.1#5335 +ipset=/feedly.com/gfwlist +server=/newscdn.com.au/127.0.0.1#5335 +ipset=/newscdn.com.au/gfwlist +server=/nvidia.co.kr/127.0.0.1#5335 +ipset=/nvidia.co.kr/gfwlist +server=/ios-icloud.com/127.0.0.1#5335 +ipset=/ios-icloud.com/gfwlist +server=/bmw-connecteddrive.fr/127.0.0.1#5335 +ipset=/bmw-connecteddrive.fr/gfwlist +server=/youtube.ae/127.0.0.1#5335 +ipset=/youtube.ae/gfwlist +server=/blogspot.com.ng/127.0.0.1#5335 +ipset=/blogspot.com.ng/gfwlist +server=/aboutamazon.co.uk/127.0.0.1#5335 +ipset=/aboutamazon.co.uk/gfwlist +server=/netflav.com/127.0.0.1#5335 +ipset=/netflav.com/gfwlist +server=/adobecce.com/127.0.0.1#5335 +ipset=/adobecce.com/gfwlist +server=/statics-marketingsites-wcus-ms-com.akamaized.net/127.0.0.1#5335 +ipset=/statics-marketingsites-wcus-ms-com.akamaized.net/gfwlist +server=/garena.vn/127.0.0.1#5335 +ipset=/garena.vn/gfwlist +server=/intagrm.com/127.0.0.1#5335 +ipset=/intagrm.com/gfwlist +server=/zoom.us/127.0.0.1#5335 +ipset=/zoom.us/gfwlist +server=/mini.cl/127.0.0.1#5335 +ipset=/mini.cl/gfwlist +server=/xoom.us/127.0.0.1#5335 +ipset=/xoom.us/gfwlist +server=/thomsonreuters.com.au/127.0.0.1#5335 +ipset=/thomsonreuters.com.au/gfwlist +server=/amazontrust.com/127.0.0.1#5335 +ipset=/amazontrust.com/gfwlist +server=/facebookofsex.com/127.0.0.1#5335 +ipset=/facebookofsex.com/gfwlist +server=/googletagservices.com/127.0.0.1#5335 +ipset=/googletagservices.com/gfwlist +server=/nikebiz.info/127.0.0.1#5335 +ipset=/nikebiz.info/gfwlist +server=/googleacquisitionmigration.com/127.0.0.1#5335 +ipset=/googleacquisitionmigration.com/gfwlist +server=/i.org/127.0.0.1#5335 +ipset=/i.org/gfwlist +server=/hplfmedia.com/127.0.0.1#5335 +ipset=/hplfmedia.com/gfwlist +server=/srtcdn.net/127.0.0.1#5335 +ipset=/srtcdn.net/gfwlist +server=/canon.com.tw/127.0.0.1#5335 +ipset=/canon.com.tw/gfwlist +server=/monsterbeatsstore.com/127.0.0.1#5335 +ipset=/monsterbeatsstore.com/gfwlist +server=/bridgestonegolf.com/127.0.0.1#5335 +ipset=/bridgestonegolf.com/gfwlist +server=/starbucks.co.uk/127.0.0.1#5335 +ipset=/starbucks.co.uk/gfwlist +server=/slack-core.com/127.0.0.1#5335 +ipset=/slack-core.com/gfwlist +server=/travelexae.com/127.0.0.1#5335 +ipset=/travelexae.com/gfwlist +server=/pokemonblackwhite.com/127.0.0.1#5335 +ipset=/pokemonblackwhite.com/gfwlist +server=/w.org/127.0.0.1#5335 +ipset=/w.org/gfwlist +server=/x.org/127.0.0.1#5335 +ipset=/x.org/gfwlist +server=/bs-adreview.com/127.0.0.1#5335 +ipset=/bs-adreview.com/gfwlist +server=/swisssigner.ch/127.0.0.1#5335 +ipset=/swisssigner.ch/gfwlist +server=/wallet.com/127.0.0.1#5335 +ipset=/wallet.com/gfwlist +server=/yahoo.com.eg/127.0.0.1#5335 +ipset=/yahoo.com.eg/gfwlist +server=/disney.gr/127.0.0.1#5335 +ipset=/disney.gr/gfwlist +server=/viu.com/127.0.0.1#5335 +ipset=/viu.com/gfwlist +server=/optimumssl.com/127.0.0.1#5335 +ipset=/optimumssl.com/gfwlist +server=/warroom.org/127.0.0.1#5335 +ipset=/warroom.org/gfwlist +server=/vod-dash-uk-live.akamaized.net/127.0.0.1#5335 +ipset=/vod-dash-uk-live.akamaized.net/gfwlist +server=/uchicago.edu/127.0.0.1#5335 +ipset=/uchicago.edu/gfwlist +server=/reastatic.net/127.0.0.1#5335 +ipset=/reastatic.net/gfwlist +server=/eiu.com/127.0.0.1#5335 +ipset=/eiu.com/gfwlist +server=/ipod.ca/127.0.0.1#5335 +ipset=/ipod.ca/gfwlist +server=/cdn77.com/127.0.0.1#5335 +ipset=/cdn77.com/gfwlist +server=/mastercard.com.kw/127.0.0.1#5335 +ipset=/mastercard.com.kw/gfwlist +server=/webex.com.mx/127.0.0.1#5335 +ipset=/webex.com.mx/gfwlist +server=/intel.cl/127.0.0.1#5335 +ipset=/intel.cl/gfwlist +server=/dropboxpartners.com/127.0.0.1#5335 +ipset=/dropboxpartners.com/gfwlist +server=/scholar.google.gr/127.0.0.1#5335 +ipset=/scholar.google.gr/gfwlist +server=/bitflyer.com/127.0.0.1#5335 +ipset=/bitflyer.com/gfwlist +server=/appleworldwidedeveloper.hb-api.omtrdc.net/127.0.0.1#5335 +ipset=/appleworldwidedeveloper.hb-api.omtrdc.net/gfwlist +server=/oneapi.com/127.0.0.1#5335 +ipset=/oneapi.com/gfwlist +server=/nentindo.net/127.0.0.1#5335 +ipset=/nentindo.net/gfwlist +server=/lysol.com.mx/127.0.0.1#5335 +ipset=/lysol.com.mx/gfwlist +server=/buddymedia.com/127.0.0.1#5335 +ipset=/buddymedia.com/gfwlist +server=/ipod.com.fr/127.0.0.1#5335 +ipset=/ipod.com.fr/gfwlist +server=/thegithubshop.com/127.0.0.1#5335 +ipset=/thegithubshop.com/gfwlist +server=/google.com.gh/127.0.0.1#5335 +ipset=/google.com.gh/gfwlist +server=/npr.org/127.0.0.1#5335 +ipset=/npr.org/gfwlist +server=/bit.ly/127.0.0.1#5335 +ipset=/bit.ly/gfwlist +server=/voabambara.com/127.0.0.1#5335 +ipset=/voabambara.com/gfwlist +server=/gvt2.com/127.0.0.1#5335 +ipset=/gvt2.com/gfwlist +server=/veet.co.kr/127.0.0.1#5335 +ipset=/veet.co.kr/gfwlist +server=/visiontimes.it/127.0.0.1#5335 +ipset=/visiontimes.it/gfwlist +server=/bestbuyphotoworkshoptours.com/127.0.0.1#5335 +ipset=/bestbuyphotoworkshoptours.com/gfwlist +server=/paypal-center.info/127.0.0.1#5335 +ipset=/paypal-center.info/gfwlist +server=/sourceforge.com/127.0.0.1#5335 +ipset=/sourceforge.com/gfwlist +server=/51dh.site/127.0.0.1#5335 +ipset=/51dh.site/gfwlist +server=/zohowebstatic.com/127.0.0.1#5335 +ipset=/zohowebstatic.com/gfwlist +server=/themathsfactor.com/127.0.0.1#5335 +ipset=/themathsfactor.com/gfwlist +server=/paypal-marketing.com/127.0.0.1#5335 +ipset=/paypal-marketing.com/gfwlist +server=/hackthedrive.com/127.0.0.1#5335 +ipset=/hackthedrive.com/gfwlist +server=/liketwice.com/127.0.0.1#5335 +ipset=/liketwice.com/gfwlist +server=/target.com/127.0.0.1#5335 +ipset=/target.com/gfwlist +server=/viu.tv/127.0.0.1#5335 +ipset=/viu.tv/gfwlist +server=/reurl.cc/127.0.0.1#5335 +ipset=/reurl.cc/gfwlist +server=/blogspot.hr/127.0.0.1#5335 +ipset=/blogspot.hr/gfwlist +server=/theuab.net/127.0.0.1#5335 +ipset=/theuab.net/gfwlist +server=/geek-squad-support.com/127.0.0.1#5335 +ipset=/geek-squad-support.com/gfwlist +server=/djreprints.com/127.0.0.1#5335 +ipset=/djreprints.com/gfwlist +server=/miniso.ge/127.0.0.1#5335 +ipset=/miniso.ge/gfwlist +server=/pearsononlineacademy.com/127.0.0.1#5335 +ipset=/pearsononlineacademy.com/gfwlist +server=/bbcverticals.com/127.0.0.1#5335 +ipset=/bbcverticals.com/gfwlist +server=/cloudflareclient.com/127.0.0.1#5335 +ipset=/cloudflareclient.com/gfwlist +server=/campuslondon.com/127.0.0.1#5335 +ipset=/campuslondon.com/gfwlist +server=/facebook4business.com/127.0.0.1#5335 +ipset=/facebook4business.com/gfwlist +server=/realclearenergy.org/127.0.0.1#5335 +ipset=/realclearenergy.org/gfwlist +server=/minimotoringrewards.com/127.0.0.1#5335 +ipset=/minimotoringrewards.com/gfwlist +server=/cnnikebrand.com/127.0.0.1#5335 +ipset=/cnnikebrand.com/gfwlist +server=/zenodo.org/127.0.0.1#5335 +ipset=/zenodo.org/gfwlist +server=/fiotolia.com/127.0.0.1#5335 +ipset=/fiotolia.com/gfwlist +server=/pornbest.org/127.0.0.1#5335 +ipset=/pornbest.org/gfwlist +server=/visa.hk/127.0.0.1#5335 +ipset=/visa.hk/gfwlist +server=/bmw-connecteddrive.lt/127.0.0.1#5335 +ipset=/bmw-connecteddrive.lt/gfwlist +server=/monsterdrebeats-usa.net/127.0.0.1#5335 +ipset=/monsterdrebeats-usa.net/gfwlist +server=/foxneo.com/127.0.0.1#5335 +ipset=/foxneo.com/gfwlist +server=/bmw-connecteddrive.bg/127.0.0.1#5335 +ipset=/bmw-connecteddrive.bg/gfwlist +server=/scholar.google.com.my/127.0.0.1#5335 +ipset=/scholar.google.com.my/gfwlist +server=/netflixtechblog.com/127.0.0.1#5335 +ipset=/netflixtechblog.com/gfwlist +server=/vmware-techcenter.com/127.0.0.1#5335 +ipset=/vmware-techcenter.com/gfwlist +server=/electronicarts.fr/127.0.0.1#5335 +ipset=/electronicarts.fr/gfwlist +server=/autodraw.com/127.0.0.1#5335 +ipset=/autodraw.com/gfwlist +server=/tdesktop.com/127.0.0.1#5335 +ipset=/tdesktop.com/gfwlist +server=/snapchat.com/127.0.0.1#5335 +ipset=/snapchat.com/gfwlist +server=/live.eu/127.0.0.1#5335 +ipset=/live.eu/gfwlist +server=/cnbcfm.com/127.0.0.1#5335 +ipset=/cnbcfm.com/gfwlist +server=/tiresplus.com/127.0.0.1#5335 +ipset=/tiresplus.com/gfwlist +server=/bmwzentrum.com/127.0.0.1#5335 +ipset=/bmwzentrum.com/gfwlist +server=/mastercard.de/127.0.0.1#5335 +ipset=/mastercard.de/gfwlist +server=/msinnovationchallenge.com/127.0.0.1#5335 +ipset=/msinnovationchallenge.com/gfwlist +server=/alphabet.org.uk/127.0.0.1#5335 +ipset=/alphabet.org.uk/gfwlist +server=/attstadium.com/127.0.0.1#5335 +ipset=/attstadium.com/gfwlist +server=/alibabacloud.com.tw/127.0.0.1#5335 +ipset=/alibabacloud.com.tw/gfwlist +server=/yahoo.com.uy/127.0.0.1#5335 +ipset=/yahoo.com.uy/gfwlist +server=/hbogoasia.hk/127.0.0.1#5335 +ipset=/hbogoasia.hk/gfwlist +server=/bmw-connecteddrive.co.nz/127.0.0.1#5335 +ipset=/bmw-connecteddrive.co.nz/gfwlist +server=/nvidia.eu/127.0.0.1#5335 +ipset=/nvidia.eu/gfwlist +server=/hotmail.net/127.0.0.1#5335 +ipset=/hotmail.net/gfwlist +server=/youtube.com.ly/127.0.0.1#5335 +ipset=/youtube.com.ly/gfwlist +server=/vipbeatsbydre.com/127.0.0.1#5335 +ipset=/vipbeatsbydre.com/gfwlist +server=/dettol.com.my/127.0.0.1#5335 +ipset=/dettol.com.my/gfwlist +server=/caime.xyz/127.0.0.1#5335 +ipset=/caime.xyz/gfwlist +server=/pornhubpremium.com/127.0.0.1#5335 +ipset=/pornhubpremium.com/gfwlist +server=/monsterbeatsshops.net/127.0.0.1#5335 +ipset=/monsterbeatsshops.net/gfwlist +server=/pvzheroes.com/127.0.0.1#5335 +ipset=/pvzheroes.com/gfwlist +server=/persagg.com/127.0.0.1#5335 +ipset=/persagg.com/gfwlist +server=/dungeonkeeper.cn/127.0.0.1#5335 +ipset=/dungeonkeeper.cn/gfwlist +server=/volvotruckcenter.nl/127.0.0.1#5335 +ipset=/volvotruckcenter.nl/gfwlist +server=/bmw-motorrad.com.pe/127.0.0.1#5335 +ipset=/bmw-motorrad.com.pe/gfwlist +server=/enfabebe.com/127.0.0.1#5335 +ipset=/enfabebe.com/gfwlist +server=/covid19rx.org/127.0.0.1#5335 +ipset=/covid19rx.org/gfwlist +server=/bmwgroup.jobs/127.0.0.1#5335 +ipset=/bmwgroup.jobs/gfwlist +server=/nike23.com/127.0.0.1#5335 +ipset=/nike23.com/gfwlist +server=/homedepot-static.com/127.0.0.1#5335 +ipset=/homedepot-static.com/gfwlist +server=/imtagram.com/127.0.0.1#5335 +ipset=/imtagram.com/gfwlist +server=/leagueoflegends.co.kr/127.0.0.1#5335 +ipset=/leagueoflegends.co.kr/gfwlist +server=/bmw-motorrad.co.kr/127.0.0.1#5335 +ipset=/bmw-motorrad.co.kr/gfwlist +server=/webobjects.net/127.0.0.1#5335 +ipset=/webobjects.net/gfwlist +server=/google.org/127.0.0.1#5335 +ipset=/google.org/gfwlist +server=/mastercard.com.mx/127.0.0.1#5335 +ipset=/mastercard.com.mx/gfwlist +server=/instagrampartners.com/127.0.0.1#5335 +ipset=/instagrampartners.com/gfwlist +server=/enfamama.com.ph/127.0.0.1#5335 +ipset=/enfamama.com.ph/gfwlist +server=/integral7.com/127.0.0.1#5335 +ipset=/integral7.com/gfwlist +server=/mini.co.il/127.0.0.1#5335 +ipset=/mini.co.il/gfwlist +server=/madshi.net/127.0.0.1#5335 +ipset=/madshi.net/gfwlist +server=/visa.com/127.0.0.1#5335 +ipset=/visa.com/gfwlist +server=/azuresmartspaces.net/127.0.0.1#5335 +ipset=/azuresmartspaces.net/gfwlist +server=/techstreet.com/127.0.0.1#5335 +ipset=/techstreet.com/gfwlist +server=/vanish.es/127.0.0.1#5335 +ipset=/vanish.es/gfwlist +server=/kkbox.com.tw/127.0.0.1#5335 +ipset=/kkbox.com.tw/gfwlist +server=/darkness-risen.com/127.0.0.1#5335 +ipset=/darkness-risen.com/gfwlist +server=/github.io/127.0.0.1#5335 +ipset=/github.io/gfwlist +server=/adsensecustomsearchads.com/127.0.0.1#5335 +ipset=/adsensecustomsearchads.com/gfwlist +server=/apisof.net/127.0.0.1#5335 +ipset=/apisof.net/gfwlist +server=/mastercard.com.gt/127.0.0.1#5335 +ipset=/mastercard.com.gt/gfwlist +server=/applestore.co.uk/127.0.0.1#5335 +ipset=/applestore.co.uk/gfwlist +server=/uun97.com/127.0.0.1#5335 +ipset=/uun97.com/gfwlist +server=/nodesource.com/127.0.0.1#5335 +ipset=/nodesource.com/gfwlist +server=/verisign.com.vn/127.0.0.1#5335 +ipset=/verisign.com.vn/gfwlist +server=/paypal.jp/127.0.0.1#5335 +ipset=/paypal.jp/gfwlist +server=/thehulubraintrust.com/127.0.0.1#5335 +ipset=/thehulubraintrust.com/gfwlist +server=/cloudc.one/127.0.0.1#5335 +ipset=/cloudc.one/gfwlist +server=/whereilive.com.au/127.0.0.1#5335 +ipset=/whereilive.com.au/gfwlist +server=/microsoftsilverlight.com/127.0.0.1#5335 +ipset=/microsoftsilverlight.com/gfwlist +server=/bmw-motorrad.fi/127.0.0.1#5335 +ipset=/bmw-motorrad.fi/gfwlist +server=/mega.io/127.0.0.1#5335 +ipset=/mega.io/gfwlist +server=/psg-int-eastus.cloudapp.net/127.0.0.1#5335 +ipset=/psg-int-eastus.cloudapp.net/gfwlist +server=/youtube.cat/127.0.0.1#5335 +ipset=/youtube.cat/gfwlist +server=/whatbrowser.org/127.0.0.1#5335 +ipset=/whatbrowser.org/gfwlist +server=/intel.com.tw/127.0.0.1#5335 +ipset=/intel.com.tw/gfwlist +server=/globalsign.nl/127.0.0.1#5335 +ipset=/globalsign.nl/gfwlist +server=/shuziyimin.org/127.0.0.1#5335 +ipset=/shuziyimin.org/gfwlist +server=/mini.my/127.0.0.1#5335 +ipset=/mini.my/gfwlist +server=/sonypicturestelevision.com/127.0.0.1#5335 +ipset=/sonypicturestelevision.com/gfwlist +server=/sale-nikeshoes.com/127.0.0.1#5335 +ipset=/sale-nikeshoes.com/gfwlist +server=/duckduckgo.com.tw/127.0.0.1#5335 +ipset=/duckduckgo.com.tw/gfwlist +server=/wsjmediakit.com/127.0.0.1#5335 +ipset=/wsjmediakit.com/gfwlist +server=/facebook-login.com/127.0.0.1#5335 +ipset=/facebook-login.com/gfwlist +server=/charlotte-anime.jp/127.0.0.1#5335 +ipset=/charlotte-anime.jp/gfwlist +server=/amerikayidzayn.com/127.0.0.1#5335 +ipset=/amerikayidzayn.com/gfwlist +server=/beatsbydreaustraliaonline.com/127.0.0.1#5335 +ipset=/beatsbydreaustraliaonline.com/gfwlist +server=/sonystoragemedia.co.jp/127.0.0.1#5335 +ipset=/sonystoragemedia.co.jp/gfwlist +server=/scholar.google.fi/127.0.0.1#5335 +ipset=/scholar.google.fi/gfwlist +server=/blz-contentstack.com/127.0.0.1#5335 +ipset=/blz-contentstack.com/gfwlist +server=/visa.com.gy/127.0.0.1#5335 +ipset=/visa.com.gy/gfwlist +server=/myq2.com/127.0.0.1#5335 +ipset=/myq2.com/gfwlist +server=/tg.dev/127.0.0.1#5335 +ipset=/tg.dev/gfwlist +server=/cheapmonsterbeatsbydrdre.com/127.0.0.1#5335 +ipset=/cheapmonsterbeatsbydrdre.com/gfwlist +server=/scientificamerican.com/127.0.0.1#5335 +ipset=/scientificamerican.com/gfwlist +server=/cheapbeatsbydreshop.com/127.0.0.1#5335 +ipset=/cheapbeatsbydreshop.com/gfwlist +server=/ebayopensource.com/127.0.0.1#5335 +ipset=/ebayopensource.com/gfwlist +server=/volvotrucks.co.na/127.0.0.1#5335 +ipset=/volvotrucks.co.na/gfwlist +server=/dynacw.co.jp/127.0.0.1#5335 +ipset=/dynacw.co.jp/gfwlist +server=/nintendo.fr/127.0.0.1#5335 +ipset=/nintendo.fr/gfwlist +server=/bestbuy-audio.com/127.0.0.1#5335 +ipset=/bestbuy-audio.com/gfwlist +server=/dazndn.com/127.0.0.1#5335 +ipset=/dazndn.com/gfwlist +server=/hpsuresupply.com/127.0.0.1#5335 +ipset=/hpsuresupply.com/gfwlist +server=/foxneodigital.com/127.0.0.1#5335 +ipset=/foxneodigital.com/gfwlist +server=/d100.net/127.0.0.1#5335 +ipset=/d100.net/gfwlist +server=/techhub.ms/127.0.0.1#5335 +ipset=/techhub.ms/gfwlist +server=/vgg8.com/127.0.0.1#5335 +ipset=/vgg8.com/gfwlist +server=/mini.no/127.0.0.1#5335 +ipset=/mini.no/gfwlist +server=/ultimaforever.com/127.0.0.1#5335 +ipset=/ultimaforever.com/gfwlist +server=/accountkit.com/127.0.0.1#5335 +ipset=/accountkit.com/gfwlist +server=/facebookcovers.org/127.0.0.1#5335 +ipset=/facebookcovers.org/gfwlist +server=/besztbuy.com/127.0.0.1#5335 +ipset=/besztbuy.com/gfwlist +server=/canon.com.mk/127.0.0.1#5335 +ipset=/canon.com.mk/gfwlist +server=/applemusicfestival.com/127.0.0.1#5335 +ipset=/applemusicfestival.com/gfwlist +server=/monsterbeatsbydre-nz.com/127.0.0.1#5335 +ipset=/monsterbeatsbydre-nz.com/gfwlist +server=/notion.new/127.0.0.1#5335 +ipset=/notion.new/gfwlist +server=/scholar.google.co.th/127.0.0.1#5335 +ipset=/scholar.google.co.th/gfwlist +server=/lp99.pw/127.0.0.1#5335 +ipset=/lp99.pw/gfwlist +server=/visa.com.sv/127.0.0.1#5335 +ipset=/visa.com.sv/gfwlist +server=/bmw-group.com/127.0.0.1#5335 +ipset=/bmw-group.com/gfwlist +server=/ieeeaps.org/127.0.0.1#5335 +ipset=/ieeeaps.org/gfwlist +server=/iphone-vip4.com/127.0.0.1#5335 +ipset=/iphone-vip4.com/gfwlist +server=/beatsbydreheadphonesolo.com/127.0.0.1#5335 +ipset=/beatsbydreheadphonesolo.com/gfwlist +server=/compose-spec.io/127.0.0.1#5335 +ipset=/compose-spec.io/gfwlist +server=/drebeats-singapore.com/127.0.0.1#5335 +ipset=/drebeats-singapore.com/gfwlist +server=/radiomango.fm/127.0.0.1#5335 +ipset=/radiomango.fm/gfwlist +server=/disneylatino.com/127.0.0.1#5335 +ipset=/disneylatino.com/gfwlist +server=/grupobmw.com/127.0.0.1#5335 +ipset=/grupobmw.com/gfwlist +server=/minisolife.co.za/127.0.0.1#5335 +ipset=/minisolife.co.za/gfwlist +server=/fox-news.com/127.0.0.1#5335 +ipset=/fox-news.com/gfwlist +server=/monsterbeatsbydrdrecanada.com/127.0.0.1#5335 +ipset=/monsterbeatsbydrdrecanada.com/gfwlist +server=/pinterest.co.kr/127.0.0.1#5335 +ipset=/pinterest.co.kr/gfwlist +server=/localbitcoins.com/127.0.0.1#5335 +ipset=/localbitcoins.com/gfwlist +server=/zeit-world.org/127.0.0.1#5335 +ipset=/zeit-world.org/gfwlist +server=/acmvalidations.com/127.0.0.1#5335 +ipset=/acmvalidations.com/gfwlist +server=/rewrite-anime.tv/127.0.0.1#5335 +ipset=/rewrite-anime.tv/gfwlist +server=/fastly-terrarium.com/127.0.0.1#5335 +ipset=/fastly-terrarium.com/gfwlist +server=/adobehiddentreasures.com/127.0.0.1#5335 +ipset=/adobehiddentreasures.com/gfwlist +server=/appleid.hamburg/127.0.0.1#5335 +ipset=/appleid.hamburg/gfwlist +server=/comsoc.org/127.0.0.1#5335 +ipset=/comsoc.org/gfwlist +server=/enfamil.pl/127.0.0.1#5335 +ipset=/enfamil.pl/gfwlist +server=/blogspot.hu/127.0.0.1#5335 +ipset=/blogspot.hu/gfwlist +server=/mastercard.com.pe/127.0.0.1#5335 +ipset=/mastercard.com.pe/gfwlist +server=/nikeairhuarache.com/127.0.0.1#5335 +ipset=/nikeairhuarache.com/gfwlist +server=/aboutfacebook.com/127.0.0.1#5335 +ipset=/aboutfacebook.com/gfwlist +server=/ebayexpress.sg/127.0.0.1#5335 +ipset=/ebayexpress.sg/gfwlist +server=/mydirectgroove.com/127.0.0.1#5335 +ipset=/mydirectgroove.com/gfwlist +server=/91porn.com/127.0.0.1#5335 +ipset=/91porn.com/gfwlist +server=/air-nike-shoes.com/127.0.0.1#5335 +ipset=/air-nike-shoes.com/gfwlist +server=/ieeedeis.org/127.0.0.1#5335 +ipset=/ieeedeis.org/gfwlist +server=/bmw-tunisia.com/127.0.0.1#5335 +ipset=/bmw-tunisia.com/gfwlist +server=/alphera.ca/127.0.0.1#5335 +ipset=/alphera.ca/gfwlist +server=/ibeatsbydre.com/127.0.0.1#5335 +ipset=/ibeatsbydre.com/gfwlist +server=/spotify.design/127.0.0.1#5335 +ipset=/spotify.design/gfwlist +server=/nflhotsalejerseys.com/127.0.0.1#5335 +ipset=/nflhotsalejerseys.com/gfwlist +server=/codethemicrobit.com/127.0.0.1#5335 +ipset=/codethemicrobit.com/gfwlist +server=/durex.lv/127.0.0.1#5335 +ipset=/durex.lv/gfwlist +server=/wp-themes.com/127.0.0.1#5335 +ipset=/wp-themes.com/gfwlist +server=/ipadmini.lk/127.0.0.1#5335 +ipset=/ipadmini.lk/gfwlist +server=/humblebundle.com/127.0.0.1#5335 +ipset=/humblebundle.com/gfwlist +server=/shadowsocks.com/127.0.0.1#5335 +ipset=/shadowsocks.com/gfwlist +server=/rumble.com/127.0.0.1#5335 +ipset=/rumble.com/gfwlist +server=/archiveofourown.net/127.0.0.1#5335 +ipset=/archiveofourown.net/gfwlist +server=/volvotrucks.bg/127.0.0.1#5335 +ipset=/volvotrucks.bg/gfwlist +server=/a0pple.net/127.0.0.1#5335 +ipset=/a0pple.net/gfwlist +server=/studywatchbyverily.org/127.0.0.1#5335 +ipset=/studywatchbyverily.org/gfwlist +server=/vilavpn2.xyz/127.0.0.1#5335 +ipset=/vilavpn2.xyz/gfwlist +server=/homedepot.com/127.0.0.1#5335 +ipset=/homedepot.com/gfwlist +server=/protonmail.com/127.0.0.1#5335 +ipset=/protonmail.com/gfwlist +server=/niconico.com/127.0.0.1#5335 +ipset=/niconico.com/gfwlist +server=/scholar.google.hn/127.0.0.1#5335 +ipset=/scholar.google.hn/gfwlist +server=/youtube.com.es/127.0.0.1#5335 +ipset=/youtube.com.es/gfwlist +server=/headphones-cool.com/127.0.0.1#5335 +ipset=/headphones-cool.com/gfwlist +server=/office.net/127.0.0.1#5335 +ipset=/office.net/gfwlist +server=/movefrees.com/127.0.0.1#5335 +ipset=/movefrees.com/gfwlist +server=/paypal-notice.com/127.0.0.1#5335 +ipset=/paypal-notice.com/gfwlist +server=/medium.com/127.0.0.1#5335 +ipset=/medium.com/gfwlist +server=/insidemacintosh.com/127.0.0.1#5335 +ipset=/insidemacintosh.com/gfwlist +server=/alphera.de/127.0.0.1#5335 +ipset=/alphera.de/gfwlist +server=/gslink.us/127.0.0.1#5335 +ipset=/gslink.us/gfwlist +server=/ehwiki.org/127.0.0.1#5335 +ipset=/ehwiki.org/gfwlist +server=/i-o-u.info/127.0.0.1#5335 +ipset=/i-o-u.info/gfwlist +server=/mini.pt/127.0.0.1#5335 +ipset=/mini.pt/gfwlist +server=/nintendo.co.kr/127.0.0.1#5335 +ipset=/nintendo.co.kr/gfwlist +server=/bmw.am/127.0.0.1#5335 +ipset=/bmw.am/gfwlist +server=/myfoxsanfran.com/127.0.0.1#5335 +ipset=/myfoxsanfran.com/gfwlist +server=/bmw.com.ni/127.0.0.1#5335 +ipset=/bmw.com.ni/gfwlist +server=/visafintechfasttrack.com/127.0.0.1#5335 +ipset=/visafintechfasttrack.com/gfwlist +server=/quantil.com/127.0.0.1#5335 +ipset=/quantil.com/gfwlist +server=/hpconnected.com/127.0.0.1#5335 +ipset=/hpconnected.com/gfwlist +server=/beatspills.com/127.0.0.1#5335 +ipset=/beatspills.com/gfwlist +server=/bmw.lu/127.0.0.1#5335 +ipset=/bmw.lu/gfwlist +server=/volvobuses.ru/127.0.0.1#5335 +ipset=/volvobuses.ru/gfwlist +server=/realtype.jp/127.0.0.1#5335 +ipset=/realtype.jp/gfwlist +server=/hackfacebook.com/127.0.0.1#5335 +ipset=/hackfacebook.com/gfwlist +server=/emac.in/127.0.0.1#5335 +ipset=/emac.in/gfwlist +server=/n3ro.net/127.0.0.1#5335 +ipset=/n3ro.net/gfwlist +server=/disneyredirects.com/127.0.0.1#5335 +ipset=/disneyredirects.com/gfwlist +server=/wordpress.com/127.0.0.1#5335 +ipset=/wordpress.com/gfwlist +server=/bridgestone.com.co/127.0.0.1#5335 +ipset=/bridgestone.com.co/gfwlist +server=/wsjshop.com/127.0.0.1#5335 +ipset=/wsjshop.com/gfwlist +server=/sony-europe.com/127.0.0.1#5335 +ipset=/sony-europe.com/gfwlist +server=/paypal-optimizer.com/127.0.0.1#5335 +ipset=/paypal-optimizer.com/gfwlist +server=/soirt4.fun/127.0.0.1#5335 +ipset=/soirt4.fun/gfwlist +server=/personaltrainermath.com/127.0.0.1#5335 +ipset=/personaltrainermath.com/gfwlist +server=/rhodeislandbmw.com/127.0.0.1#5335 +ipset=/rhodeislandbmw.com/gfwlist +server=/chinaclothesstore.com/127.0.0.1#5335 +ipset=/chinaclothesstore.com/gfwlist +server=/economist.com/127.0.0.1#5335 +ipset=/economist.com/gfwlist +server=/facebpook.com/127.0.0.1#5335 +ipset=/facebpook.com/gfwlist +server=/beatsbydre-headphonesshop.com/127.0.0.1#5335 +ipset=/beatsbydre-headphonesshop.com/gfwlist +server=/google.cf/127.0.0.1#5335 +ipset=/google.cf/gfwlist +server=/dicela.net/127.0.0.1#5335 +ipset=/dicela.net/gfwlist +server=/famifun.com.tw/127.0.0.1#5335 +ipset=/famifun.com.tw/gfwlist +server=/stockagainstphotography.com/127.0.0.1#5335 +ipset=/stockagainstphotography.com/gfwlist +server=/wto.org/127.0.0.1#5335 +ipset=/wto.org/gfwlist +server=/directv.com/127.0.0.1#5335 +ipset=/directv.com/gfwlist +server=/beatsbestdeals.com/127.0.0.1#5335 +ipset=/beatsbestdeals.com/gfwlist +server=/bmwdcsnet.net/127.0.0.1#5335 +ipset=/bmwdcsnet.net/gfwlist +server=/bmw-connecteddrive.pl/127.0.0.1#5335 +ipset=/bmw-connecteddrive.pl/gfwlist +server=/applestore.com.bn/127.0.0.1#5335 +ipset=/applestore.com.bn/gfwlist +server=/intel.sa/127.0.0.1#5335 +ipset=/intel.sa/gfwlist +server=/visa.com.dm/127.0.0.1#5335 +ipset=/visa.com.dm/gfwlist +server=/facebookloginhelp.net/127.0.0.1#5335 +ipset=/facebookloginhelp.net/gfwlist +server=/applestore.cc/127.0.0.1#5335 +ipset=/applestore.cc/gfwlist +server=/itunbes.com/127.0.0.1#5335 +ipset=/itunbes.com/gfwlist +server=/enfabebe.com.do/127.0.0.1#5335 +ipset=/enfabebe.com.do/gfwlist +server=/btec.co.uk/127.0.0.1#5335 +ipset=/btec.co.uk/gfwlist +server=/bmw.be/127.0.0.1#5335 +ipset=/bmw.be/gfwlist +server=/rocksdb.org/127.0.0.1#5335 +ipset=/rocksdb.org/gfwlist +server=/akamaihd.net/127.0.0.1#5335 +ipset=/akamaihd.net/gfwlist +server=/veet.com.mx/127.0.0.1#5335 +ipset=/veet.com.mx/gfwlist +server=/flowtype.org/127.0.0.1#5335 +ipset=/flowtype.org/gfwlist +server=/alivercm.com/127.0.0.1#5335 +ipset=/alivercm.com/gfwlist +server=/futpromos.com/127.0.0.1#5335 +ipset=/futpromos.com/gfwlist +server=/bmw.com.au/127.0.0.1#5335 +ipset=/bmw.com.au/gfwlist +server=/oxfordscholarlyeditions.com/127.0.0.1#5335 +ipset=/oxfordscholarlyeditions.com/gfwlist +server=/enfagrow.com.my/127.0.0.1#5335 +ipset=/enfagrow.com.my/gfwlist +server=/blogspot.vn/127.0.0.1#5335 +ipset=/blogspot.vn/gfwlist +server=/webkitgtk.org/127.0.0.1#5335 +ipset=/webkitgtk.org/gfwlist +server=/ebaytradingassistant.com/127.0.0.1#5335 +ipset=/ebaytradingassistant.com/gfwlist +server=/bmw.co.id/127.0.0.1#5335 +ipset=/bmw.co.id/gfwlist +server=/debug.com/127.0.0.1#5335 +ipset=/debug.com/gfwlist +server=/mcrouter.org/127.0.0.1#5335 +ipset=/mcrouter.org/gfwlist +server=/hpstore.com/127.0.0.1#5335 +ipset=/hpstore.com/gfwlist +server=/nxtdig.com.hk/127.0.0.1#5335 +ipset=/nxtdig.com.hk/gfwlist +server=/mi9.com.au/127.0.0.1#5335 +ipset=/mi9.com.au/gfwlist +server=/beats4.net/127.0.0.1#5335 +ipset=/beats4.net/gfwlist +server=/shoping.com/127.0.0.1#5335 +ipset=/shoping.com/gfwlist +server=/bmw-connecteddrive.de/127.0.0.1#5335 +ipset=/bmw-connecteddrive.de/gfwlist +server=/hotmail.co/127.0.0.1#5335 +ipset=/hotmail.co/gfwlist +server=/akamaietpcompromisedcnctest.com/127.0.0.1#5335 +ipset=/akamaietpcompromisedcnctest.com/gfwlist +server=/mini.com.do/127.0.0.1#5335 +ipset=/mini.com.do/gfwlist +server=/sonypicturestelevisiongames.com/127.0.0.1#5335 +ipset=/sonypicturestelevisiongames.com/gfwlist +server=/facecook.com/127.0.0.1#5335 +ipset=/facecook.com/gfwlist +server=/bitfinex.com/127.0.0.1#5335 +ipset=/bitfinex.com/gfwlist +server=/monsterbeatsheadphone.com/127.0.0.1#5335 +ipset=/monsterbeatsheadphone.com/gfwlist +server=/verisign.sg/127.0.0.1#5335 +ipset=/verisign.sg/gfwlist +server=/intel.mk/127.0.0.1#5335 +ipset=/intel.mk/gfwlist +server=/bmw-connecteddrive.se/127.0.0.1#5335 +ipset=/bmw-connecteddrive.se/gfwlist +server=/paypalsurvey.com/127.0.0.1#5335 +ipset=/paypalsurvey.com/gfwlist +server=/bmw-calgary.ca/127.0.0.1#5335 +ipset=/bmw-calgary.ca/gfwlist +server=/foxmediacloud.com/127.0.0.1#5335 +ipset=/foxmediacloud.com/gfwlist +server=/cloudflaressl.com/127.0.0.1#5335 +ipset=/cloudflaressl.com/gfwlist +server=/kastatic.org/127.0.0.1#5335 +ipset=/kastatic.org/gfwlist +server=/beatsneon.com/127.0.0.1#5335 +ipset=/beatsneon.com/gfwlist +server=/savvyshopper.net.au/127.0.0.1#5335 +ipset=/savvyshopper.net.au/gfwlist +server=/reckittbenckiser.net/127.0.0.1#5335 +ipset=/reckittbenckiser.net/gfwlist +server=/foxsports-chicago.com/127.0.0.1#5335 +ipset=/foxsports-chicago.com/gfwlist +server=/kindleoasisnews.com/127.0.0.1#5335 +ipset=/kindleoasisnews.com/gfwlist +server=/xboxplayanywhere.com/127.0.0.1#5335 +ipset=/xboxplayanywhere.com/gfwlist +server=/hulugermany.com/127.0.0.1#5335 +ipset=/hulugermany.com/gfwlist +server=/foxnewsaffiliates.com/127.0.0.1#5335 +ipset=/foxnewsaffiliates.com/gfwlist +server=/beatsdreinau.com/127.0.0.1#5335 +ipset=/beatsdreinau.com/gfwlist +server=/web.app/127.0.0.1#5335 +ipset=/web.app/gfwlist +server=/canon.sk/127.0.0.1#5335 +ipset=/canon.sk/gfwlist +server=/supremacy.com/127.0.0.1#5335 +ipset=/supremacy.com/gfwlist +server=/cooliphonecasesstore.com/127.0.0.1#5335 +ipset=/cooliphonecasesstore.com/gfwlist +server=/appleaccount.net/127.0.0.1#5335 +ipset=/appleaccount.net/gfwlist +server=/paypal-support.com/127.0.0.1#5335 +ipset=/paypal-support.com/gfwlist +server=/trithucvn.org/127.0.0.1#5335 +ipset=/trithucvn.org/gfwlist +server=/mini-connected.de/127.0.0.1#5335 +ipset=/mini-connected.de/gfwlist +server=/appleid-applemx.com/127.0.0.1#5335 +ipset=/appleid-applemx.com/gfwlist +server=/google.co.id/127.0.0.1#5335 +ipset=/google.co.id/gfwlist +server=/computingreviews.com/127.0.0.1#5335 +ipset=/computingreviews.com/gfwlist +server=/nejm.org/127.0.0.1#5335 +ipset=/nejm.org/gfwlist +server=/lantern.io/127.0.0.1#5335 +ipset=/lantern.io/gfwlist +server=/cnbc.com/127.0.0.1#5335 +ipset=/cnbc.com/gfwlist +server=/wise-research.com/127.0.0.1#5335 +ipset=/wise-research.com/gfwlist +server=/pixiv.co.jp/127.0.0.1#5335 +ipset=/pixiv.co.jp/gfwlist +server=/nurofen.cz/127.0.0.1#5335 +ipset=/nurofen.cz/gfwlist +server=/harpercollinschristian.com/127.0.0.1#5335 +ipset=/harpercollinschristian.com/gfwlist +server=/directvmurfreesborotn.com/127.0.0.1#5335 +ipset=/directvmurfreesborotn.com/gfwlist +server=/xbox.eu/127.0.0.1#5335 +ipset=/xbox.eu/gfwlist +server=/ctfassets.net/127.0.0.1#5335 +ipset=/ctfassets.net/gfwlist +server=/beibao.com/127.0.0.1#5335 +ipset=/beibao.com/gfwlist +server=/faccebookk.com/127.0.0.1#5335 +ipset=/faccebookk.com/gfwlist +server=/foxsports.com/127.0.0.1#5335 +ipset=/foxsports.com/gfwlist +server=/advertisercommunity.com/127.0.0.1#5335 +ipset=/advertisercommunity.com/gfwlist +server=/google.com.kw/127.0.0.1#5335 +ipset=/google.com.kw/gfwlist +server=/qualcomm.com.tw/127.0.0.1#5335 +ipset=/qualcomm.com.tw/gfwlist +server=/glasamerike.net/127.0.0.1#5335 +ipset=/glasamerike.net/gfwlist +server=/pearsoninstitute.ac.za/127.0.0.1#5335 +ipset=/pearsoninstitute.ac.za/gfwlist +server=/thesimssocial.com/127.0.0.1#5335 +ipset=/thesimssocial.com/gfwlist +server=/facboox.com/127.0.0.1#5335 +ipset=/facboox.com/gfwlist +server=/mini.es/127.0.0.1#5335 +ipset=/mini.es/gfwlist +server=/lysol.co.cr/127.0.0.1#5335 +ipset=/lysol.co.cr/gfwlist +server=/travelex.be/127.0.0.1#5335 +ipset=/travelex.be/gfwlist +server=/google.tm/127.0.0.1#5335 +ipset=/google.tm/gfwlist +server=/unity.com/127.0.0.1#5335 +ipset=/unity.com/gfwlist +server=/mini-egypt.com/127.0.0.1#5335 +ipset=/mini-egypt.com/gfwlist +server=/wipower.com/127.0.0.1#5335 +ipset=/wipower.com/gfwlist +server=/disneynow.com/127.0.0.1#5335 +ipset=/disneynow.com/gfwlist +server=/nettyinternet.com/127.0.0.1#5335 +ipset=/nettyinternet.com/gfwlist +server=/webex.com/127.0.0.1#5335 +ipset=/webex.com/gfwlist +server=/chicagolandbmw.com/127.0.0.1#5335 +ipset=/chicagolandbmw.com/gfwlist +server=/bmw.ba/127.0.0.1#5335 +ipset=/bmw.ba/gfwlist +server=/brightcovecdn.com/127.0.0.1#5335 +ipset=/brightcovecdn.com/gfwlist +server=/harperacademic.com/127.0.0.1#5335 +ipset=/harperacademic.com/gfwlist +server=/keepmovingwithmovefree.com/127.0.0.1#5335 +ipset=/keepmovingwithmovefree.com/gfwlist +server=/bridgestone.com/127.0.0.1#5335 +ipset=/bridgestone.com/gfwlist +server=/vk-portal.net/127.0.0.1#5335 +ipset=/vk-portal.net/gfwlist +server=/webobjects.com/127.0.0.1#5335 +ipset=/webobjects.com/gfwlist +server=/nikestore.com/127.0.0.1#5335 +ipset=/nikestore.com/gfwlist +server=/pinterest.com.mx/127.0.0.1#5335 +ipset=/pinterest.com.mx/gfwlist +server=/bmw-connecteddrive.it/127.0.0.1#5335 +ipset=/bmw-connecteddrive.it/gfwlist +server=/volvobuses.it/127.0.0.1#5335 +ipset=/volvobuses.it/gfwlist +server=/bmw-motorrad.sv/127.0.0.1#5335 +ipset=/bmw-motorrad.sv/gfwlist +server=/fox47.com/127.0.0.1#5335 +ipset=/fox47.com/gfwlist +server=/hpceo.com/127.0.0.1#5335 +ipset=/hpceo.com/gfwlist +server=/faceboox.com/127.0.0.1#5335 +ipset=/faceboox.com/gfwlist +server=/votolia.com/127.0.0.1#5335 +ipset=/votolia.com/gfwlist +server=/bmw-connecteddrive.be/127.0.0.1#5335 +ipset=/bmw-connecteddrive.be/gfwlist +server=/sni1dcb6gl.wpc.edgecastcdn.net/127.0.0.1#5335 +ipset=/sni1dcb6gl.wpc.edgecastcdn.net/gfwlist +server=/cotolia.com/127.0.0.1#5335 +ipset=/cotolia.com/gfwlist +server=/mirrorsedge.jp/127.0.0.1#5335 +ipset=/mirrorsedge.jp/gfwlist +server=/paypal.so/127.0.0.1#5335 +ipset=/paypal.so/gfwlist +server=/fotolia.com/127.0.0.1#5335 +ipset=/fotolia.com/gfwlist +server=/aiv-cdn.net/127.0.0.1#5335 +ipset=/aiv-cdn.net/gfwlist +server=/pinterest.com/127.0.0.1#5335 +ipset=/pinterest.com/gfwlist +server=/mktdns.com/127.0.0.1#5335 +ipset=/mktdns.com/gfwlist +server=/vkuservideo.com/127.0.0.1#5335 +ipset=/vkuservideo.com/gfwlist +server=/mit.edu/127.0.0.1#5335 +ipset=/mit.edu/gfwlist +server=/myfbfans.com/127.0.0.1#5335 +ipset=/myfbfans.com/gfwlist +server=/pugetsoundbmw.com/127.0.0.1#5335 +ipset=/pugetsoundbmw.com/gfwlist +server=/nikefootballjersey.com/127.0.0.1#5335 +ipset=/nikefootballjersey.com/gfwlist +server=/buycheapbeatsdreuk.com/127.0.0.1#5335 +ipset=/buycheapbeatsdreuk.com/gfwlist +server=/googleearth.com/127.0.0.1#5335 +ipset=/googleearth.com/gfwlist +server=/mytimesplus.co.uk/127.0.0.1#5335 +ipset=/mytimesplus.co.uk/gfwlist +server=/cmu.edu/127.0.0.1#5335 +ipset=/cmu.edu/gfwlist +server=/megaphone.fm/127.0.0.1#5335 +ipset=/megaphone.fm/gfwlist +server=/alphabet.jp/127.0.0.1#5335 +ipset=/alphabet.jp/gfwlist +server=/attssl.com/127.0.0.1#5335 +ipset=/attssl.com/gfwlist +server=/akastream.net/127.0.0.1#5335 +ipset=/akastream.net/gfwlist +server=/appletvapp.apple/127.0.0.1#5335 +ipset=/appletvapp.apple/gfwlist +server=/paypal-integration.com/127.0.0.1#5335 +ipset=/paypal-integration.com/gfwlist +server=/clarivate.com/127.0.0.1#5335 +ipset=/clarivate.com/gfwlist +server=/blogspot.com.ee/127.0.0.1#5335 +ipset=/blogspot.com.ee/gfwlist +server=/pccwsolutions.com/127.0.0.1#5335 +ipset=/pccwsolutions.com/gfwlist +server=/pwabuilder.com/127.0.0.1#5335 +ipset=/pwabuilder.com/gfwlist +server=/fox32.com/127.0.0.1#5335 +ipset=/fox32.com/gfwlist +server=/dowjones.io/127.0.0.1#5335 +ipset=/dowjones.io/gfwlist +server=/faceobk.com/127.0.0.1#5335 +ipset=/faceobk.com/gfwlist +server=/vanish.nl/127.0.0.1#5335 +ipset=/vanish.nl/gfwlist +server=/adx.promo/127.0.0.1#5335 +ipset=/adx.promo/gfwlist +server=/facebooksignup.net/127.0.0.1#5335 +ipset=/facebooksignup.net/gfwlist +server=/disney.co.jp/127.0.0.1#5335 +ipset=/disney.co.jp/gfwlist +server=/vfsco.com.tr/127.0.0.1#5335 +ipset=/vfsco.com.tr/gfwlist +server=/ebayopensource.net/127.0.0.1#5335 +ipset=/ebayopensource.net/gfwlist +server=/chillingo.com/127.0.0.1#5335 +ipset=/chillingo.com/gfwlist +server=/alphera.com/127.0.0.1#5335 +ipset=/alphera.com/gfwlist +server=/adidas.se/127.0.0.1#5335 +ipset=/adidas.se/gfwlist +server=/vfsco.co.za/127.0.0.1#5335 +ipset=/vfsco.co.za/gfwlist +server=/faceboik.com/127.0.0.1#5335 +ipset=/faceboik.com/gfwlist +server=/linux.org/127.0.0.1#5335 +ipset=/linux.org/gfwlist +server=/minidurham.com/127.0.0.1#5335 +ipset=/minidurham.com/gfwlist +server=/localpresshk.com/127.0.0.1#5335 +ipset=/localpresshk.com/gfwlist +server=/herokuapp.com/127.0.0.1#5335 +ipset=/herokuapp.com/gfwlist +server=/beatsmusic.com/127.0.0.1#5335 +ipset=/beatsmusic.com/gfwlist +server=/youtube.jp/127.0.0.1#5335 +ipset=/youtube.jp/gfwlist +server=/google.cl/127.0.0.1#5335 +ipset=/google.cl/gfwlist +server=/openstreetmap.com/127.0.0.1#5335 +ipset=/openstreetmap.com/gfwlist +server=/heads4-ak-spotify-com.akamaized.net/127.0.0.1#5335 +ipset=/heads4-ak-spotify-com.akamaized.net/gfwlist +server=/virtuata.com/127.0.0.1#5335 +ipset=/virtuata.com/gfwlist +server=/freehulu.com/127.0.0.1#5335 +ipset=/freehulu.com/gfwlist +server=/shinhangmc.com/127.0.0.1#5335 +ipset=/shinhangmc.com/gfwlist +server=/gettyimages.fr/127.0.0.1#5335 +ipset=/gettyimages.fr/gfwlist +server=/beatsbydre.jp/127.0.0.1#5335 +ipset=/beatsbydre.jp/gfwlist +server=/fury.blog/127.0.0.1#5335 +ipset=/fury.blog/gfwlist +server=/waa.tw/127.0.0.1#5335 +ipset=/waa.tw/gfwlist +server=/whatsapp.tv/127.0.0.1#5335 +ipset=/whatsapp.tv/gfwlist +server=/yahoo.co.mz/127.0.0.1#5335 +ipset=/yahoo.co.mz/gfwlist +server=/nextwork.com.hk/127.0.0.1#5335 +ipset=/nextwork.com.hk/gfwlist +server=/s-nbcnews.com/127.0.0.1#5335 +ipset=/s-nbcnews.com/gfwlist +server=/intel.gt/127.0.0.1#5335 +ipset=/intel.gt/gfwlist +server=/bmw.by/127.0.0.1#5335 +ipset=/bmw.by/gfwlist +server=/mitpressjournals.org/127.0.0.1#5335 +ipset=/mitpressjournals.org/gfwlist +server=/visasignature.co.kr/127.0.0.1#5335 +ipset=/visasignature.co.kr/gfwlist +server=/xn--d1acpjx3f.xn--p1ai/127.0.0.1#5335 +ipset=/xn--d1acpjx3f.xn--p1ai/gfwlist +server=/microsoft.by/127.0.0.1#5335 +ipset=/microsoft.by/gfwlist +server=/vfsco.dk/127.0.0.1#5335 +ipset=/vfsco.dk/gfwlist +server=/skysports.fr/127.0.0.1#5335 +ipset=/skysports.fr/gfwlist +server=/riotgames.info/127.0.0.1#5335 +ipset=/riotgames.info/gfwlist +server=/ipadair.hk/127.0.0.1#5335 +ipset=/ipadair.hk/gfwlist +server=/web.dev/127.0.0.1#5335 +ipset=/web.dev/gfwlist +server=/webmoneyinfo.com/127.0.0.1#5335 +ipset=/webmoneyinfo.com/gfwlist +server=/amazonalexavoxcon.com/127.0.0.1#5335 +ipset=/amazonalexavoxcon.com/gfwlist +server=/pricelessafrica.com/127.0.0.1#5335 +ipset=/pricelessafrica.com/gfwlist +server=/appe-store.com/127.0.0.1#5335 +ipset=/appe-store.com/gfwlist +server=/bmwclassic.com/127.0.0.1#5335 +ipset=/bmwclassic.com/gfwlist +server=/fox42kptm.com/127.0.0.1#5335 +ipset=/fox42kptm.com/gfwlist +server=/stunnel.org/127.0.0.1#5335 +ipset=/stunnel.org/gfwlist +server=/html5rocks.com/127.0.0.1#5335 +ipset=/html5rocks.com/gfwlist +server=/eduplus.hk/127.0.0.1#5335 +ipset=/eduplus.hk/gfwlist +server=/ieee-aess.org/127.0.0.1#5335 +ipset=/ieee-aess.org/gfwlist +server=/pinterest.nz/127.0.0.1#5335 +ipset=/pinterest.nz/gfwlist +server=/bmw-motorrad.gt/127.0.0.1#5335 +ipset=/bmw-motorrad.gt/gfwlist +server=/bmw-connecteddrive.ae/127.0.0.1#5335 +ipset=/bmw-connecteddrive.ae/gfwlist +server=/multicurrencycashpassport.com/127.0.0.1#5335 +ipset=/multicurrencycashpassport.com/gfwlist +server=/travelex.co.in/127.0.0.1#5335 +ipset=/travelex.co.in/gfwlist +server=/zukunftswerkstatt.de/127.0.0.1#5335 +ipset=/zukunftswerkstatt.de/gfwlist +server=/youtube.qa/127.0.0.1#5335 +ipset=/youtube.qa/gfwlist +server=/pinterest.com.pe/127.0.0.1#5335 +ipset=/pinterest.com.pe/gfwlist +server=/fox10news.com/127.0.0.1#5335 +ipset=/fox10news.com/gfwlist +server=/starwarsgalacticstarcruiser.com/127.0.0.1#5335 +ipset=/starwarsgalacticstarcruiser.com/gfwlist +server=/mepn.com/127.0.0.1#5335 +ipset=/mepn.com/gfwlist +server=/intel.co.kr/127.0.0.1#5335 +ipset=/intel.co.kr/gfwlist +server=/nikesbdunks.net/127.0.0.1#5335 +ipset=/nikesbdunks.net/gfwlist +server=/vfsco.be/127.0.0.1#5335 +ipset=/vfsco.be/gfwlist +server=/thestandnews.com/127.0.0.1#5335 +ipset=/thestandnews.com/gfwlist +server=/perfectkickz.net/127.0.0.1#5335 +ipset=/perfectkickz.net/gfwlist +server=/beatswirelesscheap.com/127.0.0.1#5335 +ipset=/beatswirelesscheap.com/gfwlist +server=/atnext.com/127.0.0.1#5335 +ipset=/atnext.com/gfwlist +server=/huluasks.com/127.0.0.1#5335 +ipset=/huluasks.com/gfwlist +server=/rust-lang.org/127.0.0.1#5335 +ipset=/rust-lang.org/gfwlist +server=/fairmarket.com/127.0.0.1#5335 +ipset=/fairmarket.com/gfwlist +server=/facebookfacebook.com/127.0.0.1#5335 +ipset=/facebookfacebook.com/gfwlist +server=/chocolatey.org/127.0.0.1#5335 +ipset=/chocolatey.org/gfwlist +server=/youtube.com.qa/127.0.0.1#5335 +ipset=/youtube.com.qa/gfwlist +server=/dynacw.com.tw/127.0.0.1#5335 +ipset=/dynacw.com.tw/gfwlist +server=/mzed.com/127.0.0.1#5335 +ipset=/mzed.com/gfwlist +server=/canon.uz/127.0.0.1#5335 +ipset=/canon.uz/gfwlist +server=/bbestmall.com/127.0.0.1#5335 +ipset=/bbestmall.com/gfwlist +server=/tegrazone.jp/127.0.0.1#5335 +ipset=/tegrazone.jp/gfwlist +server=/shopeemobile.com/127.0.0.1#5335 +ipset=/shopeemobile.com/gfwlist +server=/mini-connected.com/127.0.0.1#5335 +ipset=/mini-connected.com/gfwlist +server=/bmw-lebanon.com/127.0.0.1#5335 +ipset=/bmw-lebanon.com/gfwlist +server=/pcloud.tw/127.0.0.1#5335 +ipset=/pcloud.tw/gfwlist +server=/visapcsdirect.com/127.0.0.1#5335 +ipset=/visapcsdirect.com/gfwlist +server=/mini.jp/127.0.0.1#5335 +ipset=/mini.jp/gfwlist +server=/microsoftreactor.info/127.0.0.1#5335 +ipset=/microsoftreactor.info/gfwlist +server=/nikepioneer.com/127.0.0.1#5335 +ipset=/nikepioneer.com/gfwlist +server=/mini.com.tw/127.0.0.1#5335 +ipset=/mini.com.tw/gfwlist +server=/applepencil.net/127.0.0.1#5335 +ipset=/applepencil.net/gfwlist +server=/vagrantup.com/127.0.0.1#5335 +ipset=/vagrantup.com/gfwlist +server=/intelsecurity.com/127.0.0.1#5335 +ipset=/intelsecurity.com/gfwlist +server=/angelbeats.jp/127.0.0.1#5335 +ipset=/angelbeats.jp/gfwlist +server=/yahoo.nl/127.0.0.1#5335 +ipset=/yahoo.nl/gfwlist +server=/telex.cc/127.0.0.1#5335 +ipset=/telex.cc/gfwlist +server=/heraldsun.com.au/127.0.0.1#5335 +ipset=/heraldsun.com.au/gfwlist +server=/golosameriki.com/127.0.0.1#5335 +ipset=/golosameriki.com/gfwlist +server=/mujikorea.net/127.0.0.1#5335 +ipset=/mujikorea.net/gfwlist +server=/facebookgroups.com/127.0.0.1#5335 +ipset=/facebookgroups.com/gfwlist +server=/wogx.com/127.0.0.1#5335 +ipset=/wogx.com/gfwlist +server=/akamaiphillipines.com/127.0.0.1#5335 +ipset=/akamaiphillipines.com/gfwlist +server=/thefacebook.net/127.0.0.1#5335 +ipset=/thefacebook.net/gfwlist +server=/applehealth.com.hk/127.0.0.1#5335 +ipset=/applehealth.com.hk/gfwlist +server=/onlineinstagram.com/127.0.0.1#5335 +ipset=/onlineinstagram.com/gfwlist +server=/velostrata.com/127.0.0.1#5335 +ipset=/velostrata.com/gfwlist +server=/bridgestonenationalfleet.com/127.0.0.1#5335 +ipset=/bridgestonenationalfleet.com/gfwlist +server=/hkcnews.com/127.0.0.1#5335 +ipset=/hkcnews.com/gfwlist +server=/patentgold.net/127.0.0.1#5335 +ipset=/patentgold.net/gfwlist +server=/anb.org/127.0.0.1#5335 +ipset=/anb.org/gfwlist +server=/openstreetmap.net/127.0.0.1#5335 +ipset=/openstreetmap.net/gfwlist +server=/scholar.google.at/127.0.0.1#5335 +ipset=/scholar.google.at/gfwlist +server=/intagram.com/127.0.0.1#5335 +ipset=/intagram.com/gfwlist +server=/minihk.com/127.0.0.1#5335 +ipset=/minihk.com/gfwlist +server=/dlgarenanow-a.akamaihd.net/127.0.0.1#5335 +ipset=/dlgarenanow-a.akamaihd.net/gfwlist +server=/disney-discount.com/127.0.0.1#5335 +ipset=/disney-discount.com/gfwlist +server=/facebook-support.org/127.0.0.1#5335 +ipset=/facebook-support.org/gfwlist +server=/dnaindia.com/127.0.0.1#5335 +ipset=/dnaindia.com/gfwlist +server=/githubhackathon.com/127.0.0.1#5335 +ipset=/githubhackathon.com/gfwlist +server=/csis-prod.s3.amazonaws.com/127.0.0.1#5335 +ipset=/csis-prod.s3.amazonaws.com/gfwlist +server=/steamvideo-a.akamaihd.net/127.0.0.1#5335 +ipset=/steamvideo-a.akamaihd.net/gfwlist +server=/fifastreet3.com/127.0.0.1#5335 +ipset=/fifastreet3.com/gfwlist +server=/dtci.technology/127.0.0.1#5335 +ipset=/dtci.technology/gfwlist +server=/chinaeconomicreview.com/127.0.0.1#5335 +ipset=/chinaeconomicreview.com/gfwlist +server=/theintelstore.com/127.0.0.1#5335 +ipset=/theintelstore.com/gfwlist +server=/fastlylb.net/127.0.0.1#5335 +ipset=/fastlylb.net/gfwlist +server=/monsterbeatscasques.com/127.0.0.1#5335 +ipset=/monsterbeatscasques.com/gfwlist +server=/paypalhere.info/127.0.0.1#5335 +ipset=/paypalhere.info/gfwlist +server=/alphabet.es/127.0.0.1#5335 +ipset=/alphabet.es/gfwlist +server=/sharethis.com/127.0.0.1#5335 +ipset=/sharethis.com/gfwlist +server=/attvoip.com/127.0.0.1#5335 +ipset=/attvoip.com/gfwlist +server=/intel.ee/127.0.0.1#5335 +ipset=/intel.ee/gfwlist +server=/verisign.ch/127.0.0.1#5335 +ipset=/verisign.ch/gfwlist +server=/docker.io/127.0.0.1#5335 +ipset=/docker.io/gfwlist +server=/firefox.com/127.0.0.1#5335 +ipset=/firefox.com/gfwlist +server=/nike.us/127.0.0.1#5335 +ipset=/nike.us/gfwlist +server=/logicoolg.com/127.0.0.1#5335 +ipset=/logicoolg.com/gfwlist +server=/parler.com/127.0.0.1#5335 +ipset=/parler.com/gfwlist +server=/ebayde.com/127.0.0.1#5335 +ipset=/ebayde.com/gfwlist +server=/makesenseofdata.com/127.0.0.1#5335 +ipset=/makesenseofdata.com/gfwlist +server=/mini.se/127.0.0.1#5335 +ipset=/mini.se/gfwlist +server=/mythicgames.com/127.0.0.1#5335 +ipset=/mythicgames.com/gfwlist +server=/applecomputer.co.in/127.0.0.1#5335 +ipset=/applecomputer.co.in/gfwlist +server=/offresspecialesbmw.ca/127.0.0.1#5335 +ipset=/offresspecialesbmw.ca/gfwlist +server=/ietf.org/127.0.0.1#5335 +ipset=/ietf.org/gfwlist +server=/ebay.com.mt/127.0.0.1#5335 +ipset=/ebay.com.mt/gfwlist +server=/foxcredit.com/127.0.0.1#5335 +ipset=/foxcredit.com/gfwlist +server=/minid.no/127.0.0.1#5335 +ipset=/minid.no/gfwlist +server=/jav101.com/127.0.0.1#5335 +ipset=/jav101.com/gfwlist +server=/planetminecraft.com/127.0.0.1#5335 +ipset=/planetminecraft.com/gfwlist +server=/disneycareers.com/127.0.0.1#5335 +ipset=/disneycareers.com/gfwlist +server=/nationalaustraliaban.tt.omtrdc.net/127.0.0.1#5335 +ipset=/nationalaustraliaban.tt.omtrdc.net/gfwlist +server=/spacely.com.au/127.0.0.1#5335 +ipset=/spacely.com.au/gfwlist +server=/vfsco.kr/127.0.0.1#5335 +ipset=/vfsco.kr/gfwlist +server=/apple-watch.com.ru/127.0.0.1#5335 +ipset=/apple-watch.com.ru/gfwlist +server=/thetimes.ie/127.0.0.1#5335 +ipset=/thetimes.ie/gfwlist +server=/bmw-motorrad.ee/127.0.0.1#5335 +ipset=/bmw-motorrad.ee/gfwlist +server=/paypalgivingfund.org/127.0.0.1#5335 +ipset=/paypalgivingfund.org/gfwlist +server=/volvobuses.com.br/127.0.0.1#5335 +ipset=/volvobuses.com.br/gfwlist +server=/vimeo.com/127.0.0.1#5335 +ipset=/vimeo.com/gfwlist +server=/minikelowna.com/127.0.0.1#5335 +ipset=/minikelowna.com/gfwlist +server=/tkb008.xyz/127.0.0.1#5335 +ipset=/tkb008.xyz/gfwlist +server=/starbucks.fr/127.0.0.1#5335 +ipset=/starbucks.fr/gfwlist +server=/minecraftshop.com/127.0.0.1#5335 +ipset=/minecraftshop.com/gfwlist +server=/gettyimages.fi/127.0.0.1#5335 +ipset=/gettyimages.fi/gfwlist +server=/voadeewaradio.com/127.0.0.1#5335 +ipset=/voadeewaradio.com/gfwlist +server=/facebood.com/127.0.0.1#5335 +ipset=/facebood.com/gfwlist +server=/ntdtv.ru/127.0.0.1#5335 +ipset=/ntdtv.ru/gfwlist +server=/bmwarchiv.de/127.0.0.1#5335 +ipset=/bmwarchiv.de/gfwlist +server=/visabg.com/127.0.0.1#5335 +ipset=/visabg.com/gfwlist +server=/ts.la/127.0.0.1#5335 +ipset=/ts.la/gfwlist +server=/iphone5casescovers.com/127.0.0.1#5335 +ipset=/iphone5casescovers.com/gfwlist +server=/volvotrucks.co.mz/127.0.0.1#5335 +ipset=/volvotrucks.co.mz/gfwlist +server=/alpinelinux.org/127.0.0.1#5335 +ipset=/alpinelinux.org/gfwlist +server=/dba.dk/127.0.0.1#5335 +ipset=/dba.dk/gfwlist +server=/kicu.tv/127.0.0.1#5335 +ipset=/kicu.tv/gfwlist +server=/mvk.com/127.0.0.1#5335 +ipset=/mvk.com/gfwlist +server=/scoreland.com/127.0.0.1#5335 +ipset=/scoreland.com/gfwlist +server=/fburl.com/127.0.0.1#5335 +ipset=/fburl.com/gfwlist +server=/beatselectronicsllc.tt.omtrdc.net/127.0.0.1#5335 +ipset=/beatselectronicsllc.tt.omtrdc.net/gfwlist +server=/keyhole.com/127.0.0.1#5335 +ipset=/keyhole.com/gfwlist +server=/linecorp.com/127.0.0.1#5335 +ipset=/linecorp.com/gfwlist +server=/opengraphprotocol.com/127.0.0.1#5335 +ipset=/opengraphprotocol.com/gfwlist +server=/iphone-vip2.com/127.0.0.1#5335 +ipset=/iphone-vip2.com/gfwlist +server=/bmw-carit.de/127.0.0.1#5335 +ipset=/bmw-carit.de/gfwlist +server=/newscorpaustralia.com/127.0.0.1#5335 +ipset=/newscorpaustralia.com/gfwlist +server=/youtube.com.br/127.0.0.1#5335 +ipset=/youtube.com.br/gfwlist +server=/att.tv/127.0.0.1#5335 +ipset=/att.tv/gfwlist +server=/beatsbydreforstore.com/127.0.0.1#5335 +ipset=/beatsbydreforstore.com/gfwlist +server=/latticedata.com/127.0.0.1#5335 +ipset=/latticedata.com/gfwlist +server=/bmwgroup-classic.com/127.0.0.1#5335 +ipset=/bmwgroup-classic.com/gfwlist +server=/vanish.co.uk/127.0.0.1#5335 +ipset=/vanish.co.uk/gfwlist +server=/fox2detroit.com/127.0.0.1#5335 +ipset=/fox2detroit.com/gfwlist +server=/heywire.com/127.0.0.1#5335 +ipset=/heywire.com/gfwlist +server=/intell.com/127.0.0.1#5335 +ipset=/intell.com/gfwlist +server=/ctyun.online/127.0.0.1#5335 +ipset=/ctyun.online/gfwlist +server=/roborecall.com/127.0.0.1#5335 +ipset=/roborecall.com/gfwlist +server=/dynacw.com.cn/127.0.0.1#5335 +ipset=/dynacw.com.cn/gfwlist +server=/spotifycharts.com/127.0.0.1#5335 +ipset=/spotifycharts.com/gfwlist +server=/newsadds.com.au/127.0.0.1#5335 +ipset=/newsadds.com.au/gfwlist +server=/syosetu.com/127.0.0.1#5335 +ipset=/syosetu.com/gfwlist +server=/riot.im/127.0.0.1#5335 +ipset=/riot.im/gfwlist +server=/paypalbrasil.com/127.0.0.1#5335 +ipset=/paypalbrasil.com/gfwlist +server=/akasha.world/127.0.0.1#5335 +ipset=/akasha.world/gfwlist +server=/visa.ky/127.0.0.1#5335 +ipset=/visa.ky/gfwlist +server=/minigeorgian.ca/127.0.0.1#5335 +ipset=/minigeorgian.ca/gfwlist +server=/muji.net/127.0.0.1#5335 +ipset=/muji.net/gfwlist +server=/enanyang.my/127.0.0.1#5335 +ipset=/enanyang.my/gfwlist +server=/thelancet.com/127.0.0.1#5335 +ipset=/thelancet.com/gfwlist +server=/starbucks.it/127.0.0.1#5335 +ipset=/starbucks.it/gfwlist +server=/google.as/127.0.0.1#5335 +ipset=/google.as/gfwlist +server=/appledaily.com.hk/127.0.0.1#5335 +ipset=/appledaily.com.hk/gfwlist +server=/bmw.at/127.0.0.1#5335 +ipset=/bmw.at/gfwlist +server=/signal.art/127.0.0.1#5335 +ipset=/signal.art/gfwlist +server=/drebeats-monster.com/127.0.0.1#5335 +ipset=/drebeats-monster.com/gfwlist +server=/verily.com/127.0.0.1#5335 +ipset=/verily.com/gfwlist +server=/duckduckgo.jp/127.0.0.1#5335 +ipset=/duckduckgo.jp/gfwlist +server=/pentium.net/127.0.0.1#5335 +ipset=/pentium.net/gfwlist +server=/neowin.net/127.0.0.1#5335 +ipset=/neowin.net/gfwlist +server=/hebiphone.com/127.0.0.1#5335 +ipset=/hebiphone.com/gfwlist +server=/now.com.hk/127.0.0.1#5335 +ipset=/now.com.hk/gfwlist +server=/mini.com.ec/127.0.0.1#5335 +ipset=/mini.com.ec/gfwlist +server=/sonylatvija.com/127.0.0.1#5335 +ipset=/sonylatvija.com/gfwlist +server=/eacashcard.com/127.0.0.1#5335 +ipset=/eacashcard.com/gfwlist +server=/hacksear.ch/127.0.0.1#5335 +ipset=/hacksear.ch/gfwlist +server=/mcdelivery.com.au/127.0.0.1#5335 +ipset=/mcdelivery.com.au/gfwlist +server=/midatlanticbmwmotorcycles.com/127.0.0.1#5335 +ipset=/midatlanticbmwmotorcycles.com/gfwlist +server=/softbank-jp.com/127.0.0.1#5335 +ipset=/softbank-jp.com/gfwlist +server=/skysportsracing.com/127.0.0.1#5335 +ipset=/skysportsracing.com/gfwlist +server=/onlinegeeksquad.com/127.0.0.1#5335 +ipset=/onlinegeeksquad.com/gfwlist +server=/sony.com.pe/127.0.0.1#5335 +ipset=/sony.com.pe/gfwlist +server=/nikedawn.com/127.0.0.1#5335 +ipset=/nikedawn.com/gfwlist +server=/kiji.ca/127.0.0.1#5335 +ipset=/kiji.ca/gfwlist +server=/bbc.co.uk/127.0.0.1#5335 +ipset=/bbc.co.uk/gfwlist +server=/ospray.org/127.0.0.1#5335 +ipset=/ospray.org/gfwlist +server=/universalstudioshollywood.com/127.0.0.1#5335 +ipset=/universalstudioshollywood.com/gfwlist +server=/mkt.com/127.0.0.1#5335 +ipset=/mkt.com/gfwlist +server=/yahoo.im/127.0.0.1#5335 +ipset=/yahoo.im/gfwlist +server=/hulusports.com/127.0.0.1#5335 +ipset=/hulusports.com/gfwlist +server=/firestonetire.ca/127.0.0.1#5335 +ipset=/firestonetire.ca/gfwlist +server=/google.com.tj/127.0.0.1#5335 +ipset=/google.com.tj/gfwlist +server=/yandex.sx/127.0.0.1#5335 +ipset=/yandex.sx/gfwlist +server=/x.company/127.0.0.1#5335 +ipset=/x.company/gfwlist +server=/beatsbydreforshop2013-nl.com/127.0.0.1#5335 +ipset=/beatsbydreforshop2013-nl.com/gfwlist +server=/taylorfrancis.com/127.0.0.1#5335 +ipset=/taylorfrancis.com/gfwlist +server=/alphabet.com/127.0.0.1#5335 +ipset=/alphabet.com/gfwlist +server=/yoshisnewisland.com/127.0.0.1#5335 +ipset=/yoshisnewisland.com/gfwlist +server=/wikileaks.org/127.0.0.1#5335 +ipset=/wikileaks.org/gfwlist +server=/adidas.de/127.0.0.1#5335 +ipset=/adidas.de/gfwlist +server=/voabangla.com/127.0.0.1#5335 +ipset=/voabangla.com/gfwlist +server=/weinvoiceit.com/127.0.0.1#5335 +ipset=/weinvoiceit.com/gfwlist +server=/ahmia.fi/127.0.0.1#5335 +ipset=/ahmia.fi/gfwlist +server=/windowsphone.com/127.0.0.1#5335 +ipset=/windowsphone.com/gfwlist +server=/paypal-service.org/127.0.0.1#5335 +ipset=/paypal-service.org/gfwlist +server=/miniwindsor.com/127.0.0.1#5335 +ipset=/miniwindsor.com/gfwlist +server=/elsevier.io/127.0.0.1#5335 +ipset=/elsevier.io/gfwlist +server=/pearsonlongman.ch/127.0.0.1#5335 +ipset=/pearsonlongman.ch/gfwlist +server=/muncloud.dog/127.0.0.1#5335 +ipset=/muncloud.dog/gfwlist +server=/eprintsw.com/127.0.0.1#5335 +ipset=/eprintsw.com/gfwlist +server=/adobegov.com/127.0.0.1#5335 +ipset=/adobegov.com/gfwlist +server=/vmwareviewpoint.com/127.0.0.1#5335 +ipset=/vmwareviewpoint.com/gfwlist +server=/xbox360.co/127.0.0.1#5335 +ipset=/xbox360.co/gfwlist +server=/barrons-conferences.com/127.0.0.1#5335 +ipset=/barrons-conferences.com/gfwlist +server=/paypal-engineering.com/127.0.0.1#5335 +ipset=/paypal-engineering.com/gfwlist +server=/beatsbydrestudio-australia.com/127.0.0.1#5335 +ipset=/beatsbydrestudio-australia.com/gfwlist +server=/beatspascher.net/127.0.0.1#5335 +ipset=/beatspascher.net/gfwlist +server=/foxdcg.com/127.0.0.1#5335 +ipset=/foxdcg.com/gfwlist +server=/canonfoundation.org/127.0.0.1#5335 +ipset=/canonfoundation.org/gfwlist +server=/cciernslabs.com/127.0.0.1#5335 +ipset=/cciernslabs.com/gfwlist +server=/firewire.cl/127.0.0.1#5335 +ipset=/firewire.cl/gfwlist +server=/gettyimages.ie/127.0.0.1#5335 +ipset=/gettyimages.ie/gfwlist +server=/fox13news.com/127.0.0.1#5335 +ipset=/fox13news.com/gfwlist +server=/applewatch.tw/127.0.0.1#5335 +ipset=/applewatch.tw/gfwlist +server=/fse.tv/127.0.0.1#5335 +ipset=/fse.tv/gfwlist +server=/papalah.com/127.0.0.1#5335 +ipset=/papalah.com/gfwlist +server=/beatsaudiobydre.net/127.0.0.1#5335 +ipset=/beatsaudiobydre.net/gfwlist +server=/iphonerip.net/127.0.0.1#5335 +ipset=/iphonerip.net/gfwlist +server=/rea.design/127.0.0.1#5335 +ipset=/rea.design/gfwlist +server=/facecbook.org/127.0.0.1#5335 +ipset=/facecbook.org/gfwlist +server=/foxcincy.net/127.0.0.1#5335 +ipset=/foxcincy.net/gfwlist +server=/foxsports.co/127.0.0.1#5335 +ipset=/foxsports.co/gfwlist +server=/bridgestone-asiapacific.com/127.0.0.1#5335 +ipset=/bridgestone-asiapacific.com/gfwlist +server=/azureplanetscale.info/127.0.0.1#5335 +ipset=/azureplanetscale.info/gfwlist +server=/fury.dev/127.0.0.1#5335 +ipset=/fury.dev/gfwlist +server=/blogspot.tw/127.0.0.1#5335 +ipset=/blogspot.tw/gfwlist +server=/cstatic.net/127.0.0.1#5335 +ipset=/cstatic.net/gfwlist +server=/rstatic.net/127.0.0.1#5335 +ipset=/rstatic.net/gfwlist +server=/drdremonster-beats.com/127.0.0.1#5335 +ipset=/drdremonster-beats.com/gfwlist +server=/itunes.ca/127.0.0.1#5335 +ipset=/itunes.ca/gfwlist +server=/nikeadidas.com/127.0.0.1#5335 +ipset=/nikeadidas.com/gfwlist +server=/activeteachonline.com/127.0.0.1#5335 +ipset=/activeteachonline.com/gfwlist +server=/huffpostarabi.com/127.0.0.1#5335 +ipset=/huffpostarabi.com/gfwlist +server=/yahoo.es/127.0.0.1#5335 +ipset=/yahoo.es/gfwlist +server=/google.co.ao/127.0.0.1#5335 +ipset=/google.co.ao/gfwlist +server=/connectionseducation.com/127.0.0.1#5335 +ipset=/connectionseducation.com/gfwlist +server=/notion-static.com/127.0.0.1#5335 +ipset=/notion-static.com/gfwlist +server=/momentumms.com/127.0.0.1#5335 +ipset=/momentumms.com/gfwlist +server=/freebeacon.com/127.0.0.1#5335 +ipset=/freebeacon.com/gfwlist +server=/ebayadvertising.com/127.0.0.1#5335 +ipset=/ebayadvertising.com/gfwlist +server=/google.com.bo/127.0.0.1#5335 +ipset=/google.com.bo/gfwlist +server=/nii.ac.jp/127.0.0.1#5335 +ipset=/nii.ac.jp/gfwlist +server=/appleappstore.tv/127.0.0.1#5335 +ipset=/appleappstore.tv/gfwlist +server=/azureedge-test.net/127.0.0.1#5335 +ipset=/azureedge-test.net/gfwlist +server=/disneyiejobs.com/127.0.0.1#5335 +ipset=/disneyiejobs.com/gfwlist +server=/mini.co.th/127.0.0.1#5335 +ipset=/mini.co.th/gfwlist +server=/post852.com/127.0.0.1#5335 +ipset=/post852.com/gfwlist +server=/services-apple.net/127.0.0.1#5335 +ipset=/services-apple.net/gfwlist +server=/vfsco.com/127.0.0.1#5335 +ipset=/vfsco.com/gfwlist +server=/beatsdrdrecuffie.net/127.0.0.1#5335 +ipset=/beatsdrdrecuffie.net/gfwlist +server=/gentoo.org/127.0.0.1#5335 +ipset=/gentoo.org/gfwlist +server=/tandf.co.uk/127.0.0.1#5335 +ipset=/tandf.co.uk/gfwlist +server=/sonytc.co.jp/127.0.0.1#5335 +ipset=/sonytc.co.jp/gfwlist +server=/microsoft.ge/127.0.0.1#5335 +ipset=/microsoft.ge/gfwlist +server=/asebay.com/127.0.0.1#5335 +ipset=/asebay.com/gfwlist +server=/javmost.com/127.0.0.1#5335 +ipset=/javmost.com/gfwlist +server=/lovethiscity.com/127.0.0.1#5335 +ipset=/lovethiscity.com/gfwlist +server=/intel.ga/127.0.0.1#5335 +ipset=/intel.ga/gfwlist +server=/adventuresbydisney.com/127.0.0.1#5335 +ipset=/adventuresbydisney.com/gfwlist +server=/iphone4s.com/127.0.0.1#5335 +ipset=/iphone4s.com/gfwlist +server=/paypal-community.com/127.0.0.1#5335 +ipset=/paypal-community.com/gfwlist +server=/foxsoccerplus.tv/127.0.0.1#5335 +ipset=/foxsoccerplus.tv/gfwlist +server=/volvotrucks.lt/127.0.0.1#5335 +ipset=/volvotrucks.lt/gfwlist +server=/foxnews.net/127.0.0.1#5335 +ipset=/foxnews.net/gfwlist +server=/collegejournal.com/127.0.0.1#5335 +ipset=/collegejournal.com/gfwlist +server=/dailym.ai/127.0.0.1#5335 +ipset=/dailym.ai/gfwlist +server=/minisokorea.com/127.0.0.1#5335 +ipset=/minisokorea.com/gfwlist +server=/bumptop.org/127.0.0.1#5335 +ipset=/bumptop.org/gfwlist +server=/mastercard.fi/127.0.0.1#5335 +ipset=/mastercard.fi/gfwlist +server=/odysee.com/127.0.0.1#5335 +ipset=/odysee.com/gfwlist +server=/ebayprivacycenter.com/127.0.0.1#5335 +ipset=/ebayprivacycenter.com/gfwlist +server=/durex.pt/127.0.0.1#5335 +ipset=/durex.pt/gfwlist +server=/nintendo.co.jp/127.0.0.1#5335 +ipset=/nintendo.co.jp/gfwlist +server=/dettol.com.au/127.0.0.1#5335 +ipset=/dettol.com.au/gfwlist +server=/boringcompany.com/127.0.0.1#5335 +ipset=/boringcompany.com/gfwlist +server=/freebrowser.org/127.0.0.1#5335 +ipset=/freebrowser.org/gfwlist +server=/originalhulu.com/127.0.0.1#5335 +ipset=/originalhulu.com/gfwlist +server=/yahoo.cz/127.0.0.1#5335 +ipset=/yahoo.cz/gfwlist +server=/wholefoodsmarket.com/127.0.0.1#5335 +ipset=/wholefoodsmarket.com/gfwlist +server=/youtube.pa/127.0.0.1#5335 +ipset=/youtube.pa/gfwlist +server=/crmdynint.com/127.0.0.1#5335 +ipset=/crmdynint.com/gfwlist +server=/lfai.foundation/127.0.0.1#5335 +ipset=/lfai.foundation/gfwlist +server=/urchin.com/127.0.0.1#5335 +ipset=/urchin.com/gfwlist +server=/xn--7hv594h.com/127.0.0.1#5335 +ipset=/xn--7hv594h.com/gfwlist +server=/smartline.com.au/127.0.0.1#5335 +ipset=/smartline.com.au/gfwlist +server=/beats-bydrdre.net/127.0.0.1#5335 +ipset=/beats-bydrdre.net/gfwlist +server=/bmw-connecteddrive.com.hr/127.0.0.1#5335 +ipset=/bmw-connecteddrive.com.hr/gfwlist +server=/unityads.unitychina.cn/127.0.0.1#5335 +ipset=/unityads.unitychina.cn/gfwlist +server=/vmwareusergroupstore.com/127.0.0.1#5335 +ipset=/vmwareusergroupstore.com/gfwlist +server=/superpapermario.com/127.0.0.1#5335 +ipset=/superpapermario.com/gfwlist +server=/babyzone.com/127.0.0.1#5335 +ipset=/babyzone.com/gfwlist +server=/practicalmoneyskills.jp/127.0.0.1#5335 +ipset=/practicalmoneyskills.jp/gfwlist +server=/xn--ubt498knmf.com/127.0.0.1#5335 +ipset=/xn--ubt498knmf.com/gfwlist +server=/feedburner.com/127.0.0.1#5335 +ipset=/feedburner.com/gfwlist +server=/ebaytv.org/127.0.0.1#5335 +ipset=/ebaytv.org/gfwlist +server=/airwick.com.br/127.0.0.1#5335 +ipset=/airwick.com.br/gfwlist +server=/newssyndication.com/127.0.0.1#5335 +ipset=/newssyndication.com/gfwlist +server=/bcove.video/127.0.0.1#5335 +ipset=/bcove.video/gfwlist +server=/espncdn.com/127.0.0.1#5335 +ipset=/espncdn.com/gfwlist +server=/amazonaws.com/127.0.0.1#5335 +ipset=/amazonaws.com/gfwlist +server=/xboxstudios.com/127.0.0.1#5335 +ipset=/xboxstudios.com/gfwlist +server=/fastlylabs.com/127.0.0.1#5335 +ipset=/fastlylabs.com/gfwlist +server=/wuso.me/127.0.0.1#5335 +ipset=/wuso.me/gfwlist +server=/bestbuy-communityrelations.com/127.0.0.1#5335 +ipset=/bestbuy-communityrelations.com/gfwlist +server=/ipod.tw/127.0.0.1#5335 +ipset=/ipod.tw/gfwlist +server=/hp3d.com/127.0.0.1#5335 +ipset=/hp3d.com/gfwlist +server=/ituneas.com/127.0.0.1#5335 +ipset=/ituneas.com/gfwlist +server=/appledaily.com/127.0.0.1#5335 +ipset=/appledaily.com/gfwlist +server=/jetbrains.com/127.0.0.1#5335 +ipset=/jetbrains.com/gfwlist +server=/vancouverbmwretailers.ca/127.0.0.1#5335 +ipset=/vancouverbmwretailers.ca/gfwlist +server=/spearhead.kr/127.0.0.1#5335 +ipset=/spearhead.kr/gfwlist +server=/visa.co.il/127.0.0.1#5335 +ipset=/visa.co.il/gfwlist +server=/myfoxphilly.com/127.0.0.1#5335 +ipset=/myfoxphilly.com/gfwlist +server=/facebook-inc.com/127.0.0.1#5335 +ipset=/facebook-inc.com/gfwlist +server=/bmw-motorrad.com.tr/127.0.0.1#5335 +ipset=/bmw-motorrad.com.tr/gfwlist +server=/cloudsync-prod.s3.amazonaws.com/127.0.0.1#5335 +ipset=/cloudsync-prod.s3.amazonaws.com/gfwlist +server=/miiverse.com/127.0.0.1#5335 +ipset=/miiverse.com/gfwlist +server=/nvidia.dk/127.0.0.1#5335 +ipset=/nvidia.dk/gfwlist +server=/finishinfo.no/127.0.0.1#5335 +ipset=/finishinfo.no/gfwlist +server=/canon-cna.com/127.0.0.1#5335 +ipset=/canon-cna.com/gfwlist +server=/monsterbeats-headphone.com/127.0.0.1#5335 +ipset=/monsterbeats-headphone.com/gfwlist +server=/youtube.co.id/127.0.0.1#5335 +ipset=/youtube.co.id/gfwlist +server=/paypal-network.org/127.0.0.1#5335 +ipset=/paypal-network.org/gfwlist +server=/disneyturkiye.com.tr/127.0.0.1#5335 +ipset=/disneyturkiye.com.tr/gfwlist +server=/xoomcom.com/127.0.0.1#5335 +ipset=/xoomcom.com/gfwlist +server=/iphone.ru/127.0.0.1#5335 +ipset=/iphone.ru/gfwlist +server=/airwick.pl/127.0.0.1#5335 +ipset=/airwick.pl/gfwlist +server=/dialga.com/127.0.0.1#5335 +ipset=/dialga.com/gfwlist +server=/nintendo.be/127.0.0.1#5335 +ipset=/nintendo.be/gfwlist +server=/bmw-motorrad.in/127.0.0.1#5335 +ipset=/bmw-motorrad.in/gfwlist +server=/bumptop.net/127.0.0.1#5335 +ipset=/bumptop.net/gfwlist +server=/hyperscan.io/127.0.0.1#5335 +ipset=/hyperscan.io/gfwlist +server=/sandisk.fr/127.0.0.1#5335 +ipset=/sandisk.fr/gfwlist +server=/fifastreet.com/127.0.0.1#5335 +ipset=/fifastreet.com/gfwlist +server=/bmw-motorrad.es/127.0.0.1#5335 +ipset=/bmw-motorrad.es/gfwlist +server=/ccievoicelabs.com/127.0.0.1#5335 +ipset=/ccievoicelabs.com/gfwlist +server=/tvbusa.com/127.0.0.1#5335 +ipset=/tvbusa.com/gfwlist +server=/mini-stjohns.ca/127.0.0.1#5335 +ipset=/mini-stjohns.ca/gfwlist +server=/cloudflare.net/127.0.0.1#5335 +ipset=/cloudflare.net/gfwlist +server=/google.co.tz/127.0.0.1#5335 +ipset=/google.co.tz/gfwlist +server=/discord.media/127.0.0.1#5335 +ipset=/discord.media/gfwlist +server=/thomsonreuters.com.tr/127.0.0.1#5335 +ipset=/thomsonreuters.com.tr/gfwlist +server=/timestalks.com/127.0.0.1#5335 +ipset=/timestalks.com/gfwlist +server=/starcraft2.com/127.0.0.1#5335 +ipset=/starcraft2.com/gfwlist +server=/nyt.com/127.0.0.1#5335 +ipset=/nyt.com/gfwlist +server=/qt-project.org/127.0.0.1#5335 +ipset=/qt-project.org/gfwlist +server=/ciscospark.ca/127.0.0.1#5335 +ipset=/ciscospark.ca/gfwlist +server=/4channel.org/127.0.0.1#5335 +ipset=/4channel.org/gfwlist +server=/nurofen.bg/127.0.0.1#5335 +ipset=/nurofen.bg/gfwlist +server=/visa.com.br/127.0.0.1#5335 +ipset=/visa.com.br/gfwlist +server=/pearsonassessments.com/127.0.0.1#5335 +ipset=/pearsonassessments.com/gfwlist +server=/bigbigshop.com/127.0.0.1#5335 +ipset=/bigbigshop.com/gfwlist +server=/hpgraphicspartners.com/127.0.0.1#5335 +ipset=/hpgraphicspartners.com/gfwlist +server=/cnn.com/127.0.0.1#5335 +ipset=/cnn.com/gfwlist +server=/beatsdrdre-solo.com/127.0.0.1#5335 +ipset=/beatsdrdre-solo.com/gfwlist +server=/airwick.dk/127.0.0.1#5335 +ipset=/airwick.dk/gfwlist +server=/realclearworld.com/127.0.0.1#5335 +ipset=/realclearworld.com/gfwlist +server=/volvotruckcenter.es/127.0.0.1#5335 +ipset=/volvotruckcenter.es/gfwlist +server=/braintreepayments.tv/127.0.0.1#5335 +ipset=/braintreepayments.tv/gfwlist +server=/pokemonrubysapphire.com/127.0.0.1#5335 +ipset=/pokemonrubysapphire.com/gfwlist +server=/bridgestonecntc.com/127.0.0.1#5335 +ipset=/bridgestonecntc.com/gfwlist +server=/ebaycar.com/127.0.0.1#5335 +ipset=/ebaycar.com/gfwlist +server=/mageconf.com.ua/127.0.0.1#5335 +ipset=/mageconf.com.ua/gfwlist +server=/volvotrucks.uy/127.0.0.1#5335 +ipset=/volvotrucks.uy/gfwlist +server=/epochtimes.cz/127.0.0.1#5335 +ipset=/epochtimes.cz/gfwlist +server=/root-signing.ch/127.0.0.1#5335 +ipset=/root-signing.ch/gfwlist +server=/starbuckscoffeegear.com/127.0.0.1#5335 +ipset=/starbuckscoffeegear.com/gfwlist +server=/headphoneshotsales.com/127.0.0.1#5335 +ipset=/headphoneshotsales.com/gfwlist +server=/google.ca/127.0.0.1#5335 +ipset=/google.ca/gfwlist +server=/microsoft.dk/127.0.0.1#5335 +ipset=/microsoft.dk/gfwlist +server=/txcloud.net/127.0.0.1#5335 +ipset=/txcloud.net/gfwlist +server=/kijii.ca/127.0.0.1#5335 +ipset=/kijii.ca/gfwlist +server=/ieeeday.org/127.0.0.1#5335 +ipset=/ieeeday.org/gfwlist +server=/scholar.google.nl/127.0.0.1#5335 +ipset=/scholar.google.nl/gfwlist +server=/fotolia.cc/127.0.0.1#5335 +ipset=/fotolia.cc/gfwlist +server=/niketrainer.com/127.0.0.1#5335 +ipset=/niketrainer.com/gfwlist +server=/acs.org/127.0.0.1#5335 +ipset=/acs.org/gfwlist +server=/youtube.com.ro/127.0.0.1#5335 +ipset=/youtube.com.ro/gfwlist +server=/battlefield3.com/127.0.0.1#5335 +ipset=/battlefield3.com/gfwlist +server=/ebay-vacation.com/127.0.0.1#5335 +ipset=/ebay-vacation.com/gfwlist +server=/appdynamics.co.uk/127.0.0.1#5335 +ipset=/appdynamics.co.uk/gfwlist +server=/playstation.com/127.0.0.1#5335 +ipset=/playstation.com/gfwlist +server=/custombeatsbydrebuy.com/127.0.0.1#5335 +ipset=/custombeatsbydrebuy.com/gfwlist +server=/att.com/127.0.0.1#5335 +ipset=/att.com/gfwlist +server=/beatscheap-uk.com/127.0.0.1#5335 +ipset=/beatscheap-uk.com/gfwlist +server=/javqd.com/127.0.0.1#5335 +ipset=/javqd.com/gfwlist +server=/ie11.com/127.0.0.1#5335 +ipset=/ie11.com/gfwlist +server=/pricelesspick.com/127.0.0.1#5335 +ipset=/pricelesspick.com/gfwlist +server=/garena.sg/127.0.0.1#5335 +ipset=/garena.sg/gfwlist +server=/mini.com.sg/127.0.0.1#5335 +ipset=/mini.com.sg/gfwlist +server=/directvsundayticket.com/127.0.0.1#5335 +ipset=/directvsundayticket.com/gfwlist +server=/roku.com/127.0.0.1#5335 +ipset=/roku.com/gfwlist +server=/bmw.it/127.0.0.1#5335 +ipset=/bmw.it/gfwlist +server=/cotweet.com/127.0.0.1#5335 +ipset=/cotweet.com/gfwlist +server=/kotlinlang.org/127.0.0.1#5335 +ipset=/kotlinlang.org/gfwlist +server=/imdb.com/127.0.0.1#5335 +ipset=/imdb.com/gfwlist +server=/powerofresolve.com/127.0.0.1#5335 +ipset=/powerofresolve.com/gfwlist +server=/bmwbkk.de/127.0.0.1#5335 +ipset=/bmwbkk.de/gfwlist +server=/pokemonplatinum.com/127.0.0.1#5335 +ipset=/pokemonplatinum.com/gfwlist +server=/rrtis.com/127.0.0.1#5335 +ipset=/rrtis.com/gfwlist +server=/paisapay.tv/127.0.0.1#5335 +ipset=/paisapay.tv/gfwlist +server=/coursera.community/127.0.0.1#5335 +ipset=/coursera.community/gfwlist +server=/desktopmovie.org/127.0.0.1#5335 +ipset=/desktopmovie.org/gfwlist +server=/dotfacebook.com/127.0.0.1#5335 +ipset=/dotfacebook.com/gfwlist +server=/jwpsrv.com/127.0.0.1#5335 +ipset=/jwpsrv.com/gfwlist +server=/mailonline.com/127.0.0.1#5335 +ipset=/mailonline.com/gfwlist +server=/cisconetspace.net/127.0.0.1#5335 +ipset=/cisconetspace.net/gfwlist +server=/bridgestone.co.jp/127.0.0.1#5335 +ipset=/bridgestone.co.jp/gfwlist +server=/privilege.hk/127.0.0.1#5335 +ipset=/privilege.hk/gfwlist +server=/cheapnewbeatsbydre.com/127.0.0.1#5335 +ipset=/cheapnewbeatsbydre.com/gfwlist +server=/mastercard.it/127.0.0.1#5335 +ipset=/mastercard.it/gfwlist +server=/vanitha.in/127.0.0.1#5335 +ipset=/vanitha.in/gfwlist +server=/thawte.fr/127.0.0.1#5335 +ipset=/thawte.fr/gfwlist +server=/mortein.co.nz/127.0.0.1#5335 +ipset=/mortein.co.nz/gfwlist +server=/huobiasia.vip/127.0.0.1#5335 +ipset=/huobiasia.vip/gfwlist +server=/ieee-pels.org/127.0.0.1#5335 +ipset=/ieee-pels.org/gfwlist +server=/google.sc/127.0.0.1#5335 +ipset=/google.sc/gfwlist +server=/appleone.tech/127.0.0.1#5335 +ipset=/appleone.tech/gfwlist +server=/facebook.in/127.0.0.1#5335 +ipset=/facebook.in/gfwlist +server=/taste.com.au/127.0.0.1#5335 +ipset=/taste.com.au/gfwlist +server=/bbci.co.uk/127.0.0.1#5335 +ipset=/bbci.co.uk/gfwlist +server=/hentaiverse.org/127.0.0.1#5335 +ipset=/hentaiverse.org/gfwlist +server=/finish.hu/127.0.0.1#5335 +ipset=/finish.hu/gfwlist +server=/bmw-motorrad-test-ride.com/127.0.0.1#5335 +ipset=/bmw-motorrad-test-ride.com/gfwlist +server=/braintreepayments.info/127.0.0.1#5335 +ipset=/braintreepayments.info/gfwlist +server=/blender.org/127.0.0.1#5335 +ipset=/blender.org/gfwlist +server=/monsterbeatstienda.com/127.0.0.1#5335 +ipset=/monsterbeatstienda.com/gfwlist +server=/bmw-adventskalender.com/127.0.0.1#5335 +ipset=/bmw-adventskalender.com/gfwlist +server=/nikezoom.com/127.0.0.1#5335 +ipset=/nikezoom.com/gfwlist +server=/www-bestbuystores.com/127.0.0.1#5335 +ipset=/www-bestbuystores.com/gfwlist +server=/huluitaly.com/127.0.0.1#5335 +ipset=/huluitaly.com/gfwlist +server=/shopdurex.com/127.0.0.1#5335 +ipset=/shopdurex.com/gfwlist +server=/op.gg/127.0.0.1#5335 +ipset=/op.gg/gfwlist +server=/scholar.google.cn/127.0.0.1#5335 +ipset=/scholar.google.cn/gfwlist +server=/bmw-connecteddrive.com.cy/127.0.0.1#5335 +ipset=/bmw-connecteddrive.com.cy/gfwlist +server=/ministcatharines.ca/127.0.0.1#5335 +ipset=/ministcatharines.ca/gfwlist +server=/mindmeld.com/127.0.0.1#5335 +ipset=/mindmeld.com/gfwlist +server=/hbogo.com/127.0.0.1#5335 +ipset=/hbogo.com/gfwlist +server=/12diasderegalosdeitunes.com.ni/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.com.ni/gfwlist +server=/realclearbooks.com/127.0.0.1#5335 +ipset=/realclearbooks.com/gfwlist +server=/ateam-oracle.com/127.0.0.1#5335 +ipset=/ateam-oracle.com/gfwlist +server=/foxnewspodcasts.com/127.0.0.1#5335 +ipset=/foxnewspodcasts.com/gfwlist +server=/ciattackers.com/127.0.0.1#5335 +ipset=/ciattackers.com/gfwlist +server=/pvue2.com/127.0.0.1#5335 +ipset=/pvue2.com/gfwlist +server=/drebeatsaustralia-cheap.net/127.0.0.1#5335 +ipset=/drebeatsaustralia-cheap.net/gfwlist +server=/vsassets.io/127.0.0.1#5335 +ipset=/vsassets.io/gfwlist +server=/volvotrucks.com.br/127.0.0.1#5335 +ipset=/volvotrucks.com.br/gfwlist +server=/nikefuelband.com/127.0.0.1#5335 +ipset=/nikefuelband.com/gfwlist +server=/venmo.net/127.0.0.1#5335 +ipset=/venmo.net/gfwlist +server=/ischool.com/127.0.0.1#5335 +ipset=/ischool.com/gfwlist +server=/hoolu.com/127.0.0.1#5335 +ipset=/hoolu.com/gfwlist +server=/adobe.io/127.0.0.1#5335 +ipset=/adobe.io/gfwlist +server=/easportsmma.com/127.0.0.1#5335 +ipset=/easportsmma.com/gfwlist +server=/foxtv.com/127.0.0.1#5335 +ipset=/foxtv.com/gfwlist +server=/blogspot.is/127.0.0.1#5335 +ipset=/blogspot.is/gfwlist +server=/playvalorant.com/127.0.0.1#5335 +ipset=/playvalorant.com/gfwlist +server=/rebrandly.com/127.0.0.1#5335 +ipset=/rebrandly.com/gfwlist +server=/google.nu/127.0.0.1#5335 +ipset=/google.nu/gfwlist +server=/enfabebe.com.ec/127.0.0.1#5335 +ipset=/enfabebe.com.ec/gfwlist +server=/starbucks.dk/127.0.0.1#5335 +ipset=/starbucks.dk/gfwlist +server=/intel-research.net/127.0.0.1#5335 +ipset=/intel-research.net/gfwlist +server=/ieee-ccnc.org/127.0.0.1#5335 +ipset=/ieee-ccnc.org/gfwlist +server=/brocaproject.com/127.0.0.1#5335 +ipset=/brocaproject.com/gfwlist +server=/strepsils.com.tw/127.0.0.1#5335 +ipset=/strepsils.com.tw/gfwlist +server=/softbankusa.net/127.0.0.1#5335 +ipset=/softbankusa.net/gfwlist +server=/geoport.com/127.0.0.1#5335 +ipset=/geoport.com/gfwlist +server=/google.je/127.0.0.1#5335 +ipset=/google.je/gfwlist +server=/vanithaveedu.com/127.0.0.1#5335 +ipset=/vanithaveedu.com/gfwlist +server=/ebay.com.ar/127.0.0.1#5335 +ipset=/ebay.com.ar/gfwlist +server=/applecentre.info/127.0.0.1#5335 +ipset=/applecentre.info/gfwlist +server=/japan-whores.com/127.0.0.1#5335 +ipset=/japan-whores.com/gfwlist +server=/ecpa.fr/127.0.0.1#5335 +ipset=/ecpa.fr/gfwlist +server=/akamak.com/127.0.0.1#5335 +ipset=/akamak.com/gfwlist +server=/livefilestore.com/127.0.0.1#5335 +ipset=/livefilestore.com/gfwlist +server=/fotoiia.com/127.0.0.1#5335 +ipset=/fotoiia.com/gfwlist +server=/bmw-routes.com/127.0.0.1#5335 +ipset=/bmw-routes.com/gfwlist +server=/mini-grouparchiv.de/127.0.0.1#5335 +ipset=/mini-grouparchiv.de/gfwlist +server=/microsoft-sap-events.com/127.0.0.1#5335 +ipset=/microsoft-sap-events.com/gfwlist +server=/ebaygroup.com/127.0.0.1#5335 +ipset=/ebaygroup.com/gfwlist +server=/twitchsvc.net/127.0.0.1#5335 +ipset=/twitchsvc.net/gfwlist +server=/cashify.net/127.0.0.1#5335 +ipset=/cashify.net/gfwlist +server=/hpinstantink.com/127.0.0.1#5335 +ipset=/hpinstantink.com/gfwlist +server=/volvotrucks.in/127.0.0.1#5335 +ipset=/volvotrucks.in/gfwlist +server=/sony-asia.com/127.0.0.1#5335 +ipset=/sony-asia.com/gfwlist +server=/intel.bo/127.0.0.1#5335 +ipset=/intel.bo/gfwlist +server=/sony.com.mx/127.0.0.1#5335 +ipset=/sony.com.mx/gfwlist +server=/beatsdrdrekaufenschweiz.net/127.0.0.1#5335 +ipset=/beatsdrdrekaufenschweiz.net/gfwlist +server=/mingpaocanada.com/127.0.0.1#5335 +ipset=/mingpaocanada.com/gfwlist +server=/riotgames.net/127.0.0.1#5335 +ipset=/riotgames.net/gfwlist +server=/rsc.org/127.0.0.1#5335 +ipset=/rsc.org/gfwlist +server=/buyingfacebooklikes.com/127.0.0.1#5335 +ipset=/buyingfacebooklikes.com/gfwlist +server=/intel.pl/127.0.0.1#5335 +ipset=/intel.pl/gfwlist +server=/ministjohns.ca/127.0.0.1#5335 +ipset=/ministjohns.ca/gfwlist +server=/aboutamazon.es/127.0.0.1#5335 +ipset=/aboutamazon.es/gfwlist +server=/entrust.net/127.0.0.1#5335 +ipset=/entrust.net/gfwlist +server=/foxtel.com.au/127.0.0.1#5335 +ipset=/foxtel.com.au/gfwlist +server=/mastercard.nl/127.0.0.1#5335 +ipset=/mastercard.nl/gfwlist +server=/macosx.info/127.0.0.1#5335 +ipset=/macosx.info/gfwlist +server=/coursera.help/127.0.0.1#5335 +ipset=/coursera.help/gfwlist +server=/ebay.es/127.0.0.1#5335 +ipset=/ebay.es/gfwlist +server=/smart-edge.com/127.0.0.1#5335 +ipset=/smart-edge.com/gfwlist +server=/getfedora.org/127.0.0.1#5335 +ipset=/getfedora.org/gfwlist +server=/thecleversense.com/127.0.0.1#5335 +ipset=/thecleversense.com/gfwlist +server=/blizzard.com/127.0.0.1#5335 +ipset=/blizzard.com/gfwlist +server=/cbsivideo.com/127.0.0.1#5335 +ipset=/cbsivideo.com/gfwlist +server=/steambroadcast.akamaized.net/127.0.0.1#5335 +ipset=/steambroadcast.akamaized.net/gfwlist +server=/foxpoker.com/127.0.0.1#5335 +ipset=/foxpoker.com/gfwlist +server=/mac.wang/127.0.0.1#5335 +ipset=/mac.wang/gfwlist +server=/ie9.com/127.0.0.1#5335 +ipset=/ie9.com/gfwlist +server=/businessweek.com/127.0.0.1#5335 +ipset=/businessweek.com/gfwlist +server=/iphone-zh.com/127.0.0.1#5335 +ipset=/iphone-zh.com/gfwlist +server=/iphone-vip5.com/127.0.0.1#5335 +ipset=/iphone-vip5.com/gfwlist +server=/facebook30.org/127.0.0.1#5335 +ipset=/facebook30.org/gfwlist +server=/aliveprofiler.com/127.0.0.1#5335 +ipset=/aliveprofiler.com/gfwlist +server=/1jjdg2.vip/127.0.0.1#5335 +ipset=/1jjdg2.vip/gfwlist +server=/xn--ngstr-lra8j.com/127.0.0.1#5335 +ipset=/xn--ngstr-lra8j.com/gfwlist +server=/minilat.com/127.0.0.1#5335 +ipset=/minilat.com/gfwlist +server=/blogspot.my/127.0.0.1#5335 +ipset=/blogspot.my/gfwlist +server=/movetv.com/127.0.0.1#5335 +ipset=/movetv.com/gfwlist +server=/apkmirror.com/127.0.0.1#5335 +ipset=/apkmirror.com/gfwlist +server=/dungeonkeeper.com/127.0.0.1#5335 +ipset=/dungeonkeeper.com/gfwlist +server=/tidelift.com/127.0.0.1#5335 +ipset=/tidelift.com/gfwlist +server=/pokemonmysterydungeon.com/127.0.0.1#5335 +ipset=/pokemonmysterydungeon.com/gfwlist +server=/youtube.se/127.0.0.1#5335 +ipset=/youtube.se/gfwlist +server=/applepay.co.rs/127.0.0.1#5335 +ipset=/applepay.co.rs/gfwlist +server=/myfoxdetroit.com/127.0.0.1#5335 +ipset=/myfoxdetroit.com/gfwlist +server=/es-visiontimes.com/127.0.0.1#5335 +ipset=/es-visiontimes.com/gfwlist +server=/yahoo.ie/127.0.0.1#5335 +ipset=/yahoo.ie/gfwlist +server=/marioandluigidreamteam.com/127.0.0.1#5335 +ipset=/marioandluigidreamteam.com/gfwlist +server=/hotmonsterbeats.com/127.0.0.1#5335 +ipset=/hotmonsterbeats.com/gfwlist +server=/vhxqa6.com/127.0.0.1#5335 +ipset=/vhxqa6.com/gfwlist +server=/steamusercontent.com/127.0.0.1#5335 +ipset=/steamusercontent.com/gfwlist +server=/crossborderexpansion.com/127.0.0.1#5335 +ipset=/crossborderexpansion.com/gfwlist +server=/wholesale-exporter1.com/127.0.0.1#5335 +ipset=/wholesale-exporter1.com/gfwlist +server=/bmwusrideracademy.com/127.0.0.1#5335 +ipset=/bmwusrideracademy.com/gfwlist +server=/amzn.to/127.0.0.1#5335 +ipset=/amzn.to/gfwlist +server=/ooni.org/127.0.0.1#5335 +ipset=/ooni.org/gfwlist +server=/applemusicconnect.com/127.0.0.1#5335 +ipset=/applemusicconnect.com/gfwlist +server=/imperial.ac.uk/127.0.0.1#5335 +ipset=/imperial.ac.uk/gfwlist +server=/huffpost.com/127.0.0.1#5335 +ipset=/huffpost.com/gfwlist +server=/foxtvdvd.com/127.0.0.1#5335 +ipset=/foxtvdvd.com/gfwlist +server=/fbmessenger.com/127.0.0.1#5335 +ipset=/fbmessenger.com/gfwlist +server=/tracking-location.com/127.0.0.1#5335 +ipset=/tracking-location.com/gfwlist +server=/connectionsacademy.com/127.0.0.1#5335 +ipset=/connectionsacademy.com/gfwlist +server=/foxsuper6.com/127.0.0.1#5335 +ipset=/foxsuper6.com/gfwlist +server=/mini-abudhabi.com/127.0.0.1#5335 +ipset=/mini-abudhabi.com/gfwlist +server=/thedreadwolfrises.com/127.0.0.1#5335 +ipset=/thedreadwolfrises.com/gfwlist +server=/9news.com.au/127.0.0.1#5335 +ipset=/9news.com.au/gfwlist +server=/intgram.com/127.0.0.1#5335 +ipset=/intgram.com/gfwlist +server=/bridgestone-tac-oman.com/127.0.0.1#5335 +ipset=/bridgestone-tac-oman.com/gfwlist +server=/arphic.com.cn/127.0.0.1#5335 +ipset=/arphic.com.cn/gfwlist +server=/nikeshoxsale.com/127.0.0.1#5335 +ipset=/nikeshoxsale.com/gfwlist +server=/ntdimg.com/127.0.0.1#5335 +ipset=/ntdimg.com/gfwlist +server=/bmw.co.cr/127.0.0.1#5335 +ipset=/bmw.co.cr/gfwlist +server=/photoshop.com/127.0.0.1#5335 +ipset=/photoshop.com/gfwlist +server=/visa.com.vi/127.0.0.1#5335 +ipset=/visa.com.vi/gfwlist +server=/xvideos-cdn.com/127.0.0.1#5335 +ipset=/xvideos-cdn.com/gfwlist +server=/nikkei.jp/127.0.0.1#5335 +ipset=/nikkei.jp/gfwlist +server=/rarbgmirror.com/127.0.0.1#5335 +ipset=/rarbgmirror.com/gfwlist +server=/burstly.net/127.0.0.1#5335 +ipset=/burstly.net/gfwlist +server=/hindiweb.com/127.0.0.1#5335 +ipset=/hindiweb.com/gfwlist +server=/1jsa22.vip/127.0.0.1#5335 +ipset=/1jsa22.vip/gfwlist +server=/minivaughanwest.ca/127.0.0.1#5335 +ipset=/minivaughanwest.ca/gfwlist +server=/intelfreepress.com/127.0.0.1#5335 +ipset=/intelfreepress.com/gfwlist +server=/sonypictures.com/127.0.0.1#5335 +ipset=/sonypictures.com/gfwlist +server=/hpsignage.com/127.0.0.1#5335 +ipset=/hpsignage.com/gfwlist +server=/verilystudywatch.com/127.0.0.1#5335 +ipset=/verilystudywatch.com/gfwlist +server=/itcfonts.com/127.0.0.1#5335 +ipset=/itcfonts.com/gfwlist +server=/epochbuy.com/127.0.0.1#5335 +ipset=/epochbuy.com/gfwlist +server=/shopdrebeats.com/127.0.0.1#5335 +ipset=/shopdrebeats.com/gfwlist +server=/instagram-press.net/127.0.0.1#5335 +ipset=/instagram-press.net/gfwlist +server=/ipodshop.com.au/127.0.0.1#5335 +ipset=/ipodshop.com.au/gfwlist +server=/heroku-charge.com/127.0.0.1#5335 +ipset=/heroku-charge.com/gfwlist +server=/uun78.com/127.0.0.1#5335 +ipset=/uun78.com/gfwlist +server=/uug22.com/127.0.0.1#5335 +ipset=/uug22.com/gfwlist +server=/microsoftsqlserver.com/127.0.0.1#5335 +ipset=/microsoftsqlserver.com/gfwlist +server=/bmwgroupclassic.com/127.0.0.1#5335 +ipset=/bmwgroupclassic.com/gfwlist +server=/vmwarehorizon.com/127.0.0.1#5335 +ipset=/vmwarehorizon.com/gfwlist +server=/foxrelease.com/127.0.0.1#5335 +ipset=/foxrelease.com/gfwlist +server=/verisign.pro/127.0.0.1#5335 +ipset=/verisign.pro/gfwlist +server=/foundationdb.org/127.0.0.1#5335 +ipset=/foundationdb.org/gfwlist +server=/amazon.es/127.0.0.1#5335 +ipset=/amazon.es/gfwlist +server=/matters.one/127.0.0.1#5335 +ipset=/matters.one/gfwlist +server=/bstatic.com/127.0.0.1#5335 +ipset=/bstatic.com/gfwlist +server=/startupjournal.com/127.0.0.1#5335 +ipset=/startupjournal.com/gfwlist +server=/volvotrucks.hr/127.0.0.1#5335 +ipset=/volvotrucks.hr/gfwlist +server=/alivevmax.com/127.0.0.1#5335 +ipset=/alivevmax.com/gfwlist +server=/attonlineoffers.com/127.0.0.1#5335 +ipset=/attonlineoffers.com/gfwlist +server=/geeksquad.net/127.0.0.1#5335 +ipset=/geeksquad.net/gfwlist +server=/washingtondcbmw.com/127.0.0.1#5335 +ipset=/washingtondcbmw.com/gfwlist +server=/itunes.org/127.0.0.1#5335 +ipset=/itunes.org/gfwlist +server=/mings.hk/127.0.0.1#5335 +ipset=/mings.hk/gfwlist +server=/mallheadphone.com/127.0.0.1#5335 +ipset=/mallheadphone.com/gfwlist +server=/voaswahili.com/127.0.0.1#5335 +ipset=/voaswahili.com/gfwlist +server=/reachtheworldonfacebook.com/127.0.0.1#5335 +ipset=/reachtheworldonfacebook.com/gfwlist +server=/code.org/127.0.0.1#5335 +ipset=/code.org/gfwlist +server=/pearsonplaces.com.au/127.0.0.1#5335 +ipset=/pearsonplaces.com.au/gfwlist +server=/niketracking.com/127.0.0.1#5335 +ipset=/niketracking.com/gfwlist +server=/paypal-recargacelular.com/127.0.0.1#5335 +ipset=/paypal-recargacelular.com/gfwlist +server=/starwarsfallenorder.com/127.0.0.1#5335 +ipset=/starwarsfallenorder.com/gfwlist +server=/ciscospark.com/127.0.0.1#5335 +ipset=/ciscospark.com/gfwlist +server=/commerceos.com/127.0.0.1#5335 +ipset=/commerceos.com/gfwlist +server=/spotifycodes.com/127.0.0.1#5335 +ipset=/spotifycodes.com/gfwlist +server=/beatsbydredanmarks.com/127.0.0.1#5335 +ipset=/beatsbydredanmarks.com/gfwlist +server=/zeebiz.com/127.0.0.1#5335 +ipset=/zeebiz.com/gfwlist +server=/jwpcdn.com/127.0.0.1#5335 +ipset=/jwpcdn.com/gfwlist +server=/minilondon.ca/127.0.0.1#5335 +ipset=/minilondon.ca/gfwlist +server=/intel.yt/127.0.0.1#5335 +ipset=/intel.yt/gfwlist +server=/disneyplus.com/127.0.0.1#5335 +ipset=/disneyplus.com/gfwlist +server=/google.ms/127.0.0.1#5335 +ipset=/google.ms/gfwlist +server=/nikeairrift.com/127.0.0.1#5335 +ipset=/nikeairrift.com/gfwlist +server=/omekinteractive.com/127.0.0.1#5335 +ipset=/omekinteractive.com/gfwlist +server=/cisco.mobi/127.0.0.1#5335 +ipset=/cisco.mobi/gfwlist +server=/bestbuy.info/127.0.0.1#5335 +ipset=/bestbuy.info/gfwlist +server=/huluaction.com/127.0.0.1#5335 +ipset=/huluaction.com/gfwlist +server=/blogspot.be/127.0.0.1#5335 +ipset=/blogspot.be/gfwlist +server=/beatsdre4cheap.com/127.0.0.1#5335 +ipset=/beatsdre4cheap.com/gfwlist +server=/bmwworld.tv/127.0.0.1#5335 +ipset=/bmwworld.tv/gfwlist +server=/tandfonline.com/127.0.0.1#5335 +ipset=/tandfonline.com/gfwlist +server=/bmw.com.ge/127.0.0.1#5335 +ipset=/bmw.com.ge/gfwlist +server=/youtu.be/127.0.0.1#5335 +ipset=/youtu.be/gfwlist +server=/fox51tns.net/127.0.0.1#5335 +ipset=/fox51tns.net/gfwlist +server=/annualreviews.org/127.0.0.1#5335 +ipset=/annualreviews.org/gfwlist +server=/p16-tiktokcdn-com.akamaized.net/127.0.0.1#5335 +ipset=/p16-tiktokcdn-com.akamaized.net/gfwlist +server=/minishop.ca/127.0.0.1#5335 +ipset=/minishop.ca/gfwlist +server=/healthreach.hk/127.0.0.1#5335 +ipset=/healthreach.hk/gfwlist +server=/gaypad.net/127.0.0.1#5335 +ipset=/gaypad.net/gfwlist +server=/intel.com.py/127.0.0.1#5335 +ipset=/intel.com.py/gfwlist +server=/runnike.com/127.0.0.1#5335 +ipset=/runnike.com/gfwlist +server=/ddg.co/127.0.0.1#5335 +ipset=/ddg.co/gfwlist +server=/foxnebraska.com/127.0.0.1#5335 +ipset=/foxnebraska.com/gfwlist +server=/verisign.com.cn/127.0.0.1#5335 +ipset=/verisign.com.cn/gfwlist +server=/gridaware.app/127.0.0.1#5335 +ipset=/gridaware.app/gfwlist +server=/myebay.com/127.0.0.1#5335 +ipset=/myebay.com/gfwlist +server=/pokemonsunmoon.com/127.0.0.1#5335 +ipset=/pokemonsunmoon.com/gfwlist +server=/unrealengine.com/127.0.0.1#5335 +ipset=/unrealengine.com/gfwlist +server=/halfcanada.com/127.0.0.1#5335 +ipset=/halfcanada.com/gfwlist +server=/ebayboutique.com/127.0.0.1#5335 +ipset=/ebayboutique.com/gfwlist +server=/geeksquadprotectionplan.org/127.0.0.1#5335 +ipset=/geeksquadprotectionplan.org/gfwlist +server=/git-scm.com/127.0.0.1#5335 +ipset=/git-scm.com/gfwlist +server=/adobexdplatform.com/127.0.0.1#5335 +ipset=/adobexdplatform.com/gfwlist +server=/hbonow.com/127.0.0.1#5335 +ipset=/hbonow.com/gfwlist +server=/bmw-connecteddrive.gr/127.0.0.1#5335 +ipset=/bmw-connecteddrive.gr/gfwlist +server=/thomsonreuters.com.sg/127.0.0.1#5335 +ipset=/thomsonreuters.com.sg/gfwlist +server=/pinterest.es/127.0.0.1#5335 +ipset=/pinterest.es/gfwlist +server=/forbesimg.com/127.0.0.1#5335 +ipset=/forbesimg.com/gfwlist +server=/mtt.org/127.0.0.1#5335 +ipset=/mtt.org/gfwlist +server=/instagramhilesi.org/127.0.0.1#5335 +ipset=/instagramhilesi.org/gfwlist +server=/gettyimages.ch/127.0.0.1#5335 +ipset=/gettyimages.ch/gfwlist +server=/hkbn.net/127.0.0.1#5335 +ipset=/hkbn.net/gfwlist +server=/sony.com.ni/127.0.0.1#5335 +ipset=/sony.com.ni/gfwlist +server=/appdynamics.info/127.0.0.1#5335 +ipset=/appdynamics.info/gfwlist +server=/begin-trade.com/127.0.0.1#5335 +ipset=/begin-trade.com/gfwlist +server=/chargenowusa.com/127.0.0.1#5335 +ipset=/chargenowusa.com/gfwlist +server=/strepsils.com.ar/127.0.0.1#5335 +ipset=/strepsils.com.ar/gfwlist +server=/amazon-fashions.com/127.0.0.1#5335 +ipset=/amazon-fashions.com/gfwlist +server=/verizon.com/127.0.0.1#5335 +ipset=/verizon.com/gfwlist +server=/researchgate.net/127.0.0.1#5335 +ipset=/researchgate.net/gfwlist +server=/monsterbeatsheadphones.net/127.0.0.1#5335 +ipset=/monsterbeatsheadphones.net/gfwlist +server=/iphoto.eu/127.0.0.1#5335 +ipset=/iphoto.eu/gfwlist +server=/facebookpmdcenter.com/127.0.0.1#5335 +ipset=/facebookpmdcenter.com/gfwlist +server=/miniso-bh.com/127.0.0.1#5335 +ipset=/miniso-bh.com/gfwlist +server=/mybeatsbydreuk.com/127.0.0.1#5335 +ipset=/mybeatsbydreuk.com/gfwlist +server=/datalore.io/127.0.0.1#5335 +ipset=/datalore.io/gfwlist +server=/thefacebook.com/127.0.0.1#5335 +ipset=/thefacebook.com/gfwlist +server=/imageworks.com/127.0.0.1#5335 +ipset=/imageworks.com/gfwlist +server=/privatebrowsingmyths.com/127.0.0.1#5335 +ipset=/privatebrowsingmyths.com/gfwlist +server=/alibabacloud.com.au/127.0.0.1#5335 +ipset=/alibabacloud.com.au/gfwlist +server=/mybeatscheapbydre.com/127.0.0.1#5335 +ipset=/mybeatscheapbydre.com/gfwlist +server=/kopfhorergunstigshop.com/127.0.0.1#5335 +ipset=/kopfhorergunstigshop.com/gfwlist +server=/bestbuyforbusiness.ca/127.0.0.1#5335 +ipset=/bestbuyforbusiness.ca/gfwlist +server=/intel.sv/127.0.0.1#5335 +ipset=/intel.sv/gfwlist +server=/hpeclipse.com/127.0.0.1#5335 +ipset=/hpeclipse.com/gfwlist +server=/nowe.hk/127.0.0.1#5335 +ipset=/nowe.hk/gfwlist +server=/dowjones.com/127.0.0.1#5335 +ipset=/dowjones.com/gfwlist +server=/elib.maruzen.co.jp/127.0.0.1#5335 +ipset=/elib.maruzen.co.jp/gfwlist +server=/ieeesystemscouncil.org/127.0.0.1#5335 +ipset=/ieeesystemscouncil.org/gfwlist +server=/yahoo.cd/127.0.0.1#5335 +ipset=/yahoo.cd/gfwlist +server=/nikeasia.com/127.0.0.1#5335 +ipset=/nikeasia.com/gfwlist +server=/zeetv.co.uk/127.0.0.1#5335 +ipset=/zeetv.co.uk/gfwlist +server=/9cdn.net/127.0.0.1#5335 +ipset=/9cdn.net/gfwlist +server=/20thcenturystudios.com.au/127.0.0.1#5335 +ipset=/20thcenturystudios.com.au/gfwlist +server=/nike.com/127.0.0.1#5335 +ipset=/nike.com/gfwlist +server=/minilangley.ca/127.0.0.1#5335 +ipset=/minilangley.ca/gfwlist +server=/rthk.hk/127.0.0.1#5335 +ipset=/rthk.hk/gfwlist +server=/monsterbeatsru.com/127.0.0.1#5335 +ipset=/monsterbeatsru.com/gfwlist +server=/finishinfo.be/127.0.0.1#5335 +ipset=/finishinfo.be/gfwlist +server=/facebvook.com/127.0.0.1#5335 +ipset=/facebvook.com/gfwlist +server=/drbeatsukmart.com/127.0.0.1#5335 +ipset=/drbeatsukmart.com/gfwlist +server=/spaceexplored.com/127.0.0.1#5335 +ipset=/spaceexplored.com/gfwlist +server=/powershellgallery.com/127.0.0.1#5335 +ipset=/powershellgallery.com/gfwlist +server=/bmw-lao.la/127.0.0.1#5335 +ipset=/bmw-lao.la/gfwlist +server=/highbolt.net/127.0.0.1#5335 +ipset=/highbolt.net/gfwlist +server=/movidius.net/127.0.0.1#5335 +ipset=/movidius.net/gfwlist +server=/firestonerewards.com/127.0.0.1#5335 +ipset=/firestonerewards.com/gfwlist +server=/wirelessreach.com/127.0.0.1#5335 +ipset=/wirelessreach.com/gfwlist +server=/ibookpartner.com/127.0.0.1#5335 +ipset=/ibookpartner.com/gfwlist +server=/fox29.com/127.0.0.1#5335 +ipset=/fox29.com/gfwlist +server=/mini-connected.pt/127.0.0.1#5335 +ipset=/mini-connected.pt/gfwlist +server=/blubrry.com/127.0.0.1#5335 +ipset=/blubrry.com/gfwlist +server=/minitoronto.ca/127.0.0.1#5335 +ipset=/minitoronto.ca/gfwlist +server=/53world.com/127.0.0.1#5335 +ipset=/53world.com/gfwlist +server=/beatsbydrecybermondaydeals2013.com/127.0.0.1#5335 +ipset=/beatsbydrecybermondaydeals2013.com/gfwlist +server=/uun85.com/127.0.0.1#5335 +ipset=/uun85.com/gfwlist +server=/akam.net/127.0.0.1#5335 +ipset=/akam.net/gfwlist +server=/bmw-me.com/127.0.0.1#5335 +ipset=/bmw-me.com/gfwlist +server=/dtsell.com/127.0.0.1#5335 +ipset=/dtsell.com/gfwlist +server=/bcbits.com/127.0.0.1#5335 +ipset=/bcbits.com/gfwlist +server=/paypal-online.net/127.0.0.1#5335 +ipset=/paypal-online.net/gfwlist +server=/nikefreeshoes.com/127.0.0.1#5335 +ipset=/nikefreeshoes.com/gfwlist +server=/cashpassportglobe.com/127.0.0.1#5335 +ipset=/cashpassportglobe.com/gfwlist +server=/globalsign.fr/127.0.0.1#5335 +ipset=/globalsign.fr/gfwlist +server=/sony.fi/127.0.0.1#5335 +ipset=/sony.fi/gfwlist +server=/origin-a.akamaihd.net/127.0.0.1#5335 +ipset=/origin-a.akamaihd.net/gfwlist +server=/sneakerskick.com/127.0.0.1#5335 +ipset=/sneakerskick.com/gfwlist +server=/appdynamics.org/127.0.0.1#5335 +ipset=/appdynamics.org/gfwlist +server=/alfera.in/127.0.0.1#5335 +ipset=/alfera.in/gfwlist +server=/intel.ru/127.0.0.1#5335 +ipset=/intel.ru/gfwlist +server=/bmwgroupinfobahn.com/127.0.0.1#5335 +ipset=/bmwgroupinfobahn.com/gfwlist +server=/minitakesthestates.com/127.0.0.1#5335 +ipset=/minitakesthestates.com/gfwlist +server=/product.co.jp/127.0.0.1#5335 +ipset=/product.co.jp/gfwlist +server=/bidvestbank.co.za/127.0.0.1#5335 +ipset=/bidvestbank.co.za/gfwlist +server=/pearson.co.jp/127.0.0.1#5335 +ipset=/pearson.co.jp/gfwlist +server=/foxsmallbusinesscenter.net/127.0.0.1#5335 +ipset=/foxsmallbusinesscenter.net/gfwlist +server=/elrepo.org/127.0.0.1#5335 +ipset=/elrepo.org/gfwlist +server=/vanish.ru/127.0.0.1#5335 +ipset=/vanish.ru/gfwlist +server=/wsj.jobs/127.0.0.1#5335 +ipset=/wsj.jobs/gfwlist +server=/facebok.com/127.0.0.1#5335 +ipset=/facebok.com/gfwlist +server=/travelex.ca/127.0.0.1#5335 +ipset=/travelex.ca/gfwlist +server=/mastercard.se/127.0.0.1#5335 +ipset=/mastercard.se/gfwlist +server=/photolia.net/127.0.0.1#5335 +ipset=/photolia.net/gfwlist +server=/intel.cr/127.0.0.1#5335 +ipset=/intel.cr/gfwlist +server=/marketo.com/127.0.0.1#5335 +ipset=/marketo.com/gfwlist +server=/vercel.app/127.0.0.1#5335 +ipset=/vercel.app/gfwlist +server=/medrxiv.org/127.0.0.1#5335 +ipset=/medrxiv.org/gfwlist +server=/volvotrucks.com.au/127.0.0.1#5335 +ipset=/volvotrucks.com.au/gfwlist +server=/pearsonclinical.com.au/127.0.0.1#5335 +ipset=/pearsonclinical.com.au/gfwlist +server=/pm.me/127.0.0.1#5335 +ipset=/pm.me/gfwlist +server=/liveauction.com/127.0.0.1#5335 +ipset=/liveauction.com/gfwlist +server=/d1k2us671qcoau.cloudfront.net/127.0.0.1#5335 +ipset=/d1k2us671qcoau.cloudfront.net/gfwlist +server=/hplargeformatremote.com/127.0.0.1#5335 +ipset=/hplargeformatremote.com/gfwlist +server=/ccpsx.com/127.0.0.1#5335 +ipset=/ccpsx.com/gfwlist +server=/timesmembership.com/127.0.0.1#5335 +ipset=/timesmembership.com/gfwlist +server=/issquaredown.com/127.0.0.1#5335 +ipset=/issquaredown.com/gfwlist +server=/nvidia.ch/127.0.0.1#5335 +ipset=/nvidia.ch/gfwlist +server=/sonyclassics.com/127.0.0.1#5335 +ipset=/sonyclassics.com/gfwlist +server=/shopbmwmotorcycles.com/127.0.0.1#5335 +ipset=/shopbmwmotorcycles.com/gfwlist +server=/canon.tj/127.0.0.1#5335 +ipset=/canon.tj/gfwlist +server=/googl.com/127.0.0.1#5335 +ipset=/googl.com/gfwlist +server=/rfa.org/127.0.0.1#5335 +ipset=/rfa.org/gfwlist +server=/intel.ac/127.0.0.1#5335 +ipset=/intel.ac/gfwlist +server=/interactive-examples.mdn.mozilla.net/127.0.0.1#5335 +ipset=/interactive-examples.mdn.mozilla.net/gfwlist +server=/mucinex.com.cn/127.0.0.1#5335 +ipset=/mucinex.com.cn/gfwlist +server=/bestbeats4u.com/127.0.0.1#5335 +ipset=/bestbeats4u.com/gfwlist +server=/intel.fr/127.0.0.1#5335 +ipset=/intel.fr/gfwlist +server=/imonsterbeats.com/127.0.0.1#5335 +ipset=/imonsterbeats.com/gfwlist +server=/google.me/127.0.0.1#5335 +ipset=/google.me/gfwlist +server=/gamepedia.com/127.0.0.1#5335 +ipset=/gamepedia.com/gfwlist +server=/youtube.uy/127.0.0.1#5335 +ipset=/youtube.uy/gfwlist +server=/youtube.com.ar/127.0.0.1#5335 +ipset=/youtube.com.ar/gfwlist +server=/billpoint.com/127.0.0.1#5335 +ipset=/billpoint.com/gfwlist +server=/q13fox.com/127.0.0.1#5335 +ipset=/q13fox.com/gfwlist +server=/bmwmotorcycles.com/127.0.0.1#5335 +ipset=/bmwmotorcycles.com/gfwlist +server=/vk.me/127.0.0.1#5335 +ipset=/vk.me/gfwlist +server=/fluidpreview.com/127.0.0.1#5335 +ipset=/fluidpreview.com/gfwlist +server=/ioe.com/127.0.0.1#5335 +ipset=/ioe.com/gfwlist +server=/vercel.com/127.0.0.1#5335 +ipset=/vercel.com/gfwlist +server=/pccwglobal.com/127.0.0.1#5335 +ipset=/pccwglobal.com/gfwlist +server=/carbon.com/127.0.0.1#5335 +ipset=/carbon.com/gfwlist +server=/ieee.org/127.0.0.1#5335 +ipset=/ieee.org/gfwlist +server=/faceboooik.com/127.0.0.1#5335 +ipset=/faceboooik.com/gfwlist +server=/visa.com.pe/127.0.0.1#5335 +ipset=/visa.com.pe/gfwlist +server=/nurofen.ru/127.0.0.1#5335 +ipset=/nurofen.ru/gfwlist +server=/headphonepubs.com/127.0.0.1#5335 +ipset=/headphonepubs.com/gfwlist +server=/shoestop2.com/127.0.0.1#5335 +ipset=/shoestop2.com/gfwlist +server=/bmw-security-vehicles.com/127.0.0.1#5335 +ipset=/bmw-security-vehicles.com/gfwlist +server=/conquerwithcharacter.com/127.0.0.1#5335 +ipset=/conquerwithcharacter.com/gfwlist +server=/applepaymerchantsupplies.info/127.0.0.1#5335 +ipset=/applepaymerchantsupplies.info/gfwlist +server=/applecare.berlin/127.0.0.1#5335 +ipset=/applecare.berlin/gfwlist +server=/nexttv.com.tw/127.0.0.1#5335 +ipset=/nexttv.com.tw/gfwlist +server=/vmwarelearning.com/127.0.0.1#5335 +ipset=/vmwarelearning.com/gfwlist +server=/drebyby.com/127.0.0.1#5335 +ipset=/drebyby.com/gfwlist +server=/mini-corporate-sales.com/127.0.0.1#5335 +ipset=/mini-corporate-sales.com/gfwlist +server=/intelsoftwarenetwork.com/127.0.0.1#5335 +ipset=/intelsoftwarenetwork.com/gfwlist +server=/highdefinitionbeatsbydre.com/127.0.0.1#5335 +ipset=/highdefinitionbeatsbydre.com/gfwlist +server=/canon.it/127.0.0.1#5335 +ipset=/canon.it/gfwlist +server=/momo.dm/127.0.0.1#5335 +ipset=/momo.dm/gfwlist +server=/attwirelesssolutions.com/127.0.0.1#5335 +ipset=/attwirelesssolutions.com/gfwlist +server=/zee.com/127.0.0.1#5335 +ipset=/zee.com/gfwlist +server=/factwire.org/127.0.0.1#5335 +ipset=/factwire.org/gfwlist +server=/tx.me/127.0.0.1#5335 +ipset=/tx.me/gfwlist +server=/facebookappcenter.info/127.0.0.1#5335 +ipset=/facebookappcenter.info/gfwlist +server=/o365weve.com/127.0.0.1#5335 +ipset=/o365weve.com/gfwlist +server=/qctconnect.com/127.0.0.1#5335 +ipset=/qctconnect.com/gfwlist +server=/facebooklikeexchange.com/127.0.0.1#5335 +ipset=/facebooklikeexchange.com/gfwlist +server=/payppal.com/127.0.0.1#5335 +ipset=/payppal.com/gfwlist +server=/aboutamazon.com.au/127.0.0.1#5335 +ipset=/aboutamazon.com.au/gfwlist +server=/wballiance.com/127.0.0.1#5335 +ipset=/wballiance.com/gfwlist +server=/volvopenta.us/127.0.0.1#5335 +ipset=/volvopenta.us/gfwlist +server=/myfoxmaine.com/127.0.0.1#5335 +ipset=/myfoxmaine.com/gfwlist +server=/mailonline.co.uk/127.0.0.1#5335 +ipset=/mailonline.co.uk/gfwlist +server=/duckduckco.de/127.0.0.1#5335 +ipset=/duckduckco.de/gfwlist +server=/xposed.info/127.0.0.1#5335 +ipset=/xposed.info/gfwlist +server=/pearson.com/127.0.0.1#5335 +ipset=/pearson.com/gfwlist +server=/gofundme.com/127.0.0.1#5335 +ipset=/gofundme.com/gfwlist +server=/apple.cm/127.0.0.1#5335 +ipset=/apple.cm/gfwlist +server=/nurofen.com/127.0.0.1#5335 +ipset=/nurofen.com/gfwlist +server=/githubstatus.com/127.0.0.1#5335 +ipset=/githubstatus.com/gfwlist +server=/visacarddesignlab.com/127.0.0.1#5335 +ipset=/visacarddesignlab.com/gfwlist +server=/bmwiventures.com/127.0.0.1#5335 +ipset=/bmwiventures.com/gfwlist +server=/v-has.com/127.0.0.1#5335 +ipset=/v-has.com/gfwlist +server=/documentforce.com/127.0.0.1#5335 +ipset=/documentforce.com/gfwlist +server=/bmw-motorrad-service-inclusive.com/127.0.0.1#5335 +ipset=/bmw-motorrad-service-inclusive.com/gfwlist +server=/ebay-course.com/127.0.0.1#5335 +ipset=/ebay-course.com/gfwlist +server=/bingsandbox.com/127.0.0.1#5335 +ipset=/bingsandbox.com/gfwlist +server=/inteltechnologyprovider.com/127.0.0.1#5335 +ipset=/inteltechnologyprovider.com/gfwlist +server=/youtube.ro/127.0.0.1#5335 +ipset=/youtube.ro/gfwlist +server=/imac-applecomputer.com/127.0.0.1#5335 +ipset=/imac-applecomputer.com/gfwlist +server=/bridgestonecomercial.co.cr/127.0.0.1#5335 +ipset=/bridgestonecomercial.co.cr/gfwlist +server=/hpsmart.com/127.0.0.1#5335 +ipset=/hpsmart.com/gfwlist +server=/canon.si/127.0.0.1#5335 +ipset=/canon.si/gfwlist +server=/farfetch-contents.com/127.0.0.1#5335 +ipset=/farfetch-contents.com/gfwlist +server=/40shopping.com/127.0.0.1#5335 +ipset=/40shopping.com/gfwlist +server=/businessinsider.es/127.0.0.1#5335 +ipset=/businessinsider.es/gfwlist +server=/thomsonreuters.ru/127.0.0.1#5335 +ipset=/thomsonreuters.ru/gfwlist +server=/marketing-nirvana.com/127.0.0.1#5335 +ipset=/marketing-nirvana.com/gfwlist +server=/pearsonenespanol.com/127.0.0.1#5335 +ipset=/pearsonenespanol.com/gfwlist +server=/dropboxinsiders.com/127.0.0.1#5335 +ipset=/dropboxinsiders.com/gfwlist +server=/visa.com.ai/127.0.0.1#5335 +ipset=/visa.com.ai/gfwlist +server=/nytimes.com/127.0.0.1#5335 +ipset=/nytimes.com/gfwlist +server=/ebay.nl/127.0.0.1#5335 +ipset=/ebay.nl/gfwlist +server=/mastercard.com.bz/127.0.0.1#5335 +ipset=/mastercard.com.bz/gfwlist +server=/visa.com.ng/127.0.0.1#5335 +ipset=/visa.com.ng/gfwlist +server=/blogspot.si/127.0.0.1#5335 +ipset=/blogspot.si/gfwlist +server=/qualcomm.com.br/127.0.0.1#5335 +ipset=/qualcomm.com.br/gfwlist +server=/vmware.tt.omtrdc.net/127.0.0.1#5335 +ipset=/vmware.tt.omtrdc.net/gfwlist +server=/softether.org/127.0.0.1#5335 +ipset=/softether.org/gfwlist +server=/visa.com.pr/127.0.0.1#5335 +ipset=/visa.com.pr/gfwlist +server=/pinterest.cl/127.0.0.1#5335 +ipset=/pinterest.cl/gfwlist +server=/litbus-anime.com/127.0.0.1#5335 +ipset=/litbus-anime.com/gfwlist +server=/hoolu.tv/127.0.0.1#5335 +ipset=/hoolu.tv/gfwlist +server=/directvplans.com/127.0.0.1#5335 +ipset=/directvplans.com/gfwlist +server=/whatsapp-plus.net/127.0.0.1#5335 +ipset=/whatsapp-plus.net/gfwlist +server=/beatsbydreoslo.com/127.0.0.1#5335 +ipset=/beatsbydreoslo.com/gfwlist +server=/visa.cz/127.0.0.1#5335 +ipset=/visa.cz/gfwlist +server=/yahoo.me/127.0.0.1#5335 +ipset=/yahoo.me/gfwlist +server=/electronicarts.com/127.0.0.1#5335 +ipset=/electronicarts.com/gfwlist +server=/monsterdrebeats-canada.net/127.0.0.1#5335 +ipset=/monsterdrebeats-canada.net/gfwlist +server=/azurecosmosdb.info/127.0.0.1#5335 +ipset=/azurecosmosdb.info/gfwlist +server=/scholar.google.com.tw/127.0.0.1#5335 +ipset=/scholar.google.com.tw/gfwlist +server=/google.cg/127.0.0.1#5335 +ipset=/google.cg/gfwlist +server=/videojs.com/127.0.0.1#5335 +ipset=/videojs.com/gfwlist +server=/jgg18.xyz/127.0.0.1#5335 +ipset=/jgg18.xyz/gfwlist +server=/appsto.re/127.0.0.1#5335 +ipset=/appsto.re/gfwlist +server=/visa.com.kz/127.0.0.1#5335 +ipset=/visa.com.kz/gfwlist +server=/forthebadge.com/127.0.0.1#5335 +ipset=/forthebadge.com/gfwlist +server=/rfi.fr/127.0.0.1#5335 +ipset=/rfi.fr/gfwlist +server=/thunderbird.net/127.0.0.1#5335 +ipset=/thunderbird.net/gfwlist +server=/youtube.lu/127.0.0.1#5335 +ipset=/youtube.lu/gfwlist +server=/cloudflarebolt.com/127.0.0.1#5335 +ipset=/cloudflarebolt.com/gfwlist +server=/cencoastbmw.com/127.0.0.1#5335 +ipset=/cencoastbmw.com/gfwlist +server=/applecomputer.kr/127.0.0.1#5335 +ipset=/applecomputer.kr/gfwlist +server=/akamaietpphishingtest.com/127.0.0.1#5335 +ipset=/akamaietpphishingtest.com/gfwlist +server=/appdynamics.de/127.0.0.1#5335 +ipset=/appdynamics.de/gfwlist +server=/erlang.org/127.0.0.1#5335 +ipset=/erlang.org/gfwlist +server=/mastercard.om/127.0.0.1#5335 +ipset=/mastercard.om/gfwlist +server=/sonybsc.com/127.0.0.1#5335 +ipset=/sonybsc.com/gfwlist +server=/businessinsider.com.au/127.0.0.1#5335 +ipset=/businessinsider.com.au/gfwlist +server=/nikeinc.com/127.0.0.1#5335 +ipset=/nikeinc.com/gfwlist +server=/whychoosevmwareeuc.com/127.0.0.1#5335 +ipset=/whychoosevmwareeuc.com/gfwlist +server=/playshowtv.com/127.0.0.1#5335 +ipset=/playshowtv.com/gfwlist +server=/facebookpoker.info/127.0.0.1#5335 +ipset=/facebookpoker.info/gfwlist +server=/microsoft.lv/127.0.0.1#5335 +ipset=/microsoft.lv/gfwlist +server=/dazn.com/127.0.0.1#5335 +ipset=/dazn.com/gfwlist +server=/pearsonclinical.es/127.0.0.1#5335 +ipset=/pearsonclinical.es/gfwlist +server=/sony.lu/127.0.0.1#5335 +ipset=/sony.lu/gfwlist +server=/sinchew.my/127.0.0.1#5335 +ipset=/sinchew.my/gfwlist +server=/mastercard.com.hk/127.0.0.1#5335 +ipset=/mastercard.com.hk/gfwlist +server=/monsterbeatsale.com/127.0.0.1#5335 +ipset=/monsterbeatsale.com/gfwlist +server=/ebaysohos.com/127.0.0.1#5335 +ipset=/ebaysohos.com/gfwlist +server=/lge.com/127.0.0.1#5335 +ipset=/lge.com/gfwlist +server=/faceboonk.com/127.0.0.1#5335 +ipset=/faceboonk.com/gfwlist +server=/asp-cc.com/127.0.0.1#5335 +ipset=/asp-cc.com/gfwlist +server=/volvotrucks.com.bn/127.0.0.1#5335 +ipset=/volvotrucks.com.bn/gfwlist +server=/dartlang.org/127.0.0.1#5335 +ipset=/dartlang.org/gfwlist +server=/twister.net.co/127.0.0.1#5335 +ipset=/twister.net.co/gfwlist +server=/visa.com.bo/127.0.0.1#5335 +ipset=/visa.com.bo/gfwlist +server=/qualcommhalo.com/127.0.0.1#5335 +ipset=/qualcommhalo.com/gfwlist +server=/fundaiphone5s.com/127.0.0.1#5335 +ipset=/fundaiphone5s.com/gfwlist +server=/visaeurope.at/127.0.0.1#5335 +ipset=/visaeurope.at/gfwlist +server=/discord.gift/127.0.0.1#5335 +ipset=/discord.gift/gfwlist +server=/bmw-motorrad.ma/127.0.0.1#5335 +ipset=/bmw-motorrad.ma/gfwlist +server=/strepsilsarabia.com/127.0.0.1#5335 +ipset=/strepsilsarabia.com/gfwlist +server=/dealtime.com/127.0.0.1#5335 +ipset=/dealtime.com/gfwlist +server=/mac.com.au/127.0.0.1#5335 +ipset=/mac.com.au/gfwlist +server=/xn--yf1at58a.com/127.0.0.1#5335 +ipset=/xn--yf1at58a.com/gfwlist +server=/macruby.org/127.0.0.1#5335 +ipset=/macruby.org/gfwlist +server=/fortawesome.com/127.0.0.1#5335 +ipset=/fortawesome.com/gfwlist +server=/icloudads.net/127.0.0.1#5335 +ipset=/icloudads.net/gfwlist +server=/bmw.com.ve/127.0.0.1#5335 +ipset=/bmw.com.ve/gfwlist +server=/airwick.com.au/127.0.0.1#5335 +ipset=/airwick.com.au/gfwlist +server=/amazonlumberyard.wang/127.0.0.1#5335 +ipset=/amazonlumberyard.wang/gfwlist +server=/javynow.com/127.0.0.1#5335 +ipset=/javynow.com/gfwlist +server=/headphonesbeatsbydre.com/127.0.0.1#5335 +ipset=/headphonesbeatsbydre.com/gfwlist +server=/dronedj.com/127.0.0.1#5335 +ipset=/dronedj.com/gfwlist +server=/inclusivegrowthscore.com/127.0.0.1#5335 +ipset=/inclusivegrowthscore.com/gfwlist +server=/speedfantasybid.com/127.0.0.1#5335 +ipset=/speedfantasybid.com/gfwlist +server=/enfamil.ca/127.0.0.1#5335 +ipset=/enfamil.ca/gfwlist +server=/tumblr.com/127.0.0.1#5335 +ipset=/tumblr.com/gfwlist +server=/msnewskids.com/127.0.0.1#5335 +ipset=/msnewskids.com/gfwlist +server=/bmw-businessdrive.com/127.0.0.1#5335 +ipset=/bmw-businessdrive.com/gfwlist +server=/cybertrust.ne.jp/127.0.0.1#5335 +ipset=/cybertrust.ne.jp/gfwlist +server=/azurecosmosdb.net/127.0.0.1#5335 +ipset=/azurecosmosdb.net/gfwlist +server=/farfetch-apps.com/127.0.0.1#5335 +ipset=/farfetch-apps.com/gfwlist +server=/fstopimages.com/127.0.0.1#5335 +ipset=/fstopimages.com/gfwlist +server=/ibm.us/127.0.0.1#5335 +ipset=/ibm.us/gfwlist +server=/camelotherald.net/127.0.0.1#5335 +ipset=/camelotherald.net/gfwlist +server=/dropboxstatic.com/127.0.0.1#5335 +ipset=/dropboxstatic.com/gfwlist +server=/corepublishingsolutions.com/127.0.0.1#5335 +ipset=/corepublishingsolutions.com/gfwlist +server=/abematv.akamaized.net/127.0.0.1#5335 +ipset=/abematv.akamaized.net/gfwlist +server=/buycheapbeatsbydreshop.com/127.0.0.1#5335 +ipset=/buycheapbeatsbydreshop.com/gfwlist +server=/ebay-online.com/127.0.0.1#5335 +ipset=/ebay-online.com/gfwlist +server=/appla.com/127.0.0.1#5335 +ipset=/appla.com/gfwlist +server=/mcdonaldsparties.com.au/127.0.0.1#5335 +ipset=/mcdonaldsparties.com.au/gfwlist +server=/www.sb/127.0.0.1#5335 +ipset=/www.sb/gfwlist +server=/ieee-tems.org/127.0.0.1#5335 +ipset=/ieee-tems.org/gfwlist +server=/devopsms.com/127.0.0.1#5335 +ipset=/devopsms.com/gfwlist +server=/nomadlandmovie.ch/127.0.0.1#5335 +ipset=/nomadlandmovie.ch/gfwlist +server=/applemusic.co/127.0.0.1#5335 +ipset=/applemusic.co/gfwlist +server=/ieee.tv/127.0.0.1#5335 +ipset=/ieee.tv/gfwlist +server=/dettol.ch/127.0.0.1#5335 +ipset=/dettol.ch/gfwlist +server=/un.org/127.0.0.1#5335 +ipset=/un.org/gfwlist +server=/beatsbydrehd.net/127.0.0.1#5335 +ipset=/beatsbydrehd.net/gfwlist +server=/itunesmatch.com/127.0.0.1#5335 +ipset=/itunesmatch.com/gfwlist +server=/famima.vn/127.0.0.1#5335 +ipset=/famima.vn/gfwlist +server=/office365love.com/127.0.0.1#5335 +ipset=/office365love.com/gfwlist +server=/fox5dc.com/127.0.0.1#5335 +ipset=/fox5dc.com/gfwlist +server=/pubmatic.co.jp/127.0.0.1#5335 +ipset=/pubmatic.co.jp/gfwlist +server=/beatsbydrdredanmark.com/127.0.0.1#5335 +ipset=/beatsbydrdredanmark.com/gfwlist +server=/crossfitfirestone.com/127.0.0.1#5335 +ipset=/crossfitfirestone.com/gfwlist +server=/intel.fi/127.0.0.1#5335 +ipset=/intel.fi/gfwlist +server=/appdynamics.com/127.0.0.1#5335 +ipset=/appdynamics.com/gfwlist +server=/youtube.co.ke/127.0.0.1#5335 +ipset=/youtube.co.ke/gfwlist +server=/paypalinc.com/127.0.0.1#5335 +ipset=/paypalinc.com/gfwlist +server=/google.cz/127.0.0.1#5335 +ipset=/google.cz/gfwlist +server=/cheapbeats4sale.net/127.0.0.1#5335 +ipset=/cheapbeats4sale.net/gfwlist +server=/j2objc.org/127.0.0.1#5335 +ipset=/j2objc.org/gfwlist +server=/mastercard.ae/127.0.0.1#5335 +ipset=/mastercard.ae/gfwlist +server=/beatsshop-usa.com/127.0.0.1#5335 +ipset=/beatsshop-usa.com/gfwlist +server=/mcd.com/127.0.0.1#5335 +ipset=/mcd.com/gfwlist +server=/enfagrow.co.in/127.0.0.1#5335 +ipset=/enfagrow.co.in/gfwlist +server=/greenend.org.uk/127.0.0.1#5335 +ipset=/greenend.org.uk/gfwlist +server=/applestore.com.ph/127.0.0.1#5335 +ipset=/applestore.com.ph/gfwlist +server=/sway.com/127.0.0.1#5335 +ipset=/sway.com/gfwlist +server=/applescript.info/127.0.0.1#5335 +ipset=/applescript.info/gfwlist +server=/disney.nl/127.0.0.1#5335 +ipset=/disney.nl/gfwlist +server=/polymer-project.org/127.0.0.1#5335 +ipset=/polymer-project.org/gfwlist +server=/itunesradio.com/127.0.0.1#5335 +ipset=/itunesradio.com/gfwlist +server=/bbcfmt.s.llnwi.net/127.0.0.1#5335 +ipset=/bbcfmt.s.llnwi.net/gfwlist +server=/kingkongapp.com/127.0.0.1#5335 +ipset=/kingkongapp.com/gfwlist +server=/wsjplus.com/127.0.0.1#5335 +ipset=/wsjplus.com/gfwlist +server=/bmw-connecteddrive.cz/127.0.0.1#5335 +ipset=/bmw-connecteddrive.cz/gfwlist +server=/webmproject.org/127.0.0.1#5335 +ipset=/webmproject.org/gfwlist +server=/hayabusa.io/127.0.0.1#5335 +ipset=/hayabusa.io/gfwlist +server=/frontiersin.org/127.0.0.1#5335 +ipset=/frontiersin.org/gfwlist +server=/visa.co.ke/127.0.0.1#5335 +ipset=/visa.co.ke/gfwlist +server=/yahoo.no/127.0.0.1#5335 +ipset=/yahoo.no/gfwlist +server=/intelstore.com/127.0.0.1#5335 +ipset=/intelstore.com/gfwlist +server=/microsoft.ru/127.0.0.1#5335 +ipset=/microsoft.ru/gfwlist +server=/ipad.wang/127.0.0.1#5335 +ipset=/ipad.wang/gfwlist +server=/coursera.org/127.0.0.1#5335 +ipset=/coursera.org/gfwlist +server=/coupangcdn.com/127.0.0.1#5335 +ipset=/coupangcdn.com/gfwlist +server=/stackoverflow.com/127.0.0.1#5335 +ipset=/stackoverflow.com/gfwlist +server=/alphera.in/127.0.0.1#5335 +ipset=/alphera.in/gfwlist +server=/minimarkham.ca/127.0.0.1#5335 +ipset=/minimarkham.ca/gfwlist +server=/scholar.google.ca/127.0.0.1#5335 +ipset=/scholar.google.ca/gfwlist +server=/volvotrucks.jp/127.0.0.1#5335 +ipset=/volvotrucks.jp/gfwlist +server=/initproducts.com/127.0.0.1#5335 +ipset=/initproducts.com/gfwlist +server=/canon.az/127.0.0.1#5335 +ipset=/canon.az/gfwlist +server=/wish.com/127.0.0.1#5335 +ipset=/wish.com/gfwlist +server=/alpherafs.com.hk/127.0.0.1#5335 +ipset=/alpherafs.com.hk/gfwlist +server=/visualstudio-staging.com/127.0.0.1#5335 +ipset=/visualstudio-staging.com/gfwlist +server=/ebay.co.uk/127.0.0.1#5335 +ipset=/ebay.co.uk/gfwlist +server=/volvotrucks.fr/127.0.0.1#5335 +ipset=/volvotrucks.fr/gfwlist +server=/mi9cdn.com/127.0.0.1#5335 +ipset=/mi9cdn.com/gfwlist +server=/orithegame.com/127.0.0.1#5335 +ipset=/orithegame.com/gfwlist +server=/applepaysupplies.berlin/127.0.0.1#5335 +ipset=/applepaysupplies.berlin/gfwlist +server=/whatisworkspaceone.com/127.0.0.1#5335 +ipset=/whatisworkspaceone.com/gfwlist +server=/alfera.my/127.0.0.1#5335 +ipset=/alfera.my/gfwlist +server=/microsoftaccountguard.com/127.0.0.1#5335 +ipset=/microsoftaccountguard.com/gfwlist +server=/doi.info/127.0.0.1#5335 +ipset=/doi.info/gfwlist +server=/volvotrucks.com.tr/127.0.0.1#5335 +ipset=/volvotrucks.com.tr/gfwlist +server=/nexpart.tv/127.0.0.1#5335 +ipset=/nexpart.tv/gfwlist +server=/alpherafinancialservices.es/127.0.0.1#5335 +ipset=/alpherafinancialservices.es/gfwlist +server=/epochtimes.com/127.0.0.1#5335 +ipset=/epochtimes.com/gfwlist +server=/yahoo.la/127.0.0.1#5335 +ipset=/yahoo.la/gfwlist +server=/fox4news.com/127.0.0.1#5335 +ipset=/fox4news.com/gfwlist +server=/poshtestgallery.cloudapp.net/127.0.0.1#5335 +ipset=/poshtestgallery.cloudapp.net/gfwlist +server=/sony.ua/127.0.0.1#5335 +ipset=/sony.ua/gfwlist +server=/drebeatshome.com/127.0.0.1#5335 +ipset=/drebeatshome.com/gfwlist +server=/uun83.com/127.0.0.1#5335 +ipset=/uun83.com/gfwlist +server=/bigbuckbunny.org/127.0.0.1#5335 +ipset=/bigbuckbunny.org/gfwlist +server=/escape.com.au/127.0.0.1#5335 +ipset=/escape.com.au/gfwlist +server=/myfonts.com/127.0.0.1#5335 +ipset=/myfonts.com/gfwlist +server=/npmjs.com/127.0.0.1#5335 +ipset=/npmjs.com/gfwlist +server=/scholar.google.co.cr/127.0.0.1#5335 +ipset=/scholar.google.co.cr/gfwlist +server=/facebook-privacy.com/127.0.0.1#5335 +ipset=/facebook-privacy.com/gfwlist +server=/cloudflaretest.com/127.0.0.1#5335 +ipset=/cloudflaretest.com/gfwlist +server=/canon.gr/127.0.0.1#5335 +ipset=/canon.gr/gfwlist +server=/burstlyrewards.com/127.0.0.1#5335 +ipset=/burstlyrewards.com/gfwlist +server=/applestore.com.ru/127.0.0.1#5335 +ipset=/applestore.com.ru/gfwlist +server=/bmw.re/127.0.0.1#5335 +ipset=/bmw.re/gfwlist +server=/paypal-signin.com/127.0.0.1#5335 +ipset=/paypal-signin.com/gfwlist +server=/ebay-stories.com/127.0.0.1#5335 +ipset=/ebay-stories.com/gfwlist +server=/bloombergtradingchallenge.com/127.0.0.1#5335 +ipset=/bloombergtradingchallenge.com/gfwlist +server=/intelcloudbuilders.com/127.0.0.1#5335 +ipset=/intelcloudbuilders.com/gfwlist +server=/bestbuygsm.com/127.0.0.1#5335 +ipset=/bestbuygsm.com/gfwlist +server=/mysims.com/127.0.0.1#5335 +ipset=/mysims.com/gfwlist +server=/builtfromebay.com/127.0.0.1#5335 +ipset=/builtfromebay.com/gfwlist +server=/foxsports.com.br/127.0.0.1#5335 +ipset=/foxsports.com.br/gfwlist +server=/dishworld.com/127.0.0.1#5335 +ipset=/dishworld.com/gfwlist +server=/reckittbenckiser.tv/127.0.0.1#5335 +ipset=/reckittbenckiser.tv/gfwlist +server=/amazonstudiosguilds.com/127.0.0.1#5335 +ipset=/amazonstudiosguilds.com/gfwlist +server=/mynike.com/127.0.0.1#5335 +ipset=/mynike.com/gfwlist +server=/monotypeimaging.com/127.0.0.1#5335 +ipset=/monotypeimaging.com/gfwlist +server=/godoc.org/127.0.0.1#5335 +ipset=/godoc.org/gfwlist +server=/youtube.in/127.0.0.1#5335 +ipset=/youtube.in/gfwlist +server=/picsee.co/127.0.0.1#5335 +ipset=/picsee.co/gfwlist +server=/monsterbeatsfinland.com/127.0.0.1#5335 +ipset=/monsterbeatsfinland.com/gfwlist +server=/powerbeatsbydre.com/127.0.0.1#5335 +ipset=/powerbeatsbydre.com/gfwlist +server=/appleiphonecell.com/127.0.0.1#5335 +ipset=/appleiphonecell.com/gfwlist +server=/mastercard.gr/127.0.0.1#5335 +ipset=/mastercard.gr/gfwlist +server=/moodstocks.com/127.0.0.1#5335 +ipset=/moodstocks.com/gfwlist +server=/voanews.com/127.0.0.1#5335 +ipset=/voanews.com/gfwlist +server=/amzn.com/127.0.0.1#5335 +ipset=/amzn.com/gfwlist +server=/appleone.website/127.0.0.1#5335 +ipset=/appleone.website/gfwlist +server=/kijiji.ca/127.0.0.1#5335 +ipset=/kijiji.ca/gfwlist +server=/jijiji.ca/127.0.0.1#5335 +ipset=/jijiji.ca/gfwlist +server=/disney.be/127.0.0.1#5335 +ipset=/disney.be/gfwlist +server=/bloombergsef.com/127.0.0.1#5335 +ipset=/bloombergsef.com/gfwlist +server=/flirt4free.com/127.0.0.1#5335 +ipset=/flirt4free.com/gfwlist +server=/mcpeaceofmind.com/127.0.0.1#5335 +ipset=/mcpeaceofmind.com/gfwlist +server=/microsofteca.com/127.0.0.1#5335 +ipset=/microsofteca.com/gfwlist +server=/beatsbydreaustraliasales.com/127.0.0.1#5335 +ipset=/beatsbydreaustraliasales.com/gfwlist +server=/18novel.xyz/127.0.0.1#5335 +ipset=/18novel.xyz/gfwlist +server=/paypaal.com/127.0.0.1#5335 +ipset=/paypaal.com/gfwlist +server=/thestationbymaker.com/127.0.0.1#5335 +ipset=/thestationbymaker.com/gfwlist +server=/bridgestone.com.tw/127.0.0.1#5335 +ipset=/bridgestone.com.tw/gfwlist +server=/bridgestone.com.vn/127.0.0.1#5335 +ipset=/bridgestone.com.vn/gfwlist +server=/calgoncarbon-china.com/127.0.0.1#5335 +ipset=/calgoncarbon-china.com/gfwlist +server=/directvgrandslam.com/127.0.0.1#5335 +ipset=/directvgrandslam.com/gfwlist +server=/primevideo.info/127.0.0.1#5335 +ipset=/primevideo.info/gfwlist +server=/needforspeeddriftkings.com/127.0.0.1#5335 +ipset=/needforspeeddriftkings.com/gfwlist +server=/mastercad.com/127.0.0.1#5335 +ipset=/mastercad.com/gfwlist +server=/aboutamazon.in/127.0.0.1#5335 +ipset=/aboutamazon.in/gfwlist +server=/mpweekly.com/127.0.0.1#5335 +ipset=/mpweekly.com/gfwlist +server=/beatsbydre-mall.com/127.0.0.1#5335 +ipset=/beatsbydre-mall.com/gfwlist +server=/bidi.net.uk/127.0.0.1#5335 +ipset=/bidi.net.uk/gfwlist +server=/niketrainers.com/127.0.0.1#5335 +ipset=/niketrainers.com/gfwlist +server=/myradio.hk/127.0.0.1#5335 +ipset=/myradio.hk/gfwlist +server=/100beatscheap.com/127.0.0.1#5335 +ipset=/100beatscheap.com/gfwlist +server=/huloo.tv/127.0.0.1#5335 +ipset=/huloo.tv/gfwlist +server=/starbucks.com.co/127.0.0.1#5335 +ipset=/starbucks.com.co/gfwlist +server=/msecnd.net/127.0.0.1#5335 +ipset=/msecnd.net/gfwlist +server=/av01.tv/127.0.0.1#5335 +ipset=/av01.tv/gfwlist +server=/cnn.io/127.0.0.1#5335 +ipset=/cnn.io/gfwlist +server=/intel.bi/127.0.0.1#5335 +ipset=/intel.bi/gfwlist +server=/wixanswers.com/127.0.0.1#5335 +ipset=/wixanswers.com/gfwlist +server=/vanishstains.com.au/127.0.0.1#5335 +ipset=/vanishstains.com.au/gfwlist +server=/chargenow.com/127.0.0.1#5335 +ipset=/chargenow.com/gfwlist +server=/realclearinvestigations.com/127.0.0.1#5335 +ipset=/realclearinvestigations.com/gfwlist +server=/strepsils.co.za/127.0.0.1#5335 +ipset=/strepsils.co.za/gfwlist +server=/bmwcustomapparel.com/127.0.0.1#5335 +ipset=/bmwcustomapparel.com/gfwlist +server=/nvidia.es/127.0.0.1#5335 +ipset=/nvidia.es/gfwlist +server=/opencreate.org/127.0.0.1#5335 +ipset=/opencreate.org/gfwlist +server=/ipod.de/127.0.0.1#5335 +ipset=/ipod.de/gfwlist +server=/ebaystore.com/127.0.0.1#5335 +ipset=/ebaystore.com/gfwlist +server=/facerbook.com/127.0.0.1#5335 +ipset=/facerbook.com/gfwlist +server=/ieeer5.org/127.0.0.1#5335 +ipset=/ieeer5.org/gfwlist +server=/googletraveladservices.com/127.0.0.1#5335 +ipset=/googletraveladservices.com/gfwlist +server=/onlyiphone5case.com/127.0.0.1#5335 +ipset=/onlyiphone5case.com/gfwlist +server=/gettyimages.com/127.0.0.1#5335 +ipset=/gettyimages.com/gfwlist +server=/cashify.com/127.0.0.1#5335 +ipset=/cashify.com/gfwlist +server=/costcobusinessdelivery.com/127.0.0.1#5335 +ipset=/costcobusinessdelivery.com/gfwlist +server=/intel.sn/127.0.0.1#5335 +ipset=/intel.sn/gfwlist +server=/realtype.co.jp/127.0.0.1#5335 +ipset=/realtype.co.jp/gfwlist +server=/ebayvakantiehuizen.com/127.0.0.1#5335 +ipset=/ebayvakantiehuizen.com/gfwlist +server=/nodejs.org/127.0.0.1#5335 +ipset=/nodejs.org/gfwlist +server=/rb.net/127.0.0.1#5335 +ipset=/rb.net/gfwlist +server=/netacad.com/127.0.0.1#5335 +ipset=/netacad.com/gfwlist +server=/dettol.cl/127.0.0.1#5335 +ipset=/dettol.cl/gfwlist +server=/applebk.net/127.0.0.1#5335 +ipset=/applebk.net/gfwlist +server=/scholar.google.com.pk/127.0.0.1#5335 +ipset=/scholar.google.com.pk/gfwlist +server=/miniso.co.tz/127.0.0.1#5335 +ipset=/miniso.co.tz/gfwlist +server=/intel.eg/127.0.0.1#5335 +ipset=/intel.eg/gfwlist +server=/dynafleetonline.com/127.0.0.1#5335 +ipset=/dynafleetonline.com/gfwlist +server=/microsoft.com/127.0.0.1#5335 +ipset=/microsoft.com/gfwlist +server=/amazonvideo.cc/127.0.0.1#5335 +ipset=/amazonvideo.cc/gfwlist +server=/applecare.hamburg/127.0.0.1#5335 +ipset=/applecare.hamburg/gfwlist +server=/bestbuy-giftcard.info/127.0.0.1#5335 +ipset=/bestbuy-giftcard.info/gfwlist +server=/scholar.google.com.cu/127.0.0.1#5335 +ipset=/scholar.google.com.cu/gfwlist +server=/drdrebeatsale.com/127.0.0.1#5335 +ipset=/drdrebeatsale.com/gfwlist +server=/the-m-festival.com/127.0.0.1#5335 +ipset=/the-m-festival.com/gfwlist +server=/bmw-worldfinal.com/127.0.0.1#5335 +ipset=/bmw-worldfinal.com/gfwlist +server=/marvel10thanniversary.com/127.0.0.1#5335 +ipset=/marvel10thanniversary.com/gfwlist +server=/dnai.in/127.0.0.1#5335 +ipset=/dnai.in/gfwlist +server=/paypal-communications.net/127.0.0.1#5335 +ipset=/paypal-communications.net/gfwlist +server=/scoop.sh/127.0.0.1#5335 +ipset=/scoop.sh/gfwlist +server=/microsoft.lt/127.0.0.1#5335 +ipset=/microsoft.lt/gfwlist +server=/shoppercentre.com/127.0.0.1#5335 +ipset=/shoppercentre.com/gfwlist +server=/mini-connected.lt/127.0.0.1#5335 +ipset=/mini-connected.lt/gfwlist +server=/oxfordpoliticstrove.com/127.0.0.1#5335 +ipset=/oxfordpoliticstrove.com/gfwlist +server=/mini.cz/127.0.0.1#5335 +ipset=/mini.cz/gfwlist +server=/foxnewsmagazine.com/127.0.0.1#5335 +ipset=/foxnewsmagazine.com/gfwlist +server=/electrek.co/127.0.0.1#5335 +ipset=/electrek.co/gfwlist +server=/bridgestone.co.in/127.0.0.1#5335 +ipset=/bridgestone.co.in/gfwlist +server=/paypalonline.net/127.0.0.1#5335 +ipset=/paypalonline.net/gfwlist +server=/pchomepay.com.tw/127.0.0.1#5335 +ipset=/pchomepay.com.tw/gfwlist +server=/ebayclassifieds.com/127.0.0.1#5335 +ipset=/ebayclassifieds.com/gfwlist +server=/akamaizercentral.com/127.0.0.1#5335 +ipset=/akamaizercentral.com/gfwlist +server=/ciscoccservice.com/127.0.0.1#5335 +ipset=/ciscoccservice.com/gfwlist +server=/monsterbeatsdrdrecheap.com/127.0.0.1#5335 +ipset=/monsterbeatsdrdrecheap.com/gfwlist +server=/9now.com.au/127.0.0.1#5335 +ipset=/9now.com.au/gfwlist +server=/apple.fi/127.0.0.1#5335 +ipset=/apple.fi/gfwlist +server=/intel.dk/127.0.0.1#5335 +ipset=/intel.dk/gfwlist +server=/baltimorebmw.com/127.0.0.1#5335 +ipset=/baltimorebmw.com/gfwlist +server=/terragraph.com/127.0.0.1#5335 +ipset=/terragraph.com/gfwlist +server=/ieee-ies.org/127.0.0.1#5335 +ipset=/ieee-ies.org/gfwlist +server=/miniyaletown.ca/127.0.0.1#5335 +ipset=/miniyaletown.ca/gfwlist +server=/volvotrucks.de/127.0.0.1#5335 +ipset=/volvotrucks.de/gfwlist +server=/messenger.com/127.0.0.1#5335 +ipset=/messenger.com/gfwlist +server=/dogecoin.com/127.0.0.1#5335 +ipset=/dogecoin.com/gfwlist +server=/disneymagicmoments.gr/127.0.0.1#5335 +ipset=/disneymagicmoments.gr/gfwlist +server=/mini.ie/127.0.0.1#5335 +ipset=/mini.ie/gfwlist +server=/applefinalcutproworld.org/127.0.0.1#5335 +ipset=/applefinalcutproworld.org/gfwlist +server=/worldcoinpay.com/127.0.0.1#5335 +ipset=/worldcoinpay.com/gfwlist +server=/nikeitalia.com/127.0.0.1#5335 +ipset=/nikeitalia.com/gfwlist +server=/minidrivingexperienceusa.com/127.0.0.1#5335 +ipset=/minidrivingexperienceusa.com/gfwlist +server=/womenwill.com.br/127.0.0.1#5335 +ipset=/womenwill.com.br/gfwlist +server=/wwe.com/127.0.0.1#5335 +ipset=/wwe.com/gfwlist +server=/rockstargames.com/127.0.0.1#5335 +ipset=/rockstargames.com/gfwlist +server=/cbsig.net/127.0.0.1#5335 +ipset=/cbsig.net/gfwlist +server=/applestore.co.hu/127.0.0.1#5335 +ipset=/applestore.co.hu/gfwlist +server=/mastercard.si/127.0.0.1#5335 +ipset=/mastercard.si/gfwlist +server=/neurology.org/127.0.0.1#5335 +ipset=/neurology.org/gfwlist +server=/ebay.com/127.0.0.1#5335 +ipset=/ebay.com/gfwlist +server=/intelcapital.net/127.0.0.1#5335 +ipset=/intelcapital.net/gfwlist +server=/beatsbydre-outletsale.net/127.0.0.1#5335 +ipset=/beatsbydre-outletsale.net/gfwlist +server=/thinkwithgoogle.com/127.0.0.1#5335 +ipset=/thinkwithgoogle.com/gfwlist +server=/nikeswim.com/127.0.0.1#5335 +ipset=/nikeswim.com/gfwlist +server=/adobecc.com/127.0.0.1#5335 +ipset=/adobecc.com/gfwlist +server=/newsprestigenetwork.com.au/127.0.0.1#5335 +ipset=/newsprestigenetwork.com.au/gfwlist +server=/foxcharlotte.com/127.0.0.1#5335 +ipset=/foxcharlotte.com/gfwlist +server=/epochtimes-romania.com/127.0.0.1#5335 +ipset=/epochtimes-romania.com/gfwlist +server=/hbomaxcdn.com/127.0.0.1#5335 +ipset=/hbomaxcdn.com/gfwlist +server=/famosascalvas.com/127.0.0.1#5335 +ipset=/famosascalvas.com/gfwlist +server=/beatselectronics.com/127.0.0.1#5335 +ipset=/beatselectronics.com/gfwlist +server=/buymeacoffee.com/127.0.0.1#5335 +ipset=/buymeacoffee.com/gfwlist +server=/bloombergview.com/127.0.0.1#5335 +ipset=/bloombergview.com/gfwlist +server=/disneymagicmoments.fr/127.0.0.1#5335 +ipset=/disneymagicmoments.fr/gfwlist +server=/nabtravellercard.com.au/127.0.0.1#5335 +ipset=/nabtravellercard.com.au/gfwlist +server=/gettyimages.co.uk/127.0.0.1#5335 +ipset=/gettyimages.co.uk/gfwlist +server=/google.com.om/127.0.0.1#5335 +ipset=/google.com.om/gfwlist +server=/watchout.tw/127.0.0.1#5335 +ipset=/watchout.tw/gfwlist +server=/paydiant.com/127.0.0.1#5335 +ipset=/paydiant.com/gfwlist +server=/sf.net/127.0.0.1#5335 +ipset=/sf.net/gfwlist +server=/beatsbydremall2013.com/127.0.0.1#5335 +ipset=/beatsbydremall2013.com/gfwlist +server=/popjav.tv/127.0.0.1#5335 +ipset=/popjav.tv/gfwlist +server=/freenetproject.org/127.0.0.1#5335 +ipset=/freenetproject.org/gfwlist +server=/spotifycdn.net/127.0.0.1#5335 +ipset=/spotifycdn.net/gfwlist +server=/blogspot.com.co/127.0.0.1#5335 +ipset=/blogspot.com.co/gfwlist +server=/blogspot.jp/127.0.0.1#5335 +ipset=/blogspot.jp/gfwlist +server=/brandproducts1688.com/127.0.0.1#5335 +ipset=/brandproducts1688.com/gfwlist +server=/thinkquarterly.co.uk/127.0.0.1#5335 +ipset=/thinkquarterly.co.uk/gfwlist +server=/star-brasil.com/127.0.0.1#5335 +ipset=/star-brasil.com/gfwlist +server=/cheap-beatsbydre.com/127.0.0.1#5335 +ipset=/cheap-beatsbydre.com/gfwlist +server=/italiabeatsbydrdre.com/127.0.0.1#5335 +ipset=/italiabeatsbydrdre.com/gfwlist +server=/hu1u.com/127.0.0.1#5335 +ipset=/hu1u.com/gfwlist +server=/taptotokyo.com/127.0.0.1#5335 +ipset=/taptotokyo.com/gfwlist +server=/nintendoeurope.com/127.0.0.1#5335 +ipset=/nintendoeurope.com/gfwlist +server=/skype.com/127.0.0.1#5335 +ipset=/skype.com/gfwlist +server=/visabusinessinsights.com/127.0.0.1#5335 +ipset=/visabusinessinsights.com/gfwlist +server=/appstore.ph/127.0.0.1#5335 +ipset=/appstore.ph/gfwlist +server=/dettol.be/127.0.0.1#5335 +ipset=/dettol.be/gfwlist +server=/nvidia.com.br/127.0.0.1#5335 +ipset=/nvidia.com.br/gfwlist +server=/coinone.co.kr/127.0.0.1#5335 +ipset=/coinone.co.kr/gfwlist +server=/universalorlando.com/127.0.0.1#5335 +ipset=/universalorlando.com/gfwlist +server=/huobi.pro/127.0.0.1#5335 +ipset=/huobi.pro/gfwlist +server=/bmw.co.ke/127.0.0.1#5335 +ipset=/bmw.co.ke/gfwlist +server=/volvotrucks.no/127.0.0.1#5335 +ipset=/volvotrucks.no/gfwlist +server=/muji.us/127.0.0.1#5335 +ipset=/muji.us/gfwlist +server=/sharpdaily.tw/127.0.0.1#5335 +ipset=/sharpdaily.tw/gfwlist +server=/paisapay.info/127.0.0.1#5335 +ipset=/paisapay.info/gfwlist +server=/vfsco.at/127.0.0.1#5335 +ipset=/vfsco.at/gfwlist +server=/beats-by-dre-australia.com/127.0.0.1#5335 +ipset=/beats-by-dre-australia.com/gfwlist +server=/supermariorun.com/127.0.0.1#5335 +ipset=/supermariorun.com/gfwlist +server=/beatsbydrefr.com/127.0.0.1#5335 +ipset=/beatsbydrefr.com/gfwlist +server=/theebayshop.com/127.0.0.1#5335 +ipset=/theebayshop.com/gfwlist +server=/magentocommerce.com/127.0.0.1#5335 +ipset=/magentocommerce.com/gfwlist +server=/visa.com.az/127.0.0.1#5335 +ipset=/visa.com.az/gfwlist +server=/onlineapplestore.com/127.0.0.1#5335 +ipset=/onlineapplestore.com/gfwlist +server=/visual-arts.jp/127.0.0.1#5335 +ipset=/visual-arts.jp/gfwlist +server=/paygonline.com/127.0.0.1#5335 +ipset=/paygonline.com/gfwlist +server=/myguide.hk/127.0.0.1#5335 +ipset=/myguide.hk/gfwlist +server=/dailymail.com.au/127.0.0.1#5335 +ipset=/dailymail.com.au/gfwlist +server=/softbanktelecom.com/127.0.0.1#5335 +ipset=/softbanktelecom.com/gfwlist +server=/paofu.cloud/127.0.0.1#5335 +ipset=/paofu.cloud/gfwlist +server=/bwbx.io/127.0.0.1#5335 +ipset=/bwbx.io/gfwlist +server=/ipad.host/127.0.0.1#5335 +ipset=/ipad.host/gfwlist +server=/oxfordfirstsource.com/127.0.0.1#5335 +ipset=/oxfordfirstsource.com/gfwlist +server=/facebookconnect.com/127.0.0.1#5335 +ipset=/facebookconnect.com/gfwlist +server=/viacbs.com/127.0.0.1#5335 +ipset=/viacbs.com/gfwlist +server=/ebay.com.ec/127.0.0.1#5335 +ipset=/ebay.com.ec/gfwlist +server=/disneymagicmoments.de/127.0.0.1#5335 +ipset=/disneymagicmoments.de/gfwlist +server=/skate2.com/127.0.0.1#5335 +ipset=/skate2.com/gfwlist +server=/bethesdagamestudios.com/127.0.0.1#5335 +ipset=/bethesdagamestudios.com/gfwlist +server=/apple-usa.net/127.0.0.1#5335 +ipset=/apple-usa.net/gfwlist +server=/beatsbydremonsteraustralia.com/127.0.0.1#5335 +ipset=/beatsbydremonsteraustralia.com/gfwlist +server=/askfacebook.net/127.0.0.1#5335 +ipset=/askfacebook.net/gfwlist +server=/blink.org/127.0.0.1#5335 +ipset=/blink.org/gfwlist +server=/googlestore.com/127.0.0.1#5335 +ipset=/googlestore.com/gfwlist +server=/minie.com/127.0.0.1#5335 +ipset=/minie.com/gfwlist +server=/hpstore-emea.com/127.0.0.1#5335 +ipset=/hpstore-emea.com/gfwlist +server=/trustdoc.ch/127.0.0.1#5335 +ipset=/trustdoc.ch/gfwlist +server=/mininanaimo.ca/127.0.0.1#5335 +ipset=/mininanaimo.ca/gfwlist +server=/greatergothammini.com/127.0.0.1#5335 +ipset=/greatergothammini.com/gfwlist +server=/casque-fr.com/127.0.0.1#5335 +ipset=/casque-fr.com/gfwlist +server=/nvidia.ru/127.0.0.1#5335 +ipset=/nvidia.ru/gfwlist +server=/dynacw.com.hk/127.0.0.1#5335 +ipset=/dynacw.com.hk/gfwlist +server=/ebayfrance.com/127.0.0.1#5335 +ipset=/ebayfrance.com/gfwlist +server=/bmw-motorrad.uy/127.0.0.1#5335 +ipset=/bmw-motorrad.uy/gfwlist +server=/minioakville.com/127.0.0.1#5335 +ipset=/minioakville.com/gfwlist +server=/geeksquadcares.com/127.0.0.1#5335 +ipset=/geeksquadcares.com/gfwlist +server=/bmwmc.net/127.0.0.1#5335 +ipset=/bmwmc.net/gfwlist +server=/dettol.co.nz/127.0.0.1#5335 +ipset=/dettol.co.nz/gfwlist +server=/microbit.org/127.0.0.1#5335 +ipset=/microbit.org/gfwlist +server=/gitstar.net/127.0.0.1#5335 +ipset=/gitstar.net/gfwlist +server=/eff.org/127.0.0.1#5335 +ipset=/eff.org/gfwlist +server=/asto.re/127.0.0.1#5335 +ipset=/asto.re/gfwlist +server=/fasttext.cc/127.0.0.1#5335 +ipset=/fasttext.cc/gfwlist +server=/cern.ch/127.0.0.1#5335 +ipset=/cern.ch/gfwlist +server=/nintendo.ru/127.0.0.1#5335 +ipset=/nintendo.ru/gfwlist +server=/beatscollection2014.com/127.0.0.1#5335 +ipset=/beatscollection2014.com/gfwlist +server=/microsoftdiplomados.com/127.0.0.1#5335 +ipset=/microsoftdiplomados.com/gfwlist +server=/makebettercode.com/127.0.0.1#5335 +ipset=/makebettercode.com/gfwlist +server=/veet.se/127.0.0.1#5335 +ipset=/veet.se/gfwlist +server=/literatumonline.com/127.0.0.1#5335 +ipset=/literatumonline.com/gfwlist +server=/facebookpaper.com/127.0.0.1#5335 +ipset=/facebookpaper.com/gfwlist +server=/visa.com.tw/127.0.0.1#5335 +ipset=/visa.com.tw/gfwlist +server=/apple.si/127.0.0.1#5335 +ipset=/apple.si/gfwlist +server=/callersbane.com/127.0.0.1#5335 +ipset=/callersbane.com/gfwlist +server=/blogspot.kr/127.0.0.1#5335 +ipset=/blogspot.kr/gfwlist +server=/blogspot.mx/127.0.0.1#5335 +ipset=/blogspot.mx/gfwlist +server=/vk.cc/127.0.0.1#5335 +ipset=/vk.cc/gfwlist +server=/braeburncapital.com/127.0.0.1#5335 +ipset=/braeburncapital.com/gfwlist +server=/fbrell.com/127.0.0.1#5335 +ipset=/fbrell.com/gfwlist +server=/shazam.com/127.0.0.1#5335 +ipset=/shazam.com/gfwlist +server=/paypal-forward.com/127.0.0.1#5335 +ipset=/paypal-forward.com/gfwlist +server=/blogspot.se/127.0.0.1#5335 +ipset=/blogspot.se/gfwlist +server=/xn--6eup7j.com/127.0.0.1#5335 +ipset=/xn--6eup7j.com/gfwlist +server=/uun93.com/127.0.0.1#5335 +ipset=/uun93.com/gfwlist +server=/zaobao.com/127.0.0.1#5335 +ipset=/zaobao.com/gfwlist +server=/buyoculus.com/127.0.0.1#5335 +ipset=/buyoculus.com/gfwlist +server=/microsoftsilverlight.net/127.0.0.1#5335 +ipset=/microsoftsilverlight.net/gfwlist +server=/bmwstep.com/127.0.0.1#5335 +ipset=/bmwstep.com/gfwlist +server=/vfsco.no/127.0.0.1#5335 +ipset=/vfsco.no/gfwlist +server=/digitalpack.com/127.0.0.1#5335 +ipset=/digitalpack.com/gfwlist +server=/stackoverflowbusiness.com/127.0.0.1#5335 +ipset=/stackoverflowbusiness.com/gfwlist +server=/finish.co.kr/127.0.0.1#5335 +ipset=/finish.co.kr/gfwlist +server=/kernel.org/127.0.0.1#5335 +ipset=/kernel.org/gfwlist +server=/buybeatsheadphonesbydre.com/127.0.0.1#5335 +ipset=/buybeatsheadphonesbydre.com/gfwlist +server=/jobmarket.com.hk/127.0.0.1#5335 +ipset=/jobmarket.com.hk/gfwlist +server=/applefruity.com/127.0.0.1#5335 +ipset=/applefruity.com/gfwlist +server=/kickshatchannel.com/127.0.0.1#5335 +ipset=/kickshatchannel.com/gfwlist +server=/nurofen.fr/127.0.0.1#5335 +ipset=/nurofen.fr/gfwlist +server=/theclub.com.hk/127.0.0.1#5335 +ipset=/theclub.com.hk/gfwlist +server=/pccw.com/127.0.0.1#5335 +ipset=/pccw.com/gfwlist +server=/paypalcommunity.net/127.0.0.1#5335 +ipset=/paypalcommunity.net/gfwlist +server=/paypal-viewpoints.net/127.0.0.1#5335 +ipset=/paypal-viewpoints.net/gfwlist +server=/myicloud.net/127.0.0.1#5335 +ipset=/myicloud.net/gfwlist +server=/pinimg.com/127.0.0.1#5335 +ipset=/pinimg.com/gfwlist +server=/visa.co.in/127.0.0.1#5335 +ipset=/visa.co.in/gfwlist +server=/newdrediscount.com/127.0.0.1#5335 +ipset=/newdrediscount.com/gfwlist +server=/vimeobusiness.com/127.0.0.1#5335 +ipset=/vimeobusiness.com/gfwlist +server=/iphone.rs/127.0.0.1#5335 +ipset=/iphone.rs/gfwlist +server=/gog.com/127.0.0.1#5335 +ipset=/gog.com/gfwlist +server=/bmwgroup.at/127.0.0.1#5335 +ipset=/bmwgroup.at/gfwlist +server=/akamaietpmalwaretest.com/127.0.0.1#5335 +ipset=/akamaietpmalwaretest.com/gfwlist +server=/bnetproduct-a.akamaihd.net/127.0.0.1#5335 +ipset=/bnetproduct-a.akamaihd.net/gfwlist +server=/12diasderegalosdeitunes.pe/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.pe/gfwlist +server=/blogspot.cv/127.0.0.1#5335 +ipset=/blogspot.cv/gfwlist +server=/ebay.pl/127.0.0.1#5335 +ipset=/ebay.pl/gfwlist +server=/blogspot.li/127.0.0.1#5335 +ipset=/blogspot.li/gfwlist +server=/quatrowireless.com/127.0.0.1#5335 +ipset=/quatrowireless.com/gfwlist +server=/miniso.ua/127.0.0.1#5335 +ipset=/miniso.ua/gfwlist +server=/adidas.co.uk/127.0.0.1#5335 +ipset=/adidas.co.uk/gfwlist +server=/instangram.com/127.0.0.1#5335 +ipset=/instangram.com/gfwlist +server=/acheter-followers-instagram.com/127.0.0.1#5335 +ipset=/acheter-followers-instagram.com/gfwlist +server=/steampowered.com/127.0.0.1#5335 +ipset=/steampowered.com/gfwlist +server=/dfp6rglgjqszk.cloudfront.net/127.0.0.1#5335 +ipset=/dfp6rglgjqszk.cloudfront.net/gfwlist +server=/vod-hls-uk-live.akamaized.net/127.0.0.1#5335 +ipset=/vod-hls-uk-live.akamaized.net/gfwlist +server=/housing.com/127.0.0.1#5335 +ipset=/housing.com/gfwlist +server=/bmw-motorrad.co.nz/127.0.0.1#5335 +ipset=/bmw-motorrad.co.nz/gfwlist +server=/intel.bh/127.0.0.1#5335 +ipset=/intel.bh/gfwlist +server=/microsoft.cat/127.0.0.1#5335 +ipset=/microsoft.cat/gfwlist +server=/applecarbon.com/127.0.0.1#5335 +ipset=/applecarbon.com/gfwlist +server=/pvue1.com/127.0.0.1#5335 +ipset=/pvue1.com/gfwlist +server=/thomsonreuters.co.nz/127.0.0.1#5335 +ipset=/thomsonreuters.co.nz/gfwlist +server=/amazon.com.tr/127.0.0.1#5335 +ipset=/amazon.com.tr/gfwlist +server=/directvnow.com/127.0.0.1#5335 +ipset=/directvnow.com/gfwlist +server=/riotgames.jp/127.0.0.1#5335 +ipset=/riotgames.jp/gfwlist +server=/gordonmoore.com/127.0.0.1#5335 +ipset=/gordonmoore.com/gfwlist +server=/adobecreativityawards.com/127.0.0.1#5335 +ipset=/adobecreativityawards.com/gfwlist +server=/ebay.in/127.0.0.1#5335 +ipset=/ebay.in/gfwlist +server=/ebayjob.com/127.0.0.1#5335 +ipset=/ebayjob.com/gfwlist +server=/minimontroyal.ca/127.0.0.1#5335 +ipset=/minimontroyal.ca/gfwlist +server=/usvimosquitoproject.com/127.0.0.1#5335 +ipset=/usvimosquitoproject.com/gfwlist +server=/bmw-connecteddrive.lv/127.0.0.1#5335 +ipset=/bmw-connecteddrive.lv/gfwlist +server=/firestonedrivestore.com/127.0.0.1#5335 +ipset=/firestonedrivestore.com/gfwlist +server=/miniso-np.com/127.0.0.1#5335 +ipset=/miniso-np.com/gfwlist +server=/viacomcbspressexpress.com/127.0.0.1#5335 +ipset=/viacomcbspressexpress.com/gfwlist +server=/beats1.cc/127.0.0.1#5335 +ipset=/beats1.cc/gfwlist +server=/enteentegeh.de/127.0.0.1#5335 +ipset=/enteentegeh.de/gfwlist +server=/foxsmallbusinesscenter.org/127.0.0.1#5335 +ipset=/foxsmallbusinesscenter.org/gfwlist +server=/swoo.sh/127.0.0.1#5335 +ipset=/swoo.sh/gfwlist +server=/casquebeatsenligne.com/127.0.0.1#5335 +ipset=/casquebeatsenligne.com/gfwlist +server=/desertbmw.com/127.0.0.1#5335 +ipset=/desertbmw.com/gfwlist +server=/voatibetanenglish.com/127.0.0.1#5335 +ipset=/voatibetanenglish.com/gfwlist +server=/imagineecommerce.com/127.0.0.1#5335 +ipset=/imagineecommerce.com/gfwlist +server=/epochtime.com/127.0.0.1#5335 +ipset=/epochtime.com/gfwlist +server=/onenote.net/127.0.0.1#5335 +ipset=/onenote.net/gfwlist +server=/cnix-gov-cn.com/127.0.0.1#5335 +ipset=/cnix-gov-cn.com/gfwlist +server=/ebaycommercenetwork.com/127.0.0.1#5335 +ipset=/ebaycommercenetwork.com/gfwlist +server=/managedmeetingrooms.com/127.0.0.1#5335 +ipset=/managedmeetingrooms.com/gfwlist +server=/ipod.eu/127.0.0.1#5335 +ipset=/ipod.eu/gfwlist +server=/paypal-login.us/127.0.0.1#5335 +ipset=/paypal-login.us/gfwlist +server=/bing.com/127.0.0.1#5335 +ipset=/bing.com/gfwlist +server=/desktopmovies.org/127.0.0.1#5335 +ipset=/desktopmovies.org/gfwlist +server=/facebookcredits.info/127.0.0.1#5335 +ipset=/facebookcredits.info/gfwlist +server=/xandr.com/127.0.0.1#5335 +ipset=/xandr.com/gfwlist +server=/nab.com.au/127.0.0.1#5335 +ipset=/nab.com.au/gfwlist +server=/mybmw.com/127.0.0.1#5335 +ipset=/mybmw.com/gfwlist +server=/applestore.me/127.0.0.1#5335 +ipset=/applestore.me/gfwlist +server=/drebeats-singaporecheap.com/127.0.0.1#5335 +ipset=/drebeats-singaporecheap.com/gfwlist +server=/farfetch.com/127.0.0.1#5335 +ipset=/farfetch.com/gfwlist +server=/nvidia.tw/127.0.0.1#5335 +ipset=/nvidia.tw/gfwlist +server=/920share.com/127.0.0.1#5335 +ipset=/920share.com/gfwlist +server=/intel.co.jp/127.0.0.1#5335 +ipset=/intel.co.jp/gfwlist +server=/api-extractor.com/127.0.0.1#5335 +ipset=/api-extractor.com/gfwlist +server=/guardianproject.info/127.0.0.1#5335 +ipset=/guardianproject.info/gfwlist +server=/azuredatabricks.net/127.0.0.1#5335 +ipset=/azuredatabricks.net/gfwlist +server=/firesidegatherings.com/127.0.0.1#5335 +ipset=/firesidegatherings.com/gfwlist +server=/mybestbuyclaims.com/127.0.0.1#5335 +ipset=/mybestbuyclaims.com/gfwlist +server=/gsrc.io/127.0.0.1#5335 +ipset=/gsrc.io/gfwlist +server=/appdynamics.jp/127.0.0.1#5335 +ipset=/appdynamics.jp/gfwlist +server=/zee5.in/127.0.0.1#5335 +ipset=/zee5.in/gfwlist +server=/bmw-iraq.com/127.0.0.1#5335 +ipset=/bmw-iraq.com/gfwlist +server=/intel.ng/127.0.0.1#5335 +ipset=/intel.ng/gfwlist +server=/azure-dns.net/127.0.0.1#5335 +ipset=/azure-dns.net/gfwlist +server=/youtubego.com.br/127.0.0.1#5335 +ipset=/youtubego.com.br/gfwlist +server=/geforce.co.uk/127.0.0.1#5335 +ipset=/geforce.co.uk/gfwlist +server=/httpfacebook.com/127.0.0.1#5335 +ipset=/httpfacebook.com/gfwlist +server=/visa.co.uk/127.0.0.1#5335 +ipset=/visa.co.uk/gfwlist +server=/beatsbydresale-uk.com/127.0.0.1#5335 +ipset=/beatsbydresale-uk.com/gfwlist +server=/iphone.com.au/127.0.0.1#5335 +ipset=/iphone.com.au/gfwlist +server=/applfe.com/127.0.0.1#5335 +ipset=/applfe.com/gfwlist +server=/bmw.com.kh/127.0.0.1#5335 +ipset=/bmw.com.kh/gfwlist +server=/jsdelivr.net/127.0.0.1#5335 +ipset=/jsdelivr.net/gfwlist +server=/ubereats.com/127.0.0.1#5335 +ipset=/ubereats.com/gfwlist +server=/facebookporn.net/127.0.0.1#5335 +ipset=/facebookporn.net/gfwlist +server=/smartexpos.com/127.0.0.1#5335 +ipset=/smartexpos.com/gfwlist +server=/youtube.com.ve/127.0.0.1#5335 +ipset=/youtube.com.ve/gfwlist +server=/yahoo.com.my/127.0.0.1#5335 +ipset=/yahoo.com.my/gfwlist +server=/whatsapp-plus.me/127.0.0.1#5335 +ipset=/whatsapp-plus.me/gfwlist +server=/nikeshoes-store.com/127.0.0.1#5335 +ipset=/nikeshoes-store.com/gfwlist +server=/volvogroup.pl/127.0.0.1#5335 +ipset=/volvogroup.pl/gfwlist +server=/amazon.jobs/127.0.0.1#5335 +ipset=/amazon.jobs/gfwlist +server=/silverchair-cdn.com/127.0.0.1#5335 +ipset=/silverchair-cdn.com/gfwlist +server=/intc.com/127.0.0.1#5335 +ipset=/intc.com/gfwlist +server=/saffrontech.com/127.0.0.1#5335 +ipset=/saffrontech.com/gfwlist +server=/appleworldwidedeveloper.sc.omtrdc.net/127.0.0.1#5335 +ipset=/appleworldwidedeveloper.sc.omtrdc.net/gfwlist +server=/addthis.com/127.0.0.1#5335 +ipset=/addthis.com/gfwlist +server=/messengerdevelopers.com/127.0.0.1#5335 +ipset=/messengerdevelopers.com/gfwlist +server=/freindfeed.com/127.0.0.1#5335 +ipset=/freindfeed.com/gfwlist +server=/kuke.com/127.0.0.1#5335 +ipset=/kuke.com/gfwlist +server=/accessfacebookfromschool.com/127.0.0.1#5335 +ipset=/accessfacebookfromschool.com/gfwlist +server=/stackmod.blog/127.0.0.1#5335 +ipset=/stackmod.blog/gfwlist +server=/fbcdn.net/127.0.0.1#5335 +ipset=/fbcdn.net/gfwlist +server=/pokemonwifi.net/127.0.0.1#5335 +ipset=/pokemonwifi.net/gfwlist +server=/blogspot.com.mt/127.0.0.1#5335 +ipset=/blogspot.com.mt/gfwlist +server=/edx-cdn.org/127.0.0.1#5335 +ipset=/edx-cdn.org/gfwlist +server=/duckduckgo.mx/127.0.0.1#5335 +ipset=/duckduckgo.mx/gfwlist +server=/hp-printing.com/127.0.0.1#5335 +ipset=/hp-printing.com/gfwlist +server=/da-files.com/127.0.0.1#5335 +ipset=/da-files.com/gfwlist +server=/beatsbydrdre4sale.com/127.0.0.1#5335 +ipset=/beatsbydrdre4sale.com/gfwlist +server=/calgon.pt/127.0.0.1#5335 +ipset=/calgon.pt/gfwlist +server=/ieee-ras.org/127.0.0.1#5335 +ipset=/ieee-ras.org/gfwlist +server=/canada-beatsbydre.com/127.0.0.1#5335 +ipset=/canada-beatsbydre.com/gfwlist +server=/ilongman.com/127.0.0.1#5335 +ipset=/ilongman.com/gfwlist +server=/velocloud.com/127.0.0.1#5335 +ipset=/velocloud.com/gfwlist +server=/donttrack.us/127.0.0.1#5335 +ipset=/donttrack.us/gfwlist +server=/coreoptics.net/127.0.0.1#5335 +ipset=/coreoptics.net/gfwlist +server=/xn--3et96bj49ahpq.com/127.0.0.1#5335 +ipset=/xn--3et96bj49ahpq.com/gfwlist +server=/microsoftlatamaitour.com/127.0.0.1#5335 +ipset=/microsoftlatamaitour.com/gfwlist +server=/volvogroup.pe/127.0.0.1#5335 +ipset=/volvogroup.pe/gfwlist +server=/bmwsfl.net/127.0.0.1#5335 +ipset=/bmwsfl.net/gfwlist +server=/headphones-dre.com/127.0.0.1#5335 +ipset=/headphones-dre.com/gfwlist +server=/foxsports.com.ec/127.0.0.1#5335 +ipset=/foxsports.com.ec/gfwlist +server=/officialheadphone.com/127.0.0.1#5335 +ipset=/officialheadphone.com/gfwlist +server=/52hyse.com/127.0.0.1#5335 +ipset=/52hyse.com/gfwlist +server=/bloommicroventures.com/127.0.0.1#5335 +ipset=/bloommicroventures.com/gfwlist +server=/azure-sphere.com/127.0.0.1#5335 +ipset=/azure-sphere.com/gfwlist +server=/ebay.vn/127.0.0.1#5335 +ipset=/ebay.vn/gfwlist +server=/sony.com.co/127.0.0.1#5335 +ipset=/sony.com.co/gfwlist +server=/signalusers.org/127.0.0.1#5335 +ipset=/signalusers.org/gfwlist +server=/ipadmini.com.lk/127.0.0.1#5335 +ipset=/ipadmini.com.lk/gfwlist +server=/foxdoua.com/127.0.0.1#5335 +ipset=/foxdoua.com/gfwlist +server=/nicesshop.net/127.0.0.1#5335 +ipset=/nicesshop.net/gfwlist +server=/businesscatalyst.com/127.0.0.1#5335 +ipset=/businesscatalyst.com/gfwlist +server=/wmfusercontent.org/127.0.0.1#5335 +ipset=/wmfusercontent.org/gfwlist +server=/on.cc/127.0.0.1#5335 +ipset=/on.cc/gfwlist +server=/disneyjunior.com/127.0.0.1#5335 +ipset=/disneyjunior.com/gfwlist +server=/nikeshoeswon.com/127.0.0.1#5335 +ipset=/nikeshoeswon.com/gfwlist +server=/ebayclassifiedsgroup.com/127.0.0.1#5335 +ipset=/ebayclassifiedsgroup.com/gfwlist +server=/bmw-motorrad.co.th/127.0.0.1#5335 +ipset=/bmw-motorrad.co.th/gfwlist +server=/garena.my/127.0.0.1#5335 +ipset=/garena.my/gfwlist +server=/zeebioskop.com/127.0.0.1#5335 +ipset=/zeebioskop.com/gfwlist +server=/foxon.com/127.0.0.1#5335 +ipset=/foxon.com/gfwlist +server=/instagramsepeti.com/127.0.0.1#5335 +ipset=/instagramsepeti.com/gfwlist +server=/globalsign.com/127.0.0.1#5335 +ipset=/globalsign.com/gfwlist +server=/iphone.cm/127.0.0.1#5335 +ipset=/iphone.cm/gfwlist +server=/durex.com.pe/127.0.0.1#5335 +ipset=/durex.com.pe/gfwlist +server=/gettyimages.in/127.0.0.1#5335 +ipset=/gettyimages.in/gfwlist +server=/google.at/127.0.0.1#5335 +ipset=/google.at/gfwlist +server=/windows8.hk/127.0.0.1#5335 +ipset=/windows8.hk/gfwlist +server=/youtubefanfest.com/127.0.0.1#5335 +ipset=/youtubefanfest.com/gfwlist +server=/ukwhoswho.com/127.0.0.1#5335 +ipset=/ukwhoswho.com/gfwlist +server=/iam.soy/127.0.0.1#5335 +ipset=/iam.soy/gfwlist +server=/bloomberglabs.com/127.0.0.1#5335 +ipset=/bloomberglabs.com/gfwlist +server=/beats4salecheap.com/127.0.0.1#5335 +ipset=/beats4salecheap.com/gfwlist +server=/applecare.wang/127.0.0.1#5335 +ipset=/applecare.wang/gfwlist +server=/pinterest.co.at/127.0.0.1#5335 +ipset=/pinterest.co.at/gfwlist +server=/wa.me/127.0.0.1#5335 +ipset=/wa.me/gfwlist +server=/needforspeedtakedown.com/127.0.0.1#5335 +ipset=/needforspeedtakedown.com/gfwlist +server=/doom9.org/127.0.0.1#5335 +ipset=/doom9.org/gfwlist +server=/xplr.co/127.0.0.1#5335 +ipset=/xplr.co/gfwlist +server=/directvoffercodes.com/127.0.0.1#5335 +ipset=/directvoffercodes.com/gfwlist +server=/publishproxy.com/127.0.0.1#5335 +ipset=/publishproxy.com/gfwlist +server=/quip-cdn.com/127.0.0.1#5335 +ipset=/quip-cdn.com/gfwlist +server=/s-xoom.com/127.0.0.1#5335 +ipset=/s-xoom.com/gfwlist +server=/xbx.lv/127.0.0.1#5335 +ipset=/xbx.lv/gfwlist +server=/gscanada.info/127.0.0.1#5335 +ipset=/gscanada.info/gfwlist +server=/newsxtend.com.au/127.0.0.1#5335 +ipset=/newsxtend.com.au/gfwlist +server=/eamythic.com/127.0.0.1#5335 +ipset=/eamythic.com/gfwlist +server=/hpwellnesscentral.com/127.0.0.1#5335 +ipset=/hpwellnesscentral.com/gfwlist +server=/myradio.com.hk/127.0.0.1#5335 +ipset=/myradio.com.hk/gfwlist +server=/cbsistatic.com/127.0.0.1#5335 +ipset=/cbsistatic.com/gfwlist +server=/beatssbyaustralia.com/127.0.0.1#5335 +ipset=/beatssbyaustralia.com/gfwlist +server=/wiifitu.com/127.0.0.1#5335 +ipset=/wiifitu.com/gfwlist +server=/managed-pki.ch/127.0.0.1#5335 +ipset=/managed-pki.ch/gfwlist +server=/futunited.com/127.0.0.1#5335 +ipset=/futunited.com/gfwlist +server=/newsfeed.com/127.0.0.1#5335 +ipset=/newsfeed.com/gfwlist +server=/easportsactive.com/127.0.0.1#5335 +ipset=/easportsactive.com/gfwlist +server=/durex-shop.ch/127.0.0.1#5335 +ipset=/durex-shop.ch/gfwlist +server=/onbeatsbydresale.com/127.0.0.1#5335 +ipset=/onbeatsbydresale.com/gfwlist +server=/yahoo.lu/127.0.0.1#5335 +ipset=/yahoo.lu/gfwlist +server=/firestonecomercial.com.ar/127.0.0.1#5335 +ipset=/firestonecomercial.com.ar/gfwlist +server=/myfoxtampabay.com/127.0.0.1#5335 +ipset=/myfoxtampabay.com/gfwlist +server=/microsoftnews.com/127.0.0.1#5335 +ipset=/microsoftnews.com/gfwlist +server=/foxcanvasroom.com/127.0.0.1#5335 +ipset=/foxcanvasroom.com/gfwlist +server=/iphonecases100.com/127.0.0.1#5335 +ipset=/iphonecases100.com/gfwlist +server=/bmw-pma.com.sg/127.0.0.1#5335 +ipset=/bmw-pma.com.sg/gfwlist +server=/akamaa.com/127.0.0.1#5335 +ipset=/akamaa.com/gfwlist +server=/amazon.de/127.0.0.1#5335 +ipset=/amazon.de/gfwlist +server=/swiftfinancial.com/127.0.0.1#5335 +ipset=/swiftfinancial.com/gfwlist +server=/zb.app/127.0.0.1#5335 +ipset=/zb.app/gfwlist +server=/limelight.com/127.0.0.1#5335 +ipset=/limelight.com/gfwlist +server=/applefinalcutproworld.net/127.0.0.1#5335 +ipset=/applefinalcutproworld.net/gfwlist +server=/afp.com/127.0.0.1#5335 +ipset=/afp.com/gfwlist +server=/nikefirm.com/127.0.0.1#5335 +ipset=/nikefirm.com/gfwlist +server=/bmw-werk-berlin.de/127.0.0.1#5335 +ipset=/bmw-werk-berlin.de/gfwlist +server=/zb.live/127.0.0.1#5335 +ipset=/zb.live/gfwlist +server=/appspot.com/127.0.0.1#5335 +ipset=/appspot.com/gfwlist +server=/get.app/127.0.0.1#5335 +ipset=/get.app/gfwlist +server=/xboxgamepass.com/127.0.0.1#5335 +ipset=/xboxgamepass.com/gfwlist +server=/disney.sg/127.0.0.1#5335 +ipset=/disney.sg/gfwlist +server=/adidas.it/127.0.0.1#5335 +ipset=/adidas.it/gfwlist +server=/1drv.ms/127.0.0.1#5335 +ipset=/1drv.ms/gfwlist +server=/beatsdredreheadphones.com/127.0.0.1#5335 +ipset=/beatsdredreheadphones.com/gfwlist +server=/bookonsky.net/127.0.0.1#5335 +ipset=/bookonsky.net/gfwlist +server=/coursera-for-business.org/127.0.0.1#5335 +ipset=/coursera-for-business.org/gfwlist +server=/bridgestonela.com/127.0.0.1#5335 +ipset=/bridgestonela.com/gfwlist +server=/alphabet.com.lv/127.0.0.1#5335 +ipset=/alphabet.com.lv/gfwlist +server=/typography.com/127.0.0.1#5335 +ipset=/typography.com/gfwlist +server=/atandt.com/127.0.0.1#5335 +ipset=/atandt.com/gfwlist +server=/ieee-isto.org/127.0.0.1#5335 +ipset=/ieee-isto.org/gfwlist +server=/scholar.google.hr/127.0.0.1#5335 +ipset=/scholar.google.hr/gfwlist +server=/beatsbydregot.com/127.0.0.1#5335 +ipset=/beatsbydregot.com/gfwlist +server=/intellinuxgraphics.com/127.0.0.1#5335 +ipset=/intellinuxgraphics.com/gfwlist +server=/nikesoccercleats.com/127.0.0.1#5335 +ipset=/nikesoccercleats.com/gfwlist +server=/bmw-museum.net/127.0.0.1#5335 +ipset=/bmw-museum.net/gfwlist +server=/mucinex.co.nz/127.0.0.1#5335 +ipset=/mucinex.co.nz/gfwlist +server=/alphera.es/127.0.0.1#5335 +ipset=/alphera.es/gfwlist +server=/xingrz.me/127.0.0.1#5335 +ipset=/xingrz.me/gfwlist +server=/beatsbydrecybermondaydeals2013.net/127.0.0.1#5335 +ipset=/beatsbydrecybermondaydeals2013.net/gfwlist +server=/bloombergtax.com/127.0.0.1#5335 +ipset=/bloombergtax.com/gfwlist +server=/cash2.com/127.0.0.1#5335 +ipset=/cash2.com/gfwlist +server=/unrealtournament.com/127.0.0.1#5335 +ipset=/unrealtournament.com/gfwlist +server=/travelex.de/127.0.0.1#5335 +ipset=/travelex.de/gfwlist +server=/socrec.org/127.0.0.1#5335 +ipset=/socrec.org/gfwlist +server=/bmwondemandusa.com/127.0.0.1#5335 +ipset=/bmwondemandusa.com/gfwlist +server=/jwplayer.com/127.0.0.1#5335 +ipset=/jwplayer.com/gfwlist +server=/mini-connected.no/127.0.0.1#5335 +ipset=/mini-connected.no/gfwlist +server=/xn--fiqs8sxootzz.cn/127.0.0.1#5335 +ipset=/xn--fiqs8sxootzz.cn/gfwlist +server=/casquebeatsdre2013.com/127.0.0.1#5335 +ipset=/casquebeatsdre2013.com/gfwlist +server=/drdrebeats-chen.com/127.0.0.1#5335 +ipset=/drdrebeats-chen.com/gfwlist +server=/iphone.net.gr/127.0.0.1#5335 +ipset=/iphone.net.gr/gfwlist +server=/yahoo.tg/127.0.0.1#5335 +ipset=/yahoo.tg/gfwlist +server=/phantomjs.org/127.0.0.1#5335 +ipset=/phantomjs.org/gfwlist +server=/verisign.mobi/127.0.0.1#5335 +ipset=/verisign.mobi/gfwlist +server=/intel.com/127.0.0.1#5335 +ipset=/intel.com/gfwlist +server=/bmw-nigeria.com/127.0.0.1#5335 +ipset=/bmw-nigeria.com/gfwlist +server=/applehongkong.com.hk/127.0.0.1#5335 +ipset=/applehongkong.com.hk/gfwlist +server=/visiontimes.fr/127.0.0.1#5335 +ipset=/visiontimes.fr/gfwlist +server=/imaginecup.pl/127.0.0.1#5335 +ipset=/imaginecup.pl/gfwlist +server=/ieee-into-focus.org/127.0.0.1#5335 +ipset=/ieee-into-focus.org/gfwlist +server=/bmwwholesaleconnect.com/127.0.0.1#5335 +ipset=/bmwwholesaleconnect.com/gfwlist +server=/beatsbydreexecutivesale.com/127.0.0.1#5335 +ipset=/beatsbydreexecutivesale.com/gfwlist +server=/akadns.com/127.0.0.1#5335 +ipset=/akadns.com/gfwlist +server=/googlemail.com/127.0.0.1#5335 +ipset=/googlemail.com/gfwlist +server=/akamaized.net/127.0.0.1#5335 +ipset=/akamaized.net/gfwlist +server=/spotifyforbrands.com/127.0.0.1#5335 +ipset=/spotifyforbrands.com/gfwlist +server=/elifesciences.org/127.0.0.1#5335 +ipset=/elifesciences.org/gfwlist +server=/facebookappcenter.net/127.0.0.1#5335 +ipset=/facebookappcenter.net/gfwlist +server=/volvobuses.no/127.0.0.1#5335 +ipset=/volvobuses.no/gfwlist +server=/gitbook.com/127.0.0.1#5335 +ipset=/gitbook.com/gfwlist +server=/nike-air-max.com/127.0.0.1#5335 +ipset=/nike-air-max.com/gfwlist +server=/vfsco.cz/127.0.0.1#5335 +ipset=/vfsco.cz/gfwlist +server=/sinchew.com.my/127.0.0.1#5335 +ipset=/sinchew.com.my/gfwlist +server=/ayudanintendo.com/127.0.0.1#5335 +ipset=/ayudanintendo.com/gfwlist +server=/omoplanet.com/127.0.0.1#5335 +ipset=/omoplanet.com/gfwlist +server=/nvidia.com.mx/127.0.0.1#5335 +ipset=/nvidia.com.mx/gfwlist +server=/mastercard.com.cy/127.0.0.1#5335 +ipset=/mastercard.com.cy/gfwlist +server=/sony.cl/127.0.0.1#5335 +ipset=/sony.cl/gfwlist +server=/nlm.io/127.0.0.1#5335 +ipset=/nlm.io/gfwlist +server=/nikkei.com/127.0.0.1#5335 +ipset=/nikkei.com/gfwlist +server=/bmw.com/127.0.0.1#5335 +ipset=/bmw.com/gfwlist +server=/mortein.com.pk/127.0.0.1#5335 +ipset=/mortein.com.pk/gfwlist +server=/bmwasia.com/127.0.0.1#5335 +ipset=/bmwasia.com/gfwlist +server=/appleaustralia.com/127.0.0.1#5335 +ipset=/appleaustralia.com/gfwlist +server=/volvobuses.dk/127.0.0.1#5335 +ipset=/volvobuses.dk/gfwlist +server=/casquedrdrebeatssfr.com/127.0.0.1#5335 +ipset=/casquedrdrebeatssfr.com/gfwlist +server=/buyitnowshop.net/127.0.0.1#5335 +ipset=/buyitnowshop.net/gfwlist +server=/my9nj.com/127.0.0.1#5335 +ipset=/my9nj.com/gfwlist +server=/paypal-online.info/127.0.0.1#5335 +ipset=/paypal-online.info/gfwlist +server=/nikeliuxiang.com/127.0.0.1#5335 +ipset=/nikeliuxiang.com/gfwlist +server=/mastercardadvisors.com/127.0.0.1#5335 +ipset=/mastercardadvisors.com/gfwlist +server=/visa.gd/127.0.0.1#5335 +ipset=/visa.gd/gfwlist +server=/scholar.google.no/127.0.0.1#5335 +ipset=/scholar.google.no/gfwlist +server=/awscommandlineinterface.com/127.0.0.1#5335 +ipset=/awscommandlineinterface.com/gfwlist +server=/vpro.net/127.0.0.1#5335 +ipset=/vpro.net/gfwlist +server=/youtube.ba/127.0.0.1#5335 +ipset=/youtube.ba/gfwlist +server=/bmw.ma/127.0.0.1#5335 +ipset=/bmw.ma/gfwlist +server=/baxsound.com/127.0.0.1#5335 +ipset=/baxsound.com/gfwlist +server=/hulutv.com/127.0.0.1#5335 +ipset=/hulutv.com/gfwlist +server=/supremacy.net/127.0.0.1#5335 +ipset=/supremacy.net/gfwlist +server=/facebyook.com/127.0.0.1#5335 +ipset=/facebyook.com/gfwlist +server=/canon.de/127.0.0.1#5335 +ipset=/canon.de/gfwlist +server=/addthisedge.com/127.0.0.1#5335 +ipset=/addthisedge.com/gfwlist +server=/pearsoned.co.nz/127.0.0.1#5335 +ipset=/pearsoned.co.nz/gfwlist +server=/pearson.com.uy/127.0.0.1#5335 +ipset=/pearson.com.uy/gfwlist +server=/nvidia.co.at/127.0.0.1#5335 +ipset=/nvidia.co.at/gfwlist +server=/foxphiladelphia.com/127.0.0.1#5335 +ipset=/foxphiladelphia.com/gfwlist +server=/alpherafs.my/127.0.0.1#5335 +ipset=/alpherafs.my/gfwlist +server=/monsterbeatsnegozi.net/127.0.0.1#5335 +ipset=/monsterbeatsnegozi.net/gfwlist +server=/bmw-motorrad.com.ar/127.0.0.1#5335 +ipset=/bmw-motorrad.com.ar/gfwlist +server=/imac.co/127.0.0.1#5335 +ipset=/imac.co/gfwlist +server=/gtv.org/127.0.0.1#5335 +ipset=/gtv.org/gfwlist +server=/icloud.si/127.0.0.1#5335 +ipset=/icloud.si/gfwlist +server=/redd.it/127.0.0.1#5335 +ipset=/redd.it/gfwlist +server=/litv.tv/127.0.0.1#5335 +ipset=/litv.tv/gfwlist +server=/thesims.com/127.0.0.1#5335 +ipset=/thesims.com/gfwlist +server=/apple.pt/127.0.0.1#5335 +ipset=/apple.pt/gfwlist +server=/blizzardgearstore.com/127.0.0.1#5335 +ipset=/blizzardgearstore.com/gfwlist +server=/rootsigning.com/127.0.0.1#5335 +ipset=/rootsigning.com/gfwlist +server=/airmay.com/127.0.0.1#5335 +ipset=/airmay.com/gfwlist +server=/thomsonreuters.co.jp/127.0.0.1#5335 +ipset=/thomsonreuters.co.jp/gfwlist +server=/shop.app/127.0.0.1#5335 +ipset=/shop.app/gfwlist +server=/mysql.com/127.0.0.1#5335 +ipset=/mysql.com/gfwlist +server=/kijji.ca/127.0.0.1#5335 +ipset=/kijji.ca/gfwlist +server=/imac.rs/127.0.0.1#5335 +ipset=/imac.rs/gfwlist +server=/ig.me/127.0.0.1#5335 +ipset=/ig.me/gfwlist +server=/2mdn.net/127.0.0.1#5335 +ipset=/2mdn.net/gfwlist +server=/siege-amazon.com/127.0.0.1#5335 +ipset=/siege-amazon.com/gfwlist +server=/nixos.org/127.0.0.1#5335 +ipset=/nixos.org/gfwlist +server=/javhd3x.com/127.0.0.1#5335 +ipset=/javhd3x.com/gfwlist +server=/travelex.com.tr/127.0.0.1#5335 +ipset=/travelex.com.tr/gfwlist +server=/microsoftlinc.com/127.0.0.1#5335 +ipset=/microsoftlinc.com/gfwlist +server=/bmw.co.za/127.0.0.1#5335 +ipset=/bmw.co.za/gfwlist +server=/youjizz.com/127.0.0.1#5335 +ipset=/youjizz.com/gfwlist +server=/nurofen.com.sg/127.0.0.1#5335 +ipset=/nurofen.com.sg/gfwlist +server=/infrapedia.com/127.0.0.1#5335 +ipset=/infrapedia.com/gfwlist +server=/apple.in/127.0.0.1#5335 +ipset=/apple.in/gfwlist +server=/heroku.co/127.0.0.1#5335 +ipset=/heroku.co/gfwlist +server=/bethesda.net/127.0.0.1#5335 +ipset=/bethesda.net/gfwlist +server=/realclearhealth.com/127.0.0.1#5335 +ipset=/realclearhealth.com/gfwlist +server=/verisign.hk/127.0.0.1#5335 +ipset=/verisign.hk/gfwlist +server=/fbidb.io/127.0.0.1#5335 +ipset=/fbidb.io/gfwlist +server=/a.91gay.me/127.0.0.1#5335 +ipset=/a.91gay.me/gfwlist +server=/xn--p8j9a0d9c9a.xn--q9jyb4c/127.0.0.1#5335 +ipset=/xn--p8j9a0d9c9a.xn--q9jyb4c/gfwlist +server=/rocketfishproducts.com/127.0.0.1#5335 +ipset=/rocketfishproducts.com/gfwlist +server=/facebookbrand.com/127.0.0.1#5335 +ipset=/facebookbrand.com/gfwlist +server=/facebookcheats.com/127.0.0.1#5335 +ipset=/facebookcheats.com/gfwlist +server=/modular.im/127.0.0.1#5335 +ipset=/modular.im/gfwlist +server=/duckduckgo.sg/127.0.0.1#5335 +ipset=/duckduckgo.sg/gfwlist +server=/pearsonassessment.fr/127.0.0.1#5335 +ipset=/pearsonassessment.fr/gfwlist +server=/miniusaservice.com/127.0.0.1#5335 +ipset=/miniusaservice.com/gfwlist +server=/now.com/127.0.0.1#5335 +ipset=/now.com/gfwlist +server=/recoiljs.org/127.0.0.1#5335 +ipset=/recoiljs.org/gfwlist +server=/pintool.com/127.0.0.1#5335 +ipset=/pintool.com/gfwlist +server=/pinterest.fr/127.0.0.1#5335 +ipset=/pinterest.fr/gfwlist +server=/facebooknews.com/127.0.0.1#5335 +ipset=/facebooknews.com/gfwlist +server=/meraki-go.com/127.0.0.1#5335 +ipset=/meraki-go.com/gfwlist +server=/devm2m.com/127.0.0.1#5335 +ipset=/devm2m.com/gfwlist +server=/faceebok.com/127.0.0.1#5335 +ipset=/faceebok.com/gfwlist +server=/arphic.com.tw/127.0.0.1#5335 +ipset=/arphic.com.tw/gfwlist +server=/linuxmint.com/127.0.0.1#5335 +ipset=/linuxmint.com/gfwlist +server=/repsils.no/127.0.0.1#5335 +ipset=/repsils.no/gfwlist +server=/yahoo.ch/127.0.0.1#5335 +ipset=/yahoo.ch/gfwlist +server=/intel.se/127.0.0.1#5335 +ipset=/intel.se/gfwlist +server=/veet.com.co/127.0.0.1#5335 +ipset=/veet.com.co/gfwlist +server=/foxsports.com.py/127.0.0.1#5335 +ipset=/foxsports.com.py/gfwlist +server=/zeit-world.co.uk/127.0.0.1#5335 +ipset=/zeit-world.co.uk/gfwlist +server=/monsterbeatsok.com/127.0.0.1#5335 +ipset=/monsterbeatsok.com/gfwlist +server=/fb.me/127.0.0.1#5335 +ipset=/fb.me/gfwlist +server=/ciscolivehls-i.akamaihd.net/127.0.0.1#5335 +ipset=/ciscolivehls-i.akamaihd.net/gfwlist +server=/applf.com/127.0.0.1#5335 +ipset=/applf.com/gfwlist +server=/is.gd/127.0.0.1#5335 +ipset=/is.gd/gfwlist +server=/mini-connected.lu/127.0.0.1#5335 +ipset=/mini-connected.lu/gfwlist +server=/ipleadership.org/127.0.0.1#5335 +ipset=/ipleadership.org/gfwlist +server=/google.lv/127.0.0.1#5335 +ipset=/google.lv/gfwlist +server=/needforspeedstreetkings.com/127.0.0.1#5335 +ipset=/needforspeedstreetkings.com/gfwlist +server=/airwick.fi/127.0.0.1#5335 +ipset=/airwick.fi/gfwlist +server=/facebook123.org/127.0.0.1#5335 +ipset=/facebook123.org/gfwlist +server=/112263.com/127.0.0.1#5335 +ipset=/112263.com/gfwlist +server=/trellocdn.com/127.0.0.1#5335 +ipset=/trellocdn.com/gfwlist +server=/volvotruckcenter.be/127.0.0.1#5335 +ipset=/volvotruckcenter.be/gfwlist +server=/volvotrucks.co.zw/127.0.0.1#5335 +ipset=/volvotrucks.co.zw/gfwlist +server=/devtools-paypal.com/127.0.0.1#5335 +ipset=/devtools-paypal.com/gfwlist +server=/tfhub.dev/127.0.0.1#5335 +ipset=/tfhub.dev/gfwlist +server=/vfsco.ee/127.0.0.1#5335 +ipset=/vfsco.ee/gfwlist +server=/bmw-welt.com/127.0.0.1#5335 +ipset=/bmw-welt.com/gfwlist +server=/bmwpittsburgh.com/127.0.0.1#5335 +ipset=/bmwpittsburgh.com/gfwlist +server=/vmw.com/127.0.0.1#5335 +ipset=/vmw.com/gfwlist +server=/venmo.s3.amazonaws.com/127.0.0.1#5335 +ipset=/venmo.s3.amazonaws.com/gfwlist +server=/connect-in-canada.com/127.0.0.1#5335 +ipset=/connect-in-canada.com/gfwlist +server=/canon.se/127.0.0.1#5335 +ipset=/canon.se/gfwlist +server=/beatsbydreirelandsonline.com/127.0.0.1#5335 +ipset=/beatsbydreirelandsonline.com/gfwlist +server=/mobile.de/127.0.0.1#5335 +ipset=/mobile.de/gfwlist +server=/nikeshoes21.com/127.0.0.1#5335 +ipset=/nikeshoes21.com/gfwlist +server=/beatsbydreaustraliaonlines.com/127.0.0.1#5335 +ipset=/beatsbydreaustraliaonlines.com/gfwlist +server=/flipshare.com/127.0.0.1#5335 +ipset=/flipshare.com/gfwlist +server=/ngeo.com/127.0.0.1#5335 +ipset=/ngeo.com/gfwlist +server=/alphabet.co.za/127.0.0.1#5335 +ipset=/alphabet.co.za/gfwlist +server=/donkeykongcountryreturns.com/127.0.0.1#5335 +ipset=/donkeykongcountryreturns.com/gfwlist +server=/2beatsdre.com/127.0.0.1#5335 +ipset=/2beatsdre.com/gfwlist +server=/ciscolearningsystem.com/127.0.0.1#5335 +ipset=/ciscolearningsystem.com/gfwlist +server=/applecomputer.com/127.0.0.1#5335 +ipset=/applecomputer.com/gfwlist +server=/duckduckgo.dk/127.0.0.1#5335 +ipset=/duckduckgo.dk/gfwlist +server=/onestore.ms/127.0.0.1#5335 +ipset=/onestore.ms/gfwlist +server=/applewatchseries3.net/127.0.0.1#5335 +ipset=/applewatchseries3.net/gfwlist +server=/mkto-c0100.com/127.0.0.1#5335 +ipset=/mkto-c0100.com/gfwlist +server=/bmw.bm/127.0.0.1#5335 +ipset=/bmw.bm/gfwlist +server=/thechronicle.com.au/127.0.0.1#5335 +ipset=/thechronicle.com.au/gfwlist +server=/withyoutube.com/127.0.0.1#5335 +ipset=/withyoutube.com/gfwlist +server=/sandisk.ae/127.0.0.1#5335 +ipset=/sandisk.ae/gfwlist +server=/ddg.gg/127.0.0.1#5335 +ipset=/ddg.gg/gfwlist +server=/macbook.tw/127.0.0.1#5335 +ipset=/macbook.tw/gfwlist +server=/mini.fi/127.0.0.1#5335 +ipset=/mini.fi/gfwlist +server=/vine.co/127.0.0.1#5335 +ipset=/vine.co/gfwlist +server=/youtube.hk/127.0.0.1#5335 +ipset=/youtube.hk/gfwlist +server=/pyhapp.com/127.0.0.1#5335 +ipset=/pyhapp.com/gfwlist +server=/epinions.com/127.0.0.1#5335 +ipset=/epinions.com/gfwlist +server=/bmw-i.jp/127.0.0.1#5335 +ipset=/bmw-i.jp/gfwlist +server=/what-fan.net/127.0.0.1#5335 +ipset=/what-fan.net/gfwlist +server=/ebayjewelry.com/127.0.0.1#5335 +ipset=/ebayjewelry.com/gfwlist +server=/tryengineering.org/127.0.0.1#5335 +ipset=/tryengineering.org/gfwlist +server=/onsaletrend.com/127.0.0.1#5335 +ipset=/onsaletrend.com/gfwlist +server=/facebookland.com/127.0.0.1#5335 +ipset=/facebookland.com/gfwlist +server=/chinadecoding.com/127.0.0.1#5335 +ipset=/chinadecoding.com/gfwlist +server=/ipoditouch.com/127.0.0.1#5335 +ipset=/ipoditouch.com/gfwlist +server=/bmw-motorrad.pa/127.0.0.1#5335 +ipset=/bmw-motorrad.pa/gfwlist +server=/getcomposer.org/127.0.0.1#5335 +ipset=/getcomposer.org/gfwlist +server=/akamai-platform-internal.net/127.0.0.1#5335 +ipset=/akamai-platform-internal.net/gfwlist +server=/trydurex.tv/127.0.0.1#5335 +ipset=/trydurex.tv/gfwlist +server=/google.az/127.0.0.1#5335 +ipset=/google.az/gfwlist +server=/airwick.si/127.0.0.1#5335 +ipset=/airwick.si/gfwlist +server=/applestore.com.jo/127.0.0.1#5335 +ipset=/applestore.com.jo/gfwlist +server=/mini-srilanka.com/127.0.0.1#5335 +ipset=/mini-srilanka.com/gfwlist +server=/casquebeatssolo.net/127.0.0.1#5335 +ipset=/casquebeatssolo.net/gfwlist +server=/usatodaynetworkservice.com/127.0.0.1#5335 +ipset=/usatodaynetworkservice.com/gfwlist +server=/zendesk.com/127.0.0.1#5335 +ipset=/zendesk.com/gfwlist +server=/javwide.tv/127.0.0.1#5335 +ipset=/javwide.tv/gfwlist +server=/visaluxuryhotelcollection.com.br/127.0.0.1#5335 +ipset=/visaluxuryhotelcollection.com.br/gfwlist +server=/q10.jp/127.0.0.1#5335 +ipset=/q10.jp/gfwlist +server=/volvobuses.mx/127.0.0.1#5335 +ipset=/volvobuses.mx/gfwlist +server=/stackage.org/127.0.0.1#5335 +ipset=/stackage.org/gfwlist +server=/spotify-everywhere.com/127.0.0.1#5335 +ipset=/spotify-everywhere.com/gfwlist +server=/shopifystatus.com/127.0.0.1#5335 +ipset=/shopifystatus.com/gfwlist +server=/danmarkbeatsbydrdre.com/127.0.0.1#5335 +ipset=/danmarkbeatsbydrdre.com/gfwlist +server=/oxfordaasc.com/127.0.0.1#5335 +ipset=/oxfordaasc.com/gfwlist +server=/cheapmonsterbeatsheadsets.com/127.0.0.1#5335 +ipset=/cheapmonsterbeatsheadsets.com/gfwlist +server=/golang.net/127.0.0.1#5335 +ipset=/golang.net/gfwlist +server=/snapseed.com/127.0.0.1#5335 +ipset=/snapseed.com/gfwlist +server=/tictoc.video/127.0.0.1#5335 +ipset=/tictoc.video/gfwlist +server=/vmtestdrive.com/127.0.0.1#5335 +ipset=/vmtestdrive.com/gfwlist +server=/elsevier.com/127.0.0.1#5335 +ipset=/elsevier.com/gfwlist +server=/volvotrucks.mn/127.0.0.1#5335 +ipset=/volvotrucks.mn/gfwlist +server=/yzzk.com/127.0.0.1#5335 +ipset=/yzzk.com/gfwlist +server=/comodoca.com/127.0.0.1#5335 +ipset=/comodoca.com/gfwlist +server=/ipadpro.buzz/127.0.0.1#5335 +ipset=/ipadpro.buzz/gfwlist +server=/hulu.com/127.0.0.1#5335 +ipset=/hulu.com/gfwlist +server=/pypi.io/127.0.0.1#5335 +ipset=/pypi.io/gfwlist +server=/bmw-mountains.com/127.0.0.1#5335 +ipset=/bmw-mountains.com/gfwlist +server=/ebayworlds.com/127.0.0.1#5335 +ipset=/ebayworlds.com/gfwlist +server=/google.com.sl/127.0.0.1#5335 +ipset=/google.com.sl/gfwlist +server=/insidevoa.com/127.0.0.1#5335 +ipset=/insidevoa.com/gfwlist +server=/pokemonpicross.com/127.0.0.1#5335 +ipset=/pokemonpicross.com/gfwlist +server=/freecodecamp.org/127.0.0.1#5335 +ipset=/freecodecamp.org/gfwlist +server=/bmw-motorrad.sa/127.0.0.1#5335 +ipset=/bmw-motorrad.sa/gfwlist +server=/paypal-portal.com/127.0.0.1#5335 +ipset=/paypal-portal.com/gfwlist +server=/versly.com/127.0.0.1#5335 +ipset=/versly.com/gfwlist +server=/myfoxatlanta.com/127.0.0.1#5335 +ipset=/myfoxatlanta.com/gfwlist +server=/bmw.dz/127.0.0.1#5335 +ipset=/bmw.dz/gfwlist +server=/airtunes.net/127.0.0.1#5335 +ipset=/airtunes.net/gfwlist +server=/beatspaschers.net/127.0.0.1#5335 +ipset=/beatspaschers.net/gfwlist +server=/stackoverflow.email/127.0.0.1#5335 +ipset=/stackoverflow.email/gfwlist +server=/lysol.net/127.0.0.1#5335 +ipset=/lysol.net/gfwlist +server=/paypalcreditcard.com/127.0.0.1#5335 +ipset=/paypalcreditcard.com/gfwlist +server=/nurofen.at/127.0.0.1#5335 +ipset=/nurofen.at/gfwlist +server=/facebooik.com/127.0.0.1#5335 +ipset=/facebooik.com/gfwlist +server=/miniso.co/127.0.0.1#5335 +ipset=/miniso.co/gfwlist +server=/businessinsider.co.za/127.0.0.1#5335 +ipset=/businessinsider.co.za/gfwlist +server=/apple.my/127.0.0.1#5335 +ipset=/apple.my/gfwlist +server=/disneymagicmoments.co.za/127.0.0.1#5335 +ipset=/disneymagicmoments.co.za/gfwlist +server=/hpto.net/127.0.0.1#5335 +ipset=/hpto.net/gfwlist +server=/pricelesshonolulu.com/127.0.0.1#5335 +ipset=/pricelesshonolulu.com/gfwlist +server=/facebook-hardware.com/127.0.0.1#5335 +ipset=/facebook-hardware.com/gfwlist +server=/adblockplus.org/127.0.0.1#5335 +ipset=/adblockplus.org/gfwlist +server=/shopee.co.id/127.0.0.1#5335 +ipset=/shopee.co.id/gfwlist +server=/iphonecollcase.com/127.0.0.1#5335 +ipset=/iphonecollcase.com/gfwlist +server=/adobe.com/127.0.0.1#5335 +ipset=/adobe.com/gfwlist +server=/mongodb.com/127.0.0.1#5335 +ipset=/mongodb.com/gfwlist +server=/bloomberg.cn/127.0.0.1#5335 +ipset=/bloomberg.cn/gfwlist +server=/redtube.com/127.0.0.1#5335 +ipset=/redtube.com/gfwlist +server=/apple.jp/127.0.0.1#5335 +ipset=/apple.jp/gfwlist +server=/tweetdeck.com/127.0.0.1#5335 +ipset=/tweetdeck.com/gfwlist +server=/connectcommerce.tv/127.0.0.1#5335 +ipset=/connectcommerce.tv/gfwlist +server=/aboutamazon.eu/127.0.0.1#5335 +ipset=/aboutamazon.eu/gfwlist +server=/bmw-world.com/127.0.0.1#5335 +ipset=/bmw-world.com/gfwlist +server=/douya.org/127.0.0.1#5335 +ipset=/douya.org/gfwlist +server=/braintreepaymentsolutions.com/127.0.0.1#5335 +ipset=/braintreepaymentsolutions.com/gfwlist +server=/gostorego.com/127.0.0.1#5335 +ipset=/gostorego.com/gfwlist +server=/gettr.com/127.0.0.1#5335 +ipset=/gettr.com/gfwlist +server=/apple-expo.eu/127.0.0.1#5335 +ipset=/apple-expo.eu/gfwlist +server=/4chan.org/127.0.0.1#5335 +ipset=/4chan.org/gfwlist +server=/creativecloud.com/127.0.0.1#5335 +ipset=/creativecloud.com/gfwlist +server=/feacbook.com/127.0.0.1#5335 +ipset=/feacbook.com/gfwlist +server=/thesffblog.com/127.0.0.1#5335 +ipset=/thesffblog.com/gfwlist +server=/nikepress.com/127.0.0.1#5335 +ipset=/nikepress.com/gfwlist +server=/nintendo3ds.com/127.0.0.1#5335 +ipset=/nintendo3ds.com/gfwlist +server=/beatsfactoryoutles.com/127.0.0.1#5335 +ipset=/beatsfactoryoutles.com/gfwlist +server=/apple.sk/127.0.0.1#5335 +ipset=/apple.sk/gfwlist +server=/spreadprivacy.com/127.0.0.1#5335 +ipset=/spreadprivacy.com/gfwlist +server=/swisssigngroup.com/127.0.0.1#5335 +ipset=/swisssigngroup.com/gfwlist +server=/minimontrealcentre.ca/127.0.0.1#5335 +ipset=/minimontrealcentre.ca/gfwlist +server=/fox5storm.com/127.0.0.1#5335 +ipset=/fox5storm.com/gfwlist +server=/newsupermariobrosu.com/127.0.0.1#5335 +ipset=/newsupermariobrosu.com/gfwlist +server=/discordapp.com/127.0.0.1#5335 +ipset=/discordapp.com/gfwlist +server=/dailytelegraph.com.au/127.0.0.1#5335 +ipset=/dailytelegraph.com.au/gfwlist +server=/insider.com/127.0.0.1#5335 +ipset=/insider.com/gfwlist +server=/phncdn.com/127.0.0.1#5335 +ipset=/phncdn.com/gfwlist +server=/ebayeletro.com/127.0.0.1#5335 +ipset=/ebayeletro.com/gfwlist +server=/macbookpro.com.au/127.0.0.1#5335 +ipset=/macbookpro.com.au/gfwlist +server=/nikeproduct.com/127.0.0.1#5335 +ipset=/nikeproduct.com/gfwlist +server=/bmw-connected-drive.com/127.0.0.1#5335 +ipset=/bmw-connected-drive.com/gfwlist +server=/kamisama-maeda-lab.com/127.0.0.1#5335 +ipset=/kamisama-maeda-lab.com/gfwlist +server=/finish.de/127.0.0.1#5335 +ipset=/finish.de/gfwlist +server=/epochtimestr.com/127.0.0.1#5335 +ipset=/epochtimestr.com/gfwlist +server=/mail.ru/127.0.0.1#5335 +ipset=/mail.ru/gfwlist +server=/driving.co.uk/127.0.0.1#5335 +ipset=/driving.co.uk/gfwlist +server=/microsoft.vn/127.0.0.1#5335 +ipset=/microsoft.vn/gfwlist +server=/mojang.com/127.0.0.1#5335 +ipset=/mojang.com/gfwlist +server=/apple.rs/127.0.0.1#5335 +ipset=/apple.rs/gfwlist +server=/beatsbydre-store.com/127.0.0.1#5335 +ipset=/beatsbydre-store.com/gfwlist +server=/area120.com/127.0.0.1#5335 +ipset=/area120.com/gfwlist +server=/pearsonclinical.no/127.0.0.1#5335 +ipset=/pearsonclinical.no/gfwlist +server=/bmw-welt.net/127.0.0.1#5335 +ipset=/bmw-welt.net/gfwlist +server=/miniso.uz/127.0.0.1#5335 +ipset=/miniso.uz/gfwlist +server=/thestandard.com.hk/127.0.0.1#5335 +ipset=/thestandard.com.hk/gfwlist +server=/youtube.md/127.0.0.1#5335 +ipset=/youtube.md/gfwlist +server=/whychooseview.com/127.0.0.1#5335 +ipset=/whychooseview.com/gfwlist +server=/ntdca.com/127.0.0.1#5335 +ipset=/ntdca.com/gfwlist +server=/mzstatic.com/127.0.0.1#5335 +ipset=/mzstatic.com/gfwlist +server=/amazon-adsystem.com/127.0.0.1#5335 +ipset=/amazon-adsystem.com/gfwlist +server=/linkedin.com/127.0.0.1#5335 +ipset=/linkedin.com/gfwlist +server=/uverse.com/127.0.0.1#5335 +ipset=/uverse.com/gfwlist +server=/bmw.com.bd/127.0.0.1#5335 +ipset=/bmw.com.bd/gfwlist +server=/mastercard.com.bh/127.0.0.1#5335 +ipset=/mastercard.com.bh/gfwlist +server=/nikefootballgloves.com/127.0.0.1#5335 +ipset=/nikefootballgloves.com/gfwlist +server=/microsoftstore.com.hk/127.0.0.1#5335 +ipset=/microsoftstore.com.hk/gfwlist +server=/imoviestage.com/127.0.0.1#5335 +ipset=/imoviestage.com/gfwlist +server=/minimoncton.com/127.0.0.1#5335 +ipset=/minimoncton.com/gfwlist +server=/linguee.com/127.0.0.1#5335 +ipset=/linguee.com/gfwlist +server=/oraclefoundation.org/127.0.0.1#5335 +ipset=/oraclefoundation.org/gfwlist +server=/epochtimes.com.sg/127.0.0.1#5335 +ipset=/epochtimes.com.sg/gfwlist +server=/icloud.jp/127.0.0.1#5335 +ipset=/icloud.jp/gfwlist +server=/minivictoria.com/127.0.0.1#5335 +ipset=/minivictoria.com/gfwlist +server=/bridgestone.co.cr/127.0.0.1#5335 +ipset=/bridgestone.co.cr/gfwlist +server=/visa.com.kn/127.0.0.1#5335 +ipset=/visa.com.kn/gfwlist +server=/icloud.ro/127.0.0.1#5335 +ipset=/icloud.ro/gfwlist +server=/sorcerersarena.com/127.0.0.1#5335 +ipset=/sorcerersarena.com/gfwlist +server=/attcenter.com/127.0.0.1#5335 +ipset=/attcenter.com/gfwlist +server=/canon-cmos-sensors.com/127.0.0.1#5335 +ipset=/canon-cmos-sensors.com/gfwlist +server=/w3schools.com/127.0.0.1#5335 +ipset=/w3schools.com/gfwlist +server=/nurofen.net/127.0.0.1#5335 +ipset=/nurofen.net/gfwlist +server=/faceboon.com/127.0.0.1#5335 +ipset=/faceboon.com/gfwlist +server=/ebaytrading.com/127.0.0.1#5335 +ipset=/ebaytrading.com/gfwlist +server=/calgon.fr/127.0.0.1#5335 +ipset=/calgon.fr/gfwlist +server=/faceidglobal.com/127.0.0.1#5335 +ipset=/faceidglobal.com/gfwlist +server=/vanish.com.ar/127.0.0.1#5335 +ipset=/vanish.com.ar/gfwlist +server=/visa.fi/127.0.0.1#5335 +ipset=/visa.fi/gfwlist +server=/kscisco.com/127.0.0.1#5335 +ipset=/kscisco.com/gfwlist +server=/akamaientrypoint.net/127.0.0.1#5335 +ipset=/akamaientrypoint.net/gfwlist +server=/cheapheadphonesland.com/127.0.0.1#5335 +ipset=/cheapheadphonesland.com/gfwlist +server=/iphone-x.tv/127.0.0.1#5335 +ipset=/iphone-x.tv/gfwlist +server=/bidorbuyindia.com/127.0.0.1#5335 +ipset=/bidorbuyindia.com/gfwlist +server=/foxsportsracing.com/127.0.0.1#5335 +ipset=/foxsportsracing.com/gfwlist +server=/intel.gr/127.0.0.1#5335 +ipset=/intel.gr/gfwlist +server=/vanishstains.com/127.0.0.1#5335 +ipset=/vanishstains.com/gfwlist +server=/mini.com.co/127.0.0.1#5335 +ipset=/mini.com.co/gfwlist +server=/sportswomenoftheyear.co.uk/127.0.0.1#5335 +ipset=/sportswomenoftheyear.co.uk/gfwlist +server=/itunesiradio.com/127.0.0.1#5335 +ipset=/itunesiradio.com/gfwlist +server=/myfoxboston.com/127.0.0.1#5335 +ipset=/myfoxboston.com/gfwlist +server=/bmw-connecteddrive.com.mt/127.0.0.1#5335 +ipset=/bmw-connecteddrive.com.mt/gfwlist +server=/eachpay.com/127.0.0.1#5335 +ipset=/eachpay.com/gfwlist +server=/cloudflarestatus.com/127.0.0.1#5335 +ipset=/cloudflarestatus.com/gfwlist +server=/hqporner.com/127.0.0.1#5335 +ipset=/hqporner.com/gfwlist +server=/disney.co.za/127.0.0.1#5335 +ipset=/disney.co.za/gfwlist +server=/newmonsterbeatsheadphones.com/127.0.0.1#5335 +ipset=/newmonsterbeatsheadphones.com/gfwlist +server=/youtube.com.bh/127.0.0.1#5335 +ipset=/youtube.com.bh/gfwlist +server=/wpewebkit.org/127.0.0.1#5335 +ipset=/wpewebkit.org/gfwlist +server=/apress.com/127.0.0.1#5335 +ipset=/apress.com/gfwlist +server=/canon.ch/127.0.0.1#5335 +ipset=/canon.ch/gfwlist +server=/mastercardconnect.com/127.0.0.1#5335 +ipset=/mastercardconnect.com/gfwlist +server=/go-lang.com/127.0.0.1#5335 +ipset=/go-lang.com/gfwlist +server=/scholar.google.com.ec/127.0.0.1#5335 +ipset=/scholar.google.com.ec/gfwlist +server=/nikefactorystore.com/127.0.0.1#5335 +ipset=/nikefactorystore.com/gfwlist +server=/applestore.net.gr/127.0.0.1#5335 +ipset=/applestore.net.gr/gfwlist +server=/mastercardbusinessnetwork.com/127.0.0.1#5335 +ipset=/mastercardbusinessnetwork.com/gfwlist +server=/mini.at/127.0.0.1#5335 +ipset=/mini.at/gfwlist +server=/nvidia.com.ua/127.0.0.1#5335 +ipset=/nvidia.com.ua/gfwlist +server=/apple.se/127.0.0.1#5335 +ipset=/apple.se/gfwlist +server=/nikeshoesretro.com/127.0.0.1#5335 +ipset=/nikeshoesretro.com/gfwlist +server=/simg.jp/127.0.0.1#5335 +ipset=/simg.jp/gfwlist +server=/nikeresponsibility.com/127.0.0.1#5335 +ipset=/nikeresponsibility.com/gfwlist +server=/bmw-motorrad.com.hr/127.0.0.1#5335 +ipset=/bmw-motorrad.com.hr/gfwlist +server=/pearsonassessment.de/127.0.0.1#5335 +ipset=/pearsonassessment.de/gfwlist +server=/mysinchew.com/127.0.0.1#5335 +ipset=/mysinchew.com/gfwlist +server=/drdreheadphonebeats.com/127.0.0.1#5335 +ipset=/drdreheadphonebeats.com/gfwlist +server=/hooloo.tv/127.0.0.1#5335 +ipset=/hooloo.tv/gfwlist +server=/cloudfunctions.net/127.0.0.1#5335 +ipset=/cloudfunctions.net/gfwlist +server=/microsoft.it/127.0.0.1#5335 +ipset=/microsoft.it/gfwlist +server=/veet.com.my/127.0.0.1#5335 +ipset=/veet.com.my/gfwlist +server=/appleimac.com/127.0.0.1#5335 +ipset=/appleimac.com/gfwlist +server=/fnlondon.com/127.0.0.1#5335 +ipset=/fnlondon.com/gfwlist +server=/nikeairmaxshoes.com/127.0.0.1#5335 +ipset=/nikeairmaxshoes.com/gfwlist +server=/marketo.net/127.0.0.1#5335 +ipset=/marketo.net/gfwlist +server=/slackhq.com/127.0.0.1#5335 +ipset=/slackhq.com/gfwlist +server=/launchpadlibrarian.net/127.0.0.1#5335 +ipset=/launchpadlibrarian.net/gfwlist +server=/beatsone.net/127.0.0.1#5335 +ipset=/beatsone.net/gfwlist +server=/rolls-roycecullinan.com/127.0.0.1#5335 +ipset=/rolls-roycecullinan.com/gfwlist +server=/starbucks.com.ar/127.0.0.1#5335 +ipset=/starbucks.com.ar/gfwlist +server=/mcdonaldsarabia.com/127.0.0.1#5335 +ipset=/mcdonaldsarabia.com/gfwlist +server=/bmw-motorsport.com/127.0.0.1#5335 +ipset=/bmw-motorsport.com/gfwlist +server=/reutersmedia.net/127.0.0.1#5335 +ipset=/reutersmedia.net/gfwlist +server=/jetbrains.net/127.0.0.1#5335 +ipset=/jetbrains.net/gfwlist +server=/elixir-lang.org/127.0.0.1#5335 +ipset=/elixir-lang.org/gfwlist +server=/winhec.net/127.0.0.1#5335 +ipset=/winhec.net/gfwlist +server=/adhelpnews.com/127.0.0.1#5335 +ipset=/adhelpnews.com/gfwlist +server=/bmw-connecteddrive.ee/127.0.0.1#5335 +ipset=/bmw-connecteddrive.ee/gfwlist +server=/widgets.stripst.com/127.0.0.1#5335 +ipset=/widgets.stripst.com/gfwlist +server=/breakdown.me/127.0.0.1#5335 +ipset=/breakdown.me/gfwlist +server=/2buybeatsbydre.com/127.0.0.1#5335 +ipset=/2buybeatsbydre.com/gfwlist +server=/popcap.com/127.0.0.1#5335 +ipset=/popcap.com/gfwlist +server=/whyfacebook.com/127.0.0.1#5335 +ipset=/whyfacebook.com/gfwlist +server=/economistgroup.com/127.0.0.1#5335 +ipset=/economistgroup.com/gfwlist +server=/bmw.cw/127.0.0.1#5335 +ipset=/bmw.cw/gfwlist +server=/canon.lt/127.0.0.1#5335 +ipset=/canon.lt/gfwlist +server=/drebeats-australia.com/127.0.0.1#5335 +ipset=/drebeats-australia.com/gfwlist +server=/hpmini.com/127.0.0.1#5335 +ipset=/hpmini.com/gfwlist +server=/supercoach.com.au/127.0.0.1#5335 +ipset=/supercoach.com.au/gfwlist +server=/mastercard.com.tw/127.0.0.1#5335 +ipset=/mastercard.com.tw/gfwlist +server=/netflixdnstest3.com/127.0.0.1#5335 +ipset=/netflixdnstest3.com/gfwlist +server=/funnyfacebook.org/127.0.0.1#5335 +ipset=/funnyfacebook.org/gfwlist +server=/swiftbank.info/127.0.0.1#5335 +ipset=/swiftbank.info/gfwlist +server=/ebay68.com/127.0.0.1#5335 +ipset=/ebay68.com/gfwlist +server=/mastercardrestaurant.com/127.0.0.1#5335 +ipset=/mastercardrestaurant.com/gfwlist +server=/gamer.com.tw/127.0.0.1#5335 +ipset=/gamer.com.tw/gfwlist +server=/mobatek.net/127.0.0.1#5335 +ipset=/mobatek.net/gfwlist +server=/softbank.jp/127.0.0.1#5335 +ipset=/softbank.jp/gfwlist +server=/fandango.com/127.0.0.1#5335 +ipset=/fandango.com/gfwlist +server=/iphone-sh.com/127.0.0.1#5335 +ipset=/iphone-sh.com/gfwlist +server=/frishoes.com/127.0.0.1#5335 +ipset=/frishoes.com/gfwlist +server=/ipadair.com.es/127.0.0.1#5335 +ipset=/ipadair.com.es/gfwlist +server=/xxbay.com/127.0.0.1#5335 +ipset=/xxbay.com/gfwlist +server=/vfsco.mx/127.0.0.1#5335 +ipset=/vfsco.mx/gfwlist +server=/google.st/127.0.0.1#5335 +ipset=/google.st/gfwlist +server=/macbookair.jp/127.0.0.1#5335 +ipset=/macbookair.jp/gfwlist +server=/vhxqa3.com/127.0.0.1#5335 +ipset=/vhxqa3.com/gfwlist +server=/oxfordreference.com/127.0.0.1#5335 +ipset=/oxfordreference.com/gfwlist +server=/foxsports2.com/127.0.0.1#5335 +ipset=/foxsports2.com/gfwlist +server=/google.com.bz/127.0.0.1#5335 +ipset=/google.com.bz/gfwlist +server=/recode.net/127.0.0.1#5335 +ipset=/recode.net/gfwlist +server=/rarbgproxy.org/127.0.0.1#5335 +ipset=/rarbgproxy.org/gfwlist +server=/nfsworld.com/127.0.0.1#5335 +ipset=/nfsworld.com/gfwlist +server=/foxcorporation.com/127.0.0.1#5335 +ipset=/foxcorporation.com/gfwlist +server=/volvotrucks.ru/127.0.0.1#5335 +ipset=/volvotrucks.ru/gfwlist +server=/apple-online.com/127.0.0.1#5335 +ipset=/apple-online.com/gfwlist +server=/cheaperbeatsbydresale.com/127.0.0.1#5335 +ipset=/cheaperbeatsbydresale.com/gfwlist +server=/lldns.net/127.0.0.1#5335 +ipset=/lldns.net/gfwlist +server=/sony.ie/127.0.0.1#5335 +ipset=/sony.ie/gfwlist +server=/rarbgmirror.org/127.0.0.1#5335 +ipset=/rarbgmirror.org/gfwlist +server=/mastercard.bg/127.0.0.1#5335 +ipset=/mastercard.bg/gfwlist +server=/fafacebook.com/127.0.0.1#5335 +ipset=/fafacebook.com/gfwlist +server=/hpjav.tv/127.0.0.1#5335 +ipset=/hpjav.tv/gfwlist +server=/woflthenewsstation.com/127.0.0.1#5335 +ipset=/woflthenewsstation.com/gfwlist +server=/cnnmoney.ch/127.0.0.1#5335 +ipset=/cnnmoney.ch/gfwlist +server=/beatsbysdrdres.com/127.0.0.1#5335 +ipset=/beatsbysdrdres.com/gfwlist +server=/epochtimes.co.kr/127.0.0.1#5335 +ipset=/epochtimes.co.kr/gfwlist +server=/amazonliterarypartnership.com/127.0.0.1#5335 +ipset=/amazonliterarypartnership.com/gfwlist +server=/bmw.ly/127.0.0.1#5335 +ipset=/bmw.ly/gfwlist +server=/esri.com/127.0.0.1#5335 +ipset=/esri.com/gfwlist +server=/instagor.com/127.0.0.1#5335 +ipset=/instagor.com/gfwlist +server=/cheerwholesale.us/127.0.0.1#5335 +ipset=/cheerwholesale.us/gfwlist +server=/tsquare.tv/127.0.0.1#5335 +ipset=/tsquare.tv/gfwlist +server=/jsdelivr.com/127.0.0.1#5335 +ipset=/jsdelivr.com/gfwlist +server=/cheapbagshoes.com/127.0.0.1#5335 +ipset=/cheapbagshoes.com/gfwlist +server=/ebayshopping.org/127.0.0.1#5335 +ipset=/ebayshopping.org/gfwlist +server=/bmwproductnews.com/127.0.0.1#5335 +ipset=/bmwproductnews.com/gfwlist +server=/spotify.com/127.0.0.1#5335 +ipset=/spotify.com/gfwlist +server=/ebayedu.com/127.0.0.1#5335 +ipset=/ebayedu.com/gfwlist +server=/mastercard.com.tr/127.0.0.1#5335 +ipset=/mastercard.com.tr/gfwlist +server=/starbucksslovakia.sk/127.0.0.1#5335 +ipset=/starbucksslovakia.sk/gfwlist +server=/ipa-iphone.net/127.0.0.1#5335 +ipset=/ipa-iphone.net/gfwlist +server=/directvbusinessmarket.com/127.0.0.1#5335 +ipset=/directvbusinessmarket.com/gfwlist +server=/starbucksromania.ro/127.0.0.1#5335 +ipset=/starbucksromania.ro/gfwlist +server=/starbucksrewardsstarland.ca/127.0.0.1#5335 +ipset=/starbucksrewardsstarland.ca/gfwlist +server=/cisco.com/127.0.0.1#5335 +ipset=/cisco.com/gfwlist +server=/myfreecams.com/127.0.0.1#5335 +ipset=/myfreecams.com/gfwlist +server=/starbucksreserve.com/127.0.0.1#5335 +ipset=/starbucksreserve.com/gfwlist +server=/sony.com.mk/127.0.0.1#5335 +ipset=/sony.com.mk/gfwlist +server=/linuxfromscratch.org/127.0.0.1#5335 +ipset=/linuxfromscratch.org/gfwlist +server=/swtor.net/127.0.0.1#5335 +ipset=/swtor.net/gfwlist +server=/starbucksforlife.com/127.0.0.1#5335 +ipset=/starbucksforlife.com/gfwlist +server=/bmw-connecteddrive.com.kw/127.0.0.1#5335 +ipset=/bmw-connecteddrive.com.kw/gfwlist +server=/dettol.hu/127.0.0.1#5335 +ipset=/dettol.hu/gfwlist +server=/starbucksforlife.ca/127.0.0.1#5335 +ipset=/starbucksforlife.ca/gfwlist +server=/buypass.no/127.0.0.1#5335 +ipset=/buypass.no/gfwlist +server=/starbuckscoffeegearstore.com/127.0.0.1#5335 +ipset=/starbuckscoffeegearstore.com/gfwlist +server=/foxcincy.jobs/127.0.0.1#5335 +ipset=/foxcincy.jobs/gfwlist +server=/youtube.com.gh/127.0.0.1#5335 +ipset=/youtube.com.gh/gfwlist +server=/starbuckscoffee.cz/127.0.0.1#5335 +ipset=/starbuckscoffee.cz/gfwlist +server=/abema.tv/127.0.0.1#5335 +ipset=/abema.tv/gfwlist +server=/uug23.com/127.0.0.1#5335 +ipset=/uug23.com/gfwlist +server=/starbuckscard.ph/127.0.0.1#5335 +ipset=/starbuckscard.ph/gfwlist +server=/expresswifi.com/127.0.0.1#5335 +ipset=/expresswifi.com/gfwlist +server=/exascale-tech.com/127.0.0.1#5335 +ipset=/exascale-tech.com/gfwlist +server=/starbucksavie.ca/127.0.0.1#5335 +ipset=/starbucksavie.ca/gfwlist +server=/strepsils.ro/127.0.0.1#5335 +ipset=/strepsils.ro/gfwlist +server=/snap.com/127.0.0.1#5335 +ipset=/snap.com/gfwlist +server=/starbucks.tt/127.0.0.1#5335 +ipset=/starbucks.tt/gfwlist +server=/starbucks.se/127.0.0.1#5335 +ipset=/starbucks.se/gfwlist +server=/starbucks.ru/127.0.0.1#5335 +ipset=/starbucks.ru/gfwlist +server=/starbucks.rs/127.0.0.1#5335 +ipset=/starbucks.rs/gfwlist +server=/starbucks.pt/127.0.0.1#5335 +ipset=/starbucks.pt/gfwlist +server=/hackfacebookid.com/127.0.0.1#5335 +ipset=/hackfacebookid.com/gfwlist +server=/starbucks.pl/127.0.0.1#5335 +ipset=/starbucks.pl/gfwlist +server=/useplannr.com/127.0.0.1#5335 +ipset=/useplannr.com/gfwlist +server=/sony.com.hn/127.0.0.1#5335 +ipset=/sony.com.hn/gfwlist +server=/starbucks.no/127.0.0.1#5335 +ipset=/starbucks.no/gfwlist +server=/starbucks.nl/127.0.0.1#5335 +ipset=/starbucks.nl/gfwlist +server=/starbucks.in/127.0.0.1#5335 +ipset=/starbucks.in/gfwlist +server=/bloomberglive.com/127.0.0.1#5335 +ipset=/bloomberglive.com/gfwlist +server=/starbucks.hu/127.0.0.1#5335 +ipset=/starbucks.hu/gfwlist +server=/inlethd.com/127.0.0.1#5335 +ipset=/inlethd.com/gfwlist +server=/ytimg.com/127.0.0.1#5335 +ipset=/ytimg.com/gfwlist +server=/espn.co.uk/127.0.0.1#5335 +ipset=/espn.co.uk/gfwlist +server=/zohopublic.com/127.0.0.1#5335 +ipset=/zohopublic.com/gfwlist +server=/disney.hu/127.0.0.1#5335 +ipset=/disney.hu/gfwlist +server=/mastercard.com.vn/127.0.0.1#5335 +ipset=/mastercard.com.vn/gfwlist +server=/starbucks.com.uy/127.0.0.1#5335 +ipset=/starbucks.com.uy/gfwlist +server=/bmw-connecteddrive.es/127.0.0.1#5335 +ipset=/bmw-connecteddrive.es/gfwlist +server=/bandag.com/127.0.0.1#5335 +ipset=/bandag.com/gfwlist +server=/zeeentertainment.com/127.0.0.1#5335 +ipset=/zeeentertainment.com/gfwlist +server=/visanet.net/127.0.0.1#5335 +ipset=/visanet.net/gfwlist +server=/paper-attachments.s3.amazonaws.com/127.0.0.1#5335 +ipset=/paper-attachments.s3.amazonaws.com/gfwlist +server=/rbsgr.com/127.0.0.1#5335 +ipset=/rbsgr.com/gfwlist +server=/starbucks.com.sg/127.0.0.1#5335 +ipset=/starbucks.com.sg/gfwlist +server=/bmwmyanmar.com/127.0.0.1#5335 +ipset=/bmwmyanmar.com/gfwlist +server=/starbucks.com.pe/127.0.0.1#5335 +ipset=/starbucks.com.pe/gfwlist +server=/starbucks.com.my/127.0.0.1#5335 +ipset=/starbucks.com.my/gfwlist +server=/sony.com.gt/127.0.0.1#5335 +ipset=/sony.com.gt/gfwlist +server=/starbucks.com.mx/127.0.0.1#5335 +ipset=/starbucks.com.mx/gfwlist +server=/bmw.com.mx/127.0.0.1#5335 +ipset=/bmw.com.mx/gfwlist +server=/intel.wf/127.0.0.1#5335 +ipset=/intel.wf/gfwlist +server=/starbucks.com.kz/127.0.0.1#5335 +ipset=/starbucks.com.kz/gfwlist +server=/cbssvideo.com/127.0.0.1#5335 +ipset=/cbssvideo.com/gfwlist +server=/hottestheadphonesonline.com/127.0.0.1#5335 +ipset=/hottestheadphonesonline.com/gfwlist +server=/acheterfollowersinstagram.com/127.0.0.1#5335 +ipset=/acheterfollowersinstagram.com/gfwlist +server=/nike.gy/127.0.0.1#5335 +ipset=/nike.gy/gfwlist +server=/starbucks.com.hk/127.0.0.1#5335 +ipset=/starbucks.com.hk/gfwlist +server=/starbucks.com.cy/127.0.0.1#5335 +ipset=/starbucks.com.cy/gfwlist +server=/starbucks.com/127.0.0.1#5335 +ipset=/starbucks.com/gfwlist +server=/starbucks.co.za/127.0.0.1#5335 +ipset=/starbucks.co.za/gfwlist +server=/slack.com/127.0.0.1#5335 +ipset=/slack.com/gfwlist +server=/gputechconf.com/127.0.0.1#5335 +ipset=/gputechconf.com/gfwlist +server=/starbucks.co.nz/127.0.0.1#5335 +ipset=/starbucks.co.nz/gfwlist +server=/paypal-gpplus.com/127.0.0.1#5335 +ipset=/paypal-gpplus.com/gfwlist +server=/starbucks.co.jp/127.0.0.1#5335 +ipset=/starbucks.co.jp/gfwlist +server=/starbucks.ca/127.0.0.1#5335 +ipset=/starbucks.ca/gfwlist +server=/mastercard.ru/127.0.0.1#5335 +ipset=/mastercard.ru/gfwlist +server=/nvidia.co.jp/127.0.0.1#5335 +ipset=/nvidia.co.jp/gfwlist +server=/bmw.co.kr/127.0.0.1#5335 +ipset=/bmw.co.kr/gfwlist +server=/watchdisneyfe.com/127.0.0.1#5335 +ipset=/watchdisneyfe.com/gfwlist +server=/bitflyer.jp/127.0.0.1#5335 +ipset=/bitflyer.jp/gfwlist +server=/pinterest.se/127.0.0.1#5335 +ipset=/pinterest.se/gfwlist +server=/visa.com.ag/127.0.0.1#5335 +ipset=/visa.com.ag/gfwlist +server=/mingwatch.com/127.0.0.1#5335 +ipset=/mingwatch.com/gfwlist +server=/swisstsa.ch/127.0.0.1#5335 +ipset=/swisstsa.ch/gfwlist +server=/starbucks.be/127.0.0.1#5335 +ipset=/starbucks.be/gfwlist +server=/technics.com/127.0.0.1#5335 +ipset=/technics.com/gfwlist +server=/universalpictures.com/127.0.0.1#5335 +ipset=/universalpictures.com/gfwlist +server=/starbucks.at/127.0.0.1#5335 +ipset=/starbucks.at/gfwlist +server=/starbucks-stars.com/127.0.0.1#5335 +ipset=/starbucks-stars.com/gfwlist +server=/gog-statics.com/127.0.0.1#5335 +ipset=/gog-statics.com/gfwlist +server=/sbuxcard.com/127.0.0.1#5335 +ipset=/sbuxcard.com/gfwlist +server=/azuredns-prd.org/127.0.0.1#5335 +ipset=/azuredns-prd.org/gfwlist +server=/sbux.com.my/127.0.0.1#5335 +ipset=/sbux.com.my/gfwlist +server=/thinkofliving.com/127.0.0.1#5335 +ipset=/thinkofliving.com/gfwlist +server=/watchinese.com/127.0.0.1#5335 +ipset=/watchinese.com/gfwlist +server=/wix-code.com/127.0.0.1#5335 +ipset=/wix-code.com/gfwlist +server=/nikedunks.net/127.0.0.1#5335 +ipset=/nikedunks.net/gfwlist +server=/realtor.com/127.0.0.1#5335 +ipset=/realtor.com/gfwlist +server=/codecademy.com/127.0.0.1#5335 +ipset=/codecademy.com/gfwlist +server=/cortanaskills.com/127.0.0.1#5335 +ipset=/cortanaskills.com/gfwlist +server=/netflixinvestor.com/127.0.0.1#5335 +ipset=/netflixinvestor.com/gfwlist +server=/realcommercial.com.au/127.0.0.1#5335 +ipset=/realcommercial.com.au/gfwlist +server=/rea.tech/127.0.0.1#5335 +ipset=/rea.tech/gfwlist +server=/bmw-motorrad-abudhabi.com/127.0.0.1#5335 +ipset=/bmw-motorrad-abudhabi.com/gfwlist +server=/paypal-status.com/127.0.0.1#5335 +ipset=/paypal-status.com/gfwlist +server=/rea.global/127.0.0.1#5335 +ipset=/rea.global/gfwlist +server=/googleblog.com/127.0.0.1#5335 +ipset=/googleblog.com/gfwlist +server=/hpgift.com/127.0.0.1#5335 +ipset=/hpgift.com/gfwlist +server=/tvb.com.au/127.0.0.1#5335 +ipset=/tvb.com.au/gfwlist +server=/harpercollins.co.in/127.0.0.1#5335 +ipset=/harpercollins.co.in/gfwlist +server=/rea-group.com/127.0.0.1#5335 +ipset=/rea-group.com/gfwlist +server=/adwords-community.com/127.0.0.1#5335 +ipset=/adwords-community.com/gfwlist +server=/escapestudios.co.uk/127.0.0.1#5335 +ipset=/escapestudios.co.uk/gfwlist +server=/rea-asia.com/127.0.0.1#5335 +ipset=/rea-asia.com/gfwlist +server=/proptiger.com/127.0.0.1#5335 +ipset=/proptiger.com/gfwlist +server=/mariosupersluggers.com/127.0.0.1#5335 +ipset=/mariosupersluggers.com/gfwlist +server=/adidas.com.sa/127.0.0.1#5335 +ipset=/adidas.com.sa/gfwlist +server=/scholar.google.com.br/127.0.0.1#5335 +ipset=/scholar.google.com.br/gfwlist +server=/myfun.com/127.0.0.1#5335 +ipset=/myfun.com/gfwlist +server=/watchespn.com/127.0.0.1#5335 +ipset=/watchespn.com/gfwlist +server=/beatsbydrefrcasquepascher.com/127.0.0.1#5335 +ipset=/beatsbydrefrcasquepascher.com/gfwlist +server=/moveaws.com/127.0.0.1#5335 +ipset=/moveaws.com/gfwlist +server=/monsterbeatsbydrebilligde.com/127.0.0.1#5335 +ipset=/monsterbeatsbydrebilligde.com/gfwlist +server=/byspotify.com/127.0.0.1#5335 +ipset=/byspotify.com/gfwlist +server=/ebayon.net/127.0.0.1#5335 +ipset=/ebayon.net/gfwlist +server=/move.com/127.0.0.1#5335 +ipset=/move.com/gfwlist +server=/makaan.com/127.0.0.1#5335 +ipset=/makaan.com/gfwlist +server=/intel.com.hk/127.0.0.1#5335 +ipset=/intel.com.hk/gfwlist +server=/visa.com.au/127.0.0.1#5335 +ipset=/visa.com.au/gfwlist +server=/bmw-motorrad.com.au/127.0.0.1#5335 +ipset=/bmw-motorrad.com.au/gfwlist +server=/windowsazure.com/127.0.0.1#5335 +ipset=/windowsazure.com/gfwlist +server=/iproperty.com.my/127.0.0.1#5335 +ipset=/iproperty.com.my/gfwlist +server=/iproperty.com/127.0.0.1#5335 +ipset=/iproperty.com/gfwlist +server=/ippstatic.com/127.0.0.1#5335 +ipset=/ippstatic.com/gfwlist +server=/inventorship.com.au/127.0.0.1#5335 +ipset=/inventorship.com.au/gfwlist +server=/streamingdisney.net/127.0.0.1#5335 +ipset=/streamingdisney.net/gfwlist +server=/shoppinguheadphones.com/127.0.0.1#5335 +ipset=/shoppinguheadphones.com/gfwlist +server=/housingcdn.com/127.0.0.1#5335 +ipset=/housingcdn.com/gfwlist +server=/ebayaustralia.com/127.0.0.1#5335 +ipset=/ebayaustralia.com/gfwlist +server=/nextdigital.com.tw/127.0.0.1#5335 +ipset=/nextdigital.com.tw/gfwlist +server=/hometrack.com.au/127.0.0.1#5335 +ipset=/hometrack.com.au/gfwlist +server=/nurofen.sk/127.0.0.1#5335 +ipset=/nurofen.sk/gfwlist +server=/directvpromotions.com/127.0.0.1#5335 +ipset=/directvpromotions.com/gfwlist +server=/durex.com.hr/127.0.0.1#5335 +ipset=/durex.com.hr/gfwlist +server=/reckittbenckiser.com/127.0.0.1#5335 +ipset=/reckittbenckiser.com/gfwlist +server=/reckitt.net/127.0.0.1#5335 +ipset=/reckitt.net/gfwlist +server=/rbspeakup.com/127.0.0.1#5335 +ipset=/rbspeakup.com/gfwlist +server=/uber-assets.com/127.0.0.1#5335 +ipset=/uber-assets.com/gfwlist +server=/rbrandlibrary.com/127.0.0.1#5335 +ipset=/rbrandlibrary.com/gfwlist +server=/rbplc.com/127.0.0.1#5335 +ipset=/rbplc.com/gfwlist +server=/rbnainternational.com/127.0.0.1#5335 +ipset=/rbnainternational.com/gfwlist +server=/finish.com.hr/127.0.0.1#5335 +ipset=/finish.com.hr/gfwlist +server=/dropboxmail.com/127.0.0.1#5335 +ipset=/dropboxmail.com/gfwlist +server=/elephantsdream.org/127.0.0.1#5335 +ipset=/elephantsdream.org/gfwlist +server=/rbmavericks.com/127.0.0.1#5335 +ipset=/rbmavericks.com/gfwlist +server=/beatsofdre-usa.com/127.0.0.1#5335 +ipset=/beatsofdre-usa.com/gfwlist +server=/rbgraduates.com/127.0.0.1#5335 +ipset=/rbgraduates.com/gfwlist +server=/intel.bs/127.0.0.1#5335 +ipset=/intel.bs/gfwlist +server=/bestbuy-int.com/127.0.0.1#5335 +ipset=/bestbuy-int.com/gfwlist +server=/rbeuroinfo.com/127.0.0.1#5335 +ipset=/rbeuroinfo.com/gfwlist +server=/rbdigitallab.com/127.0.0.1#5335 +ipset=/rbdigitallab.com/gfwlist +server=/nikeitaly.com/127.0.0.1#5335 +ipset=/nikeitaly.com/gfwlist +server=/theweek.in/127.0.0.1#5335 +ipset=/theweek.in/gfwlist +server=/disney.cz/127.0.0.1#5335 +ipset=/disney.cz/gfwlist +server=/beatsbydrdreus.com/127.0.0.1#5335 +ipset=/beatsbydrdreus.com/gfwlist +server=/rb.com/127.0.0.1#5335 +ipset=/rb.com/gfwlist +server=/sony.sk/127.0.0.1#5335 +ipset=/sony.sk/gfwlist +server=/macbook.co/127.0.0.1#5335 +ipset=/macbook.co/gfwlist +server=/woolitecarpet.com/127.0.0.1#5335 +ipset=/woolitecarpet.com/gfwlist +server=/woolite.us/127.0.0.1#5335 +ipset=/woolite.us/gfwlist +server=/mastercardcenter.org/127.0.0.1#5335 +ipset=/mastercardcenter.org/gfwlist +server=/woolite.pl/127.0.0.1#5335 +ipset=/woolite.pl/gfwlist +server=/userapi.com/127.0.0.1#5335 +ipset=/userapi.com/gfwlist +server=/finish.co.uk/127.0.0.1#5335 +ipset=/finish.co.uk/gfwlist +server=/woolite.ca/127.0.0.1#5335 +ipset=/woolite.ca/gfwlist +server=/adsenseformobileapps.com/127.0.0.1#5335 +ipset=/adsenseformobileapps.com/gfwlist +server=/veetclub.it/127.0.0.1#5335 +ipset=/veetclub.it/gfwlist +server=/pa9pal.com/127.0.0.1#5335 +ipset=/pa9pal.com/gfwlist +server=/aomedia.org/127.0.0.1#5335 +ipset=/aomedia.org/gfwlist +server=/cheapnikedunks.com/127.0.0.1#5335 +ipset=/cheapnikedunks.com/gfwlist +server=/lolstatic-a.akamaihd.net/127.0.0.1#5335 +ipset=/lolstatic-a.akamaihd.net/gfwlist +server=/veetarabia.com/127.0.0.1#5335 +ipset=/veetarabia.com/gfwlist +server=/dragoniscoming.com/127.0.0.1#5335 +ipset=/dragoniscoming.com/gfwlist +server=/discord.new/127.0.0.1#5335 +ipset=/discord.new/gfwlist +server=/gitlab.io/127.0.0.1#5335 +ipset=/gitlab.io/gfwlist +server=/applestore.co.ug/127.0.0.1#5335 +ipset=/applestore.co.ug/gfwlist +server=/llnw.com/127.0.0.1#5335 +ipset=/llnw.com/gfwlist +server=/pscdn.co/127.0.0.1#5335 +ipset=/pscdn.co/gfwlist +server=/sverigebeatsbydrdre.com/127.0.0.1#5335 +ipset=/sverigebeatsbydrdre.com/gfwlist +server=/bmwgroup.net/127.0.0.1#5335 +ipset=/bmwgroup.net/gfwlist +server=/igoshopping.net/127.0.0.1#5335 +ipset=/igoshopping.net/gfwlist +server=/veet.ru/127.0.0.1#5335 +ipset=/veet.ru/gfwlist +server=/intel.sr/127.0.0.1#5335 +ipset=/intel.sr/gfwlist +server=/veet.ro/127.0.0.1#5335 +ipset=/veet.ro/gfwlist +server=/veet.pt/127.0.0.1#5335 +ipset=/veet.pt/gfwlist +server=/veet.nl/127.0.0.1#5335 +ipset=/veet.nl/gfwlist +server=/shelfstuff.com/127.0.0.1#5335 +ipset=/shelfstuff.com/gfwlist +server=/veet.hu/127.0.0.1#5335 +ipset=/veet.hu/gfwlist +server=/veet.fr/127.0.0.1#5335 +ipset=/veet.fr/gfwlist +server=/veet.fi/127.0.0.1#5335 +ipset=/veet.fi/gfwlist +server=/veet.es/127.0.0.1#5335 +ipset=/veet.es/gfwlist +server=/blogoverflow.com/127.0.0.1#5335 +ipset=/blogoverflow.com/gfwlist +server=/pigav.com/127.0.0.1#5335 +ipset=/pigav.com/gfwlist +server=/keytransparency.org/127.0.0.1#5335 +ipset=/keytransparency.org/gfwlist +server=/veet.de/127.0.0.1#5335 +ipset=/veet.de/gfwlist +server=/veet.com.tr/127.0.0.1#5335 +ipset=/veet.com.tr/gfwlist +server=/mini.it/127.0.0.1#5335 +ipset=/mini.it/gfwlist +server=/veet.com.sg/127.0.0.1#5335 +ipset=/veet.com.sg/gfwlist +server=/apexprint.com.hk/127.0.0.1#5335 +ipset=/apexprint.com.hk/gfwlist +server=/hpcampus.com/127.0.0.1#5335 +ipset=/hpcampus.com/gfwlist +server=/youtube.com.hr/127.0.0.1#5335 +ipset=/youtube.com.hr/gfwlist +server=/bigbigchannel.com.hk/127.0.0.1#5335 +ipset=/bigbigchannel.com.hk/gfwlist +server=/12diasderegalosdeitunes.cr/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.cr/gfwlist +server=/bmw.com.py/127.0.0.1#5335 +ipset=/bmw.com.py/gfwlist +server=/arcgisonline.com/127.0.0.1#5335 +ipset=/arcgisonline.com/gfwlist +server=/veet.com.pk/127.0.0.1#5335 +ipset=/veet.com.pk/gfwlist +server=/verizonfios.com/127.0.0.1#5335 +ipset=/verizonfios.com/gfwlist +server=/veet.com.ph/127.0.0.1#5335 +ipset=/veet.com.ph/gfwlist +server=/pinterest.ch/127.0.0.1#5335 +ipset=/pinterest.ch/gfwlist +server=/rocksdb.com/127.0.0.1#5335 +ipset=/rocksdb.com/gfwlist +server=/meraki.hk/127.0.0.1#5335 +ipset=/meraki.hk/gfwlist +server=/veet.com.hk/127.0.0.1#5335 +ipset=/veet.com.hk/gfwlist +server=/veet.com.br/127.0.0.1#5335 +ipset=/veet.com.br/gfwlist +server=/ntdvn.com/127.0.0.1#5335 +ipset=/ntdvn.com/gfwlist +server=/sony.rs/127.0.0.1#5335 +ipset=/sony.rs/gfwlist +server=/veet.com.bd/127.0.0.1#5335 +ipset=/veet.com.bd/gfwlist +server=/veet.com.au/127.0.0.1#5335 +ipset=/veet.com.au/gfwlist +server=/durex.ie/127.0.0.1#5335 +ipset=/durex.ie/gfwlist +server=/gacebook.com/127.0.0.1#5335 +ipset=/gacebook.com/gfwlist +server=/veet.co.za/127.0.0.1#5335 +ipset=/veet.co.za/gfwlist +server=/nikecloud.com/127.0.0.1#5335 +ipset=/nikecloud.com/gfwlist +server=/raspbian.org/127.0.0.1#5335 +ipset=/raspbian.org/gfwlist +server=/veet.co.in/127.0.0.1#5335 +ipset=/veet.co.in/gfwlist +server=/playoverwatch.com/127.0.0.1#5335 +ipset=/playoverwatch.com/gfwlist +server=/veet.co.id/127.0.0.1#5335 +ipset=/veet.co.id/gfwlist +server=/ciscolearningsociety.org/127.0.0.1#5335 +ipset=/ciscolearningsociety.org/gfwlist +server=/bmw.gr/127.0.0.1#5335 +ipset=/bmw.gr/gfwlist +server=/durex.com.sg/127.0.0.1#5335 +ipset=/durex.com.sg/gfwlist +server=/garena.tw/127.0.0.1#5335 +ipset=/garena.tw/gfwlist +server=/canon.com.al/127.0.0.1#5335 +ipset=/canon.com.al/gfwlist +server=/veet.ch/127.0.0.1#5335 +ipset=/veet.ch/gfwlist +server=/veet.ca/127.0.0.1#5335 +ipset=/veet.ca/gfwlist +server=/jwplatform.com/127.0.0.1#5335 +ipset=/jwplatform.com/gfwlist +server=/ilife.eu/127.0.0.1#5335 +ipset=/ilife.eu/gfwlist +server=/veet.at/127.0.0.1#5335 +ipset=/veet.at/gfwlist +server=/vanishinfo.cz/127.0.0.1#5335 +ipset=/vanishinfo.cz/gfwlist +server=/vanishbancaseulook.com.br/127.0.0.1#5335 +ipset=/vanishbancaseulook.com.br/gfwlist +server=/vanisharabia.com/127.0.0.1#5335 +ipset=/vanisharabia.com/gfwlist +server=/vanish.sk/127.0.0.1#5335 +ipset=/vanish.sk/gfwlist +server=/vanish.se/127.0.0.1#5335 +ipset=/vanish.se/gfwlist +server=/nineentertainment.com.au/127.0.0.1#5335 +ipset=/nineentertainment.com.au/gfwlist +server=/flathub.org/127.0.0.1#5335 +ipset=/flathub.org/gfwlist +server=/uoherald.com/127.0.0.1#5335 +ipset=/uoherald.com/gfwlist +server=/ebahy.com/127.0.0.1#5335 +ipset=/ebahy.com/gfwlist +server=/bmwbikes.com/127.0.0.1#5335 +ipset=/bmwbikes.com/gfwlist +server=/squareup.com/127.0.0.1#5335 +ipset=/squareup.com/gfwlist +server=/vanish.pl/127.0.0.1#5335 +ipset=/vanish.pl/gfwlist +server=/sling.com/127.0.0.1#5335 +ipset=/sling.com/gfwlist +server=/dragonagemovie.com/127.0.0.1#5335 +ipset=/dragonagemovie.com/gfwlist +server=/googil.com/127.0.0.1#5335 +ipset=/googil.com/gfwlist +server=/monstershopcheapbeats.net/127.0.0.1#5335 +ipset=/monstershopcheapbeats.net/gfwlist +server=/1monsterbeatsbydreus.com/127.0.0.1#5335 +ipset=/1monsterbeatsbydreus.com/gfwlist +server=/vanish.hu/127.0.0.1#5335 +ipset=/vanish.hu/gfwlist +server=/quicktake.video/127.0.0.1#5335 +ipset=/quicktake.video/gfwlist +server=/mastercard.inc/127.0.0.1#5335 +ipset=/mastercard.inc/gfwlist +server=/gamebeforethegame.com/127.0.0.1#5335 +ipset=/gamebeforethegame.com/gfwlist +server=/apple.sg/127.0.0.1#5335 +ipset=/apple.sg/gfwlist +server=/paypal-brandcentral.com/127.0.0.1#5335 +ipset=/paypal-brandcentral.com/gfwlist +server=/trustedanalytics.net/127.0.0.1#5335 +ipset=/trustedanalytics.net/gfwlist +server=/akamaietpcompromisedmalwaretest.com/127.0.0.1#5335 +ipset=/akamaietpcompromisedmalwaretest.com/gfwlist +server=/vanish.fr/127.0.0.1#5335 +ipset=/vanish.fr/gfwlist +server=/friendfeedmedia.com/127.0.0.1#5335 +ipset=/friendfeedmedia.com/gfwlist +server=/cell.com/127.0.0.1#5335 +ipset=/cell.com/gfwlist +server=/dell.com/127.0.0.1#5335 +ipset=/dell.com/gfwlist +server=/vanish.fi/127.0.0.1#5335 +ipset=/vanish.fi/gfwlist +server=/garena.co.id/127.0.0.1#5335 +ipset=/garena.co.id/gfwlist +server=/cloudburstresearch.com/127.0.0.1#5335 +ipset=/cloudburstresearch.com/gfwlist +server=/vanish.dk/127.0.0.1#5335 +ipset=/vanish.dk/gfwlist +server=/vanish.de/127.0.0.1#5335 +ipset=/vanish.de/gfwlist +server=/vanish.com.sg/127.0.0.1#5335 +ipset=/vanish.com.sg/gfwlist +server=/vanish.com.pe/127.0.0.1#5335 +ipset=/vanish.com.pe/gfwlist +server=/vanish.com.my/127.0.0.1#5335 +ipset=/vanish.com.my/gfwlist +server=/vanish.com.mx/127.0.0.1#5335 +ipset=/vanish.com.mx/gfwlist +server=/whatsapp-plus.info/127.0.0.1#5335 +ipset=/whatsapp-plus.info/gfwlist +server=/vanish.com.hr/127.0.0.1#5335 +ipset=/vanish.com.hr/gfwlist +server=/cheapwireless04.com/127.0.0.1#5335 +ipset=/cheapwireless04.com/gfwlist +server=/tenbyfotolia.com/127.0.0.1#5335 +ipset=/tenbyfotolia.com/gfwlist +server=/springernature.com/127.0.0.1#5335 +ipset=/springernature.com/gfwlist +server=/itools.info/127.0.0.1#5335 +ipset=/itools.info/gfwlist +server=/themarvelexperiencetour.com/127.0.0.1#5335 +ipset=/themarvelexperiencetour.com/gfwlist +server=/vanish.co.nz/127.0.0.1#5335 +ipset=/vanish.co.nz/gfwlist +server=/mini-windsor.ca/127.0.0.1#5335 +ipset=/mini-windsor.ca/gfwlist +server=/slinginternational.com/127.0.0.1#5335 +ipset=/slinginternational.com/gfwlist +server=/pinterest.co/127.0.0.1#5335 +ipset=/pinterest.co/gfwlist +server=/vanish.co.il/127.0.0.1#5335 +ipset=/vanish.co.il/gfwlist +server=/stc-server.com/127.0.0.1#5335 +ipset=/stc-server.com/gfwlist +server=/fbcdn-a.akamaihd.net/127.0.0.1#5335 +ipset=/fbcdn-a.akamaihd.net/gfwlist +server=/instagram-help.com/127.0.0.1#5335 +ipset=/instagram-help.com/gfwlist +server=/cilk.com/127.0.0.1#5335 +ipset=/cilk.com/gfwlist +server=/cheapdrdrebeats8.com/127.0.0.1#5335 +ipset=/cheapdrdrebeats8.com/gfwlist +server=/vanish.be/127.0.0.1#5335 +ipset=/vanish.be/gfwlist +server=/spraynwash.com/127.0.0.1#5335 +ipset=/spraynwash.com/gfwlist +server=/javhd.pro/127.0.0.1#5335 +ipset=/javhd.pro/gfwlist +server=/foxsports.sv/127.0.0.1#5335 +ipset=/foxsports.sv/gfwlist +server=/volvotrucks.cz/127.0.0.1#5335 +ipset=/volvotrucks.cz/gfwlist +server=/nurofen.de/127.0.0.1#5335 +ipset=/nurofen.de/gfwlist +server=/ycombinator.com/127.0.0.1#5335 +ipset=/ycombinator.com/gfwlist +server=/intel.mp/127.0.0.1#5335 +ipset=/intel.mp/gfwlist +server=/intel.com.ph/127.0.0.1#5335 +ipset=/intel.com.ph/gfwlist +server=/hpwsn.com/127.0.0.1#5335 +ipset=/hpwsn.com/gfwlist +server=/o2action.co.kr/127.0.0.1#5335 +ipset=/o2action.co.kr/gfwlist +server=/strepsils.us/127.0.0.1#5335 +ipset=/strepsils.us/gfwlist +server=/mini.co.uk/127.0.0.1#5335 +ipset=/mini.co.uk/gfwlist +server=/strepsils.ru/127.0.0.1#5335 +ipset=/strepsils.ru/gfwlist +server=/ichineseporn.com/127.0.0.1#5335 +ipset=/ichineseporn.com/gfwlist +server=/starbucks.vn/127.0.0.1#5335 +ipset=/starbucks.vn/gfwlist +server=/qwapi.com/127.0.0.1#5335 +ipset=/qwapi.com/gfwlist +server=/strepsils.pt/127.0.0.1#5335 +ipset=/strepsils.pt/gfwlist +server=/attsavings.com/127.0.0.1#5335 +ipset=/attsavings.com/gfwlist +server=/sony.co.kr/127.0.0.1#5335 +ipset=/sony.co.kr/gfwlist +server=/lysol.com/127.0.0.1#5335 +ipset=/lysol.com/gfwlist +server=/foxsportsla.com/127.0.0.1#5335 +ipset=/foxsportsla.com/gfwlist +server=/timelinestoryteller.com/127.0.0.1#5335 +ipset=/timelinestoryteller.com/gfwlist +server=/strepsils.pl/127.0.0.1#5335 +ipset=/strepsils.pl/gfwlist +server=/vmworld.com/127.0.0.1#5335 +ipset=/vmworld.com/gfwlist +server=/sonybuilding.jp/127.0.0.1#5335 +ipset=/sonybuilding.jp/gfwlist +server=/strepsils.net/127.0.0.1#5335 +ipset=/strepsils.net/gfwlist +server=/strepsils.ie/127.0.0.1#5335 +ipset=/strepsils.ie/gfwlist +server=/appleone.film/127.0.0.1#5335 +ipset=/appleone.film/gfwlist +server=/strepsils.fr/127.0.0.1#5335 +ipset=/strepsils.fr/gfwlist +server=/strepsils.fi/127.0.0.1#5335 +ipset=/strepsils.fi/gfwlist +server=/disneyaulani.com/127.0.0.1#5335 +ipset=/disneyaulani.com/gfwlist +server=/z5.app/127.0.0.1#5335 +ipset=/z5.app/gfwlist +server=/strepsils.es/127.0.0.1#5335 +ipset=/strepsils.es/gfwlist +server=/strepsils.com.hk/127.0.0.1#5335 +ipset=/strepsils.com.hk/gfwlist +server=/strepsils.com.au/127.0.0.1#5335 +ipset=/strepsils.com.au/gfwlist +server=/disneymagicmoments.gen.tr/127.0.0.1#5335 +ipset=/disneymagicmoments.gen.tr/gfwlist +server=/google.ventures/127.0.0.1#5335 +ipset=/google.ventures/gfwlist +server=/monster-beats-by-dr-dre.com/127.0.0.1#5335 +ipset=/monster-beats-by-dr-dre.com/gfwlist +server=/momomall.com.tw/127.0.0.1#5335 +ipset=/momomall.com.tw/gfwlist +server=/directvrebate.com/127.0.0.1#5335 +ipset=/directvrebate.com/gfwlist +server=/strepsils.co.nz/127.0.0.1#5335 +ipset=/strepsils.co.nz/gfwlist +server=/heroesofdragonage.com/127.0.0.1#5335 +ipset=/heroesofdragonage.com/gfwlist +server=/cheapbeatsshopbydre.com/127.0.0.1#5335 +ipset=/cheapbeatsshopbydre.com/gfwlist +server=/plos.org/127.0.0.1#5335 +ipset=/plos.org/gfwlist +server=/workstations.tv/127.0.0.1#5335 +ipset=/workstations.tv/gfwlist +server=/strepsils.at/127.0.0.1#5335 +ipset=/strepsils.at/gfwlist +server=/jav168.cc/127.0.0.1#5335 +ipset=/jav168.cc/gfwlist +server=/dobendan.de/127.0.0.1#5335 +ipset=/dobendan.de/gfwlist +server=/cepacol.com/127.0.0.1#5335 +ipset=/cepacol.com/gfwlist +server=/deviantart.com/127.0.0.1#5335 +ipset=/deviantart.com/gfwlist +server=/apyle.com/127.0.0.1#5335 +ipset=/apyle.com/gfwlist +server=/nurofensk-prod-env.eu-west-1.elasticbeanstalk.com/127.0.0.1#5335 +ipset=/nurofensk-prod-env.eu-west-1.elasticbeanstalk.com/gfwlist +server=/visadigital.com/127.0.0.1#5335 +ipset=/visadigital.com/gfwlist +server=/hackday.com.au/127.0.0.1#5335 +ipset=/hackday.com.au/gfwlist +server=/yibei.org/127.0.0.1#5335 +ipset=/yibei.org/gfwlist +server=/nurofen.pt/127.0.0.1#5335 +ipset=/nurofen.pt/gfwlist +server=/realamericanstories.org/127.0.0.1#5335 +ipset=/realamericanstories.org/gfwlist +server=/volvopenta.fr/127.0.0.1#5335 +ipset=/volvopenta.fr/gfwlist +server=/finish.gr/127.0.0.1#5335 +ipset=/finish.gr/gfwlist +server=/nurofen.pl/127.0.0.1#5335 +ipset=/nurofen.pl/gfwlist +server=/ebayd.com/127.0.0.1#5335 +ipset=/ebayd.com/gfwlist +server=/nurofen.it/127.0.0.1#5335 +ipset=/nurofen.it/gfwlist +server=/picasaweb.org/127.0.0.1#5335 +ipset=/picasaweb.org/gfwlist +server=/fbsupport-covid.net/127.0.0.1#5335 +ipset=/fbsupport-covid.net/gfwlist +server=/globalsign-media.com/127.0.0.1#5335 +ipset=/globalsign-media.com/gfwlist +server=/nurofen.es/127.0.0.1#5335 +ipset=/nurofen.es/gfwlist +server=/nurofen.co.za/127.0.0.1#5335 +ipset=/nurofen.co.za/gfwlist +server=/mediachinese.com/127.0.0.1#5335 +ipset=/mediachinese.com/gfwlist +server=/nikeaustralia.com/127.0.0.1#5335 +ipset=/nikeaustralia.com/gfwlist +server=/firestonecomercial.com.co/127.0.0.1#5335 +ipset=/firestonecomercial.com.co/gfwlist +server=/bookstagram.com/127.0.0.1#5335 +ipset=/bookstagram.com/gfwlist +server=/vfsco.fi/127.0.0.1#5335 +ipset=/vfsco.fi/gfwlist +server=/1to1conference.com.au/127.0.0.1#5335 +ipset=/1to1conference.com.au/gfwlist +server=/nurofen.co.nz/127.0.0.1#5335 +ipset=/nurofen.co.nz/gfwlist +server=/nurofen.co.il/127.0.0.1#5335 +ipset=/nurofen.co.il/gfwlist +server=/atom.io/127.0.0.1#5335 +ipset=/atom.io/gfwlist +server=/intel.rw/127.0.0.1#5335 +ipset=/intel.rw/gfwlist +server=/drbl.in/127.0.0.1#5335 +ipset=/drbl.in/gfwlist +server=/marketwatch.com/127.0.0.1#5335 +ipset=/marketwatch.com/gfwlist +server=/mucinex.tv/127.0.0.1#5335 +ipset=/mucinex.tv/gfwlist +server=/mucinex.net/127.0.0.1#5335 +ipset=/mucinex.net/gfwlist +server=/peacocktv.com/127.0.0.1#5335 +ipset=/peacocktv.com/gfwlist +server=/mucinex.com/127.0.0.1#5335 +ipset=/mucinex.com/gfwlist +server=/mucinex.ca/127.0.0.1#5335 +ipset=/mucinex.ca/gfwlist +server=/schiffvitamins.com/127.0.0.1#5335 +ipset=/schiffvitamins.com/gfwlist +server=/bmwmass.net/127.0.0.1#5335 +ipset=/bmwmass.net/gfwlist +server=/movefreerewards.com/127.0.0.1#5335 +ipset=/movefreerewards.com/gfwlist +server=/pifpafarabia.com/127.0.0.1#5335 +ipset=/pifpafarabia.com/gfwlist +server=/oculus-china.com/127.0.0.1#5335 +ipset=/oculus-china.com/gfwlist +server=/mortein.com.ng/127.0.0.1#5335 +ipset=/mortein.com.ng/gfwlist +server=/globalsign.co.uk/127.0.0.1#5335 +ipset=/globalsign.co.uk/gfwlist +server=/verisign.in/127.0.0.1#5335 +ipset=/verisign.in/gfwlist +server=/google.vu/127.0.0.1#5335 +ipset=/google.vu/gfwlist +server=/mortein.com.br/127.0.0.1#5335 +ipset=/mortein.com.br/gfwlist +server=/gale.com/127.0.0.1#5335 +ipset=/gale.com/gfwlist +server=/webhosting.com/127.0.0.1#5335 +ipset=/webhosting.com/gfwlist +server=/mortein.com/127.0.0.1#5335 +ipset=/mortein.com/gfwlist +server=/pubmatic.com/127.0.0.1#5335 +ipset=/pubmatic.com/gfwlist +server=/fotolia.tv/127.0.0.1#5335 +ipset=/fotolia.tv/gfwlist +server=/luckyissue.com/127.0.0.1#5335 +ipset=/luckyissue.com/gfwlist +server=/meadjohnson.com.tw/127.0.0.1#5335 +ipset=/meadjohnson.com.tw/gfwlist +server=/meadjohnson.com.hk/127.0.0.1#5335 +ipset=/meadjohnson.com.hk/gfwlist +server=/meadjohnson.com/127.0.0.1#5335 +ipset=/meadjohnson.com/gfwlist +server=/lysol.ca/127.0.0.1#5335 +ipset=/lysol.ca/gfwlist +server=/finishwin.be/127.0.0.1#5335 +ipset=/finishwin.be/gfwlist +server=/cheapdrdrebeatsca.com/127.0.0.1#5335 +ipset=/cheapdrdrebeatsca.com/gfwlist +server=/epochtimeshk.org/127.0.0.1#5335 +ipset=/epochtimeshk.org/gfwlist +server=/finishinfo.ru/127.0.0.1#5335 +ipset=/finishinfo.ru/gfwlist +server=/volvotrucks.md/127.0.0.1#5335 +ipset=/volvotrucks.md/gfwlist +server=/beatsfranceofficiel.com/127.0.0.1#5335 +ipset=/beatsfranceofficiel.com/gfwlist +server=/azuremarketplace.microsoft.com/127.0.0.1#5335 +ipset=/azuremarketplace.microsoft.com/gfwlist +server=/wiisports.com/127.0.0.1#5335 +ipset=/wiisports.com/gfwlist +server=/finishinfo.fi/127.0.0.1#5335 +ipset=/finishinfo.fi/gfwlist +server=/finishinfo.cz/127.0.0.1#5335 +ipset=/finishinfo.cz/gfwlist +server=/scholar.google.co.za/127.0.0.1#5335 +ipset=/scholar.google.co.za/gfwlist +server=/12diasderegalosdeitunes.co.ve/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.co.ve/gfwlist +server=/cheapbeatsheadphone2014.com/127.0.0.1#5335 +ipset=/cheapbeatsheadphone2014.com/gfwlist +server=/finishinfo.com.ar/127.0.0.1#5335 +ipset=/finishinfo.com.ar/gfwlist +server=/appleone.community/127.0.0.1#5335 +ipset=/appleone.community/gfwlist +server=/saynow.com/127.0.0.1#5335 +ipset=/saynow.com/gfwlist +server=/finishinfo.cl/127.0.0.1#5335 +ipset=/finishinfo.cl/gfwlist +server=/fcfacebook.com/127.0.0.1#5335 +ipset=/fcfacebook.com/gfwlist +server=/x99av.com/127.0.0.1#5335 +ipset=/x99av.com/gfwlist +server=/uuk28.com/127.0.0.1#5335 +ipset=/uuk28.com/gfwlist +server=/finishdishwashing.com/127.0.0.1#5335 +ipset=/finishdishwashing.com/gfwlist +server=/nflxvideo.net/127.0.0.1#5335 +ipset=/nflxvideo.net/gfwlist +server=/riot-games.com/127.0.0.1#5335 +ipset=/riot-games.com/gfwlist +server=/finishdishwashing.ca/127.0.0.1#5335 +ipset=/finishdishwashing.ca/gfwlist +server=/vanish.co.in/127.0.0.1#5335 +ipset=/vanish.co.in/gfwlist +server=/finisharabia.com/127.0.0.1#5335 +ipset=/finisharabia.com/gfwlist +server=/finish.sk/127.0.0.1#5335 +ipset=/finish.sk/gfwlist +server=/bmwchampionship.com/127.0.0.1#5335 +ipset=/bmwchampionship.com/gfwlist +server=/pearsonschoolsandfecolleges.co.uk/127.0.0.1#5335 +ipset=/pearsonschoolsandfecolleges.co.uk/gfwlist +server=/googleplus.com/127.0.0.1#5335 +ipset=/googleplus.com/gfwlist +server=/finish.pl/127.0.0.1#5335 +ipset=/finish.pl/gfwlist +server=/youtube.me/127.0.0.1#5335 +ipset=/youtube.me/gfwlist +server=/google.com.ni/127.0.0.1#5335 +ipset=/google.com.ni/gfwlist +server=/finish.fr/127.0.0.1#5335 +ipset=/finish.fr/gfwlist +server=/finish.es/127.0.0.1#5335 +ipset=/finish.es/gfwlist +server=/wsj.com/127.0.0.1#5335 +ipset=/wsj.com/gfwlist +server=/sony.ca/127.0.0.1#5335 +ipset=/sony.ca/gfwlist +server=/facebookflow.com/127.0.0.1#5335 +ipset=/facebookflow.com/gfwlist +server=/pearsonclinical.eu/127.0.0.1#5335 +ipset=/pearsonclinical.eu/gfwlist +server=/facebook.se/127.0.0.1#5335 +ipset=/facebook.se/gfwlist +server=/enfa.com.vn/127.0.0.1#5335 +ipset=/enfa.com.vn/gfwlist +server=/vmworld2013.com/127.0.0.1#5335 +ipset=/vmworld2013.com/gfwlist +server=/finish.co.nz/127.0.0.1#5335 +ipset=/finish.co.nz/gfwlist +server=/sandisk.id/127.0.0.1#5335 +ipset=/sandisk.id/gfwlist +server=/finish.at/127.0.0.1#5335 +ipset=/finish.at/gfwlist +server=/nutramigen.pl/127.0.0.1#5335 +ipset=/nutramigen.pl/gfwlist +server=/intel.gy/127.0.0.1#5335 +ipset=/intel.gy/gfwlist +server=/myshopify.com/127.0.0.1#5335 +ipset=/myshopify.com/gfwlist +server=/12diasderegalosdeitunes.co/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.co/gfwlist +server=/enspireformula.com/127.0.0.1#5335 +ipset=/enspireformula.com/gfwlist +server=/enfasmart.com/127.0.0.1#5335 +ipset=/enfasmart.com/gfwlist +server=/google.mk/127.0.0.1#5335 +ipset=/google.mk/gfwlist +server=/enfamil.pt/127.0.0.1#5335 +ipset=/enfamil.pt/gfwlist +server=/drdrebeatsforu.com/127.0.0.1#5335 +ipset=/drdrebeatsforu.com/gfwlist +server=/stadia.dev/127.0.0.1#5335 +ipset=/stadia.dev/gfwlist +server=/enfamil.com/127.0.0.1#5335 +ipset=/enfamil.com/gfwlist +server=/bmw-ottawa.ca/127.0.0.1#5335 +ipset=/bmw-ottawa.ca/gfwlist +server=/enfamama.com.ar/127.0.0.1#5335 +ipset=/enfamama.com.ar/gfwlist +server=/enfagrow.com.sg/127.0.0.1#5335 +ipset=/enfagrow.com.sg/gfwlist +server=/beatsbydrdre-online.com/127.0.0.1#5335 +ipset=/beatsbydrdre-online.com/gfwlist +server=/draftjs.org/127.0.0.1#5335 +ipset=/draftjs.org/gfwlist +server=/enfagrow.com.bn/127.0.0.1#5335 +ipset=/enfagrow.com.bn/gfwlist +server=/ieee-sensors.org/127.0.0.1#5335 +ipset=/ieee-sensors.org/gfwlist +server=/soso7778.com/127.0.0.1#5335 +ipset=/soso7778.com/gfwlist +server=/nike.hk/127.0.0.1#5335 +ipset=/nike.hk/gfwlist +server=/enfabebe3.com.ar/127.0.0.1#5335 +ipset=/enfabebe3.com.ar/gfwlist +server=/cloudcredibility.com/127.0.0.1#5335 +ipset=/cloudcredibility.com/gfwlist +server=/mongodb.org/127.0.0.1#5335 +ipset=/mongodb.org/gfwlist +server=/enfabebe.com.ve/127.0.0.1#5335 +ipset=/enfabebe.com.ve/gfwlist +server=/pki-poste.ch/127.0.0.1#5335 +ipset=/pki-poste.ch/gfwlist +server=/enfabebe.com.pe/127.0.0.1#5335 +ipset=/enfabebe.com.pe/gfwlist +server=/enfabebe.com.co/127.0.0.1#5335 +ipset=/enfabebe.com.co/gfwlist +server=/enfabebe.com.br/127.0.0.1#5335 +ipset=/enfabebe.com.br/gfwlist +server=/mailonsunday.co.uk/127.0.0.1#5335 +ipset=/mailonsunday.co.uk/gfwlist +server=/enfababy.com/127.0.0.1#5335 +ipset=/enfababy.com/gfwlist +server=/avfox.cc/127.0.0.1#5335 +ipset=/avfox.cc/gfwlist +server=/amerikiskhma.com/127.0.0.1#5335 +ipset=/amerikiskhma.com/gfwlist +server=/icloudos.net/127.0.0.1#5335 +ipset=/icloudos.net/gfwlist +server=/enfaaplus.com/127.0.0.1#5335 +ipset=/enfaaplus.com/gfwlist +server=/enfa.co.id/127.0.0.1#5335 +ipset=/enfa.co.id/gfwlist +server=/bebepremium3.com.bo/127.0.0.1#5335 +ipset=/bebepremium3.com.bo/gfwlist +server=/nikey.com/127.0.0.1#5335 +ipset=/nikey.com/gfwlist +server=/trydurex.net/127.0.0.1#5335 +ipset=/trydurex.net/gfwlist +server=/playbydurex.com/127.0.0.1#5335 +ipset=/playbydurex.com/gfwlist +server=/sciencemag.org/127.0.0.1#5335 +ipset=/sciencemag.org/gfwlist +server=/mypearson.com/127.0.0.1#5335 +ipset=/mypearson.com/gfwlist +server=/brandeasygo.com/127.0.0.1#5335 +ipset=/brandeasygo.com/gfwlist +server=/nintendo.com.pt/127.0.0.1#5335 +ipset=/nintendo.com.pt/gfwlist +server=/pavpal.com/127.0.0.1#5335 +ipset=/pavpal.com/gfwlist +server=/mhshosting.com/127.0.0.1#5335 +ipset=/mhshosting.com/gfwlist +server=/sony.com.do/127.0.0.1#5335 +ipset=/sony.com.do/gfwlist +server=/firestone.com.co/127.0.0.1#5335 +ipset=/firestone.com.co/gfwlist +server=/durexloveclub.com/127.0.0.1#5335 +ipset=/durexloveclub.com/gfwlist +server=/durexindia.com/127.0.0.1#5335 +ipset=/durexindia.com/gfwlist +server=/picknicekicks.net/127.0.0.1#5335 +ipset=/picknicekicks.net/gfwlist +server=/durexchina.com/127.0.0.1#5335 +ipset=/durexchina.com/gfwlist +server=/durexcam.com/127.0.0.1#5335 +ipset=/durexcam.com/gfwlist +server=/bloombergindices.com/127.0.0.1#5335 +ipset=/bloombergindices.com/gfwlist +server=/cheap-nike.com/127.0.0.1#5335 +ipset=/cheap-nike.com/gfwlist +server=/durex.us/127.0.0.1#5335 +ipset=/durex.us/gfwlist +server=/epochshop.com/127.0.0.1#5335 +ipset=/epochshop.com/gfwlist +server=/inteleventexpress.com/127.0.0.1#5335 +ipset=/inteleventexpress.com/gfwlist +server=/orl.ly/127.0.0.1#5335 +ipset=/orl.ly/gfwlist +server=/nikeshoemarket.com/127.0.0.1#5335 +ipset=/nikeshoemarket.com/gfwlist +server=/bmw-motorrad.ua/127.0.0.1#5335 +ipset=/bmw-motorrad.ua/gfwlist +server=/durex.ro/127.0.0.1#5335 +ipset=/durex.ro/gfwlist +server=/ebaystyle.com/127.0.0.1#5335 +ipset=/ebaystyle.com/gfwlist +server=/durex.pl/127.0.0.1#5335 +ipset=/durex.pl/gfwlist +server=/media-rockstargames-com.akamaized.net/127.0.0.1#5335 +ipset=/media-rockstargames-com.akamaized.net/gfwlist +server=/scholar.google.com.hk/127.0.0.1#5335 +ipset=/scholar.google.com.hk/gfwlist +server=/durex.nl/127.0.0.1#5335 +ipset=/durex.nl/gfwlist +server=/mansionglobal.com/127.0.0.1#5335 +ipset=/mansionglobal.com/gfwlist +server=/durex.mx/127.0.0.1#5335 +ipset=/durex.mx/gfwlist +server=/cheapbeatsdrdresolo.com/127.0.0.1#5335 +ipset=/cheapbeatsdrdresolo.com/gfwlist +server=/macbookpro.net/127.0.0.1#5335 +ipset=/macbookpro.net/gfwlist +server=/durex.it/127.0.0.1#5335 +ipset=/durex.it/gfwlist +server=/veet.com.ar/127.0.0.1#5335 +ipset=/veet.com.ar/gfwlist +server=/durex.hu/127.0.0.1#5335 +ipset=/durex.hu/gfwlist +server=/durex.fr/127.0.0.1#5335 +ipset=/durex.fr/gfwlist +server=/jquerymobile.com/127.0.0.1#5335 +ipset=/jquerymobile.com/gfwlist +server=/durex.fi/127.0.0.1#5335 +ipset=/durex.fi/gfwlist +server=/durex.ee/127.0.0.1#5335 +ipset=/durex.ee/gfwlist +server=/youtube.be/127.0.0.1#5335 +ipset=/youtube.be/gfwlist +server=/mini.com.pa/127.0.0.1#5335 +ipset=/mini.com.pa/gfwlist +server=/steamstore-a.akamaihd.net/127.0.0.1#5335 +ipset=/steamstore-a.akamaihd.net/gfwlist +server=/bestbhy.com/127.0.0.1#5335 +ipset=/bestbhy.com/gfwlist +server=/deno.land/127.0.0.1#5335 +ipset=/deno.land/gfwlist +server=/durex.de/127.0.0.1#5335 +ipset=/durex.de/gfwlist +server=/bmwcitychallenge.com/127.0.0.1#5335 +ipset=/bmwcitychallenge.com/gfwlist +server=/durex.com.pk/127.0.0.1#5335 +ipset=/durex.com.pk/gfwlist +server=/vfsco.fr/127.0.0.1#5335 +ipset=/vfsco.fr/gfwlist +server=/durex.com.ph/127.0.0.1#5335 +ipset=/durex.com.ph/gfwlist +server=/durex.com.ng/127.0.0.1#5335 +ipset=/durex.com.ng/gfwlist +server=/reckittprofessional.com/127.0.0.1#5335 +ipset=/reckittprofessional.com/gfwlist +server=/durex.com.co/127.0.0.1#5335 +ipset=/durex.com.co/gfwlist +server=/durex.com.bd/127.0.0.1#5335 +ipset=/durex.com.bd/gfwlist +server=/yahoo.de/127.0.0.1#5335 +ipset=/yahoo.de/gfwlist +server=/bongacams.com/127.0.0.1#5335 +ipset=/bongacams.com/gfwlist +server=/microsoft.pt/127.0.0.1#5335 +ipset=/microsoft.pt/gfwlist +server=/ie8.co/127.0.0.1#5335 +ipset=/ie8.co/gfwlist +server=/durex.co.uk/127.0.0.1#5335 +ipset=/durex.co.uk/gfwlist +server=/durex.co.nz/127.0.0.1#5335 +ipset=/durex.co.nz/gfwlist +server=/cncrivals.com/127.0.0.1#5335 +ipset=/cncrivals.com/gfwlist +server=/durex.co.id/127.0.0.1#5335 +ipset=/durex.co.id/gfwlist +server=/masterclass.com/127.0.0.1#5335 +ipset=/masterclass.com/gfwlist +server=/cloudlive.com/127.0.0.1#5335 +ipset=/cloudlive.com/gfwlist +server=/durex.be/127.0.0.1#5335 +ipset=/durex.be/gfwlist +server=/durex.at/127.0.0.1#5335 +ipset=/durex.at/gfwlist +server=/durex-slovenia.si/127.0.0.1#5335 +ipset=/durex-slovenia.si/gfwlist +server=/aerogard.com.au/127.0.0.1#5335 +ipset=/aerogard.com.au/gfwlist +server=/dotherex.com/127.0.0.1#5335 +ipset=/dotherex.com/gfwlist +server=/youtube.hr/127.0.0.1#5335 +ipset=/youtube.hr/gfwlist +server=/durex.se/127.0.0.1#5335 +ipset=/durex.se/gfwlist +server=/beatsbydreaustralia-sale.com/127.0.0.1#5335 +ipset=/beatsbydreaustralia-sale.com/gfwlist +server=/macruby.com/127.0.0.1#5335 +ipset=/macruby.com/gfwlist +server=/windows.nl/127.0.0.1#5335 +ipset=/windows.nl/gfwlist +server=/instagramtakipcisatinal.net/127.0.0.1#5335 +ipset=/instagramtakipcisatinal.net/gfwlist +server=/dettolcleannaija.com/127.0.0.1#5335 +ipset=/dettolcleannaija.com/gfwlist +server=/dettol.ru/127.0.0.1#5335 +ipset=/dettol.ru/gfwlist +server=/volvobuses.co.za/127.0.0.1#5335 +ipset=/volvobuses.co.za/gfwlist +server=/gameroom.com/127.0.0.1#5335 +ipset=/gameroom.com/gfwlist +server=/dettol.pl/127.0.0.1#5335 +ipset=/dettol.pl/gfwlist +server=/maxis.com/127.0.0.1#5335 +ipset=/maxis.com/gfwlist +server=/vmware-cloudmanagement.com/127.0.0.1#5335 +ipset=/vmware-cloudmanagement.com/gfwlist +server=/dettol.nl/127.0.0.1#5335 +ipset=/dettol.nl/gfwlist +server=/dettol.net/127.0.0.1#5335 +ipset=/dettol.net/gfwlist +server=/dettol.ie/127.0.0.1#5335 +ipset=/dettol.ie/gfwlist +server=/dettol.fr/127.0.0.1#5335 +ipset=/dettol.fr/gfwlist +server=/theepochtimes.com/127.0.0.1#5335 +ipset=/theepochtimes.com/gfwlist +server=/paypalinsuranceservices.org/127.0.0.1#5335 +ipset=/paypalinsuranceservices.org/gfwlist +server=/fast.com/127.0.0.1#5335 +ipset=/fast.com/gfwlist +server=/pearson.com.ar/127.0.0.1#5335 +ipset=/pearson.com.ar/gfwlist +server=/dettol.com.sg/127.0.0.1#5335 +ipset=/dettol.com.sg/gfwlist +server=/hkgpao.com/127.0.0.1#5335 +ipset=/hkgpao.com/gfwlist +server=/connectedcommerce.com/127.0.0.1#5335 +ipset=/connectedcommerce.com/gfwlist +server=/apple.xn--fiqs8s/127.0.0.1#5335 +ipset=/apple.xn--fiqs8s/gfwlist +server=/dettol.com.ng/127.0.0.1#5335 +ipset=/dettol.com.ng/gfwlist +server=/dettol.com.hk/127.0.0.1#5335 +ipset=/dettol.com.hk/gfwlist +server=/dettol.com.eg/127.0.0.1#5335 +ipset=/dettol.com.eg/gfwlist +server=/dettol.com.br/127.0.0.1#5335 +ipset=/dettol.com.br/gfwlist +server=/yahoo.com.ec/127.0.0.1#5335 +ipset=/yahoo.com.ec/gfwlist +server=/visagiftcard.us/127.0.0.1#5335 +ipset=/visagiftcard.us/gfwlist +server=/dettol.com.bd/127.0.0.1#5335 +ipset=/dettol.com.bd/gfwlist +server=/vanitaonline.com/127.0.0.1#5335 +ipset=/vanitaonline.com/gfwlist +server=/dettol.com/127.0.0.1#5335 +ipset=/dettol.com/gfwlist +server=/intelinsight.com/127.0.0.1#5335 +ipset=/intelinsight.com/gfwlist +server=/dettol.co.uk/127.0.0.1#5335 +ipset=/dettol.co.uk/gfwlist +server=/justmysocks4.net/127.0.0.1#5335 +ipset=/justmysocks4.net/gfwlist +server=/xboxone.com/127.0.0.1#5335 +ipset=/xboxone.com/gfwlist +server=/workspaceone.com/127.0.0.1#5335 +ipset=/workspaceone.com/gfwlist +server=/dettol.co.in/127.0.0.1#5335 +ipset=/dettol.co.in/gfwlist +server=/dettol.co.id/127.0.0.1#5335 +ipset=/dettol.co.id/gfwlist +server=/alphabet.lt/127.0.0.1#5335 +ipset=/alphabet.lt/gfwlist +server=/yt.be/127.0.0.1#5335 +ipset=/yt.be/gfwlist +server=/dettol.at/127.0.0.1#5335 +ipset=/dettol.at/gfwlist +server=/ac-pocketcamp.com/127.0.0.1#5335 +ipset=/ac-pocketcamp.com/gfwlist +server=/scholar.google.com.do/127.0.0.1#5335 +ipset=/scholar.google.com.do/gfwlist +server=/darwinsourcecode.com/127.0.0.1#5335 +ipset=/darwinsourcecode.com/gfwlist +server=/hsxhr.cc/127.0.0.1#5335 +ipset=/hsxhr.cc/gfwlist +server=/dettol-prize.com/127.0.0.1#5335 +ipset=/dettol-prize.com/gfwlist +server=/crit-staging.com/127.0.0.1#5335 +ipset=/crit-staging.com/gfwlist +server=/blogspot.ca/127.0.0.1#5335 +ipset=/blogspot.ca/gfwlist +server=/calgoncarbon.com/127.0.0.1#5335 +ipset=/calgoncarbon.com/gfwlist +server=/bmw.uz/127.0.0.1#5335 +ipset=/bmw.uz/gfwlist +server=/facebookshop.com/127.0.0.1#5335 +ipset=/facebookshop.com/gfwlist +server=/calgon.tv/127.0.0.1#5335 +ipset=/calgon.tv/gfwlist +server=/yahoo.com.ag/127.0.0.1#5335 +ipset=/yahoo.com.ag/gfwlist +server=/motorshowblog.com/127.0.0.1#5335 +ipset=/motorshowblog.com/gfwlist +server=/calgon.nl/127.0.0.1#5335 +ipset=/calgon.nl/gfwlist +server=/ciscocontest.com/127.0.0.1#5335 +ipset=/ciscocontest.com/gfwlist +server=/calgon.ie/127.0.0.1#5335 +ipset=/calgon.ie/gfwlist +server=/nike0594.com/127.0.0.1#5335 +ipset=/nike0594.com/gfwlist +server=/calgon.es/127.0.0.1#5335 +ipset=/calgon.es/gfwlist +server=/calgon.de/127.0.0.1#5335 +ipset=/calgon.de/gfwlist +server=/supermariogalaxy.com/127.0.0.1#5335 +ipset=/supermariogalaxy.com/gfwlist +server=/facebookswagemea.com/127.0.0.1#5335 +ipset=/facebookswagemea.com/gfwlist +server=/seagroup.com/127.0.0.1#5335 +ipset=/seagroup.com/gfwlist +server=/calgon.co.uk/127.0.0.1#5335 +ipset=/calgon.co.uk/gfwlist +server=/nikekid.com/127.0.0.1#5335 +ipset=/nikekid.com/gfwlist +server=/beatbydrekopen.com/127.0.0.1#5335 +ipset=/beatbydrekopen.com/gfwlist +server=/calgon.be/127.0.0.1#5335 +ipset=/calgon.be/gfwlist +server=/infowarsmedia.com/127.0.0.1#5335 +ipset=/infowarsmedia.com/gfwlist +server=/qr.ae/127.0.0.1#5335 +ipset=/qr.ae/gfwlist +server=/calgon.at/127.0.0.1#5335 +ipset=/calgon.at/gfwlist +server=/airwickarabia.com/127.0.0.1#5335 +ipset=/airwickarabia.com/gfwlist +server=/akamaietpcnctest.com/127.0.0.1#5335 +ipset=/akamaietpcnctest.com/gfwlist +server=/airwick.tv/127.0.0.1#5335 +ipset=/airwick.tv/gfwlist +server=/pearson-schule.ch/127.0.0.1#5335 +ipset=/pearson-schule.ch/gfwlist +server=/airwick.ru/127.0.0.1#5335 +ipset=/airwick.ru/gfwlist +server=/nowe.com/127.0.0.1#5335 +ipset=/nowe.com/gfwlist +server=/amazon.com.mx/127.0.0.1#5335 +ipset=/amazon.com.mx/gfwlist +server=/nvidia.no/127.0.0.1#5335 +ipset=/nvidia.no/gfwlist +server=/nikeshoponline.com/127.0.0.1#5335 +ipset=/nikeshoponline.com/gfwlist +server=/informs.org/127.0.0.1#5335 +ipset=/informs.org/gfwlist +server=/mcdonalds.ca/127.0.0.1#5335 +ipset=/mcdonalds.ca/gfwlist +server=/airwick.nl/127.0.0.1#5335 +ipset=/airwick.nl/gfwlist +server=/airwick.net/127.0.0.1#5335 +ipset=/airwick.net/gfwlist +server=/imperial.insendi.com/127.0.0.1#5335 +ipset=/imperial.insendi.com/gfwlist +server=/airwick.it/127.0.0.1#5335 +ipset=/airwick.it/gfwlist +server=/airwick.ie/127.0.0.1#5335 +ipset=/airwick.ie/gfwlist +server=/pugpig-stage.com/127.0.0.1#5335 +ipset=/pugpig-stage.com/gfwlist +server=/niosii.net/127.0.0.1#5335 +ipset=/niosii.net/gfwlist +server=/xboxgamestudios.com/127.0.0.1#5335 +ipset=/xboxgamestudios.com/gfwlist +server=/bmwgroupdesignworks.com/127.0.0.1#5335 +ipset=/bmwgroupdesignworks.com/gfwlist +server=/nintendo.tw/127.0.0.1#5335 +ipset=/nintendo.tw/gfwlist +server=/airwick.fr/127.0.0.1#5335 +ipset=/airwick.fr/gfwlist +server=/redzonechannel.com/127.0.0.1#5335 +ipset=/redzonechannel.com/gfwlist +server=/vilavpn3.xyz/127.0.0.1#5335 +ipset=/vilavpn3.xyz/gfwlist +server=/mywaytopay.info/127.0.0.1#5335 +ipset=/mywaytopay.info/gfwlist +server=/amazonaws-china.com/127.0.0.1#5335 +ipset=/amazonaws-china.com/gfwlist +server=/geraldoatlarge.com/127.0.0.1#5335 +ipset=/geraldoatlarge.com/gfwlist +server=/screens-lab.jp/127.0.0.1#5335 +ipset=/screens-lab.jp/gfwlist +server=/kanzhongguo.eu/127.0.0.1#5335 +ipset=/kanzhongguo.eu/gfwlist +server=/visa.com.ar/127.0.0.1#5335 +ipset=/visa.com.ar/gfwlist +server=/airwick.cz/127.0.0.1#5335 +ipset=/airwick.cz/gfwlist +server=/airwick.com.tr/127.0.0.1#5335 +ipset=/airwick.com.tr/gfwlist +server=/airwick.com.mx/127.0.0.1#5335 +ipset=/airwick.com.mx/gfwlist +server=/airwick.com/127.0.0.1#5335 +ipset=/airwick.com/gfwlist +server=/disneymagicmoments.pl/127.0.0.1#5335 +ipset=/disneymagicmoments.pl/gfwlist +server=/alfera.com.hk/127.0.0.1#5335 +ipset=/alfera.com.hk/gfwlist +server=/manoramaonline.com/127.0.0.1#5335 +ipset=/manoramaonline.com/gfwlist +server=/tex-talk.net/127.0.0.1#5335 +ipset=/tex-talk.net/gfwlist +server=/airwick.co.za/127.0.0.1#5335 +ipset=/airwick.co.za/gfwlist +server=/xhcdn.com/127.0.0.1#5335 +ipset=/xhcdn.com/gfwlist +server=/airwick.co.nz/127.0.0.1#5335 +ipset=/airwick.co.nz/gfwlist +server=/airwick.co.in/127.0.0.1#5335 +ipset=/airwick.co.in/gfwlist +server=/oxfordclinicalpsych.com/127.0.0.1#5335 +ipset=/oxfordclinicalpsych.com/gfwlist +server=/telegra.ph/127.0.0.1#5335 +ipset=/telegra.ph/gfwlist +server=/yahoo.com.na/127.0.0.1#5335 +ipset=/yahoo.com.na/gfwlist +server=/airwick.be/127.0.0.1#5335 +ipset=/airwick.be/gfwlist +server=/durex-shopline.com/127.0.0.1#5335 +ipset=/durex-shopline.com/gfwlist +server=/rarbgunblock.com/127.0.0.1#5335 +ipset=/rarbgunblock.com/gfwlist +server=/rarbgprx.org/127.0.0.1#5335 +ipset=/rarbgprx.org/gfwlist +server=/pearson.co.in/127.0.0.1#5335 +ipset=/pearson.co.in/gfwlist +server=/rarbggo.org/127.0.0.1#5335 +ipset=/rarbggo.org/gfwlist +server=/imac.gr/127.0.0.1#5335 +ipset=/imac.gr/gfwlist +server=/rarbg.me/127.0.0.1#5335 +ipset=/rarbg.me/gfwlist +server=/xn--qhrx81fxh2a.xn--55qx5d.hk/127.0.0.1#5335 +ipset=/xn--qhrx81fxh2a.xn--55qx5d.hk/gfwlist +server=/mcdonaldsparties.co.nz/127.0.0.1#5335 +ipset=/mcdonaldsparties.co.nz/gfwlist +server=/mcdonalds.no/127.0.0.1#5335 +ipset=/mcdonalds.no/gfwlist +server=/mcdonalds.it/127.0.0.1#5335 +ipset=/mcdonalds.it/gfwlist +server=/pppds.com/127.0.0.1#5335 +ipset=/pppds.com/gfwlist +server=/youtube.co.hu/127.0.0.1#5335 +ipset=/youtube.co.hu/gfwlist +server=/anthemgame.com/127.0.0.1#5335 +ipset=/anthemgame.com/gfwlist +server=/bcicdn.com/127.0.0.1#5335 +ipset=/bcicdn.com/gfwlist +server=/figma.com/127.0.0.1#5335 +ipset=/figma.com/gfwlist +server=/brandelectronic.com/127.0.0.1#5335 +ipset=/brandelectronic.com/gfwlist +server=/fecbook.com/127.0.0.1#5335 +ipset=/fecbook.com/gfwlist +server=/mcdonalds.co.uk/127.0.0.1#5335 +ipset=/mcdonalds.co.uk/gfwlist +server=/negozimonsterbeats.com/127.0.0.1#5335 +ipset=/negozimonsterbeats.com/gfwlist +server=/airwick.no/127.0.0.1#5335 +ipset=/airwick.no/gfwlist +server=/mingshengbao.com/127.0.0.1#5335 +ipset=/mingshengbao.com/gfwlist +server=/entrustdatacard.com/127.0.0.1#5335 +ipset=/entrustdatacard.com/gfwlist +server=/mcdindonesia.com/127.0.0.1#5335 +ipset=/mcdindonesia.com/gfwlist +server=/adobetechcomm.com/127.0.0.1#5335 +ipset=/adobetechcomm.com/gfwlist +server=/mcdelivery.com.tw/127.0.0.1#5335 +ipset=/mcdelivery.com.tw/gfwlist +server=/mcdelivery.com.sg/127.0.0.1#5335 +ipset=/mcdelivery.com.sg/gfwlist +server=/mcdelivery.com.my/127.0.0.1#5335 +ipset=/mcdelivery.com.my/gfwlist +server=/2013beatsbydrdreshop.com/127.0.0.1#5335 +ipset=/2013beatsbydrdreshop.com/gfwlist +server=/mcdelivery.co.kr/127.0.0.1#5335 +ipset=/mcdelivery.co.kr/gfwlist +server=/bmw-vancouver.ca/127.0.0.1#5335 +ipset=/bmw-vancouver.ca/gfwlist +server=/quickoffice.com/127.0.0.1#5335 +ipset=/quickoffice.com/gfwlist +server=/aboutmcdonalds.com/127.0.0.1#5335 +ipset=/aboutmcdonalds.com/gfwlist +server=/huanghuagang.org/127.0.0.1#5335 +ipset=/huanghuagang.org/gfwlist +server=/instamgram.com/127.0.0.1#5335 +ipset=/instamgram.com/gfwlist +server=/hkreadingcity.net/127.0.0.1#5335 +ipset=/hkreadingcity.net/gfwlist +server=/hkedcity.net/127.0.0.1#5335 +ipset=/hkedcity.net/gfwlist +server=/familymart.com.ph/127.0.0.1#5335 +ipset=/familymart.com.ph/gfwlist +server=/family.com.tw/127.0.0.1#5335 +ipset=/family.com.tw/gfwlist +server=/esp8266.com/127.0.0.1#5335 +ipset=/esp8266.com/gfwlist +server=/esp32.com/127.0.0.1#5335 +ipset=/esp32.com/gfwlist +server=/calgon.com.tr/127.0.0.1#5335 +ipset=/calgon.com.tr/gfwlist +server=/intelserveredge.com/127.0.0.1#5335 +ipset=/intelserveredge.com/gfwlist +server=/scholar.google.cat/127.0.0.1#5335 +ipset=/scholar.google.cat/gfwlist +server=/ieee-ims.org/127.0.0.1#5335 +ipset=/ieee-ims.org/gfwlist +server=/toolforge.org/127.0.0.1#5335 +ipset=/toolforge.org/gfwlist +server=/drebeatsoldes.com/127.0.0.1#5335 +ipset=/drebeatsoldes.com/gfwlist +server=/googlecommerce.com/127.0.0.1#5335 +ipset=/googlecommerce.com/gfwlist +server=/arcgis.com/127.0.0.1#5335 +ipset=/arcgis.com/gfwlist +server=/wiktionary.org/127.0.0.1#5335 +ipset=/wiktionary.org/gfwlist +server=/wikivoyage.org/127.0.0.1#5335 +ipset=/wikivoyage.org/gfwlist +server=/canon-emirates.ae/127.0.0.1#5335 +ipset=/canon-emirates.ae/gfwlist +server=/wikiversity.org/127.0.0.1#5335 +ipset=/wikiversity.org/gfwlist +server=/wikisource.org/127.0.0.1#5335 +ipset=/wikisource.org/gfwlist +server=/garena.tv/127.0.0.1#5335 +ipset=/garena.tv/gfwlist +server=/wikiquote.org/127.0.0.1#5335 +ipset=/wikiquote.org/gfwlist +server=/wikipedia.org/127.0.0.1#5335 +ipset=/wikipedia.org/gfwlist +server=/attbelieves.com/127.0.0.1#5335 +ipset=/attbelieves.com/gfwlist +server=/sony-semicon.co.jp/127.0.0.1#5335 +ipset=/sony-semicon.co.jp/gfwlist +server=/wikimedia.org/127.0.0.1#5335 +ipset=/wikimedia.org/gfwlist +server=/marvelpinball.com/127.0.0.1#5335 +ipset=/marvelpinball.com/gfwlist +server=/wikimediafoundation.org/127.0.0.1#5335 +ipset=/wikimediafoundation.org/gfwlist +server=/wikidata.org/127.0.0.1#5335 +ipset=/wikidata.org/gfwlist +server=/applehongkong.com/127.0.0.1#5335 +ipset=/applehongkong.com/gfwlist +server=/volvotrucks.kr/127.0.0.1#5335 +ipset=/volvotrucks.kr/gfwlist +server=/foxsports.co.ve/127.0.0.1#5335 +ipset=/foxsports.co.ve/gfwlist +server=/wikibooks.org/127.0.0.1#5335 +ipset=/wikibooks.org/gfwlist +server=/facebookmail.com/127.0.0.1#5335 +ipset=/facebookmail.com/gfwlist +server=/netflixdnstest8.com/127.0.0.1#5335 +ipset=/netflixdnstest8.com/gfwlist +server=/alphabet.at/127.0.0.1#5335 +ipset=/alphabet.at/gfwlist +server=/origin.tv/127.0.0.1#5335 +ipset=/origin.tv/gfwlist +server=/ubnw.net/127.0.0.1#5335 +ipset=/ubnw.net/gfwlist +server=/yahoo.co.in/127.0.0.1#5335 +ipset=/yahoo.co.in/gfwlist +server=/vfsco.cl/127.0.0.1#5335 +ipset=/vfsco.cl/gfwlist +server=/pinterest.tw/127.0.0.1#5335 +ipset=/pinterest.tw/gfwlist +server=/wdfiles.com/127.0.0.1#5335 +ipset=/wdfiles.com/gfwlist +server=/am730.com.hk/127.0.0.1#5335 +ipset=/am730.com.hk/gfwlist +server=/bestbuy.com/127.0.0.1#5335 +ipset=/bestbuy.com/gfwlist +server=/translatewiki.net/127.0.0.1#5335 +ipset=/translatewiki.net/gfwlist +server=/jav01.cc/127.0.0.1#5335 +ipset=/jav01.cc/gfwlist +server=/scpdb.org/127.0.0.1#5335 +ipset=/scpdb.org/gfwlist +server=/mini.fr/127.0.0.1#5335 +ipset=/mini.fr/gfwlist +server=/paypal-luxury.com/127.0.0.1#5335 +ipset=/paypal-luxury.com/gfwlist +server=/ciscoresearch.com/127.0.0.1#5335 +ipset=/ciscoresearch.com/gfwlist +server=/marketing-cloud.com/127.0.0.1#5335 +ipset=/marketing-cloud.com/gfwlist +server=/fandom.zendesk.com/127.0.0.1#5335 +ipset=/fandom.zendesk.com/gfwlist +server=/intel.com.ve/127.0.0.1#5335 +ipset=/intel.com.ve/gfwlist +server=/gu-web.net/127.0.0.1#5335 +ipset=/gu-web.net/gfwlist +server=/muthead.com/127.0.0.1#5335 +ipset=/muthead.com/gfwlist +server=/beats4outlets.com/127.0.0.1#5335 +ipset=/beats4outlets.com/gfwlist +server=/mpfinance.com/127.0.0.1#5335 +ipset=/mpfinance.com/gfwlist +server=/hbogoasia.com/127.0.0.1#5335 +ipset=/hbogoasia.com/gfwlist +server=/dndbeyond.com/127.0.0.1#5335 +ipset=/dndbeyond.com/gfwlist +server=/apple.co.jp/127.0.0.1#5335 +ipset=/apple.co.jp/gfwlist +server=/youtube.vn/127.0.0.1#5335 +ipset=/youtube.vn/gfwlist +server=/lubetube.com/127.0.0.1#5335 +ipset=/lubetube.com/gfwlist +server=/ebayinc.com/127.0.0.1#5335 +ipset=/ebayinc.com/gfwlist +server=/now-tv.com/127.0.0.1#5335 +ipset=/now-tv.com/gfwlist +server=/azuredevopslaunch.com/127.0.0.1#5335 +ipset=/azuredevopslaunch.com/gfwlist +server=/youtube.cz/127.0.0.1#5335 +ipset=/youtube.cz/gfwlist +server=/wikia.com/127.0.0.1#5335 +ipset=/wikia.com/gfwlist +server=/bmw.com.tw/127.0.0.1#5335 +ipset=/bmw.com.tw/gfwlist +server=/applestore.com.au/127.0.0.1#5335 +ipset=/applestore.com.au/gfwlist +server=/mini.ca/127.0.0.1#5335 +ipset=/mini.ca/gfwlist +server=/vanish.co.id/127.0.0.1#5335 +ipset=/vanish.co.id/gfwlist +server=/apple-livephotoskit.com/127.0.0.1#5335 +ipset=/apple-livephotoskit.com/gfwlist +server=/ssplive.pw/127.0.0.1#5335 +ipset=/ssplive.pw/gfwlist +server=/renzhe.cloud/127.0.0.1#5335 +ipset=/renzhe.cloud/gfwlist +server=/visualstudio.co.uk/127.0.0.1#5335 +ipset=/visualstudio.co.uk/gfwlist +server=/directvdealsnow.com/127.0.0.1#5335 +ipset=/directvdealsnow.com/gfwlist +server=/beatsbydreblackfriday2013.com/127.0.0.1#5335 +ipset=/beatsbydreblackfriday2013.com/gfwlist +server=/bmw-qatar.com/127.0.0.1#5335 +ipset=/bmw-qatar.com/gfwlist +server=/princeton.edu/127.0.0.1#5335 +ipset=/princeton.edu/gfwlist +server=/maying.co/127.0.0.1#5335 +ipset=/maying.co/gfwlist +server=/cloudn.me/127.0.0.1#5335 +ipset=/cloudn.me/gfwlist +server=/iotinactionevents.com/127.0.0.1#5335 +ipset=/iotinactionevents.com/gfwlist +server=/paypal.com.hk/127.0.0.1#5335 +ipset=/paypal.com.hk/gfwlist +server=/ark.to/127.0.0.1#5335 +ipset=/ark.to/gfwlist +server=/ebay.at/127.0.0.1#5335 +ipset=/ebay.at/gfwlist +server=/musicbay.net/127.0.0.1#5335 +ipset=/musicbay.net/gfwlist +server=/amytele.com/127.0.0.1#5335 +ipset=/amytele.com/gfwlist +server=/vilavpn7.xyz/127.0.0.1#5335 +ipset=/vilavpn7.xyz/gfwlist +server=/vilavpn6.xyz/127.0.0.1#5335 +ipset=/vilavpn6.xyz/gfwlist +server=/g-tvapp.com/127.0.0.1#5335 +ipset=/g-tvapp.com/gfwlist +server=/faceboop.com/127.0.0.1#5335 +ipset=/faceboop.com/gfwlist +server=/playshow.io/127.0.0.1#5335 +ipset=/playshow.io/gfwlist +server=/adobetarget.com/127.0.0.1#5335 +ipset=/adobetarget.com/gfwlist +server=/wwtbam.com/127.0.0.1#5335 +ipset=/wwtbam.com/gfwlist +server=/vilavpn5.xyz/127.0.0.1#5335 +ipset=/vilavpn5.xyz/gfwlist +server=/vilavpn4.xyz/127.0.0.1#5335 +ipset=/vilavpn4.xyz/gfwlist +server=/epoch.org.il/127.0.0.1#5335 +ipset=/epoch.org.il/gfwlist +server=/faceboob.com/127.0.0.1#5335 +ipset=/faceboob.com/gfwlist +server=/mini.cc/127.0.0.1#5335 +ipset=/mini.cc/gfwlist +server=/qualcommventures.com/127.0.0.1#5335 +ipset=/qualcommventures.com/gfwlist +server=/vilavpn1.xyz/127.0.0.1#5335 +ipset=/vilavpn1.xyz/gfwlist +server=/getpocket.com/127.0.0.1#5335 +ipset=/getpocket.com/gfwlist +server=/surflite.net/127.0.0.1#5335 +ipset=/surflite.net/gfwlist +server=/landofhope.tv/127.0.0.1#5335 +ipset=/landofhope.tv/gfwlist +server=/xn--hb4aw0g.com/127.0.0.1#5335 +ipset=/xn--hb4aw0g.com/gfwlist +server=/xn--d4ty0ojsqzfd.com/127.0.0.1#5335 +ipset=/xn--d4ty0ojsqzfd.com/gfwlist +server=/myrz.com/127.0.0.1#5335 +ipset=/myrz.com/gfwlist +server=/mininanaimo.com/127.0.0.1#5335 +ipset=/mininanaimo.com/gfwlist +server=/lolespor.com/127.0.0.1#5335 +ipset=/lolespor.com/gfwlist +server=/shadowsocks.nl/127.0.0.1#5335 +ipset=/shadowsocks.nl/gfwlist +server=/curbed.com/127.0.0.1#5335 +ipset=/curbed.com/gfwlist +server=/paofuyun.me/127.0.0.1#5335 +ipset=/paofuyun.me/gfwlist +server=/googlearth.com/127.0.0.1#5335 +ipset=/googlearth.com/gfwlist +server=/nexitcore.com/127.0.0.1#5335 +ipset=/nexitcore.com/gfwlist +server=/mastercardcenterforinclusivegrowth.org/127.0.0.1#5335 +ipset=/mastercardcenterforinclusivegrowth.org/gfwlist +server=/minipetfriendly.com/127.0.0.1#5335 +ipset=/minipetfriendly.com/gfwlist +server=/nexitallysafe.com/127.0.0.1#5335 +ipset=/nexitallysafe.com/gfwlist +server=/pokedex3d.com/127.0.0.1#5335 +ipset=/pokedex3d.com/gfwlist +server=/aboutyourmini.com/127.0.0.1#5335 +ipset=/aboutyourmini.com/gfwlist +server=/snapkit.co/127.0.0.1#5335 +ipset=/snapkit.co/gfwlist +server=/n3ro.lol/127.0.0.1#5335 +ipset=/n3ro.lol/gfwlist +server=/sandisk.es/127.0.0.1#5335 +ipset=/sandisk.es/gfwlist +server=/cloudlock.com/127.0.0.1#5335 +ipset=/cloudlock.com/gfwlist +server=/justmysocks2.net/127.0.0.1#5335 +ipset=/justmysocks2.net/gfwlist +server=/kindle.jp/127.0.0.1#5335 +ipset=/kindle.jp/gfwlist +server=/ubisoft-uplay-savegames.s3.amazonaws.com/127.0.0.1#5335 +ipset=/ubisoft-uplay-savegames.s3.amazonaws.com/gfwlist +server=/justmysocks.net/127.0.0.1#5335 +ipset=/justmysocks.net/gfwlist +server=/xn--90wwvt03e.com/127.0.0.1#5335 +ipset=/xn--90wwvt03e.com/gfwlist +server=/javlibrary.com/127.0.0.1#5335 +ipset=/javlibrary.com/gfwlist +server=/safechat.com/127.0.0.1#5335 +ipset=/safechat.com/gfwlist +server=/nikestore.com.au/127.0.0.1#5335 +ipset=/nikestore.com.au/gfwlist +server=/duckside.com/127.0.0.1#5335 +ipset=/duckside.com/gfwlist +server=/duyaossr.com/127.0.0.1#5335 +ipset=/duyaossr.com/gfwlist +server=/duyaoss.com/127.0.0.1#5335 +ipset=/duyaoss.com/gfwlist +server=/paypal-galactic.com/127.0.0.1#5335 +ipset=/paypal-galactic.com/gfwlist +server=/scholar.google.se/127.0.0.1#5335 +ipset=/scholar.google.se/gfwlist +server=/feook.com/127.0.0.1#5335 +ipset=/feook.com/gfwlist +server=/google.td/127.0.0.1#5335 +ipset=/google.td/gfwlist +server=/dleris.best/127.0.0.1#5335 +ipset=/dleris.best/gfwlist +server=/voa.gov/127.0.0.1#5335 +ipset=/voa.gov/gfwlist +server=/vmwidm-ads.com/127.0.0.1#5335 +ipset=/vmwidm-ads.com/gfwlist +server=/beatsdremonster-uk.com/127.0.0.1#5335 +ipset=/beatsdremonster-uk.com/gfwlist +server=/notion.so/127.0.0.1#5335 +ipset=/notion.so/gfwlist +server=/masseffectarchives.com/127.0.0.1#5335 +ipset=/masseffectarchives.com/gfwlist +server=/fmcebook.com/127.0.0.1#5335 +ipset=/fmcebook.com/gfwlist +server=/beatsbydrefriday.com/127.0.0.1#5335 +ipset=/beatsbydrefriday.com/gfwlist +server=/xn--czrs0t4phtr3a.cn/127.0.0.1#5335 +ipset=/xn--czrs0t4phtr3a.cn/gfwlist +server=/dlercloud.me/127.0.0.1#5335 +ipset=/dlercloud.me/gfwlist +server=/0emm.com/127.0.0.1#5335 +ipset=/0emm.com/gfwlist +server=/callhulu.com/127.0.0.1#5335 +ipset=/callhulu.com/gfwlist +server=/cylink0122.icu/127.0.0.1#5335 +ipset=/cylink0122.icu/gfwlist +server=/rocksdb.net/127.0.0.1#5335 +ipset=/rocksdb.net/gfwlist +server=/cheapbeatsbydreoutlet-nz.com/127.0.0.1#5335 +ipset=/cheapbeatsbydreoutlet-nz.com/gfwlist +server=/cylink.pro/127.0.0.1#5335 +ipset=/cylink.pro/gfwlist +server=/nikeincchemistry.com/127.0.0.1#5335 +ipset=/nikeincchemistry.com/gfwlist +server=/krakenjs.com/127.0.0.1#5335 +ipset=/krakenjs.com/gfwlist +server=/ebaynyc.com/127.0.0.1#5335 +ipset=/ebaynyc.com/gfwlist +server=/telegram.me/127.0.0.1#5335 +ipset=/telegram.me/gfwlist +server=/mastercard.by/127.0.0.1#5335 +ipset=/mastercard.by/gfwlist +server=/boslife.net/127.0.0.1#5335 +ipset=/boslife.net/gfwlist +server=/japanesebeauties.net/127.0.0.1#5335 +ipset=/japanesebeauties.net/gfwlist +server=/boslife.biz/127.0.0.1#5335 +ipset=/boslife.biz/gfwlist +server=/zind.cloud/127.0.0.1#5335 +ipset=/zind.cloud/gfwlist +server=/volvotrucks.hk/127.0.0.1#5335 +ipset=/volvotrucks.hk/gfwlist +server=/metamind.io/127.0.0.1#5335 +ipset=/metamind.io/gfwlist +server=/google.pn/127.0.0.1#5335 +ipset=/google.pn/gfwlist +server=/yastatic.net/127.0.0.1#5335 +ipset=/yastatic.net/gfwlist +server=/foxsportsgo.com/127.0.0.1#5335 +ipset=/foxsportsgo.com/gfwlist +server=/battlefield4.com/127.0.0.1#5335 +ipset=/battlefield4.com/gfwlist +server=/pinterest.de/127.0.0.1#5335 +ipset=/pinterest.de/gfwlist +server=/yandex.tm/127.0.0.1#5335 +ipset=/yandex.tm/gfwlist +server=/yandex.tj/127.0.0.1#5335 +ipset=/yandex.tj/gfwlist +server=/beatsdrecheap.com/127.0.0.1#5335 +ipset=/beatsdrecheap.com/gfwlist +server=/walmart.com/127.0.0.1#5335 +ipset=/walmart.com/gfwlist +server=/ip.sb/127.0.0.1#5335 +ipset=/ip.sb/gfwlist +server=/nikekd.com/127.0.0.1#5335 +ipset=/nikekd.com/gfwlist +server=/yandex.net/127.0.0.1#5335 +ipset=/yandex.net/gfwlist +server=/addtoany.com/127.0.0.1#5335 +ipset=/addtoany.com/gfwlist +server=/udemy.com/127.0.0.1#5335 +ipset=/udemy.com/gfwlist +server=/atdmt2.com/127.0.0.1#5335 +ipset=/atdmt2.com/gfwlist +server=/yandex.md/127.0.0.1#5335 +ipset=/yandex.md/gfwlist +server=/playerjs.io/127.0.0.1#5335 +ipset=/playerjs.io/gfwlist +server=/yandex.lv/127.0.0.1#5335 +ipset=/yandex.lv/gfwlist +server=/yandex.kz/127.0.0.1#5335 +ipset=/yandex.kz/gfwlist +server=/yandex.kg/127.0.0.1#5335 +ipset=/yandex.kg/gfwlist +server=/epochtimes.it/127.0.0.1#5335 +ipset=/epochtimes.it/gfwlist +server=/pacifickitchenandhome.com/127.0.0.1#5335 +ipset=/pacifickitchenandhome.com/gfwlist +server=/yandex.com.tr/127.0.0.1#5335 +ipset=/yandex.com.tr/gfwlist +server=/yandex.com.ge/127.0.0.1#5335 +ipset=/yandex.com.ge/gfwlist +server=/yandex.com/127.0.0.1#5335 +ipset=/yandex.com/gfwlist +server=/ninemsn.com.au/127.0.0.1#5335 +ipset=/ninemsn.com.au/gfwlist +server=/yandex.co.il/127.0.0.1#5335 +ipset=/yandex.co.il/gfwlist +server=/yandex.by/127.0.0.1#5335 +ipset=/yandex.by/gfwlist +server=/yandex.az/127.0.0.1#5335 +ipset=/yandex.az/gfwlist +server=/wwwipodlounge.com/127.0.0.1#5335 +ipset=/wwwipodlounge.com/gfwlist +server=/yimg.jp/127.0.0.1#5335 +ipset=/yimg.jp/gfwlist +server=/yahoo.az/127.0.0.1#5335 +ipset=/yahoo.az/gfwlist +server=/scholar.google.com.sg/127.0.0.1#5335 +ipset=/scholar.google.com.sg/gfwlist +server=/xnxx.com/127.0.0.1#5335 +ipset=/xnxx.com/gfwlist +server=/goldcoastbulletin.com.au/127.0.0.1#5335 +ipset=/goldcoastbulletin.com.au/gfwlist +server=/yho.com/127.0.0.1#5335 +ipset=/yho.com/gfwlist +server=/theshoppingexpresslane.net/127.0.0.1#5335 +ipset=/theshoppingexpresslane.net/gfwlist +server=/yahoosportsbook.com/127.0.0.1#5335 +ipset=/yahoosportsbook.com/gfwlist +server=/yahoohealth.com/127.0.0.1#5335 +ipset=/yahoohealth.com/gfwlist +server=/yahoofinance.com/127.0.0.1#5335 +ipset=/yahoofinance.com/gfwlist +server=/bs-awh.ne.jp/127.0.0.1#5335 +ipset=/bs-awh.ne.jp/gfwlist +server=/clannad-movie.jp/127.0.0.1#5335 +ipset=/clannad-movie.jp/gfwlist +server=/intel.ma/127.0.0.1#5335 +ipset=/intel.ma/gfwlist +server=/paypal-referral.com/127.0.0.1#5335 +ipset=/paypal-referral.com/gfwlist +server=/hpeprintcenter.com/127.0.0.1#5335 +ipset=/hpeprintcenter.com/gfwlist +server=/yahoo.tn/127.0.0.1#5335 +ipset=/yahoo.tn/gfwlist +server=/swiftfinancial.info/127.0.0.1#5335 +ipset=/swiftfinancial.info/gfwlist +server=/yahoo.tm/127.0.0.1#5335 +ipset=/yahoo.tm/gfwlist +server=/facbebook.com/127.0.0.1#5335 +ipset=/facbebook.com/gfwlist +server=/foxdeportes.net/127.0.0.1#5335 +ipset=/foxdeportes.net/gfwlist +server=/yahoo.tk/127.0.0.1#5335 +ipset=/yahoo.tk/gfwlist +server=/foxnation.com/127.0.0.1#5335 +ipset=/foxnation.com/gfwlist +server=/scholar.google.com.ua/127.0.0.1#5335 +ipset=/scholar.google.com.ua/gfwlist +server=/app-dynamics.com/127.0.0.1#5335 +ipset=/app-dynamics.com/gfwlist +server=/yahoo.st/127.0.0.1#5335 +ipset=/yahoo.st/gfwlist +server=/iphonese.tv/127.0.0.1#5335 +ipset=/iphonese.tv/gfwlist +server=/device-manager.us/127.0.0.1#5335 +ipset=/device-manager.us/gfwlist +server=/yahoo.sm/127.0.0.1#5335 +ipset=/yahoo.sm/gfwlist +server=/bmwgroup-classic-heart.com/127.0.0.1#5335 +ipset=/bmwgroup-classic-heart.com/gfwlist +server=/yahoo.sk/127.0.0.1#5335 +ipset=/yahoo.sk/gfwlist +server=/yahoo.si/127.0.0.1#5335 +ipset=/yahoo.si/gfwlist +server=/yahoo.sg/127.0.0.1#5335 +ipset=/yahoo.sg/gfwlist +server=/yahoo.se/127.0.0.1#5335 +ipset=/yahoo.se/gfwlist +server=/cheapbeatsaustraliasale.com/127.0.0.1#5335 +ipset=/cheapbeatsaustraliasale.com/gfwlist +server=/github.com/127.0.0.1#5335 +ipset=/github.com/gfwlist +server=/appledarwin.com/127.0.0.1#5335 +ipset=/appledarwin.com/gfwlist +server=/beatsheadphonesusamall.com/127.0.0.1#5335 +ipset=/beatsheadphonesusamall.com/gfwlist +server=/ind.sh/127.0.0.1#5335 +ipset=/ind.sh/gfwlist +server=/yahoo.ru/127.0.0.1#5335 +ipset=/yahoo.ru/gfwlist +server=/yahoo.ro/127.0.0.1#5335 +ipset=/yahoo.ro/gfwlist +server=/1ucrs.com/127.0.0.1#5335 +ipset=/1ucrs.com/gfwlist +server=/nvidia.cz/127.0.0.1#5335 +ipset=/nvidia.cz/gfwlist +server=/yahoo.pn/127.0.0.1#5335 +ipset=/yahoo.pn/gfwlist +server=/yahoo.pl/127.0.0.1#5335 +ipset=/yahoo.pl/gfwlist +server=/beatsaudiobydre.com/127.0.0.1#5335 +ipset=/beatsaudiobydre.com/gfwlist +server=/yahoo.nu/127.0.0.1#5335 +ipset=/yahoo.nu/gfwlist +server=/yahoo.net/127.0.0.1#5335 +ipset=/yahoo.net/gfwlist +server=/bridgestonetyre.com.my/127.0.0.1#5335 +ipset=/bridgestonetyre.com.my/gfwlist +server=/volvotrucks.si/127.0.0.1#5335 +ipset=/volvotrucks.si/gfwlist +server=/yahoo.mx/127.0.0.1#5335 +ipset=/yahoo.mx/gfwlist +server=/ebayetc.com/127.0.0.1#5335 +ipset=/ebayetc.com/gfwlist +server=/alphabet.be/127.0.0.1#5335 +ipset=/alphabet.be/gfwlist +server=/yahoo.mk/127.0.0.1#5335 +ipset=/yahoo.mk/gfwlist +server=/igcdn.com/127.0.0.1#5335 +ipset=/igcdn.com/gfwlist +server=/yahoo.lt/127.0.0.1#5335 +ipset=/yahoo.lt/gfwlist +server=/yahoo.je/127.0.0.1#5335 +ipset=/yahoo.je/gfwlist +server=/xbox360.org/127.0.0.1#5335 +ipset=/xbox360.org/gfwlist +server=/mocloudplus.com/127.0.0.1#5335 +ipset=/mocloudplus.com/gfwlist +server=/yahoo.in/127.0.0.1#5335 +ipset=/yahoo.in/gfwlist +server=/yahoo.hr/127.0.0.1#5335 +ipset=/yahoo.hr/gfwlist +server=/yahoo.hk/127.0.0.1#5335 +ipset=/yahoo.hk/gfwlist +server=/adobejanus.com/127.0.0.1#5335 +ipset=/adobejanus.com/gfwlist +server=/yahoo.gy/127.0.0.1#5335 +ipset=/yahoo.gy/gfwlist +server=/collective99.com/127.0.0.1#5335 +ipset=/collective99.com/gfwlist +server=/yahoo.gp/127.0.0.1#5335 +ipset=/yahoo.gp/gfwlist +server=/thenationalpulse.com/127.0.0.1#5335 +ipset=/thenationalpulse.com/gfwlist +server=/bmia.org/127.0.0.1#5335 +ipset=/bmia.org/gfwlist +server=/yahoo.gm/127.0.0.1#5335 +ipset=/yahoo.gm/gfwlist +server=/yahoo.gl/127.0.0.1#5335 +ipset=/yahoo.gl/gfwlist +server=/foxsoccermatchpass.com/127.0.0.1#5335 +ipset=/foxsoccermatchpass.com/gfwlist +server=/huffingtonpost.co.uk/127.0.0.1#5335 +ipset=/huffingtonpost.co.uk/gfwlist +server=/yahoo.gg/127.0.0.1#5335 +ipset=/yahoo.gg/gfwlist +server=/blizzard.nefficient.co.kr/127.0.0.1#5335 +ipset=/blizzard.nefficient.co.kr/gfwlist +server=/huffingtonpost.it/127.0.0.1#5335 +ipset=/huffingtonpost.it/gfwlist +server=/hpuae.com/127.0.0.1#5335 +ipset=/hpuae.com/gfwlist +server=/yahoo.fm/127.0.0.1#5335 +ipset=/yahoo.fm/gfwlist +server=/dashwood360.com/127.0.0.1#5335 +ipset=/dashwood360.com/gfwlist +server=/beats-bydreuk.com/127.0.0.1#5335 +ipset=/beats-bydreuk.com/gfwlist +server=/visa.nl/127.0.0.1#5335 +ipset=/visa.nl/gfwlist +server=/printeron.com/127.0.0.1#5335 +ipset=/printeron.com/gfwlist +server=/fox38corpuschristi.com/127.0.0.1#5335 +ipset=/fox38corpuschristi.com/gfwlist +server=/embed-cdn.com/127.0.0.1#5335 +ipset=/embed-cdn.com/gfwlist +server=/yahoo.ee/127.0.0.1#5335 +ipset=/yahoo.ee/gfwlist +server=/practicalmoneyskills.ca/127.0.0.1#5335 +ipset=/practicalmoneyskills.ca/gfwlist +server=/kktv.com.tw/127.0.0.1#5335 +ipset=/kktv.com.tw/gfwlist +server=/hptouch.com/127.0.0.1#5335 +ipset=/hptouch.com/gfwlist +server=/crececonebay.com/127.0.0.1#5335 +ipset=/crececonebay.com/gfwlist +server=/yahoo.dj/127.0.0.1#5335 +ipset=/yahoo.dj/gfwlist +server=/yahoo.com.vn/127.0.0.1#5335 +ipset=/yahoo.com.vn/gfwlist +server=/yahoo.com.vc/127.0.0.1#5335 +ipset=/yahoo.com.vc/gfwlist +server=/yahoo.com.ua/127.0.0.1#5335 +ipset=/yahoo.com.ua/gfwlist +server=/msgamesresearch.com/127.0.0.1#5335 +ipset=/msgamesresearch.com/gfwlist +server=/yahoo.com.tr/127.0.0.1#5335 +ipset=/yahoo.com.tr/gfwlist +server=/instafollower.com/127.0.0.1#5335 +ipset=/instafollower.com/gfwlist +server=/yahoo.com.sv/127.0.0.1#5335 +ipset=/yahoo.com.sv/gfwlist +server=/yahoo.com.sg/127.0.0.1#5335 +ipset=/yahoo.com.sg/gfwlist +server=/who.int/127.0.0.1#5335 +ipset=/who.int/gfwlist +server=/maddenseason.info/127.0.0.1#5335 +ipset=/maddenseason.info/gfwlist +server=/embedly.com/127.0.0.1#5335 +ipset=/embedly.com/gfwlist +server=/jbe-platform.com/127.0.0.1#5335 +ipset=/jbe-platform.com/gfwlist +server=/applemalaysia.com.my/127.0.0.1#5335 +ipset=/applemalaysia.com.my/gfwlist +server=/disneymusicpromotion.com/127.0.0.1#5335 +ipset=/disneymusicpromotion.com/gfwlist +server=/yahoo.com.es/127.0.0.1#5335 +ipset=/yahoo.com.es/gfwlist +server=/yahoo.com.ph/127.0.0.1#5335 +ipset=/yahoo.com.ph/gfwlist +server=/applestore.ph/127.0.0.1#5335 +ipset=/applestore.ph/gfwlist +server=/yahoo.com.pe/127.0.0.1#5335 +ipset=/yahoo.com.pe/gfwlist +server=/pages.dev/127.0.0.1#5335 +ipset=/pages.dev/gfwlist +server=/prd-priconne-redive.akamaized.net/127.0.0.1#5335 +ipset=/prd-priconne-redive.akamaized.net/gfwlist +server=/yahoo.com.pa/127.0.0.1#5335 +ipset=/yahoo.com.pa/gfwlist +server=/openapiplatform.com/127.0.0.1#5335 +ipset=/openapiplatform.com/gfwlist +server=/paypal-apac.com/127.0.0.1#5335 +ipset=/paypal-apac.com/gfwlist +server=/get.how/127.0.0.1#5335 +ipset=/get.how/gfwlist +server=/paypal-center.com/127.0.0.1#5335 +ipset=/paypal-center.com/gfwlist +server=/iamremarkable.org/127.0.0.1#5335 +ipset=/iamremarkable.org/gfwlist +server=/yahoo.lv/127.0.0.1#5335 +ipset=/yahoo.lv/gfwlist +server=/playz.jp/127.0.0.1#5335 +ipset=/playz.jp/gfwlist +server=/yahoo.com.nf/127.0.0.1#5335 +ipset=/yahoo.com.nf/gfwlist +server=/adobecontent.io/127.0.0.1#5335 +ipset=/adobecontent.io/gfwlist +server=/airwick.ch/127.0.0.1#5335 +ipset=/airwick.ch/gfwlist +server=/mini-e.com/127.0.0.1#5335 +ipset=/mini-e.com/gfwlist +server=/yahoo.com.mt/127.0.0.1#5335 +ipset=/yahoo.com.mt/gfwlist +server=/yahoo.com.ly/127.0.0.1#5335 +ipset=/yahoo.com.ly/gfwlist +server=/yahoo.com.lb/127.0.0.1#5335 +ipset=/yahoo.com.lb/gfwlist +server=/sony.com.sg/127.0.0.1#5335 +ipset=/sony.com.sg/gfwlist +server=/yahoo.com.gt/127.0.0.1#5335 +ipset=/yahoo.com.gt/gfwlist +server=/redkix.com/127.0.0.1#5335 +ipset=/redkix.com/gfwlist +server=/ipod.pk/127.0.0.1#5335 +ipset=/ipod.pk/gfwlist +server=/pearson.com.au/127.0.0.1#5335 +ipset=/pearson.com.au/gfwlist +server=/mastercard.ie/127.0.0.1#5335 +ipset=/mastercard.ie/gfwlist +server=/bestbuy.com.mx/127.0.0.1#5335 +ipset=/bestbuy.com.mx/gfwlist +server=/ebayclassifies.com/127.0.0.1#5335 +ipset=/ebayclassifies.com/gfwlist +server=/starbucks.com.kh/127.0.0.1#5335 +ipset=/starbucks.com.kh/gfwlist +server=/microsoft.tv/127.0.0.1#5335 +ipset=/microsoft.tv/gfwlist +server=/yahoo.com.co/127.0.0.1#5335 +ipset=/yahoo.com.co/gfwlist +server=/gucci.com/127.0.0.1#5335 +ipset=/gucci.com/gfwlist +server=/thetype.com/127.0.0.1#5335 +ipset=/thetype.com/gfwlist +server=/redditstatic.com/127.0.0.1#5335 +ipset=/redditstatic.com/gfwlist +server=/2014cheapbeatsbydre.com/127.0.0.1#5335 +ipset=/2014cheapbeatsbydre.com/gfwlist +server=/yahoo.com.bz/127.0.0.1#5335 +ipset=/yahoo.com.bz/gfwlist +server=/minivilledequebec.ca/127.0.0.1#5335 +ipset=/minivilledequebec.ca/gfwlist +server=/yahoo.com.br/127.0.0.1#5335 +ipset=/yahoo.com.br/gfwlist +server=/attwirelessinternet.com/127.0.0.1#5335 +ipset=/attwirelessinternet.com/gfwlist +server=/yahoo.com.au/127.0.0.1#5335 +ipset=/yahoo.com.au/gfwlist +server=/yahoo.com.ar/127.0.0.1#5335 +ipset=/yahoo.com.ar/gfwlist +server=/translatetheweb.com/127.0.0.1#5335 +ipset=/translatetheweb.com/gfwlist +server=/yahoo.com.ai/127.0.0.1#5335 +ipset=/yahoo.com.ai/gfwlist +server=/calgon.ru/127.0.0.1#5335 +ipset=/calgon.ru/gfwlist +server=/scitation.org/127.0.0.1#5335 +ipset=/scitation.org/gfwlist +server=/brands098.com/127.0.0.1#5335 +ipset=/brands098.com/gfwlist +server=/pnas.org/127.0.0.1#5335 +ipset=/pnas.org/gfwlist +server=/yahoo.co.za/127.0.0.1#5335 +ipset=/yahoo.co.za/gfwlist +server=/wiiugamepad.com/127.0.0.1#5335 +ipset=/wiiugamepad.com/gfwlist +server=/futureofbusinesssurvey.org/127.0.0.1#5335 +ipset=/futureofbusinesssurvey.org/gfwlist +server=/uproxy.org/127.0.0.1#5335 +ipset=/uproxy.org/gfwlist +server=/adobedemo.com/127.0.0.1#5335 +ipset=/adobedemo.com/gfwlist +server=/intel.cu/127.0.0.1#5335 +ipset=/intel.cu/gfwlist +server=/volvobuses.us/127.0.0.1#5335 +ipset=/volvobuses.us/gfwlist +server=/herokucharge.com/127.0.0.1#5335 +ipset=/herokucharge.com/gfwlist +server=/nikereuseashoe.com/127.0.0.1#5335 +ipset=/nikereuseashoe.com/gfwlist +server=/bmw-motorrad.gr/127.0.0.1#5335 +ipset=/bmw-motorrad.gr/gfwlist +server=/volvotrucks.com.pt/127.0.0.1#5335 +ipset=/volvotrucks.com.pt/gfwlist +server=/yahoo.co.uz/127.0.0.1#5335 +ipset=/yahoo.co.uz/gfwlist +server=/yahoo.co.uk/127.0.0.1#5335 +ipset=/yahoo.co.uk/gfwlist +server=/yahoo.co.tz/127.0.0.1#5335 +ipset=/yahoo.co.tz/gfwlist +server=/yahoo.co.th/127.0.0.1#5335 +ipset=/yahoo.co.th/gfwlist +server=/yahoo.co.nz/127.0.0.1#5335 +ipset=/yahoo.co.nz/gfwlist +server=/mingpaovan.com/127.0.0.1#5335 +ipset=/mingpaovan.com/gfwlist +server=/itunesradio.tw/127.0.0.1#5335 +ipset=/itunesradio.tw/gfwlist +server=/1degree.com.au/127.0.0.1#5335 +ipset=/1degree.com.au/gfwlist +server=/nikeplus.org/127.0.0.1#5335 +ipset=/nikeplus.org/gfwlist +server=/yahoo.co.kr/127.0.0.1#5335 +ipset=/yahoo.co.kr/gfwlist +server=/wikidot.com/127.0.0.1#5335 +ipset=/wikidot.com/gfwlist +server=/volvobuses.kr/127.0.0.1#5335 +ipset=/volvobuses.kr/gfwlist +server=/yahoo.co.id/127.0.0.1#5335 +ipset=/yahoo.co.id/gfwlist +server=/firestone.co.cr/127.0.0.1#5335 +ipset=/firestone.co.cr/gfwlist +server=/yahoo.co.cr/127.0.0.1#5335 +ipset=/yahoo.co.cr/gfwlist +server=/intel.nz/127.0.0.1#5335 +ipset=/intel.nz/gfwlist +server=/officialdrdre.com/127.0.0.1#5335 +ipset=/officialdrdre.com/gfwlist +server=/yahoo.co.ck/127.0.0.1#5335 +ipset=/yahoo.co.ck/gfwlist +server=/ieee-ceda.org/127.0.0.1#5335 +ipset=/ieee-ceda.org/gfwlist +server=/voathai.com/127.0.0.1#5335 +ipset=/voathai.com/gfwlist +server=/lolstatic.com/127.0.0.1#5335 +ipset=/lolstatic.com/gfwlist +server=/pascherbeatsmonster.com/127.0.0.1#5335 +ipset=/pascherbeatsmonster.com/gfwlist +server=/yahoo.co.ao/127.0.0.1#5335 +ipset=/yahoo.co.ao/gfwlist +server=/wholekidsfoundation.org/127.0.0.1#5335 +ipset=/wholekidsfoundation.org/gfwlist +server=/parse.com/127.0.0.1#5335 +ipset=/parse.com/gfwlist +server=/yahoo.cm/127.0.0.1#5335 +ipset=/yahoo.cm/gfwlist +server=/yahoo.cl/127.0.0.1#5335 +ipset=/yahoo.cl/gfwlist +server=/yahoo.cg/127.0.0.1#5335 +ipset=/yahoo.cg/gfwlist +server=/yahoo.cat/127.0.0.1#5335 +ipset=/yahoo.cat/gfwlist +server=/beatsmusic.wang/127.0.0.1#5335 +ipset=/beatsmusic.wang/gfwlist +server=/yahoo.bt/127.0.0.1#5335 +ipset=/yahoo.bt/gfwlist +server=/yahoo.bs/127.0.0.1#5335 +ipset=/yahoo.bs/gfwlist +server=/shopee.com.br/127.0.0.1#5335 +ipset=/shopee.com.br/gfwlist +server=/yahoo.bg/127.0.0.1#5335 +ipset=/yahoo.bg/gfwlist +server=/ruby-lang.org/127.0.0.1#5335 +ipset=/ruby-lang.org/gfwlist +server=/fbthirdpartypixel.com/127.0.0.1#5335 +ipset=/fbthirdpartypixel.com/gfwlist +server=/google.gm/127.0.0.1#5335 +ipset=/google.gm/gfwlist +server=/linear-abematv.akamaized.net/127.0.0.1#5335 +ipset=/linear-abematv.akamaized.net/gfwlist +server=/yahoo.be/127.0.0.1#5335 +ipset=/yahoo.be/gfwlist +server=/fightforux.com/127.0.0.1#5335 +ipset=/fightforux.com/gfwlist +server=/windowsphone-int.com/127.0.0.1#5335 +ipset=/windowsphone-int.com/gfwlist +server=/vcloudair.net/127.0.0.1#5335 +ipset=/vcloudair.net/gfwlist +server=/uun98.com/127.0.0.1#5335 +ipset=/uun98.com/gfwlist +server=/yahoo.as/127.0.0.1#5335 +ipset=/yahoo.as/gfwlist +server=/yahoo.am/127.0.0.1#5335 +ipset=/yahoo.am/gfwlist +server=/vfsco.com.au/127.0.0.1#5335 +ipset=/vfsco.com.au/gfwlist +server=/fox7austin.com/127.0.0.1#5335 +ipset=/fox7austin.com/gfwlist +server=/huluspain.com/127.0.0.1#5335 +ipset=/huluspain.com/gfwlist +server=/applestore.hk/127.0.0.1#5335 +ipset=/applestore.hk/gfwlist +server=/scala-lang.org/127.0.0.1#5335 +ipset=/scala-lang.org/gfwlist +server=/gemini.yahoo.com/127.0.0.1#5335 +ipset=/gemini.yahoo.com/gfwlist +server=/nvidia.com.au/127.0.0.1#5335 +ipset=/nvidia.com.au/gfwlist +server=/ads.yahoo.com/127.0.0.1#5335 +ipset=/ads.yahoo.com/gfwlist +server=/disneyinflight.com/127.0.0.1#5335 +ipset=/disneyinflight.com/gfwlist +server=/gamesstack.com/127.0.0.1#5335 +ipset=/gamesstack.com/gfwlist +server=/volvotrucks.co.bw/127.0.0.1#5335 +ipset=/volvotrucks.co.bw/gfwlist +server=/beatsdreus.com/127.0.0.1#5335 +ipset=/beatsdreus.com/gfwlist +server=/pixanalytics.com/127.0.0.1#5335 +ipset=/pixanalytics.com/gfwlist +server=/drebeatsaustralia-cheap.com/127.0.0.1#5335 +ipset=/drebeatsaustralia-cheap.com/gfwlist +server=/foxcollegesports.com/127.0.0.1#5335 +ipset=/foxcollegesports.com/gfwlist +server=/wdc.com/127.0.0.1#5335 +ipset=/wdc.com/gfwlist +server=/tiberiumalliances.com/127.0.0.1#5335 +ipset=/tiberiumalliances.com/gfwlist +server=/els-cdn.com/127.0.0.1#5335 +ipset=/els-cdn.com/gfwlist +server=/sandisk.sg/127.0.0.1#5335 +ipset=/sandisk.sg/gfwlist +server=/sandisk.nl/127.0.0.1#5335 +ipset=/sandisk.nl/gfwlist +server=/commandandconquer.com/127.0.0.1#5335 +ipset=/commandandconquer.com/gfwlist +server=/iphoto.se/127.0.0.1#5335 +ipset=/iphoto.se/gfwlist +server=/photonicssociety.org/127.0.0.1#5335 +ipset=/photonicssociety.org/gfwlist +server=/sandisk.in/127.0.0.1#5335 +ipset=/sandisk.in/gfwlist +server=/finish.bg/127.0.0.1#5335 +ipset=/finish.bg/gfwlist +server=/tug.org/127.0.0.1#5335 +ipset=/tug.org/gfwlist +server=/sandisk.hk/127.0.0.1#5335 +ipset=/sandisk.hk/gfwlist +server=/disneypeoplesurveys.com/127.0.0.1#5335 +ipset=/disneypeoplesurveys.com/gfwlist +server=/intel.co.cr/127.0.0.1#5335 +ipset=/intel.co.cr/gfwlist +server=/sandisk.de/127.0.0.1#5335 +ipset=/sandisk.de/gfwlist +server=/google.pl/127.0.0.1#5335 +ipset=/google.pl/gfwlist +server=/sandisk.com.tw/127.0.0.1#5335 +ipset=/sandisk.com.tw/gfwlist +server=/sandisk.com.tr/127.0.0.1#5335 +ipset=/sandisk.com.tr/gfwlist +server=/sandisk.com.br/127.0.0.1#5335 +ipset=/sandisk.com.br/gfwlist +server=/sandisk.com.au/127.0.0.1#5335 +ipset=/sandisk.com.au/gfwlist +server=/rakuten.com/127.0.0.1#5335 +ipset=/rakuten.com/gfwlist +server=/intel.com.pr/127.0.0.1#5335 +ipset=/intel.com.pr/gfwlist +server=/dreamforce.com/127.0.0.1#5335 +ipset=/dreamforce.com/gfwlist +server=/beatsbydresstudio.com/127.0.0.1#5335 +ipset=/beatsbydresstudio.com/gfwlist +server=/cheapbeatssale4u.com/127.0.0.1#5335 +ipset=/cheapbeatssale4u.com/gfwlist +server=/hipzoom.net/127.0.0.1#5335 +ipset=/hipzoom.net/gfwlist +server=/sandisk.com/127.0.0.1#5335 +ipset=/sandisk.com/gfwlist +server=/nist.gov/127.0.0.1#5335 +ipset=/nist.gov/gfwlist +server=/jqueryui.com/127.0.0.1#5335 +ipset=/jqueryui.com/gfwlist +server=/azurecosmos.net/127.0.0.1#5335 +ipset=/azurecosmos.net/gfwlist +server=/lin.ee/127.0.0.1#5335 +ipset=/lin.ee/gfwlist +server=/hpstorethailand.com/127.0.0.1#5335 +ipset=/hpstorethailand.com/gfwlist +server=/nvidia.co.in/127.0.0.1#5335 +ipset=/nvidia.co.in/gfwlist +server=/vkuservideo.net/127.0.0.1#5335 +ipset=/vkuservideo.net/gfwlist +server=/vkuserlive.net/127.0.0.1#5335 +ipset=/vkuserlive.net/gfwlist +server=/vkuseraudio.com/127.0.0.1#5335 +ipset=/vkuseraudio.com/gfwlist +server=/database.asahi.com/127.0.0.1#5335 +ipset=/database.asahi.com/gfwlist +server=/vkmessenger.com/127.0.0.1#5335 +ipset=/vkmessenger.com/gfwlist +server=/vklive.app/127.0.0.1#5335 +ipset=/vklive.app/gfwlist +server=/vkgo.app/127.0.0.1#5335 +ipset=/vkgo.app/gfwlist +server=/monsterbeatssydneyaustralia.com/127.0.0.1#5335 +ipset=/monsterbeatssydneyaustralia.com/gfwlist +server=/vkcache.com/127.0.0.1#5335 +ipset=/vkcache.com/gfwlist +server=/myavfun.com/127.0.0.1#5335 +ipset=/myavfun.com/gfwlist +server=/intel.sx/127.0.0.1#5335 +ipset=/intel.sx/gfwlist +server=/blogspot.sn/127.0.0.1#5335 +ipset=/blogspot.sn/gfwlist +server=/historyofdota.net/127.0.0.1#5335 +ipset=/historyofdota.net/gfwlist +server=/foxacrossamerica.com/127.0.0.1#5335 +ipset=/foxacrossamerica.com/gfwlist +server=/vanish.co.za/127.0.0.1#5335 +ipset=/vanish.co.za/gfwlist +server=/costco.com/127.0.0.1#5335 +ipset=/costco.com/gfwlist +server=/vk.design/127.0.0.1#5335 +ipset=/vk.design/gfwlist +server=/alfera.com.my/127.0.0.1#5335 +ipset=/alfera.com.my/gfwlist +server=/youtube.no/127.0.0.1#5335 +ipset=/youtube.no/gfwlist +server=/vk.com/127.0.0.1#5335 +ipset=/vk.com/gfwlist +server=/bgr.in/127.0.0.1#5335 +ipset=/bgr.in/gfwlist +server=/vk-cdn.me/127.0.0.1#5335 +ipset=/vk-cdn.me/gfwlist +server=/woolite.com/127.0.0.1#5335 +ipset=/woolite.com/gfwlist +server=/businessweekmag.com/127.0.0.1#5335 +ipset=/businessweekmag.com/gfwlist +server=/fox23.com/127.0.0.1#5335 +ipset=/fox23.com/gfwlist +server=/xo.com/127.0.0.1#5335 +ipset=/xo.com/gfwlist +server=/huobitoken.com/127.0.0.1#5335 +ipset=/huobitoken.com/gfwlist +server=/vzw.com/127.0.0.1#5335 +ipset=/vzw.com/gfwlist +server=/ebay.lt/127.0.0.1#5335 +ipset=/ebay.lt/gfwlist +server=/verizonwireless.com/127.0.0.1#5335 +ipset=/verizonwireless.com/gfwlist +server=/nmbmw.com/127.0.0.1#5335 +ipset=/nmbmw.com/gfwlist +server=/appleid-iclou.com/127.0.0.1#5335 +ipset=/appleid-iclou.com/gfwlist +server=/pokemonhome.com/127.0.0.1#5335 +ipset=/pokemonhome.com/gfwlist +server=/iphone-yh.com/127.0.0.1#5335 +ipset=/iphone-yh.com/gfwlist +server=/logicool.co.jp/127.0.0.1#5335 +ipset=/logicool.co.jp/gfwlist +server=/verizonbusinessfios.com/127.0.0.1#5335 +ipset=/verizonbusinessfios.com/gfwlist +server=/hp-invent.com/127.0.0.1#5335 +ipset=/hp-invent.com/gfwlist +server=/iphone4.com/127.0.0.1#5335 +ipset=/iphone4.com/gfwlist +server=/volvotrucks.lv/127.0.0.1#5335 +ipset=/volvotrucks.lv/gfwlist +server=/uplynk.com/127.0.0.1#5335 +ipset=/uplynk.com/gfwlist +server=/static-verizon.com/127.0.0.1#5335 +ipset=/static-verizon.com/gfwlist +server=/ouroath.com/127.0.0.1#5335 +ipset=/ouroath.com/gfwlist +server=/facegbook.com/127.0.0.1#5335 +ipset=/facegbook.com/gfwlist +server=/bmw-plant-munich.com/127.0.0.1#5335 +ipset=/bmw-plant-munich.com/gfwlist +server=/oath.com/127.0.0.1#5335 +ipset=/oath.com/gfwlist +server=/gemfury.com/127.0.0.1#5335 +ipset=/gemfury.com/gfwlist +server=/uber.com/127.0.0.1#5335 +ipset=/uber.com/gfwlist +server=/bmw-connecteddrive.ie/127.0.0.1#5335 +ipset=/bmw-connecteddrive.ie/gfwlist +server=/twttr.com/127.0.0.1#5335 +ipset=/twttr.com/gfwlist +server=/twtrdns.net/127.0.0.1#5335 +ipset=/twtrdns.net/gfwlist +server=/paypal-mainstreet.net/127.0.0.1#5335 +ipset=/paypal-mainstreet.net/gfwlist +server=/mini-georgia.com/127.0.0.1#5335 +ipset=/mini-georgia.com/gfwlist +server=/amazon.com.br/127.0.0.1#5335 +ipset=/amazon.com.br/gfwlist +server=/hpfeedback.com/127.0.0.1#5335 +ipset=/hpfeedback.com/gfwlist +server=/twitteroauth.com/127.0.0.1#5335 +ipset=/twitteroauth.com/gfwlist +server=/leagueoflegends.net/127.0.0.1#5335 +ipset=/leagueoflegends.net/gfwlist +server=/twitterinc.com/127.0.0.1#5335 +ipset=/twitterinc.com/gfwlist +server=/youtube.al/127.0.0.1#5335 +ipset=/youtube.al/gfwlist +server=/hkcitizenmedia.com/127.0.0.1#5335 +ipset=/hkcitizenmedia.com/gfwlist +server=/twitter.com/127.0.0.1#5335 +ipset=/twitter.com/gfwlist +server=/webex.ca/127.0.0.1#5335 +ipset=/webex.ca/gfwlist +server=/primevideo.cc/127.0.0.1#5335 +ipset=/primevideo.cc/gfwlist +server=/twitpic.com/127.0.0.1#5335 +ipset=/twitpic.com/gfwlist +server=/alterauserforums.net/127.0.0.1#5335 +ipset=/alterauserforums.net/gfwlist +server=/twimg.com/127.0.0.1#5335 +ipset=/twimg.com/gfwlist +server=/ebay.de/127.0.0.1#5335 +ipset=/ebay.de/gfwlist +server=/tellapart.com/127.0.0.1#5335 +ipset=/tellapart.com/gfwlist +server=/ameblo.jp/127.0.0.1#5335 +ipset=/ameblo.jp/gfwlist +server=/t.co/127.0.0.1#5335 +ipset=/t.co/gfwlist +server=/pscp.tv/127.0.0.1#5335 +ipset=/pscp.tv/gfwlist +server=/ads-twitter.com/127.0.0.1#5335 +ipset=/ads-twitter.com/gfwlist +server=/yshyqxx.com/127.0.0.1#5335 +ipset=/yshyqxx.com/gfwlist +server=/softbankrobotics.com/127.0.0.1#5335 +ipset=/softbankrobotics.com/gfwlist +server=/miniso.pe/127.0.0.1#5335 +ipset=/miniso.pe/gfwlist +server=/openstreetmap.org/127.0.0.1#5335 +ipset=/openstreetmap.org/gfwlist +server=/servicetalk.io/127.0.0.1#5335 +ipset=/servicetalk.io/gfwlist +server=/heroku-app.com/127.0.0.1#5335 +ipset=/heroku-app.com/gfwlist +server=/mini-connected.ee/127.0.0.1#5335 +ipset=/mini-connected.ee/gfwlist +server=/sonyprotechnosupport.co.jp/127.0.0.1#5335 +ipset=/sonyprotechnosupport.co.jp/gfwlist +server=/newyorker.com/127.0.0.1#5335 +ipset=/newyorker.com/gfwlist +server=/unityads.unity3d.com/127.0.0.1#5335 +ipset=/unityads.unity3d.com/gfwlist +server=/beatsbydreinexpensive.com/127.0.0.1#5335 +ipset=/beatsbydreinexpensive.com/gfwlist +server=/softbank-telecom.net/127.0.0.1#5335 +ipset=/softbank-telecom.net/gfwlist +server=/alphera.com.my/127.0.0.1#5335 +ipset=/alphera.com.my/gfwlist +server=/sonyglobalsolutions.jp/127.0.0.1#5335 +ipset=/sonyglobalsolutions.jp/gfwlist +server=/bmw.com.cy/127.0.0.1#5335 +ipset=/bmw.com.cy/gfwlist +server=/sonydna.com/127.0.0.1#5335 +ipset=/sonydna.com/gfwlist +server=/starbucksrtd.com/127.0.0.1#5335 +ipset=/starbucksrtd.com/gfwlist +server=/rb-crisis.com/127.0.0.1#5335 +ipset=/rb-crisis.com/gfwlist +server=/sony.si/127.0.0.1#5335 +ipset=/sony.si/gfwlist +server=/sony.se/127.0.0.1#5335 +ipset=/sony.se/gfwlist +server=/uug25.com/127.0.0.1#5335 +ipset=/uug25.com/gfwlist +server=/monsterbeatsalestore.com/127.0.0.1#5335 +ipset=/monsterbeatsalestore.com/gfwlist +server=/youtube.com.sa/127.0.0.1#5335 +ipset=/youtube.com.sa/gfwlist +server=/onedrive.live.com/127.0.0.1#5335 +ipset=/onedrive.live.com/gfwlist +server=/pypi.org/127.0.0.1#5335 +ipset=/pypi.org/gfwlist +server=/volvotrucks.mk/127.0.0.1#5335 +ipset=/volvotrucks.mk/gfwlist +server=/bestbuybusiness.com/127.0.0.1#5335 +ipset=/bestbuybusiness.com/gfwlist +server=/alphabet.eu/127.0.0.1#5335 +ipset=/alphabet.eu/gfwlist +server=/sony.net/127.0.0.1#5335 +ipset=/sony.net/gfwlist +server=/worldemojiawards.com/127.0.0.1#5335 +ipset=/worldemojiawards.com/gfwlist +server=/dvdstudiopro.com/127.0.0.1#5335 +ipset=/dvdstudiopro.com/gfwlist +server=/crysis.jp/127.0.0.1#5335 +ipset=/crysis.jp/gfwlist +server=/readthedocs-hosted.com/127.0.0.1#5335 +ipset=/readthedocs-hosted.com/gfwlist +server=/ap.org/127.0.0.1#5335 +ipset=/ap.org/gfwlist +server=/cbscorporation.com/127.0.0.1#5335 +ipset=/cbscorporation.com/gfwlist +server=/marveldimensionofheroes.com/127.0.0.1#5335 +ipset=/marveldimensionofheroes.com/gfwlist +server=/overcast.fm/127.0.0.1#5335 +ipset=/overcast.fm/gfwlist +server=/sony.gr/127.0.0.1#5335 +ipset=/sony.gr/gfwlist +server=/findmybeats.com/127.0.0.1#5335 +ipset=/findmybeats.com/gfwlist +server=/vimeo-staging.com/127.0.0.1#5335 +ipset=/vimeo-staging.com/gfwlist +server=/fbinc.com/127.0.0.1#5335 +ipset=/fbinc.com/gfwlist +server=/dkk37.com/127.0.0.1#5335 +ipset=/dkk37.com/gfwlist +server=/sony.fr/127.0.0.1#5335 +ipset=/sony.fr/gfwlist +server=/paypalcommunity.org/127.0.0.1#5335 +ipset=/paypalcommunity.org/gfwlist +server=/sony.eu/127.0.0.1#5335 +ipset=/sony.eu/gfwlist +server=/vjmedia.com.hk/127.0.0.1#5335 +ipset=/vjmedia.com.hk/gfwlist +server=/hkgolden.com/127.0.0.1#5335 +ipset=/hkgolden.com/gfwlist +server=/bridgestone-plt-eng.com/127.0.0.1#5335 +ipset=/bridgestone-plt-eng.com/gfwlist +server=/miniso.ma/127.0.0.1#5335 +ipset=/miniso.ma/gfwlist +server=/visualarts.gr.jp/127.0.0.1#5335 +ipset=/visualarts.gr.jp/gfwlist +server=/sony.es/127.0.0.1#5335 +ipset=/sony.es/gfwlist +server=/sony.ee/127.0.0.1#5335 +ipset=/sony.ee/gfwlist +server=/sony.de/127.0.0.1#5335 +ipset=/sony.de/gfwlist +server=/sony.com.vn/127.0.0.1#5335 +ipset=/sony.com.vn/gfwlist +server=/sony.com.tw/127.0.0.1#5335 +ipset=/sony.com.tw/gfwlist +server=/sony.com.tr/127.0.0.1#5335 +ipset=/sony.com.tr/gfwlist +server=/msturing.org/127.0.0.1#5335 +ipset=/msturing.org/gfwlist +server=/sony.com.sv/127.0.0.1#5335 +ipset=/sony.com.sv/gfwlist +server=/yahoo.com.hk/127.0.0.1#5335 +ipset=/yahoo.com.hk/gfwlist +server=/getdirect.tv/127.0.0.1#5335 +ipset=/getdirect.tv/gfwlist +server=/sony.com.ph/127.0.0.1#5335 +ipset=/sony.com.ph/gfwlist +server=/sony.com.pa/127.0.0.1#5335 +ipset=/sony.com.pa/gfwlist +server=/ebayseller.com/127.0.0.1#5335 +ipset=/ebayseller.com/gfwlist +server=/adobeaemcloud.com/127.0.0.1#5335 +ipset=/adobeaemcloud.com/gfwlist +server=/paypal.com/127.0.0.1#5335 +ipset=/paypal.com/gfwlist +server=/sony.com.my/127.0.0.1#5335 +ipset=/sony.com.my/gfwlist +server=/disqusservice.com/127.0.0.1#5335 +ipset=/disqusservice.com/gfwlist +server=/scholar.google.com.gt/127.0.0.1#5335 +ipset=/scholar.google.com.gt/gfwlist +server=/easportsworld.com/127.0.0.1#5335 +ipset=/easportsworld.com/gfwlist +server=/starbuckspoq.com/127.0.0.1#5335 +ipset=/starbuckspoq.com/gfwlist +server=/nikeseason.com/127.0.0.1#5335 +ipset=/nikeseason.com/gfwlist +server=/akamaized-staging.net/127.0.0.1#5335 +ipset=/akamaized-staging.net/gfwlist +server=/twinprime.com/127.0.0.1#5335 +ipset=/twinprime.com/gfwlist +server=/sony.com.hk/127.0.0.1#5335 +ipset=/sony.com.hk/gfwlist +server=/intel.tv/127.0.0.1#5335 +ipset=/intel.tv/gfwlist +server=/facebookads.com/127.0.0.1#5335 +ipset=/facebookads.com/gfwlist +server=/sony.com.au/127.0.0.1#5335 +ipset=/sony.com.au/gfwlist +server=/goolge.com/127.0.0.1#5335 +ipset=/goolge.com/gfwlist +server=/adidas.be/127.0.0.1#5335 +ipset=/adidas.be/gfwlist +server=/sony.com/127.0.0.1#5335 +ipset=/sony.com/gfwlist +server=/sony.co.uk/127.0.0.1#5335 +ipset=/sony.co.uk/gfwlist +server=/googleventures.com/127.0.0.1#5335 +ipset=/googleventures.com/gfwlist +server=/buck.build/127.0.0.1#5335 +ipset=/buck.build/gfwlist +server=/wordpress.tv/127.0.0.1#5335 +ipset=/wordpress.tv/gfwlist +server=/beatsheadphonesforcheap.net/127.0.0.1#5335 +ipset=/beatsheadphonesforcheap.net/gfwlist +server=/sony.co.th/127.0.0.1#5335 +ipset=/sony.co.th/gfwlist +server=/sony.co.nz/127.0.0.1#5335 +ipset=/sony.co.nz/gfwlist +server=/sony.co.jp/127.0.0.1#5335 +ipset=/sony.co.jp/gfwlist +server=/sony.co.in/127.0.0.1#5335 +ipset=/sony.co.in/gfwlist +server=/applecare.eu/127.0.0.1#5335 +ipset=/applecare.eu/gfwlist +server=/sony.co.id/127.0.0.1#5335 +ipset=/sony.co.id/gfwlist +server=/cloudinsights.com/127.0.0.1#5335 +ipset=/cloudinsights.com/gfwlist +server=/sony.co.cr/127.0.0.1#5335 +ipset=/sony.co.cr/gfwlist +server=/bmwvalueservice.com/127.0.0.1#5335 +ipset=/bmwvalueservice.com/gfwlist +server=/edgefonts.net/127.0.0.1#5335 +ipset=/edgefonts.net/gfwlist +server=/visa.com.vc/127.0.0.1#5335 +ipset=/visa.com.vc/gfwlist +server=/sony.ch/127.0.0.1#5335 +ipset=/sony.ch/gfwlist +server=/finish.co.za/127.0.0.1#5335 +ipset=/finish.co.za/gfwlist +server=/sony.bg/127.0.0.1#5335 +ipset=/sony.bg/gfwlist +server=/webex.co.jp/127.0.0.1#5335 +ipset=/webex.co.jp/gfwlist +server=/exhentai.org/127.0.0.1#5335 +ipset=/exhentai.org/gfwlist +server=/touchsmartpc.net/127.0.0.1#5335 +ipset=/touchsmartpc.net/gfwlist +server=/sony.ba/127.0.0.1#5335 +ipset=/sony.ba/gfwlist +server=/beatsbydresales.us/127.0.0.1#5335 +ipset=/beatsbydresales.us/gfwlist +server=/ftcdn.net/127.0.0.1#5335 +ipset=/ftcdn.net/gfwlist +server=/sony.at/127.0.0.1#5335 +ipset=/sony.at/gfwlist +server=/canon.pt/127.0.0.1#5335 +ipset=/canon.pt/gfwlist +server=/canon.fi/127.0.0.1#5335 +ipset=/canon.fi/gfwlist +server=/globalsign.ch/127.0.0.1#5335 +ipset=/globalsign.ch/gfwlist +server=/sony-promotion.eu/127.0.0.1#5335 +ipset=/sony-promotion.eu/gfwlist +server=/bitstream.com/127.0.0.1#5335 +ipset=/bitstream.com/gfwlist +server=/thefoxnation.com/127.0.0.1#5335 +ipset=/thefoxnation.com/gfwlist +server=/sony-mea.com/127.0.0.1#5335 +ipset=/sony-mea.com/gfwlist +server=/sony-latin.com/127.0.0.1#5335 +ipset=/sony-latin.com/gfwlist +server=/msnewskids.org/127.0.0.1#5335 +ipset=/msnewskids.org/gfwlist +server=/sony-africa.com/127.0.0.1#5335 +ipset=/sony-africa.com/gfwlist +server=/pearsonclinical.de/127.0.0.1#5335 +ipset=/pearsonclinical.de/gfwlist +server=/ibm.net/127.0.0.1#5335 +ipset=/ibm.net/gfwlist +server=/paxlicense.org/127.0.0.1#5335 +ipset=/paxlicense.org/gfwlist +server=/scholar.google.fr/127.0.0.1#5335 +ipset=/scholar.google.fr/gfwlist +server=/sourcingforebay.com.cn/127.0.0.1#5335 +ipset=/sourcingforebay.com.cn/gfwlist +server=/baterias-hp.com/127.0.0.1#5335 +ipset=/baterias-hp.com/gfwlist +server=/wixsite.com/127.0.0.1#5335 +ipset=/wixsite.com/gfwlist +server=/bmw.kg/127.0.0.1#5335 +ipset=/bmw.kg/gfwlist +server=/ipad.de/127.0.0.1#5335 +ipset=/ipad.de/gfwlist +server=/applestore.com.eg/127.0.0.1#5335 +ipset=/applestore.com.eg/gfwlist +server=/nexitally.com/127.0.0.1#5335 +ipset=/nexitally.com/gfwlist +server=/snapads.com/127.0.0.1#5335 +ipset=/snapads.com/gfwlist +server=/snap-dev.net/127.0.0.1#5335 +ipset=/snap-dev.net/gfwlist +server=/sc-cdn.net/127.0.0.1#5335 +ipset=/sc-cdn.net/gfwlist +server=/cloudappsecurity.com/127.0.0.1#5335 +ipset=/cloudappsecurity.com/gfwlist +server=/buyfast-paysmart.net/127.0.0.1#5335 +ipset=/buyfast-paysmart.net/gfwlist +server=/smartonerobotics.com/127.0.0.1#5335 +ipset=/smartonerobotics.com/gfwlist +server=/epochweekly.com/127.0.0.1#5335 +ipset=/epochweekly.com/gfwlist +server=/facebooknude.com/127.0.0.1#5335 +ipset=/facebooknude.com/gfwlist +server=/smartoneholdings.com/127.0.0.1#5335 +ipset=/smartoneholdings.com/gfwlist +server=/nevex.com/127.0.0.1#5335 +ipset=/nevex.com/gfwlist +server=/youtube.es/127.0.0.1#5335 +ipset=/youtube.es/gfwlist +server=/s-rewards.hk/127.0.0.1#5335 +ipset=/s-rewards.hk/gfwlist +server=/ip73.com/127.0.0.1#5335 +ipset=/ip73.com/gfwlist +server=/paypal-activate.org/127.0.0.1#5335 +ipset=/paypal-activate.org/gfwlist +server=/hkcircleapp.com/127.0.0.1#5335 +ipset=/hkcircleapp.com/gfwlist +server=/miniso-nz.com/127.0.0.1#5335 +ipset=/miniso-nz.com/gfwlist +server=/faceook.com/127.0.0.1#5335 +ipset=/faceook.com/gfwlist +server=/ebaytechblog.com/127.0.0.1#5335 +ipset=/ebaytechblog.com/gfwlist +server=/barkadahansasmartone.com/127.0.0.1#5335 +ipset=/barkadahansasmartone.com/gfwlist +server=/leagueoflegends.kr/127.0.0.1#5335 +ipset=/leagueoflegends.kr/gfwlist +server=/nest.com/127.0.0.1#5335 +ipset=/nest.com/gfwlist +server=/samsungknox.com/127.0.0.1#5335 +ipset=/samsungknox.com/gfwlist +server=/bingvisualsearch.com/127.0.0.1#5335 +ipset=/bingvisualsearch.com/gfwlist +server=/samsunggalaxyfriends.com/127.0.0.1#5335 +ipset=/samsunggalaxyfriends.com/gfwlist +server=/huffingtonpost.jp/127.0.0.1#5335 +ipset=/huffingtonpost.jp/gfwlist +server=/youtube.com.sv/127.0.0.1#5335 +ipset=/youtube.com.sv/gfwlist +server=/samsungcloud.com/127.0.0.1#5335 +ipset=/samsungcloud.com/gfwlist +server=/samsungapps.com/127.0.0.1#5335 +ipset=/samsungapps.com/gfwlist +server=/samsung.com/127.0.0.1#5335 +ipset=/samsung.com/gfwlist +server=/microsoft.cl/127.0.0.1#5335 +ipset=/microsoft.cl/gfwlist +server=/taylorandfrancis.com/127.0.0.1#5335 +ipset=/taylorandfrancis.com/gfwlist +server=/466453.com/127.0.0.1#5335 +ipset=/466453.com/gfwlist +server=/theguardian.com/127.0.0.1#5335 +ipset=/theguardian.com/gfwlist +server=/x.co/127.0.0.1#5335 +ipset=/x.co/gfwlist +server=/alphabet.uk/127.0.0.1#5335 +ipset=/alphabet.uk/gfwlist +server=/bloomberg.tv/127.0.0.1#5335 +ipset=/bloomberg.tv/gfwlist +server=/game-platform.net/127.0.0.1#5335 +ipset=/game-platform.net/gfwlist +server=/ebay.ch/127.0.0.1#5335 +ipset=/ebay.ch/gfwlist +server=/asp.net/127.0.0.1#5335 +ipset=/asp.net/gfwlist +server=/hackyourconsole.com/127.0.0.1#5335 +ipset=/hackyourconsole.com/gfwlist +server=/walmartimages.com/127.0.0.1#5335 +ipset=/walmartimages.com/gfwlist +server=/netacad.net/127.0.0.1#5335 +ipset=/netacad.net/gfwlist +server=/steelbrick.com/127.0.0.1#5335 +ipset=/steelbrick.com/gfwlist +server=/social.com/127.0.0.1#5335 +ipset=/social.com/gfwlist +server=/site.com/127.0.0.1#5335 +ipset=/site.com/gfwlist +server=/placesdocs.com/127.0.0.1#5335 +ipset=/placesdocs.com/gfwlist +server=/vimeogoods.com/127.0.0.1#5335 +ipset=/vimeogoods.com/gfwlist +server=/ciscokinetic.com/127.0.0.1#5335 +ipset=/ciscokinetic.com/gfwlist +server=/discord.gg/127.0.0.1#5335 +ipset=/discord.gg/gfwlist +server=/dropboxforums.com/127.0.0.1#5335 +ipset=/dropboxforums.com/gfwlist +server=/g.co/127.0.0.1#5335 +ipset=/g.co/gfwlist +server=/sfdcstatic.com/127.0.0.1#5335 +ipset=/sfdcstatic.com/gfwlist +server=/sequence.com/127.0.0.1#5335 +ipset=/sequence.com/gfwlist +server=/salesforcemarketingcloud.com/127.0.0.1#5335 +ipset=/salesforcemarketingcloud.com/gfwlist +server=/lolfanart.net/127.0.0.1#5335 +ipset=/lolfanart.net/gfwlist +server=/salesforceliveagent.com/127.0.0.1#5335 +ipset=/salesforceliveagent.com/gfwlist +server=/relateiq.com/127.0.0.1#5335 +ipset=/relateiq.com/gfwlist +server=/iphoto.wang/127.0.0.1#5335 +ipset=/iphoto.wang/gfwlist +server=/welcometobestbuy.ca/127.0.0.1#5335 +ipset=/welcometobestbuy.ca/gfwlist +server=/ingka.com/127.0.0.1#5335 +ipset=/ingka.com/gfwlist +server=/bmw.az/127.0.0.1#5335 +ipset=/bmw.az/gfwlist +server=/quotable.com/127.0.0.1#5335 +ipset=/quotable.com/gfwlist +server=/pardot.com/127.0.0.1#5335 +ipset=/pardot.com/gfwlist +server=/disneyme.com/127.0.0.1#5335 +ipset=/disneyme.com/gfwlist +server=/force.com/127.0.0.1#5335 +ipset=/force.com/gfwlist +server=/bestbuytradein.com/127.0.0.1#5335 +ipset=/bestbuytradein.com/gfwlist +server=/exacttarget.com/127.0.0.1#5335 +ipset=/exacttarget.com/gfwlist +server=/paypalcorp.com/127.0.0.1#5335 +ipset=/paypalcorp.com/gfwlist +server=/vmwidm.com/127.0.0.1#5335 +ipset=/vmwidm.com/gfwlist +server=/desk.com/127.0.0.1#5335 +ipset=/desk.com/gfwlist +server=/tellmewhygame.com/127.0.0.1#5335 +ipset=/tellmewhygame.com/gfwlist +server=/demandware.com/127.0.0.1#5335 +ipset=/demandware.com/gfwlist +server=/bridge-studio.co.uk/127.0.0.1#5335 +ipset=/bridge-studio.co.uk/gfwlist +server=/data.com/127.0.0.1#5335 +ipset=/data.com/gfwlist +server=/zohostatic.in/127.0.0.1#5335 +ipset=/zohostatic.in/gfwlist +server=/cloudcraze.com/127.0.0.1#5335 +ipset=/cloudcraze.com/gfwlist +server=/chatter.com/127.0.0.1#5335 +ipset=/chatter.com/gfwlist +server=/needforspeedproven.com/127.0.0.1#5335 +ipset=/needforspeedproven.com/gfwlist +server=/pinterest.in/127.0.0.1#5335 +ipset=/pinterest.in/gfwlist +server=/vector.im/127.0.0.1#5335 +ipset=/vector.im/gfwlist +server=/startpage.com/127.0.0.1#5335 +ipset=/startpage.com/gfwlist +server=/bmw.ro/127.0.0.1#5335 +ipset=/bmw.ro/gfwlist +server=/beyondcore.com/127.0.0.1#5335 +ipset=/beyondcore.com/gfwlist +server=/appexchange.com/127.0.0.1#5335 +ipset=/appexchange.com/gfwlist +server=/appcloud.com/127.0.0.1#5335 +ipset=/appcloud.com/gfwlist +server=/respawnbyrazer.com/127.0.0.1#5335 +ipset=/respawnbyrazer.com/gfwlist +server=/razerzone.jp/127.0.0.1#5335 +ipset=/razerzone.jp/gfwlist +server=/bmwsfl.com/127.0.0.1#5335 +ipset=/bmwsfl.com/gfwlist +server=/razerzone.com/127.0.0.1#5335 +ipset=/razerzone.com/gfwlist +server=/visadpsonline.us/127.0.0.1#5335 +ipset=/visadpsonline.us/gfwlist +server=/beatsbydrdre-store.com/127.0.0.1#5335 +ipset=/beatsbydrdre-store.com/gfwlist +server=/imod.com/127.0.0.1#5335 +ipset=/imod.com/gfwlist +server=/uplinq.com/127.0.0.1#5335 +ipset=/uplinq.com/gfwlist +server=/snapdragonbooth.com/127.0.0.1#5335 +ipset=/snapdragonbooth.com/gfwlist +server=/alphabet.co.uk/127.0.0.1#5335 +ipset=/alphabet.co.uk/gfwlist +server=/snapdragon.cn/127.0.0.1#5335 +ipset=/snapdragon.cn/gfwlist +server=/thesun.ie/127.0.0.1#5335 +ipset=/thesun.ie/gfwlist +server=/qualphone.com/127.0.0.1#5335 +ipset=/qualphone.com/gfwlist +server=/qualcommventures.cn/127.0.0.1#5335 +ipset=/qualcommventures.cn/gfwlist +server=/qualcommretail.com/127.0.0.1#5335 +ipset=/qualcommretail.com/gfwlist +server=/qualcommmea.com/127.0.0.1#5335 +ipset=/qualcommmea.com/gfwlist +server=/creativecommons.org/127.0.0.1#5335 +ipset=/creativecommons.org/gfwlist +server=/volvotrucks.at/127.0.0.1#5335 +ipset=/volvotrucks.at/gfwlist +server=/adobesc.com/127.0.0.1#5335 +ipset=/adobesc.com/gfwlist +server=/cups.org/127.0.0.1#5335 +ipset=/cups.org/gfwlist +server=/qualcomm.fr/127.0.0.1#5335 +ipset=/qualcomm.fr/gfwlist +server=/ieee-uffc.org/127.0.0.1#5335 +ipset=/ieee-uffc.org/gfwlist +server=/qualcomm.de/127.0.0.1#5335 +ipset=/qualcomm.de/gfwlist +server=/fbsbx.net/127.0.0.1#5335 +ipset=/fbsbx.net/gfwlist +server=/applestore.ch/127.0.0.1#5335 +ipset=/applestore.ch/gfwlist +server=/monsterdrebeats-usa.com/127.0.0.1#5335 +ipset=/monsterdrebeats-usa.com/gfwlist +server=/foxnewsopinion.com/127.0.0.1#5335 +ipset=/foxnewsopinion.com/gfwlist +server=/stackexchange.com/127.0.0.1#5335 +ipset=/stackexchange.com/gfwlist +server=/seamonkey-project.org/127.0.0.1#5335 +ipset=/seamonkey-project.org/gfwlist +server=/bmw.com.sg/127.0.0.1#5335 +ipset=/bmw.com.sg/gfwlist +server=/briantreepayments.net/127.0.0.1#5335 +ipset=/briantreepayments.net/gfwlist +server=/qualcomm.co.kr/127.0.0.1#5335 +ipset=/qualcomm.co.kr/gfwlist +server=/freessl.com/127.0.0.1#5335 +ipset=/freessl.com/gfwlist +server=/intel.io/127.0.0.1#5335 +ipset=/intel.io/gfwlist +server=/qualcomm.co.in/127.0.0.1#5335 +ipset=/qualcomm.co.in/gfwlist +server=/qualcomm.co.id/127.0.0.1#5335 +ipset=/qualcomm.co.id/gfwlist +server=/freewechat.com/127.0.0.1#5335 +ipset=/freewechat.com/gfwlist +server=/minibrossard.com/127.0.0.1#5335 +ipset=/minibrossard.com/gfwlist +server=/qprize.com/127.0.0.1#5335 +ipset=/qprize.com/gfwlist +server=/pixtronix.com/127.0.0.1#5335 +ipset=/pixtronix.com/gfwlist +server=/meetsmartbook.com/127.0.0.1#5335 +ipset=/meetsmartbook.com/gfwlist +server=/iskoot.com/127.0.0.1#5335 +ipset=/iskoot.com/gfwlist +server=/brewmp.com/127.0.0.1#5335 +ipset=/brewmp.com/gfwlist +server=/mini.com.ph/127.0.0.1#5335 +ipset=/mini.com.ph/gfwlist +server=/johren.net/127.0.0.1#5335 +ipset=/johren.net/gfwlist +server=/shopifycdn.com/127.0.0.1#5335 +ipset=/shopifycdn.com/gfwlist +server=/dailymail.dk/127.0.0.1#5335 +ipset=/dailymail.dk/gfwlist +server=/hellosmartbook.com/127.0.0.1#5335 +ipset=/hellosmartbook.com/gfwlist +server=/echosign.com/127.0.0.1#5335 +ipset=/echosign.com/gfwlist +server=/haskellstack.org/127.0.0.1#5335 +ipset=/haskellstack.org/gfwlist +server=/gobianywhere.com/127.0.0.1#5335 +ipset=/gobianywhere.com/gfwlist +server=/berkanawireless.com/127.0.0.1#5335 +ipset=/berkanawireless.com/gfwlist +server=/trmini.com/127.0.0.1#5335 +ipset=/trmini.com/gfwlist +server=/bmw.com.ec/127.0.0.1#5335 +ipset=/bmw.com.ec/gfwlist +server=/wwwapple.net/127.0.0.1#5335 +ipset=/wwwapple.net/gfwlist +server=/fqcebook.com/127.0.0.1#5335 +ipset=/fqcebook.com/gfwlist +server=/pearsonclinical.co.uk/127.0.0.1#5335 +ipset=/pearsonclinical.co.uk/gfwlist +server=/hktshop.com/127.0.0.1#5335 +ipset=/hktshop.com/gfwlist +server=/dentalhypotheses.com/127.0.0.1#5335 +ipset=/dentalhypotheses.com/gfwlist +server=/hkt.com/127.0.0.1#5335 +ipset=/hkt.com/gfwlist +server=/hkt-eye.com/127.0.0.1#5335 +ipset=/hkt-eye.com/gfwlist +server=/hkt-enterprise.com/127.0.0.1#5335 +ipset=/hkt-enterprise.com/gfwlist +server=/researchkit.org/127.0.0.1#5335 +ipset=/researchkit.org/gfwlist +server=/esmarthealth.com/127.0.0.1#5335 +ipset=/esmarthealth.com/gfwlist +server=/edgedatg.com/127.0.0.1#5335 +ipset=/edgedatg.com/gfwlist +server=/kindle.co.uk/127.0.0.1#5335 +ipset=/kindle.co.uk/gfwlist +server=/mini-me.com/127.0.0.1#5335 +ipset=/mini-me.com/gfwlist +server=/brightcove.services/127.0.0.1#5335 +ipset=/brightcove.services/gfwlist +server=/hpuniversity.info/127.0.0.1#5335 +ipset=/hpuniversity.info/gfwlist +server=/bmw-clubs-international.com/127.0.0.1#5335 +ipset=/bmw-clubs-international.com/gfwlist +server=/oup.com/127.0.0.1#5335 +ipset=/oup.com/gfwlist +server=/nine.com.au/127.0.0.1#5335 +ipset=/nine.com.au/gfwlist +server=/panasonic.com/127.0.0.1#5335 +ipset=/panasonic.com/gfwlist +server=/att-rsvp.com/127.0.0.1#5335 +ipset=/att-rsvp.com/gfwlist +server=/sun.com/127.0.0.1#5335 +ipset=/sun.com/gfwlist +server=/bmw-connecteddrive.jp/127.0.0.1#5335 +ipset=/bmw-connecteddrive.jp/gfwlist +server=/covid19-rx.org/127.0.0.1#5335 +ipset=/covid19-rx.org/gfwlist +server=/avinetworks.com/127.0.0.1#5335 +ipset=/avinetworks.com/gfwlist +server=/oracleimg.com/127.0.0.1#5335 +ipset=/oracleimg.com/gfwlist +server=/oraclecloud.com/127.0.0.1#5335 +ipset=/oraclecloud.com/gfwlist +server=/bmw-ksa.com/127.0.0.1#5335 +ipset=/bmw-ksa.com/gfwlist +server=/beatsforme.com/127.0.0.1#5335 +ipset=/beatsforme.com/gfwlist +server=/oracle.com/127.0.0.1#5335 +ipset=/oracle.com/gfwlist +server=/intel.by/127.0.0.1#5335 +ipset=/intel.by/gfwlist +server=/typesquare.com/127.0.0.1#5335 +ipset=/typesquare.com/gfwlist +server=/nvidia.tt.omtrdc.net/127.0.0.1#5335 +ipset=/nvidia.tt.omtrdc.net/gfwlist +server=/azureiotsolutions.com/127.0.0.1#5335 +ipset=/azureiotsolutions.com/gfwlist +server=/tegrazone.kr/127.0.0.1#5335 +ipset=/tegrazone.kr/gfwlist +server=/tegrazone.com/127.0.0.1#5335 +ipset=/tegrazone.com/gfwlist +server=/bloombergradio.com/127.0.0.1#5335 +ipset=/bloombergradio.com/gfwlist +server=/fgacebook.com/127.0.0.1#5335 +ipset=/fgacebook.com/gfwlist +server=/wsj.net/127.0.0.1#5335 +ipset=/wsj.net/gfwlist +server=/nvidiaforhp.com/127.0.0.1#5335 +ipset=/nvidiaforhp.com/gfwlist +server=/google.com.ly/127.0.0.1#5335 +ipset=/google.com.ly/gfwlist +server=/nvidia.se/127.0.0.1#5335 +ipset=/nvidia.se/gfwlist +server=/nvidia.ro/127.0.0.1#5335 +ipset=/nvidia.ro/gfwlist +server=/applw.com/127.0.0.1#5335 +ipset=/applw.com/gfwlist +server=/nvidia.pl/127.0.0.1#5335 +ipset=/nvidia.pl/gfwlist +server=/airwick.pt/127.0.0.1#5335 +ipset=/airwick.pt/gfwlist +server=/scholar.google.co.kr/127.0.0.1#5335 +ipset=/scholar.google.co.kr/gfwlist +server=/foxnewssunday.com/127.0.0.1#5335 +ipset=/foxnewssunday.com/gfwlist +server=/nvidia.mx/127.0.0.1#5335 +ipset=/nvidia.mx/gfwlist +server=/snapstore.io/127.0.0.1#5335 +ipset=/snapstore.io/gfwlist +server=/nvidia.lu/127.0.0.1#5335 +ipset=/nvidia.lu/gfwlist +server=/azureplanetscale.net/127.0.0.1#5335 +ipset=/azureplanetscale.net/gfwlist +server=/nvidia.in/127.0.0.1#5335 +ipset=/nvidia.in/gfwlist +server=/nvidia.de/127.0.0.1#5335 +ipset=/nvidia.de/gfwlist +server=/mobilemarketo.com/127.0.0.1#5335 +ipset=/mobilemarketo.com/gfwlist +server=/addthiscdn.com/127.0.0.1#5335 +ipset=/addthiscdn.com/gfwlist +server=/yourmonsterbeats.com/127.0.0.1#5335 +ipset=/yourmonsterbeats.com/gfwlist +server=/fbmarketing.com/127.0.0.1#5335 +ipset=/fbmarketing.com/gfwlist +server=/nvidia.com.tr/127.0.0.1#5335 +ipset=/nvidia.com.tr/gfwlist +server=/firebaseio.com/127.0.0.1#5335 +ipset=/firebaseio.com/gfwlist +server=/thanksloyalty.com/127.0.0.1#5335 +ipset=/thanksloyalty.com/gfwlist +server=/beatsireland.net/127.0.0.1#5335 +ipset=/beatsireland.net/gfwlist +server=/my29tv.com/127.0.0.1#5335 +ipset=/my29tv.com/gfwlist +server=/nvidia.com.pe/127.0.0.1#5335 +ipset=/nvidia.com.pe/gfwlist +server=/nvidia.com/127.0.0.1#5335 +ipset=/nvidia.com/gfwlist +server=/nextmedia.com/127.0.0.1#5335 +ipset=/nextmedia.com/gfwlist +server=/nvidia.co.uk/127.0.0.1#5335 +ipset=/nvidia.co.uk/gfwlist +server=/sandisk.it/127.0.0.1#5335 +ipset=/sandisk.it/gfwlist +server=/nvidia.at/127.0.0.1#5335 +ipset=/nvidia.at/gfwlist +server=/gputechconf.jp/127.0.0.1#5335 +ipset=/gputechconf.jp/gfwlist +server=/inikesneakers.com/127.0.0.1#5335 +ipset=/inikesneakers.com/gfwlist +server=/gputechconf.in/127.0.0.1#5335 +ipset=/gputechconf.in/gfwlist +server=/geotrust.com/127.0.0.1#5335 +ipset=/geotrust.com/gfwlist +server=/cheapbeatsie.com/127.0.0.1#5335 +ipset=/cheapbeatsie.com/gfwlist +server=/gputechconf.com.tw/127.0.0.1#5335 +ipset=/gputechconf.com.tw/gfwlist +server=/mortein.com.au/127.0.0.1#5335 +ipset=/mortein.com.au/gfwlist +server=/starbucks.co.th/127.0.0.1#5335 +ipset=/starbucks.co.th/gfwlist +server=/beatscheapforsale.com/127.0.0.1#5335 +ipset=/beatscheapforsale.com/gfwlist +server=/fedoramagazine.org/127.0.0.1#5335 +ipset=/fedoramagazine.org/gfwlist +server=/volvogroup.de/127.0.0.1#5335 +ipset=/volvogroup.de/gfwlist +server=/bridgestone.com.ar/127.0.0.1#5335 +ipset=/bridgestone.com.ar/gfwlist +server=/niketradeweb.com/127.0.0.1#5335 +ipset=/niketradeweb.com/gfwlist +server=/godaddy.com/127.0.0.1#5335 +ipset=/godaddy.com/gfwlist +server=/realclearreligion.org/127.0.0.1#5335 +ipset=/realclearreligion.org/gfwlist +server=/monsterbeatsforsale.com/127.0.0.1#5335 +ipset=/monsterbeatsforsale.com/gfwlist +server=/neuralink.com/127.0.0.1#5335 +ipset=/neuralink.com/gfwlist +server=/adsense.com/127.0.0.1#5335 +ipset=/adsense.com/gfwlist +server=/ebayrtm.com/127.0.0.1#5335 +ipset=/ebayrtm.com/gfwlist +server=/pstatic.net/127.0.0.1#5335 +ipset=/pstatic.net/gfwlist +server=/plug.game/127.0.0.1#5335 +ipset=/plug.game/gfwlist +server=/nikeairmax.com/127.0.0.1#5335 +ipset=/nikeairmax.com/gfwlist +server=/mac.rs/127.0.0.1#5335 +ipset=/mac.rs/gfwlist +server=/navercorp.com/127.0.0.1#5335 +ipset=/navercorp.com/gfwlist +server=/livejasmin.com/127.0.0.1#5335 +ipset=/livejasmin.com/gfwlist +server=/voalingala.com/127.0.0.1#5335 +ipset=/voalingala.com/gfwlist +server=/pcmarket.com.hk/127.0.0.1#5335 +ipset=/pcmarket.com.hk/gfwlist +server=/cometotheduckside.com/127.0.0.1#5335 +ipset=/cometotheduckside.com/gfwlist +server=/intel.re/127.0.0.1#5335 +ipset=/intel.re/gfwlist +server=/apple.uk/127.0.0.1#5335 +ipset=/apple.uk/gfwlist +server=/grafolio.com/127.0.0.1#5335 +ipset=/grafolio.com/gfwlist +server=/seselah.com/127.0.0.1#5335 +ipset=/seselah.com/gfwlist +server=/mozilla.net/127.0.0.1#5335 +ipset=/mozilla.net/gfwlist +server=/google.hn/127.0.0.1#5335 +ipset=/google.hn/gfwlist +server=/lanik.us/127.0.0.1#5335 +ipset=/lanik.us/gfwlist +server=/voaindonesia.com/127.0.0.1#5335 +ipset=/voaindonesia.com/gfwlist +server=/volvobuses.co/127.0.0.1#5335 +ipset=/volvobuses.co/gfwlist +server=/docs.rs/127.0.0.1#5335 +ipset=/docs.rs/gfwlist +server=/applefilmmaker.com/127.0.0.1#5335 +ipset=/applefilmmaker.com/gfwlist +server=/hongkongfp.com/127.0.0.1#5335 +ipset=/hongkongfp.com/gfwlist +server=/coova.net/127.0.0.1#5335 +ipset=/coova.net/gfwlist +server=/mdn.mozillademos.org/127.0.0.1#5335 +ipset=/mdn.mozillademos.org/gfwlist +server=/fbbmarket.com/127.0.0.1#5335 +ipset=/fbbmarket.com/gfwlist +server=/geeksquadwebroot.org/127.0.0.1#5335 +ipset=/geeksquadwebroot.org/gfwlist +server=/bigcharts.com/127.0.0.1#5335 +ipset=/bigcharts.com/gfwlist +server=/google.com.uy/127.0.0.1#5335 +ipset=/google.com.uy/gfwlist +server=/foxsportsnetmilwaukee.com/127.0.0.1#5335 +ipset=/foxsportsnetmilwaukee.com/gfwlist +server=/mwf-service.akamaized.net/127.0.0.1#5335 +ipset=/mwf-service.akamaized.net/gfwlist +server=/img-s-msn-com.akamaized.net/127.0.0.1#5335 +ipset=/img-s-msn-com.akamaized.net/gfwlist +server=/img-prod-cms-rt-microsoft-com.akamaized.net/127.0.0.1#5335 +ipset=/img-prod-cms-rt-microsoft-com.akamaized.net/gfwlist +server=/kijijiforbusiness.ca/127.0.0.1#5335 +ipset=/kijijiforbusiness.ca/gfwlist +server=/fesebook.com/127.0.0.1#5335 +ipset=/fesebook.com/gfwlist +server=/matrix.to/127.0.0.1#5335 +ipset=/matrix.to/gfwlist +server=/onedrive.org/127.0.0.1#5335 +ipset=/onedrive.org/gfwlist +server=/mut.ch/127.0.0.1#5335 +ipset=/mut.ch/gfwlist +server=/hpmarketplace.com/127.0.0.1#5335 +ipset=/hpmarketplace.com/gfwlist +server=/nicomanga.jp/127.0.0.1#5335 +ipset=/nicomanga.jp/gfwlist +server=/windowsupdate.com/127.0.0.1#5335 +ipset=/windowsupdate.com/gfwlist +server=/youtube.com.uy/127.0.0.1#5335 +ipset=/youtube.com.uy/gfwlist +server=/windowssearch.com/127.0.0.1#5335 +ipset=/windowssearch.com/gfwlist +server=/yahoo.ba/127.0.0.1#5335 +ipset=/yahoo.ba/gfwlist +server=/windowsmarketplace.com/127.0.0.1#5335 +ipset=/windowsmarketplace.com/gfwlist +server=/windowscommunity.net/127.0.0.1#5335 +ipset=/windowscommunity.net/gfwlist +server=/dettolthailand.com/127.0.0.1#5335 +ipset=/dettolthailand.com/gfwlist +server=/windows.com/127.0.0.1#5335 +ipset=/windows.com/gfwlist +server=/windows-int.net/127.0.0.1#5335 +ipset=/windows-int.net/gfwlist +server=/wbd.ms/127.0.0.1#5335 +ipset=/wbd.ms/gfwlist +server=/vsallin.net/127.0.0.1#5335 +ipset=/vsallin.net/gfwlist +server=/epochweek.com/127.0.0.1#5335 +ipset=/epochweek.com/gfwlist +server=/virtualearth.net/127.0.0.1#5335 +ipset=/virtualearth.net/gfwlist +server=/mingpao.com/127.0.0.1#5335 +ipset=/mingpao.com/gfwlist +server=/userpxt.io/127.0.0.1#5335 +ipset=/userpxt.io/gfwlist +server=/dgg.gg/127.0.0.1#5335 +ipset=/dgg.gg/gfwlist +server=/trafficmanager.net/127.0.0.1#5335 +ipset=/trafficmanager.net/gfwlist +server=/paypaly.com/127.0.0.1#5335 +ipset=/paypaly.com/gfwlist +server=/tfsallin.net/127.0.0.1#5335 +ipset=/tfsallin.net/gfwlist +server=/direcpath.net/127.0.0.1#5335 +ipset=/direcpath.net/gfwlist +server=/bmw-connecteddrive.lu/127.0.0.1#5335 +ipset=/bmw-connecteddrive.lu/gfwlist +server=/visaplus.com/127.0.0.1#5335 +ipset=/visaplus.com/gfwlist +server=/cheap-beats-by-dre.net/127.0.0.1#5335 +ipset=/cheap-beats-by-dre.net/gfwlist +server=/windowsuem.com/127.0.0.1#5335 +ipset=/windowsuem.com/gfwlist +server=/surface.com/127.0.0.1#5335 +ipset=/surface.com/gfwlist +server=/facebookmobile.com/127.0.0.1#5335 +ipset=/facebookmobile.com/gfwlist +server=/youtube.com.my/127.0.0.1#5335 +ipset=/youtube.com.my/gfwlist +server=/cheapdrebeats8.net/127.0.0.1#5335 +ipset=/cheapdrebeats8.net/gfwlist +server=/staffhub.ms/127.0.0.1#5335 +ipset=/staffhub.ms/gfwlist +server=/aspnetcdn.com/127.0.0.1#5335 +ipset=/aspnetcdn.com/gfwlist +server=/skypeassets.com/127.0.0.1#5335 +ipset=/skypeassets.com/gfwlist +server=/skype.net/127.0.0.1#5335 +ipset=/skype.net/gfwlist +server=/stripe.network/127.0.0.1#5335 +ipset=/stripe.network/gfwlist +server=/12diasderegalosdeitunes.com.ve/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.com.ve/gfwlist +server=/sharepointonline.com/127.0.0.1#5335 +ipset=/sharepointonline.com/gfwlist +server=/auricularemonsterbeats.com/127.0.0.1#5335 +ipset=/auricularemonsterbeats.com/gfwlist +server=/applesurveys.com/127.0.0.1#5335 +ipset=/applesurveys.com/gfwlist +server=/minimoncton.ca/127.0.0.1#5335 +ipset=/minimoncton.ca/gfwlist +server=/faceobok.com/127.0.0.1#5335 +ipset=/faceobok.com/gfwlist +server=/marketo.tv/127.0.0.1#5335 +ipset=/marketo.tv/gfwlist +server=/asus.com/127.0.0.1#5335 +ipset=/asus.com/gfwlist +server=/gettyimages.no/127.0.0.1#5335 +ipset=/gettyimages.no/gfwlist +server=/bmw.ee/127.0.0.1#5335 +ipset=/bmw.ee/gfwlist +server=/acrobat.com/127.0.0.1#5335 +ipset=/acrobat.com/gfwlist +server=/bridgestone.cl/127.0.0.1#5335 +ipset=/bridgestone.cl/gfwlist +server=/sfbassets.net/127.0.0.1#5335 +ipset=/sfbassets.net/gfwlist +server=/sfbassets.com/127.0.0.1#5335 +ipset=/sfbassets.com/gfwlist +server=/s-microsoft.com/127.0.0.1#5335 +ipset=/s-microsoft.com/gfwlist +server=/bingads.com/127.0.0.1#5335 +ipset=/bingads.com/gfwlist +server=/visa.com.gt/127.0.0.1#5335 +ipset=/visa.com.gt/gfwlist +server=/projectsangam.com/127.0.0.1#5335 +ipset=/projectsangam.com/gfwlist +server=/scholar.google.com.pe/127.0.0.1#5335 +ipset=/scholar.google.com.pe/gfwlist +server=/projectmurphy.net/127.0.0.1#5335 +ipset=/projectmurphy.net/gfwlist +server=/powerbi.com/127.0.0.1#5335 +ipset=/powerbi.com/gfwlist +server=/faceid99.com/127.0.0.1#5335 +ipset=/faceid99.com/gfwlist +server=/voxfieldguide.com/127.0.0.1#5335 +ipset=/voxfieldguide.com/gfwlist +server=/powerappscdn.net/127.0.0.1#5335 +ipset=/powerappscdn.net/gfwlist +server=/sohfrance.org/127.0.0.1#5335 +ipset=/sohfrance.org/gfwlist +server=/outlook.com/127.0.0.1#5335 +ipset=/outlook.com/gfwlist +server=/dvdstudiopro.org/127.0.0.1#5335 +ipset=/dvdstudiopro.org/gfwlist +server=/outingsapp.com/127.0.0.1#5335 +ipset=/outingsapp.com/gfwlist +server=/opticsforthecloud.net/127.0.0.1#5335 +ipset=/opticsforthecloud.net/gfwlist +server=/youtube.com.hn/127.0.0.1#5335 +ipset=/youtube.com.hn/gfwlist +server=/garena.live/127.0.0.1#5335 +ipset=/garena.live/gfwlist +server=/nxta.org/127.0.0.1#5335 +ipset=/nxta.org/gfwlist +server=/fscebook.com/127.0.0.1#5335 +ipset=/fscebook.com/gfwlist +server=/feacboo.com/127.0.0.1#5335 +ipset=/feacboo.com/gfwlist +server=/mymicrosoft.com/127.0.0.1#5335 +ipset=/mymicrosoft.com/gfwlist +server=/msudalosti.com/127.0.0.1#5335 +ipset=/msudalosti.com/gfwlist +server=/paily.net/127.0.0.1#5335 +ipset=/paily.net/gfwlist +server=/polymerproject.org/127.0.0.1#5335 +ipset=/polymerproject.org/gfwlist +server=/msocsp.com/127.0.0.1#5335 +ipset=/msocsp.com/gfwlist +server=/msocdn.com/127.0.0.1#5335 +ipset=/msocdn.com/gfwlist +server=/msftnet.org/127.0.0.1#5335 +ipset=/msftnet.org/gfwlist +server=/msfteducation.ca/127.0.0.1#5335 +ipset=/msfteducation.ca/gfwlist +server=/oxfordbibliographies.com/127.0.0.1#5335 +ipset=/oxfordbibliographies.com/gfwlist +server=/msedge.net/127.0.0.1#5335 +ipset=/msedge.net/gfwlist +server=/pokemonbw.com/127.0.0.1#5335 +ipset=/pokemonbw.com/gfwlist +server=/bmw-motorrad.ca/127.0.0.1#5335 +ipset=/bmw-motorrad.ca/gfwlist +server=/mschallenge2018.com/127.0.0.1#5335 +ipset=/mschallenge2018.com/gfwlist +server=/bmw-konzernarchiv.de/127.0.0.1#5335 +ipset=/bmw-konzernarchiv.de/gfwlist +server=/api.viu.now.com/127.0.0.1#5335 +ipset=/api.viu.now.com/gfwlist +server=/disney.co.uk/127.0.0.1#5335 +ipset=/disney.co.uk/gfwlist +server=/mpnevolution.com/127.0.0.1#5335 +ipset=/mpnevolution.com/gfwlist +server=/bmwcharitygolf.com/127.0.0.1#5335 +ipset=/bmwcharitygolf.com/gfwlist +server=/morphcharts.com/127.0.0.1#5335 +ipset=/morphcharts.com/gfwlist +server=/financeleadsonline.com/127.0.0.1#5335 +ipset=/financeleadsonline.com/gfwlist +server=/microsoftuwp.com/127.0.0.1#5335 +ipset=/microsoftuwp.com/gfwlist +server=/microsofttranslator.com/127.0.0.1#5335 +ipset=/microsofttranslator.com/gfwlist +server=/microsofttradein.com/127.0.0.1#5335 +ipset=/microsofttradein.com/gfwlist +server=/microsoftstream.com/127.0.0.1#5335 +ipset=/microsoftstream.com/gfwlist +server=/docs.com/127.0.0.1#5335 +ipset=/docs.com/gfwlist +server=/javcc.com/127.0.0.1#5335 +ipset=/javcc.com/gfwlist +server=/ipod.co.uk/127.0.0.1#5335 +ipset=/ipod.co.uk/gfwlist +server=/hotmail.com/127.0.0.1#5335 +ipset=/hotmail.com/gfwlist +server=/dellcdn.com/127.0.0.1#5335 +ipset=/dellcdn.com/gfwlist +server=/microsoftpartnercommunity.com/127.0.0.1#5335 +ipset=/microsoftpartnercommunity.com/gfwlist +server=/microsoftonline.com/127.0.0.1#5335 +ipset=/microsoftonline.com/gfwlist +server=/ciscosoftware.com/127.0.0.1#5335 +ipset=/ciscosoftware.com/gfwlist +server=/microsoftinternetsafety.net/127.0.0.1#5335 +ipset=/microsoftinternetsafety.net/gfwlist +server=/parastorage.com/127.0.0.1#5335 +ipset=/parastorage.com/gfwlist +server=/applenewsformat.com/127.0.0.1#5335 +ipset=/applenewsformat.com/gfwlist +server=/pokemonchampionships.com/127.0.0.1#5335 +ipset=/pokemonchampionships.com/gfwlist +server=/microsofthouse.net/127.0.0.1#5335 +ipset=/microsofthouse.net/gfwlist +server=/microsofthouse.com/127.0.0.1#5335 +ipset=/microsofthouse.com/gfwlist +server=/appleshare.info/127.0.0.1#5335 +ipset=/appleshare.info/gfwlist +server=/microsoftcommunitytraining.com/127.0.0.1#5335 +ipset=/microsoftcommunitytraining.com/gfwlist +server=/microsoftcloudworkshop.com/127.0.0.1#5335 +ipset=/microsoftcloudworkshop.com/gfwlist +server=/detaliczny.com/127.0.0.1#5335 +ipset=/detaliczny.com/gfwlist +server=/att-bundles.com/127.0.0.1#5335 +ipset=/att-bundles.com/gfwlist +server=/microsoftadvertisingregionalawards.com/127.0.0.1#5335 +ipset=/microsoftadvertisingregionalawards.com/gfwlist +server=/itsbetterwhenyouwinit.com/127.0.0.1#5335 +ipset=/itsbetterwhenyouwinit.com/gfwlist +server=/faebookc.com/127.0.0.1#5335 +ipset=/faebookc.com/gfwlist +server=/alibabacloud.co.in/127.0.0.1#5335 +ipset=/alibabacloud.co.in/gfwlist +server=/microsoft365.com/127.0.0.1#5335 +ipset=/microsoft365.com/gfwlist +server=/microsoft-sbs-domains.com/127.0.0.1#5335 +ipset=/microsoft-sbs-domains.com/gfwlist +server=/nintendostore.com/127.0.0.1#5335 +ipset=/nintendostore.com/gfwlist +server=/microsoft-ppe.com/127.0.0.1#5335 +ipset=/microsoft-ppe.com/gfwlist +server=/scdn.co/127.0.0.1#5335 +ipset=/scdn.co/gfwlist +server=/ebaycbt.co.kr/127.0.0.1#5335 +ipset=/ebaycbt.co.kr/gfwlist +server=/microsoft-int.com/127.0.0.1#5335 +ipset=/microsoft-int.com/gfwlist +server=/volvogroup.kr/127.0.0.1#5335 +ipset=/volvogroup.kr/gfwlist +server=/gaming-notebooks.com/127.0.0.1#5335 +ipset=/gaming-notebooks.com/gfwlist +server=/coupang.com/127.0.0.1#5335 +ipset=/coupang.com/gfwlist +server=/live.net/127.0.0.1#5335 +ipset=/live.net/gfwlist +server=/live.com.au/127.0.0.1#5335 +ipset=/live.com.au/gfwlist +server=/fpacebook.com/127.0.0.1#5335 +ipset=/fpacebook.com/gfwlist +server=/live.com/127.0.0.1#5335 +ipset=/live.com/gfwlist +server=/volvotrucks.kz/127.0.0.1#5335 +ipset=/volvotrucks.kz/gfwlist +server=/bighead.group/127.0.0.1#5335 +ipset=/bighead.group/gfwlist +server=/ingads.com/127.0.0.1#5335 +ipset=/ingads.com/gfwlist +server=/internetexplorer.com/127.0.0.1#5335 +ipset=/internetexplorer.com/gfwlist +server=/durex.co.za/127.0.0.1#5335 +ipset=/durex.co.za/gfwlist +server=/umass.edu/127.0.0.1#5335 +ipset=/umass.edu/gfwlist +server=/rakuten.co.jp/127.0.0.1#5335 +ipset=/rakuten.co.jp/gfwlist +server=/hummingbird.ms/127.0.0.1#5335 +ipset=/hummingbird.ms/gfwlist +server=/hotmail.org/127.0.0.1#5335 +ipset=/hotmail.org/gfwlist +server=/hotmail.eu/127.0.0.1#5335 +ipset=/hotmail.eu/gfwlist +server=/google.li/127.0.0.1#5335 +ipset=/google.li/gfwlist +server=/adobesigncdn.com/127.0.0.1#5335 +ipset=/adobesigncdn.com/gfwlist +server=/gigjam.com/127.0.0.1#5335 +ipset=/gigjam.com/gfwlist +server=/bitnamistudio.com/127.0.0.1#5335 +ipset=/bitnamistudio.com/gfwlist +server=/jiyu-kobo.co.jp/127.0.0.1#5335 +ipset=/jiyu-kobo.co.jp/gfwlist +server=/studywatchbyverily.com/127.0.0.1#5335 +ipset=/studywatchbyverily.com/gfwlist +server=/gearstactics.com/127.0.0.1#5335 +ipset=/gearstactics.com/gfwlist +server=/verisign.se/127.0.0.1#5335 +ipset=/verisign.se/gfwlist +server=/dropboxusercontent.com/127.0.0.1#5335 +ipset=/dropboxusercontent.com/gfwlist +server=/disney.ro/127.0.0.1#5335 +ipset=/disney.ro/gfwlist +server=/monsterbeatsbydrdrestudio.com/127.0.0.1#5335 +ipset=/monsterbeatsbydrdrestudio.com/gfwlist +server=/gears5.com/127.0.0.1#5335 +ipset=/gears5.com/gfwlist +server=/gameuxmasterguide.com/127.0.0.1#5335 +ipset=/gameuxmasterguide.com/gfwlist +server=/fasttrackreadysupport.com/127.0.0.1#5335 +ipset=/fasttrackreadysupport.com/gfwlist +server=/efproject.net/127.0.0.1#5335 +ipset=/efproject.net/gfwlist +server=/dtvce.com/127.0.0.1#5335 +ipset=/dtvce.com/gfwlist +server=/beth.games/127.0.0.1#5335 +ipset=/beth.games/gfwlist +server=/cs4hs.com/127.0.0.1#5335 +ipset=/cs4hs.com/gfwlist +server=/assetsadobe.com/127.0.0.1#5335 +ipset=/assetsadobe.com/gfwlist +server=/swisssign.li/127.0.0.1#5335 +ipset=/swisssign.li/gfwlist +server=/microsoftstore.com/127.0.0.1#5335 +ipset=/microsoftstore.com/gfwlist +server=/crmdynint-gcc.com/127.0.0.1#5335 +ipset=/crmdynint-gcc.com/gfwlist +server=/escandinavia-arg.com/127.0.0.1#5335 +ipset=/escandinavia-arg.com/gfwlist +server=/pki-posta.ch/127.0.0.1#5335 +ipset=/pki-posta.ch/gfwlist +server=/ciscoconnectcloud.net/127.0.0.1#5335 +ipset=/ciscoconnectcloud.net/gfwlist +server=/centralvalidation.com/127.0.0.1#5335 +ipset=/centralvalidation.com/gfwlist +server=/ibeats-uk.com/127.0.0.1#5335 +ipset=/ibeats-uk.com/gfwlist +server=/brazilpartneruniversity.com/127.0.0.1#5335 +ipset=/brazilpartneruniversity.com/gfwlist +server=/bluehatil.com/127.0.0.1#5335 +ipset=/bluehatil.com/gfwlist +server=/binads.com/127.0.0.1#5335 +ipset=/binads.com/gfwlist +server=/ebay.com.au/127.0.0.1#5335 +ipset=/ebay.com.au/gfwlist +server=/galaxyappstore.com/127.0.0.1#5335 +ipset=/galaxyappstore.com/gfwlist +server=/aka.ms/127.0.0.1#5335 +ipset=/aka.ms/gfwlist +server=/facebuok.com/127.0.0.1#5335 +ipset=/facebuok.com/gfwlist +server=/femalefounderscomp.com/127.0.0.1#5335 +ipset=/femalefounderscomp.com/gfwlist +server=/minispygear.com/127.0.0.1#5335 +ipset=/minispygear.com/gfwlist +server=/dns.sb/127.0.0.1#5335 +ipset=/dns.sb/gfwlist +server=/macbookpro.co/127.0.0.1#5335 +ipset=/macbookpro.co/gfwlist +server=/volvotruckrental.be/127.0.0.1#5335 +ipset=/volvotruckrental.be/gfwlist +server=/darivoa.com/127.0.0.1#5335 +ipset=/darivoa.com/gfwlist +server=/theopportunityproject.org/127.0.0.1#5335 +ipset=/theopportunityproject.org/gfwlist +server=/mac-mini.com/127.0.0.1#5335 +ipset=/mac-mini.com/gfwlist +server=/foxsports-newyork.com/127.0.0.1#5335 +ipset=/foxsports-newyork.com/gfwlist +server=/springerlink.com/127.0.0.1#5335 +ipset=/springerlink.com/gfwlist +server=/bmw-motorrad-motorsport.com/127.0.0.1#5335 +ipset=/bmw-motorrad-motorsport.com/gfwlist +server=/microsoft.si/127.0.0.1#5335 +ipset=/microsoft.si/gfwlist +server=/centrino.net/127.0.0.1#5335 +ipset=/centrino.net/gfwlist +server=/verisign.com.br/127.0.0.1#5335 +ipset=/verisign.com.br/gfwlist +server=/nature.com/127.0.0.1#5335 +ipset=/nature.com/gfwlist +server=/microsoft.red/127.0.0.1#5335 +ipset=/microsoft.red/gfwlist +server=/fnacebook.com/127.0.0.1#5335 +ipset=/fnacebook.com/gfwlist +server=/bmwsummerschool.com/127.0.0.1#5335 +ipset=/bmwsummerschool.com/gfwlist +server=/fox7.com/127.0.0.1#5335 +ipset=/fox7.com/gfwlist +server=/ebayclub.com/127.0.0.1#5335 +ipset=/ebayclub.com/gfwlist +server=/golang.com/127.0.0.1#5335 +ipset=/golang.com/gfwlist +server=/volvogroup.jp/127.0.0.1#5335 +ipset=/volvogroup.jp/gfwlist +server=/casoneexchange.com/127.0.0.1#5335 +ipset=/casoneexchange.com/gfwlist +server=/ebaymotors.com/127.0.0.1#5335 +ipset=/ebaymotors.com/gfwlist +server=/aokwholesale.net/127.0.0.1#5335 +ipset=/aokwholesale.net/gfwlist +server=/stacksnippets.net/127.0.0.1#5335 +ipset=/stacksnippets.net/gfwlist +server=/cobatt.com/127.0.0.1#5335 +ipset=/cobatt.com/gfwlist +server=/soccerfinancier.ca/127.0.0.1#5335 +ipset=/soccerfinancier.ca/gfwlist +server=/microsoft.jp/127.0.0.1#5335 +ipset=/microsoft.jp/gfwlist +server=/microsoft.io/127.0.0.1#5335 +ipset=/microsoft.io/gfwlist +server=/microsoft.hu/127.0.0.1#5335 +ipset=/microsoft.hu/gfwlist +server=/microsoft.eu/127.0.0.1#5335 +ipset=/microsoft.eu/gfwlist +server=/facebool.info/127.0.0.1#5335 +ipset=/facebool.info/gfwlist +server=/bienvenuechezbestbuy.ca/127.0.0.1#5335 +ipset=/bienvenuechezbestbuy.ca/gfwlist +server=/minifs.com/127.0.0.1#5335 +ipset=/minifs.com/gfwlist +server=/privacytools.io/127.0.0.1#5335 +ipset=/privacytools.io/gfwlist +server=/microsoft.es/127.0.0.1#5335 +ipset=/microsoft.es/gfwlist +server=/aclweb.org/127.0.0.1#5335 +ipset=/aclweb.org/gfwlist +server=/qoo10.jp/127.0.0.1#5335 +ipset=/qoo10.jp/gfwlist +server=/jiayoulu.com/127.0.0.1#5335 +ipset=/jiayoulu.com/gfwlist +server=/miniso.jp/127.0.0.1#5335 +ipset=/miniso.jp/gfwlist +server=/headphonesretailer.com/127.0.0.1#5335 +ipset=/headphonesretailer.com/gfwlist +server=/ebaysweden.com/127.0.0.1#5335 +ipset=/ebaysweden.com/gfwlist +server=/pearsonclinical.be/127.0.0.1#5335 +ipset=/pearsonclinical.be/gfwlist +server=/faceboof.com/127.0.0.1#5335 +ipset=/faceboof.com/gfwlist +server=/microsoft.ca/127.0.0.1#5335 +ipset=/microsoft.ca/gfwlist +server=/wal.co/127.0.0.1#5335 +ipset=/wal.co/gfwlist +server=/sony.ro/127.0.0.1#5335 +ipset=/sony.ro/gfwlist +server=/yammer.com/127.0.0.1#5335 +ipset=/yammer.com/gfwlist +server=/myciscobenefits.com/127.0.0.1#5335 +ipset=/myciscobenefits.com/gfwlist +server=/onedrive.eu/127.0.0.1#5335 +ipset=/onedrive.eu/gfwlist +server=/onedrive.co/127.0.0.1#5335 +ipset=/onedrive.co/gfwlist +server=/launchpadlibrarian.com/127.0.0.1#5335 +ipset=/launchpadlibrarian.com/gfwlist +server=/globalsign.es/127.0.0.1#5335 +ipset=/globalsign.es/gfwlist +server=/1drv.com/127.0.0.1#5335 +ipset=/1drv.com/gfwlist +server=/msnkids.com/127.0.0.1#5335 +ipset=/msnkids.com/gfwlist +server=/sony-hes.co.jp/127.0.0.1#5335 +ipset=/sony-hes.co.jp/gfwlist +server=/directvatlantaga.com/127.0.0.1#5335 +ipset=/directvatlantaga.com/gfwlist +server=/msnewskids.net/127.0.0.1#5335 +ipset=/msnewskids.net/gfwlist +server=/neborder.com/127.0.0.1#5335 +ipset=/neborder.com/gfwlist +server=/msn.com/127.0.0.1#5335 +ipset=/msn.com/gfwlist +server=/microsoftnewskids.org/127.0.0.1#5335 +ipset=/microsoftnewskids.org/gfwlist +server=/beatsbydreausale.net/127.0.0.1#5335 +ipset=/beatsbydreausale.net/gfwlist +server=/amamanualofstyle.com/127.0.0.1#5335 +ipset=/amamanualofstyle.com/gfwlist +server=/hbomax.com/127.0.0.1#5335 +ipset=/hbomax.com/gfwlist +server=/microsoftnewskids.net/127.0.0.1#5335 +ipset=/microsoftnewskids.net/gfwlist +server=/xboxlive.com/127.0.0.1#5335 +ipset=/xboxlive.com/gfwlist +server=/visaeverywhereshop.com/127.0.0.1#5335 +ipset=/visaeverywhereshop.com/gfwlist +server=/microsoftnewskids.com/127.0.0.1#5335 +ipset=/microsoftnewskids.com/gfwlist +server=/microsoftnewsforkids.org/127.0.0.1#5335 +ipset=/microsoftnewsforkids.org/gfwlist +server=/riotcdn.net/127.0.0.1#5335 +ipset=/riotcdn.net/gfwlist +server=/microsoftnewsforkids.com/127.0.0.1#5335 +ipset=/microsoftnewsforkids.com/gfwlist +server=/microsoftnews.net/127.0.0.1#5335 +ipset=/microsoftnews.net/gfwlist +server=/sprinklesapp.com/127.0.0.1#5335 +ipset=/sprinklesapp.com/gfwlist +server=/drebeatssite.com/127.0.0.1#5335 +ipset=/drebeatssite.com/gfwlist +server=/impermium.com/127.0.0.1#5335 +ipset=/impermium.com/gfwlist +server=/msunlimitedcloudsummit.com/127.0.0.1#5335 +ipset=/msunlimitedcloudsummit.com/gfwlist +server=/cashpassport.com.br/127.0.0.1#5335 +ipset=/cashpassport.com.br/gfwlist +server=/microsoftpartnersolutions.com/127.0.0.1#5335 +ipset=/microsoftpartnersolutions.com/gfwlist +server=/microsoftlatamholiday.com/127.0.0.1#5335 +ipset=/microsoftlatamholiday.com/gfwlist +server=/awsloft-johannesburg.com/127.0.0.1#5335 +ipset=/awsloft-johannesburg.com/gfwlist +server=/microsoft-give.com/127.0.0.1#5335 +ipset=/microsoft-give.com/gfwlist +server=/masalladeloslimites.com/127.0.0.1#5335 +ipset=/masalladeloslimites.com/gfwlist +server=/flipwithsurface.com/127.0.0.1#5335 +ipset=/flipwithsurface.com/gfwlist +server=/dictate.ms/127.0.0.1#5335 +ipset=/dictate.ms/gfwlist +server=/bluehatnights.com/127.0.0.1#5335 +ipset=/bluehatnights.com/gfwlist +server=/appleappstore.net/127.0.0.1#5335 +ipset=/appleappstore.net/gfwlist +server=/veet.tv/127.0.0.1#5335 +ipset=/veet.tv/gfwlist +server=/bing.net/127.0.0.1#5335 +ipset=/bing.net/gfwlist +server=/iproperty.com.sg/127.0.0.1#5335 +ipset=/iproperty.com.sg/gfwlist +server=/bmw-auslieferungszentrum.com/127.0.0.1#5335 +ipset=/bmw-auslieferungszentrum.com/gfwlist +server=/visadns.com/127.0.0.1#5335 +ipset=/visadns.com/gfwlist +server=/adwordsexpress.com/127.0.0.1#5335 +ipset=/adwordsexpress.com/gfwlist +server=/airiti.com/127.0.0.1#5335 +ipset=/airiti.com/gfwlist +server=/softbankhawksstore.jp/127.0.0.1#5335 +ipset=/softbankhawksstore.jp/gfwlist +server=/visafulfillment.com/127.0.0.1#5335 +ipset=/visafulfillment.com/gfwlist +server=/google.com.au/127.0.0.1#5335 +ipset=/google.com.au/gfwlist +server=/gitlab.com/127.0.0.1#5335 +ipset=/gitlab.com/gfwlist +server=/thehealthsite.com/127.0.0.1#5335 +ipset=/thehealthsite.com/gfwlist +server=/google.tt/127.0.0.1#5335 +ipset=/google.tt/gfwlist +server=/gotcosmos.com/127.0.0.1#5335 +ipset=/gotcosmos.com/gfwlist +server=/youtube.com.gt/127.0.0.1#5335 +ipset=/youtube.com.gt/gfwlist +server=/cosmosdb.info/127.0.0.1#5335 +ipset=/cosmosdb.info/gfwlist +server=/pearsonclinical.se/127.0.0.1#5335 +ipset=/pearsonclinical.se/gfwlist +server=/azurewebsites.net/127.0.0.1#5335 +ipset=/azurewebsites.net/gfwlist +server=/azurestackvalidation.com/127.0.0.1#5335 +ipset=/azurestackvalidation.com/gfwlist +server=/huobi.me/127.0.0.1#5335 +ipset=/huobi.me/gfwlist +server=/azureiotsuite.com/127.0.0.1#5335 +ipset=/azureiotsuite.com/gfwlist +server=/volvobuses.hu/127.0.0.1#5335 +ipset=/volvobuses.hu/gfwlist +server=/wiifit.com/127.0.0.1#5335 +ipset=/wiifit.com/gfwlist +server=/samsungqbe.com/127.0.0.1#5335 +ipset=/samsungqbe.com/gfwlist +server=/azuredns-prd.info/127.0.0.1#5335 +ipset=/azuredns-prd.info/gfwlist +server=/azuredigitaltwins.com/127.0.0.1#5335 +ipset=/azuredigitaltwins.com/gfwlist +server=/azuredigitaltwin.com/127.0.0.1#5335 +ipset=/azuredigitaltwin.com/gfwlist +server=/blogger.com/127.0.0.1#5335 +ipset=/blogger.com/gfwlist +server=/wikia.org/127.0.0.1#5335 +ipset=/wikia.org/gfwlist +server=/azurecosmosdb.com/127.0.0.1#5335 +ipset=/azurecosmosdb.com/gfwlist +server=/botframework.com/127.0.0.1#5335 +ipset=/botframework.com/gfwlist +server=/fox11.com/127.0.0.1#5335 +ipset=/fox11.com/gfwlist +server=/sandisk.co.kr/127.0.0.1#5335 +ipset=/sandisk.co.kr/gfwlist +server=/hf-iphone.com/127.0.0.1#5335 +ipset=/hf-iphone.com/gfwlist +server=/azurecontainer.io/127.0.0.1#5335 +ipset=/azurecontainer.io/gfwlist +server=/azurecomcdn.net/127.0.0.1#5335 +ipset=/azurecomcdn.net/gfwlist +server=/darwinsource.org/127.0.0.1#5335 +ipset=/darwinsource.org/gfwlist +server=/ciscoconnectcloud.com/127.0.0.1#5335 +ipset=/ciscoconnectcloud.com/gfwlist +server=/applereach.net/127.0.0.1#5335 +ipset=/applereach.net/gfwlist +server=/ctan.org/127.0.0.1#5335 +ipset=/ctan.org/gfwlist +server=/conscrypt.org/127.0.0.1#5335 +ipset=/conscrypt.org/gfwlist +server=/azure-mobile.net/127.0.0.1#5335 +ipset=/azure-mobile.net/gfwlist +server=/hpapplicationscenter.com/127.0.0.1#5335 +ipset=/hpapplicationscenter.com/gfwlist +server=/nikelink.com/127.0.0.1#5335 +ipset=/nikelink.com/gfwlist +server=/meetyourdevices.com/127.0.0.1#5335 +ipset=/meetyourdevices.com/gfwlist +server=/visa.sk/127.0.0.1#5335 +ipset=/visa.sk/gfwlist +server=/mycdn.me/127.0.0.1#5335 +ipset=/mycdn.me/gfwlist +server=/mini.com.bn/127.0.0.1#5335 +ipset=/mini.com.bn/gfwlist +server=/avseesee.com/127.0.0.1#5335 +ipset=/avseesee.com/gfwlist +server=/facebookphoto.com/127.0.0.1#5335 +ipset=/facebookphoto.com/gfwlist +server=/imgsmail.ru/127.0.0.1#5335 +ipset=/imgsmail.ru/gfwlist +server=/google.com/127.0.0.1#5335 +ipset=/google.com/gfwlist +server=/logitech.fr/127.0.0.1#5335 +ipset=/logitech.fr/gfwlist +server=/logitech.com/127.0.0.1#5335 +ipset=/logitech.com/gfwlist +server=/logitech.biz/127.0.0.1#5335 +ipset=/logitech.biz/gfwlist +server=/logi.com/127.0.0.1#5335 +ipset=/logi.com/gfwlist +server=/licdn.com/127.0.0.1#5335 +ipset=/licdn.com/gfwlist +server=/lgelectronics.122.2o7.net/127.0.0.1#5335 +ipset=/lgelectronics.122.2o7.net/gfwlist +server=/mywaytopay.net/127.0.0.1#5335 +ipset=/mywaytopay.net/gfwlist +server=/gab.com/127.0.0.1#5335 +ipset=/gab.com/gfwlist +server=/lgrecyclingprogram.com/127.0.0.1#5335 +ipset=/lgrecyclingprogram.com/gfwlist +server=/clearasil.us/127.0.0.1#5335 +ipset=/clearasil.us/gfwlist +server=/lghvac.com/127.0.0.1#5335 +ipset=/lghvac.com/gfwlist +server=/customizedbeatsbydre.com/127.0.0.1#5335 +ipset=/customizedbeatsbydre.com/gfwlist +server=/rapidssl.com/127.0.0.1#5335 +ipset=/rapidssl.com/gfwlist +server=/naturalvoices.com/127.0.0.1#5335 +ipset=/naturalvoices.com/gfwlist +server=/listinganalytics.net/127.0.0.1#5335 +ipset=/listinganalytics.net/gfwlist +server=/yahoo.ae/127.0.0.1#5335 +ipset=/yahoo.ae/gfwlist +server=/lg.com/127.0.0.1#5335 +ipset=/lg.com/gfwlist +server=/google.sm/127.0.0.1#5335 +ipset=/google.sm/gfwlist +server=/headphonezip.com/127.0.0.1#5335 +ipset=/headphonezip.com/gfwlist +server=/xscale.com/127.0.0.1#5335 +ipset=/xscale.com/gfwlist +server=/joeswall.com/127.0.0.1#5335 +ipset=/joeswall.com/gfwlist +server=/plantsvszombies2.com/127.0.0.1#5335 +ipset=/plantsvszombies2.com/gfwlist +server=/xn--ztsq84g.cn/127.0.0.1#5335 +ipset=/xn--ztsq84g.cn/gfwlist +server=/ebaya.com/127.0.0.1#5335 +ipset=/ebaya.com/gfwlist +server=/vpro.com/127.0.0.1#5335 +ipset=/vpro.com/gfwlist +server=/vokevr.com/127.0.0.1#5335 +ipset=/vokevr.com/gfwlist +server=/trustedanalytics.com/127.0.0.1#5335 +ipset=/trustedanalytics.com/gfwlist +server=/paypal-japan.com/127.0.0.1#5335 +ipset=/paypal-japan.com/gfwlist +server=/applepodcasts.com/127.0.0.1#5335 +ipset=/applepodcasts.com/gfwlist +server=/thunderbolttechnology.net/127.0.0.1#5335 +ipset=/thunderbolttechnology.net/gfwlist +server=/google.com.eg/127.0.0.1#5335 +ipset=/google.com.eg/gfwlist +server=/siport.com/127.0.0.1#5335 +ipset=/siport.com/gfwlist +server=/sensorynetworks.com/127.0.0.1#5335 +ipset=/sensorynetworks.com/gfwlist +server=/researchintel.com/127.0.0.1#5335 +ipset=/researchintel.com/gfwlist +server=/openjsf.org/127.0.0.1#5335 +ipset=/openjsf.org/gfwlist +server=/reconjet.com/127.0.0.1#5335 +ipset=/reconjet.com/gfwlist +server=/bmw-motorrad.it/127.0.0.1#5335 +ipset=/bmw-motorrad.it/gfwlist +server=/reconinstruments.com/127.0.0.1#5335 +ipset=/reconinstruments.com/gfwlist +server=/imgurinc.com/127.0.0.1#5335 +ipset=/imgurinc.com/gfwlist +server=/opendroneid.org/127.0.0.1#5335 +ipset=/opendroneid.org/gfwlist +server=/openamt.com/127.0.0.1#5335 +ipset=/openamt.com/gfwlist +server=/niosii.com/127.0.0.1#5335 +ipset=/niosii.com/gfwlist +server=/nextgenerationcenter.com/127.0.0.1#5335 +ipset=/nextgenerationcenter.com/gfwlist +server=/smartone.com/127.0.0.1#5335 +ipset=/smartone.com/gfwlist +server=/nervanasys.com/127.0.0.1#5335 +ipset=/nervanasys.com/gfwlist +server=/lookinside.com/127.0.0.1#5335 +ipset=/lookinside.com/gfwlist +server=/canon-se.com.tw/127.0.0.1#5335 +ipset=/canon-se.com.tw/gfwlist +server=/wwwapplemusic.com/127.0.0.1#5335 +ipset=/wwwapplemusic.com/gfwlist +server=/itnel.com/127.0.0.1#5335 +ipset=/itnel.com/gfwlist +server=/intelvmwarecybersecurity.com/127.0.0.1#5335 +ipset=/intelvmwarecybersecurity.com/gfwlist +server=/intelsalestraining.com/127.0.0.1#5335 +ipset=/intelsalestraining.com/gfwlist +server=/bloomberg.co.jp/127.0.0.1#5335 +ipset=/bloomberg.co.jp/gfwlist +server=/2013newbeatsworld.com/127.0.0.1#5335 +ipset=/2013newbeatsworld.com/gfwlist +server=/intelrealsense.com/127.0.0.1#5335 +ipset=/intelrealsense.com/gfwlist +server=/battlefield1943.com/127.0.0.1#5335 +ipset=/battlefield1943.com/gfwlist +server=/duckduckgo.uk/127.0.0.1#5335 +ipset=/duckduckgo.uk/gfwlist +server=/intelquark.com/127.0.0.1#5335 +ipset=/intelquark.com/gfwlist +server=/drebeats-monsteraustralia.com/127.0.0.1#5335 +ipset=/drebeats-monsteraustralia.com/gfwlist +server=/pokemonultrasunmoon.com/127.0.0.1#5335 +ipset=/pokemonultrasunmoon.com/gfwlist +server=/ukipad.com/127.0.0.1#5335 +ipset=/ukipad.com/gfwlist +server=/intelnervana.com/127.0.0.1#5335 +ipset=/intelnervana.com/gfwlist +server=/intellinuxwireless.net/127.0.0.1#5335 +ipset=/intellinuxwireless.net/gfwlist +server=/buyitnow.tv/127.0.0.1#5335 +ipset=/buyitnow.tv/gfwlist +server=/intellearningseries.com/127.0.0.1#5335 +ipset=/intellearningseries.com/gfwlist +server=/inteliotmarketplace.com/127.0.0.1#5335 +ipset=/inteliotmarketplace.com/gfwlist +server=/frostbite.com/127.0.0.1#5335 +ipset=/frostbite.com/gfwlist +server=/intelgo.net/127.0.0.1#5335 +ipset=/intelgo.net/gfwlist +server=/ipods.com/127.0.0.1#5335 +ipset=/ipods.com/gfwlist +server=/espadoldettol.com.ar/127.0.0.1#5335 +ipset=/espadoldettol.com.ar/gfwlist +server=/intelcloudfinder.com/127.0.0.1#5335 +ipset=/intelcloudfinder.com/gfwlist +server=/googlevideo.com/127.0.0.1#5335 +ipset=/googlevideo.com/gfwlist +server=/dacebook.com/127.0.0.1#5335 +ipset=/dacebook.com/gfwlist +server=/fasebook.com/127.0.0.1#5335 +ipset=/fasebook.com/gfwlist +server=/intelcapital.com/127.0.0.1#5335 +ipset=/intelcapital.com/gfwlist +server=/intelatom.net/127.0.0.1#5335 +ipset=/intelatom.net/gfwlist +server=/intelapacstore.com/127.0.0.1#5335 +ipset=/intelapacstore.com/gfwlist +server=/nikesku.com/127.0.0.1#5335 +ipset=/nikesku.com/gfwlist +server=/facebook-ebook.com/127.0.0.1#5335 +ipset=/facebook-ebook.com/gfwlist +server=/doceapower.com/127.0.0.1#5335 +ipset=/doceapower.com/gfwlist +server=/bmw-i-pure-impulse.com/127.0.0.1#5335 +ipset=/bmw-i-pure-impulse.com/gfwlist +server=/wariolandshakeit.com/127.0.0.1#5335 +ipset=/wariolandshakeit.com/gfwlist +server=/crosswalk-project.net/127.0.0.1#5335 +ipset=/crosswalk-project.net/gfwlist +server=/intel.bg/127.0.0.1#5335 +ipset=/intel.bg/gfwlist +server=/coreextreme.com/127.0.0.1#5335 +ipset=/coreextreme.com/gfwlist +server=/ebaypakistan.net/127.0.0.1#5335 +ipset=/ebaypakistan.net/gfwlist +server=/ebay.mn/127.0.0.1#5335 +ipset=/ebay.mn/gfwlist +server=/firestonebpco.com/127.0.0.1#5335 +ipset=/firestonebpco.com/gfwlist +server=/mailhealth.com/127.0.0.1#5335 +ipset=/mailhealth.com/gfwlist +server=/opinionjournal.com/127.0.0.1#5335 +ipset=/opinionjournal.com/gfwlist +server=/facebook.com/127.0.0.1#5335 +ipset=/facebook.com/gfwlist +server=/applenews.berlin/127.0.0.1#5335 +ipset=/applenews.berlin/gfwlist +server=/skysportsonline.com/127.0.0.1#5335 +ipset=/skysportsonline.com/gfwlist +server=/hp3dprinter.com/127.0.0.1#5335 +ipset=/hp3dprinter.com/gfwlist +server=/iphone.es/127.0.0.1#5335 +ipset=/iphone.es/gfwlist +server=/clusterconnection.com/127.0.0.1#5335 +ipset=/clusterconnection.com/gfwlist +server=/playmation.com/127.0.0.1#5335 +ipset=/playmation.com/gfwlist +server=/cilk.net/127.0.0.1#5335 +ipset=/cilk.net/gfwlist +server=/disney.bg/127.0.0.1#5335 +ipset=/disney.bg/gfwlist +server=/launchpad.wang/127.0.0.1#5335 +ipset=/launchpad.wang/gfwlist +server=/bitstamp.net/127.0.0.1#5335 +ipset=/bitstamp.net/gfwlist +server=/microsoft.se/127.0.0.1#5335 +ipset=/microsoft.se/gfwlist +server=/ieee.ca/127.0.0.1#5335 +ipset=/ieee.ca/gfwlist +server=/wireshark.org/127.0.0.1#5335 +ipset=/wireshark.org/gfwlist +server=/celeron.net/127.0.0.1#5335 +ipset=/celeron.net/gfwlist +server=/volvotrucks.net/127.0.0.1#5335 +ipset=/volvotrucks.net/gfwlist +server=/bmw-motorrad.lu/127.0.0.1#5335 +ipset=/bmw-motorrad.lu/gfwlist +server=/celeron.com/127.0.0.1#5335 +ipset=/celeron.com/gfwlist +server=/buyaltera.com/127.0.0.1#5335 +ipset=/buyaltera.com/gfwlist +server=/visabank.org/127.0.0.1#5335 +ipset=/visabank.org/gfwlist +server=/alterauserforums.com/127.0.0.1#5335 +ipset=/alterauserforums.com/gfwlist +server=/sqlite.org/127.0.0.1#5335 +ipset=/sqlite.org/gfwlist +server=/alterauserforum.net/127.0.0.1#5335 +ipset=/alterauserforum.net/gfwlist +server=/neow.in/127.0.0.1#5335 +ipset=/neow.in/gfwlist +server=/ocbmwdealers.com/127.0.0.1#5335 +ipset=/ocbmwdealers.com/gfwlist +server=/foxla.com/127.0.0.1#5335 +ipset=/foxla.com/gfwlist +server=/bmw.tm/127.0.0.1#5335 +ipset=/bmw.tm/gfwlist +server=/vercel-dns.com/127.0.0.1#5335 +ipset=/vercel-dns.com/gfwlist +server=/alteraforums.net/127.0.0.1#5335 +ipset=/alteraforums.net/gfwlist +server=/alteraforum.com/127.0.0.1#5335 +ipset=/alteraforum.com/gfwlist +server=/intel.vu/127.0.0.1#5335 +ipset=/intel.vu/gfwlist +server=/facebol.com/127.0.0.1#5335 +ipset=/facebol.com/gfwlist +server=/paypal-labs.com/127.0.0.1#5335 +ipset=/paypal-labs.com/gfwlist +server=/statuspage.io/127.0.0.1#5335 +ipset=/statuspage.io/gfwlist +server=/intel.vn/127.0.0.1#5335 +ipset=/intel.vn/gfwlist +server=/intel.vg/127.0.0.1#5335 +ipset=/intel.vg/gfwlist +server=/conscrypt.com/127.0.0.1#5335 +ipset=/conscrypt.com/gfwlist +server=/rebates.jp/127.0.0.1#5335 +ipset=/rebates.jp/gfwlist +server=/intel.uy/127.0.0.1#5335 +ipset=/intel.uy/gfwlist +server=/verisign.com.es/127.0.0.1#5335 +ipset=/verisign.com.es/gfwlist +server=/harpercollinschildrensbooks.co.uk/127.0.0.1#5335 +ipset=/harpercollinschildrensbooks.co.uk/gfwlist +server=/sony.com.ec/127.0.0.1#5335 +ipset=/sony.com.ec/gfwlist +server=/ffacebook.com/127.0.0.1#5335 +ipset=/ffacebook.com/gfwlist +server=/intel.tt/127.0.0.1#5335 +ipset=/intel.tt/gfwlist +server=/intel.tn/127.0.0.1#5335 +ipset=/intel.tn/gfwlist +server=/intel.tm/127.0.0.1#5335 +ipset=/intel.tm/gfwlist +server=/pimg.tw/127.0.0.1#5335 +ipset=/pimg.tw/gfwlist +server=/instagramtr.com/127.0.0.1#5335 +ipset=/instagramtr.com/gfwlist +server=/intel.tl/127.0.0.1#5335 +ipset=/intel.tl/gfwlist +server=/hipaa6020.com/127.0.0.1#5335 +ipset=/hipaa6020.com/gfwlist +server=/intel.tj/127.0.0.1#5335 +ipset=/intel.tj/gfwlist +server=/faseboox.com/127.0.0.1#5335 +ipset=/faseboox.com/gfwlist +server=/beatspascher-fr.net/127.0.0.1#5335 +ipset=/beatspascher-fr.net/gfwlist +server=/intel.st/127.0.0.1#5335 +ipset=/intel.st/gfwlist +server=/videodelivery.net/127.0.0.1#5335 +ipset=/videodelivery.net/gfwlist +server=/intel.sk/127.0.0.1#5335 +ipset=/intel.sk/gfwlist +server=/dot-mac.de/127.0.0.1#5335 +ipset=/dot-mac.de/gfwlist +server=/intel.ie/127.0.0.1#5335 +ipset=/intel.ie/gfwlist +server=/intel.sc/127.0.0.1#5335 +ipset=/intel.sc/gfwlist +server=/intel.ro/127.0.0.1#5335 +ipset=/intel.ro/gfwlist +server=/nytcn.me/127.0.0.1#5335 +ipset=/nytcn.me/gfwlist +server=/volvopenta.se/127.0.0.1#5335 +ipset=/volvopenta.se/gfwlist +server=/intel.pn/127.0.0.1#5335 +ipset=/intel.pn/gfwlist +server=/foxstudiolot.com/127.0.0.1#5335 +ipset=/foxstudiolot.com/gfwlist +server=/speybay.com/127.0.0.1#5335 +ipset=/speybay.com/gfwlist +server=/intel.ph/127.0.0.1#5335 +ipset=/intel.ph/gfwlist +server=/intel.pa/127.0.0.1#5335 +ipset=/intel.pa/gfwlist +server=/intel.nu/127.0.0.1#5335 +ipset=/intel.nu/gfwlist +server=/directtv-dish.com/127.0.0.1#5335 +ipset=/directtv-dish.com/gfwlist +server=/minihalifax.com/127.0.0.1#5335 +ipset=/minihalifax.com/gfwlist +server=/intel.mu/127.0.0.1#5335 +ipset=/intel.mu/gfwlist +server=/desktopmovie.com/127.0.0.1#5335 +ipset=/desktopmovie.com/gfwlist +server=/dl-iphone.com/127.0.0.1#5335 +ipset=/dl-iphone.com/gfwlist +server=/intel.mn/127.0.0.1#5335 +ipset=/intel.mn/gfwlist +server=/intel.mg/127.0.0.1#5335 +ipset=/intel.mg/gfwlist +server=/thefind.com/127.0.0.1#5335 +ipset=/thefind.com/gfwlist +server=/bmwchampionshipusa.com/127.0.0.1#5335 +ipset=/bmwchampionshipusa.com/gfwlist +server=/mastercard.hu/127.0.0.1#5335 +ipset=/mastercard.hu/gfwlist +server=/intel.me/127.0.0.1#5335 +ipset=/intel.me/gfwlist +server=/yahoo.ws/127.0.0.1#5335 +ipset=/yahoo.ws/gfwlist +server=/twnextdigital.com/127.0.0.1#5335 +ipset=/twnextdigital.com/gfwlist +server=/bridgestoneperformancemedia.net/127.0.0.1#5335 +ipset=/bridgestoneperformancemedia.net/gfwlist +server=/vmwarevmc.com/127.0.0.1#5335 +ipset=/vmwarevmc.com/gfwlist +server=/macbookair.es/127.0.0.1#5335 +ipset=/macbookair.es/gfwlist +server=/vfsco.de/127.0.0.1#5335 +ipset=/vfsco.de/gfwlist +server=/intel.lu/127.0.0.1#5335 +ipset=/intel.lu/gfwlist +server=/intel.lt/127.0.0.1#5335 +ipset=/intel.lt/gfwlist +server=/intel.lk/127.0.0.1#5335 +ipset=/intel.lk/gfwlist +server=/intel.lc/127.0.0.1#5335 +ipset=/intel.lc/gfwlist +server=/intel.ke/127.0.0.1#5335 +ipset=/intel.ke/gfwlist +server=/freebsd.org/127.0.0.1#5335 +ipset=/freebsd.org/gfwlist +server=/ieeecsc.org/127.0.0.1#5335 +ipset=/ieeecsc.org/gfwlist +server=/intel.jp/127.0.0.1#5335 +ipset=/intel.jp/gfwlist +server=/google.gr/127.0.0.1#5335 +ipset=/google.gr/gfwlist +server=/delvenetworks.com/127.0.0.1#5335 +ipset=/delvenetworks.com/gfwlist +server=/intel.it/127.0.0.1#5335 +ipset=/intel.it/gfwlist +server=/qualcomm.co.jp/127.0.0.1#5335 +ipset=/qualcomm.co.jp/gfwlist +server=/intel.in/127.0.0.1#5335 +ipset=/intel.in/gfwlist +server=/ruten.com.tw/127.0.0.1#5335 +ipset=/ruten.com.tw/gfwlist +server=/intel.sg/127.0.0.1#5335 +ipset=/intel.sg/gfwlist +server=/onlinemonsterbeatsonsale.com/127.0.0.1#5335 +ipset=/onlinemonsterbeatsonsale.com/gfwlist +server=/intel.ht/127.0.0.1#5335 +ipset=/intel.ht/gfwlist +server=/intel.hn/127.0.0.1#5335 +ipset=/intel.hn/gfwlist +server=/intel.hk/127.0.0.1#5335 +ipset=/intel.hk/gfwlist +server=/nutramigen.net/127.0.0.1#5335 +ipset=/nutramigen.net/gfwlist +server=/2ch.net/127.0.0.1#5335 +ipset=/2ch.net/gfwlist +server=/intel.gs/127.0.0.1#5335 +ipset=/intel.gs/gfwlist +server=/intel.gm/127.0.0.1#5335 +ipset=/intel.gm/gfwlist +server=/5ch.net/127.0.0.1#5335 +ipset=/5ch.net/gfwlist +server=/intel.gl/127.0.0.1#5335 +ipset=/intel.gl/gfwlist +server=/intel.ge/127.0.0.1#5335 +ipset=/intel.ge/gfwlist +server=/intel.gd/127.0.0.1#5335 +ipset=/intel.gd/gfwlist +server=/udacity.com/127.0.0.1#5335 +ipset=/udacity.com/gfwlist +server=/singtaonewscorp.com/127.0.0.1#5335 +ipset=/singtaonewscorp.com/gfwlist +server=/intel.es/127.0.0.1#5335 +ipset=/intel.es/gfwlist +server=/intel.ec/127.0.0.1#5335 +ipset=/intel.ec/gfwlist +server=/intel.de/127.0.0.1#5335 +ipset=/intel.de/gfwlist +server=/intel.cz/127.0.0.1#5335 +ipset=/intel.cz/gfwlist +server=/yahoo.co.ve/127.0.0.1#5335 +ipset=/yahoo.co.ve/gfwlist +server=/wikia.nocookie.net/127.0.0.1#5335 +ipset=/wikia.nocookie.net/gfwlist +server=/intel.com.uy/127.0.0.1#5335 +ipset=/intel.com.uy/gfwlist +server=/intel.com.tr/127.0.0.1#5335 +ipset=/intel.com.tr/gfwlist +server=/intel.com.pe/127.0.0.1#5335 +ipset=/intel.com.pe/gfwlist +server=/pillbeatsblackfridaysale.com/127.0.0.1#5335 +ipset=/pillbeatsblackfridaysale.com/gfwlist +server=/ibook.co.nz/127.0.0.1#5335 +ipset=/ibook.co.nz/gfwlist +server=/intel.com.jm/127.0.0.1#5335 +ipset=/intel.com.jm/gfwlist +server=/bmw.nl/127.0.0.1#5335 +ipset=/bmw.nl/gfwlist +server=/bloombergarcade.com/127.0.0.1#5335 +ipset=/bloombergarcade.com/gfwlist +server=/minihalifax.ca/127.0.0.1#5335 +ipset=/minihalifax.ca/gfwlist +server=/intel.com.ec/127.0.0.1#5335 +ipset=/intel.com.ec/gfwlist +server=/intel.com.co/127.0.0.1#5335 +ipset=/intel.com.co/gfwlist +server=/intel.com.bo/127.0.0.1#5335 +ipset=/intel.com.bo/gfwlist +server=/intel.com.au/127.0.0.1#5335 +ipset=/intel.com.au/gfwlist +server=/nikeshoes4u.com/127.0.0.1#5335 +ipset=/nikeshoes4u.com/gfwlist +server=/google.cv/127.0.0.1#5335 +ipset=/google.cv/gfwlist +server=/intel.com.ar/127.0.0.1#5335 +ipset=/intel.com.ar/gfwlist +server=/minisoindia.com/127.0.0.1#5335 +ipset=/minisoindia.com/gfwlist +server=/intel.co.uk/127.0.0.1#5335 +ipset=/intel.co.uk/gfwlist +server=/intel.co.il/127.0.0.1#5335 +ipset=/intel.co.il/gfwlist +server=/intel.co.id/127.0.0.1#5335 +ipset=/intel.co.id/gfwlist +server=/canon.ba/127.0.0.1#5335 +ipset=/canon.ba/gfwlist +server=/mega.co.nz/127.0.0.1#5335 +ipset=/mega.co.nz/gfwlist +server=/intel.cm/127.0.0.1#5335 +ipset=/intel.cm/gfwlist +server=/intel.cg/127.0.0.1#5335 +ipset=/intel.cg/gfwlist +server=/workspaceair.com/127.0.0.1#5335 +ipset=/workspaceair.com/gfwlist +server=/appdynamics.fr/127.0.0.1#5335 +ipset=/appdynamics.fr/gfwlist +server=/intel.cc/127.0.0.1#5335 +ipset=/intel.cc/gfwlist +server=/myoctocat.com/127.0.0.1#5335 +ipset=/myoctocat.com/gfwlist +server=/uug27.com/127.0.0.1#5335 +ipset=/uug27.com/gfwlist +server=/crosswalk-project.com/127.0.0.1#5335 +ipset=/crosswalk-project.com/gfwlist +server=/bmwusaservice.com/127.0.0.1#5335 +ipset=/bmwusaservice.com/gfwlist +server=/beatdrdres.com/127.0.0.1#5335 +ipset=/beatdrdres.com/gfwlist +server=/vmwareidentity.com/127.0.0.1#5335 +ipset=/vmwareidentity.com/gfwlist +server=/paypalhere.org/127.0.0.1#5335 +ipset=/paypalhere.org/gfwlist +server=/intel.az/127.0.0.1#5335 +ipset=/intel.az/gfwlist +server=/intel.at/127.0.0.1#5335 +ipset=/intel.at/gfwlist +server=/businessinsider.my/127.0.0.1#5335 +ipset=/businessinsider.my/gfwlist +server=/intel.ai/127.0.0.1#5335 +ipset=/intel.ai/gfwlist +server=/click-url.com/127.0.0.1#5335 +ipset=/click-url.com/gfwlist +server=/intel.ag/127.0.0.1#5335 +ipset=/intel.ag/gfwlist +server=/69vj.com/127.0.0.1#5335 +ipset=/69vj.com/gfwlist +server=/bnef.com/127.0.0.1#5335 +ipset=/bnef.com/gfwlist +server=/pycon.org/127.0.0.1#5335 +ipset=/pycon.org/gfwlist +server=/intel.ae/127.0.0.1#5335 +ipset=/intel.ae/gfwlist +server=/gettyimages.ca/127.0.0.1#5335 +ipset=/gettyimages.ca/gfwlist +server=/beatsbydrecheaponlinesales.com/127.0.0.1#5335 +ipset=/beatsbydrecheaponlinesales.com/gfwlist +server=/s81c.com/127.0.0.1#5335 +ipset=/s81c.com/gfwlist +server=/pinterest.mx/127.0.0.1#5335 +ipset=/pinterest.mx/gfwlist +server=/webofknowledge.com/127.0.0.1#5335 +ipset=/webofknowledge.com/gfwlist +server=/mastercardmoments.com/127.0.0.1#5335 +ipset=/mastercardmoments.com/gfwlist +server=/applemasters.info/127.0.0.1#5335 +ipset=/applemasters.info/gfwlist +server=/bestbuystores.com/127.0.0.1#5335 +ipset=/bestbuystores.com/gfwlist +server=/justdoit.us/127.0.0.1#5335 +ipset=/justdoit.us/gfwlist +server=/pearsoned.com/127.0.0.1#5335 +ipset=/pearsoned.com/gfwlist +server=/ibm.eu/127.0.0.1#5335 +ipset=/ibm.eu/gfwlist +server=/pugpig-dev.com/127.0.0.1#5335 +ipset=/pugpig-dev.com/gfwlist +server=/xoom-experience.com/127.0.0.1#5335 +ipset=/xoom-experience.com/gfwlist +server=/e-bay.com/127.0.0.1#5335 +ipset=/e-bay.com/gfwlist +server=/visa.co.cr/127.0.0.1#5335 +ipset=/visa.co.cr/gfwlist +server=/blpcareers.com/127.0.0.1#5335 +ipset=/blpcareers.com/gfwlist +server=/dowjoneson.com/127.0.0.1#5335 +ipset=/dowjoneson.com/gfwlist +server=/strepsils.hr/127.0.0.1#5335 +ipset=/strepsils.hr/gfwlist +server=/lolclub.org/127.0.0.1#5335 +ipset=/lolclub.org/gfwlist +server=/foxtel.com/127.0.0.1#5335 +ipset=/foxtel.com/gfwlist +server=/hpstore.corpmerchandise.com/127.0.0.1#5335 +ipset=/hpstore.corpmerchandise.com/gfwlist +server=/pros.ee/127.0.0.1#5335 +ipset=/pros.ee/gfwlist +server=/www8-hp.com/127.0.0.1#5335 +ipset=/www8-hp.com/gfwlist +server=/verisign.fr/127.0.0.1#5335 +ipset=/verisign.fr/gfwlist +server=/strepsils.ch/127.0.0.1#5335 +ipset=/strepsils.ch/gfwlist +server=/touchsmartpc.org/127.0.0.1#5335 +ipset=/touchsmartpc.org/gfwlist +server=/singtao.com/127.0.0.1#5335 +ipset=/singtao.com/gfwlist +server=/beats-headphones-buy-cheap.com/127.0.0.1#5335 +ipset=/beats-headphones-buy-cheap.com/gfwlist +server=/mystrikingly.com/127.0.0.1#5335 +ipset=/mystrikingly.com/gfwlist +server=/serviceshp.com/127.0.0.1#5335 +ipset=/serviceshp.com/gfwlist +server=/realclearmarkets.com/127.0.0.1#5335 +ipset=/realclearmarkets.com/gfwlist +server=/ebay.org/127.0.0.1#5335 +ipset=/ebay.org/gfwlist +server=/printspots.net/127.0.0.1#5335 +ipset=/printspots.net/gfwlist +server=/paylike.com/127.0.0.1#5335 +ipset=/paylike.com/gfwlist +server=/printspots.com/127.0.0.1#5335 +ipset=/printspots.com/gfwlist +server=/custombeatsforcheap.com/127.0.0.1#5335 +ipset=/custombeatsforcheap.com/gfwlist +server=/epochmall.com/127.0.0.1#5335 +ipset=/epochmall.com/gfwlist +server=/printersetupsupport.com/127.0.0.1#5335 +ipset=/printersetupsupport.com/gfwlist +server=/leavinghpinc.com/127.0.0.1#5335 +ipset=/leavinghpinc.com/gfwlist +server=/videopress.com/127.0.0.1#5335 +ipset=/videopress.com/gfwlist +server=/instantink.com/127.0.0.1#5335 +ipset=/instantink.com/gfwlist +server=/ieeesmc.org/127.0.0.1#5335 +ipset=/ieeesmc.org/gfwlist +server=/inkchoice.com/127.0.0.1#5335 +ipset=/inkchoice.com/gfwlist +server=/i-123-hp.com/127.0.0.1#5335 +ipset=/i-123-hp.com/gfwlist +server=/bmwofannapolis.com/127.0.0.1#5335 +ipset=/bmwofannapolis.com/gfwlist +server=/powerofresolve.ca/127.0.0.1#5335 +ipset=/powerofresolve.ca/gfwlist +server=/powersunitedvr.com/127.0.0.1#5335 +ipset=/powersunitedvr.com/gfwlist +server=/hpwallart.com/127.0.0.1#5335 +ipset=/hpwallart.com/gfwlist +server=/amazon-launchpad.com/127.0.0.1#5335 +ipset=/amazon-launchpad.com/gfwlist +server=/startupschool.org/127.0.0.1#5335 +ipset=/startupschool.org/gfwlist +server=/paypal-retail.com/127.0.0.1#5335 +ipset=/paypal-retail.com/gfwlist +server=/needforspeedeliminator.com/127.0.0.1#5335 +ipset=/needforspeedeliminator.com/gfwlist +server=/cheapbeatsbydreoutlets2013.com/127.0.0.1#5335 +ipset=/cheapbeatsbydreoutlets2013.com/gfwlist +server=/parstream.org/127.0.0.1#5335 +ipset=/parstream.org/gfwlist +server=/hpveer.com/127.0.0.1#5335 +ipset=/hpveer.com/gfwlist +server=/panasonic.jp/127.0.0.1#5335 +ipset=/panasonic.jp/gfwlist +server=/anigema.jp/127.0.0.1#5335 +ipset=/anigema.jp/gfwlist +server=/yahoo.ge/127.0.0.1#5335 +ipset=/yahoo.ge/gfwlist +server=/hptrainingcenter.com/127.0.0.1#5335 +ipset=/hptrainingcenter.com/gfwlist +server=/yahoo.dm/127.0.0.1#5335 +ipset=/yahoo.dm/gfwlist +server=/telegram.space/127.0.0.1#5335 +ipset=/telegram.space/gfwlist +server=/duckduckgo.co/127.0.0.1#5335 +ipset=/duckduckgo.co/gfwlist +server=/pearson.ch/127.0.0.1#5335 +ipset=/pearson.ch/gfwlist +server=/cbsi.video/127.0.0.1#5335 +ipset=/cbsi.video/gfwlist +server=/standardsuniversity.org/127.0.0.1#5335 +ipset=/standardsuniversity.org/gfwlist +server=/ebaysocial.com/127.0.0.1#5335 +ipset=/ebaysocial.com/gfwlist +server=/hpsprocket.com/127.0.0.1#5335 +ipset=/hpsprocket.com/gfwlist +server=/googlee.com/127.0.0.1#5335 +ipset=/googlee.com/gfwlist +server=/pearsonclinical.com.br/127.0.0.1#5335 +ipset=/pearsonclinical.com.br/gfwlist +server=/beatsbydresingapores.com/127.0.0.1#5335 +ipset=/beatsbydresingapores.com/gfwlist +server=/epochtimes.eu/127.0.0.1#5335 +ipset=/epochtimes.eu/gfwlist +server=/bmw-yachtsport.com/127.0.0.1#5335 +ipset=/bmw-yachtsport.com/gfwlist +server=/bmw.in/127.0.0.1#5335 +ipset=/bmw.in/gfwlist +server=/applestore.co.jp/127.0.0.1#5335 +ipset=/applestore.co.jp/gfwlist +server=/hpsmartupdate.com/127.0.0.1#5335 +ipset=/hpsmartupdate.com/gfwlist +server=/hpsmartstage.com/127.0.0.1#5335 +ipset=/hpsmartstage.com/gfwlist +server=/hpsmarts.com/127.0.0.1#5335 +ipset=/hpsmarts.com/gfwlist +server=/foxfdm.com/127.0.0.1#5335 +ipset=/foxfdm.com/gfwlist +server=/hpshopping.hk/127.0.0.1#5335 +ipset=/hpshopping.hk/gfwlist +server=/bmw-special-sales.com/127.0.0.1#5335 +ipset=/bmw-special-sales.com/gfwlist +server=/hpshoping.com/127.0.0.1#5335 +ipset=/hpshoping.com/gfwlist +server=/visa.ro/127.0.0.1#5335 +ipset=/visa.ro/gfwlist +server=/hpshop.com/127.0.0.1#5335 +ipset=/hpshop.com/gfwlist +server=/verisign.jobs/127.0.0.1#5335 +ipset=/verisign.jobs/gfwlist +server=/myfoxlubbock.com/127.0.0.1#5335 +ipset=/myfoxlubbock.com/gfwlist +server=/xoom.io/127.0.0.1#5335 +ipset=/xoom.io/gfwlist +server=/apple.ch/127.0.0.1#5335 +ipset=/apple.ch/gfwlist +server=/hpserver.com/127.0.0.1#5335 +ipset=/hpserver.com/gfwlist +server=/hpsalescentral.com/127.0.0.1#5335 +ipset=/hpsalescentral.com/gfwlist +server=/pvp.tv/127.0.0.1#5335 +ipset=/pvp.tv/gfwlist +server=/hpprintersupplies.com/127.0.0.1#5335 +ipset=/hpprintersupplies.com/gfwlist +server=/google.mu/127.0.0.1#5335 +ipset=/google.mu/gfwlist +server=/youtube.iq/127.0.0.1#5335 +ipset=/youtube.iq/gfwlist +server=/playhearthstone.com/127.0.0.1#5335 +ipset=/playhearthstone.com/gfwlist +server=/nikefootballcleats.com/127.0.0.1#5335 +ipset=/nikefootballcleats.com/gfwlist +server=/disneychannelroadtrip.com/127.0.0.1#5335 +ipset=/disneychannelroadtrip.com/gfwlist +server=/hpprinterdrivers.com/127.0.0.1#5335 +ipset=/hpprinterdrivers.com/gfwlist +server=/bmw.com.mt/127.0.0.1#5335 +ipset=/bmw.com.mt/gfwlist +server=/hpphotoscanners.com/127.0.0.1#5335 +ipset=/hpphotoscanners.com/gfwlist +server=/beatscustomblackfriday.com/127.0.0.1#5335 +ipset=/beatscustomblackfriday.com/gfwlist +server=/hppavillionlaptop.com/127.0.0.1#5335 +ipset=/hppavillionlaptop.com/gfwlist +server=/appleonline.com/127.0.0.1#5335 +ipset=/appleonline.com/gfwlist +server=/rentaride.com/127.0.0.1#5335 +ipset=/rentaride.com/gfwlist +server=/ipod.co.nz/127.0.0.1#5335 +ipset=/ipod.co.nz/gfwlist +server=/ccna5.net/127.0.0.1#5335 +ipset=/ccna5.net/gfwlist +server=/hpmicrcartridge.com/127.0.0.1#5335 +ipset=/hpmicrcartridge.com/gfwlist +server=/hpmemorychips.com/127.0.0.1#5335 +ipset=/hpmemorychips.com/gfwlist +server=/hplipopensource.com/127.0.0.1#5335 +ipset=/hplipopensource.com/gfwlist +server=/pinterest.ie/127.0.0.1#5335 +ipset=/pinterest.ie/gfwlist +server=/beatsbydresolohdonline-canada.com/127.0.0.1#5335 +ipset=/beatsbydresolohdonline-canada.com/gfwlist +server=/instagramphoto.com/127.0.0.1#5335 +ipset=/instagramphoto.com/gfwlist +server=/sohcradio.com/127.0.0.1#5335 +ipset=/sohcradio.com/gfwlist +server=/beatsbydre-studio.com/127.0.0.1#5335 +ipset=/beatsbydre-studio.com/gfwlist +server=/zsh.org/127.0.0.1#5335 +ipset=/zsh.org/gfwlist +server=/hpkeyboard.com/127.0.0.1#5335 +ipset=/hpkeyboard.com/gfwlist +server=/bnetshopus.akamaized.net/127.0.0.1#5335 +ipset=/bnetshopus.akamaized.net/gfwlist +server=/foxrichmond.com/127.0.0.1#5335 +ipset=/foxrichmond.com/gfwlist +server=/hpinstantink.ca/127.0.0.1#5335 +ipset=/hpinstantink.ca/gfwlist +server=/hpinkjet.com/127.0.0.1#5335 +ipset=/hpinkjet.com/gfwlist +server=/ebay.ph/127.0.0.1#5335 +ipset=/ebay.ph/gfwlist +server=/hpinc.net/127.0.0.1#5335 +ipset=/hpinc.net/gfwlist +server=/hpinc.info/127.0.0.1#5335 +ipset=/hpinc.info/gfwlist +server=/hpiie.org/127.0.0.1#5335 +ipset=/hpiie.org/gfwlist +server=/javdove8.xyz/127.0.0.1#5335 +ipset=/javdove8.xyz/gfwlist +server=/hpgpas.com/127.0.0.1#5335 +ipset=/hpgpas.com/gfwlist +server=/imoviegallery.com/127.0.0.1#5335 +ipset=/imoviegallery.com/gfwlist +server=/yahoo.vg/127.0.0.1#5335 +ipset=/yahoo.vg/gfwlist +server=/hpeprint.com/127.0.0.1#5335 +ipset=/hpeprint.com/gfwlist +server=/hpengage.com/127.0.0.1#5335 +ipset=/hpengage.com/gfwlist +server=/miitomo.com/127.0.0.1#5335 +ipset=/miitomo.com/gfwlist +server=/aibaobei.me/127.0.0.1#5335 +ipset=/aibaobei.me/gfwlist +server=/hpdrivers.org/127.0.0.1#5335 +ipset=/hpdrivers.org/gfwlist +server=/paypalprepagata.com/127.0.0.1#5335 +ipset=/paypalprepagata.com/gfwlist +server=/hpdreamcolor.com/127.0.0.1#5335 +ipset=/hpdreamcolor.com/gfwlist +server=/hpdesignjetl25500.com/127.0.0.1#5335 +ipset=/hpdesignjetl25500.com/gfwlist +server=/graphengine.io/127.0.0.1#5335 +ipset=/graphengine.io/gfwlist +server=/alivevue.com/127.0.0.1#5335 +ipset=/alivevue.com/gfwlist +server=/hpdaas.com/127.0.0.1#5335 +ipset=/hpdaas.com/gfwlist +server=/speedtest.com.hk/127.0.0.1#5335 +ipset=/speedtest.com.hk/gfwlist +server=/needforspeedshowdown.com/127.0.0.1#5335 +ipset=/needforspeedshowdown.com/gfwlist +server=/miniargentina.com/127.0.0.1#5335 +ipset=/miniargentina.com/gfwlist +server=/heptio.com/127.0.0.1#5335 +ipset=/heptio.com/gfwlist +server=/hpcustomersupport.com/127.0.0.1#5335 +ipset=/hpcustomersupport.com/gfwlist +server=/loanbuilder.com/127.0.0.1#5335 +ipset=/loanbuilder.com/gfwlist +server=/bmw-motorrad.com.mx/127.0.0.1#5335 +ipset=/bmw-motorrad.com.mx/gfwlist +server=/attinternetservice.com/127.0.0.1#5335 +ipset=/attinternetservice.com/gfwlist +server=/hpcu.org/127.0.0.1#5335 +ipset=/hpcu.org/gfwlist +server=/mobileinternational.com/127.0.0.1#5335 +ipset=/mobileinternational.com/gfwlist +server=/mini-connected.fr/127.0.0.1#5335 +ipset=/mini-connected.fr/gfwlist +server=/volvoce.com/127.0.0.1#5335 +ipset=/volvoce.com/gfwlist +server=/staticflickr.com/127.0.0.1#5335 +ipset=/staticflickr.com/gfwlist +server=/hpconnectedstage.com/127.0.0.1#5335 +ipset=/hpconnectedstage.com/gfwlist +server=/api-priconne-redive.cygames.jp/127.0.0.1#5335 +ipset=/api-priconne-redive.cygames.jp/gfwlist +server=/linuxfoundation.org/127.0.0.1#5335 +ipset=/linuxfoundation.org/gfwlist +server=/nativeincolour.com.au/127.0.0.1#5335 +ipset=/nativeincolour.com.au/gfwlist +server=/alphabet.no/127.0.0.1#5335 +ipset=/alphabet.no/gfwlist +server=/nbcuniversal.com/127.0.0.1#5335 +ipset=/nbcuniversal.com/gfwlist +server=/hpconnected.org/127.0.0.1#5335 +ipset=/hpconnected.org/gfwlist +server=/pinterest.jp/127.0.0.1#5335 +ipset=/pinterest.jp/gfwlist +server=/ebayanunsios.net/127.0.0.1#5335 +ipset=/ebayanunsios.net/gfwlist +server=/hpcomputerservices.com/127.0.0.1#5335 +ipset=/hpcomputerservices.com/gfwlist +server=/hpcomputers.com/127.0.0.1#5335 +ipset=/hpcomputers.com/gfwlist +server=/fecbooc.com/127.0.0.1#5335 +ipset=/fecbooc.com/gfwlist +server=/bmw.com.br/127.0.0.1#5335 +ipset=/bmw.com.br/gfwlist +server=/hpcmw.net/127.0.0.1#5335 +ipset=/hpcmw.net/gfwlist +server=/wifi-mx.com/127.0.0.1#5335 +ipset=/wifi-mx.com/gfwlist +server=/rpmfusion.org/127.0.0.1#5335 +ipset=/rpmfusion.org/gfwlist +server=/icloud.se/127.0.0.1#5335 +ipset=/icloud.se/gfwlist +server=/eastweek.com.hk/127.0.0.1#5335 +ipset=/eastweek.com.hk/gfwlist +server=/hpccp.com/127.0.0.1#5335 +ipset=/hpccp.com/gfwlist +server=/hpbluecarpet.net/127.0.0.1#5335 +ipset=/hpbluecarpet.net/gfwlist +server=/applepaycash.net/127.0.0.1#5335 +ipset=/applepaycash.net/gfwlist +server=/hpbluecarpet.com/127.0.0.1#5335 +ipset=/hpbluecarpet.com/gfwlist +server=/cybermondaybeats4sale.com/127.0.0.1#5335 +ipset=/cybermondaybeats4sale.com/gfwlist +server=/hpbestbuy.com/127.0.0.1#5335 +ipset=/hpbestbuy.com/gfwlist +server=/line-scdn.net/127.0.0.1#5335 +ipset=/line-scdn.net/gfwlist +server=/bitbank.cc/127.0.0.1#5335 +ipset=/bitbank.cc/gfwlist +server=/iphoto.no/127.0.0.1#5335 +ipset=/iphoto.no/gfwlist +server=/hp3dmetals.com/127.0.0.1#5335 +ipset=/hp3dmetals.com/gfwlist +server=/hp.io/127.0.0.1#5335 +ipset=/hp.io/gfwlist +server=/nikegolf.ca/127.0.0.1#5335 +ipset=/nikegolf.ca/gfwlist +server=/hp.company/127.0.0.1#5335 +ipset=/hp.company/gfwlist +server=/applepay.rs/127.0.0.1#5335 +ipset=/applepay.rs/gfwlist +server=/hp-ww.com/127.0.0.1#5335 +ipset=/hp-ww.com/gfwlist +server=/hp-mns.com/127.0.0.1#5335 +ipset=/hp-mns.com/gfwlist +server=/hp-invent.info/127.0.0.1#5335 +ipset=/hp-invent.info/gfwlist +server=/verizon.net/127.0.0.1#5335 +ipset=/verizon.net/gfwlist +server=/hp-infolab.com/127.0.0.1#5335 +ipset=/hp-infolab.com/gfwlist +server=/nextmag.com.tw/127.0.0.1#5335 +ipset=/nextmag.com.tw/gfwlist +server=/hp-imagine.com/127.0.0.1#5335 +ipset=/hp-imagine.com/gfwlist +server=/splatoon2tournament.com/127.0.0.1#5335 +ipset=/splatoon2tournament.com/gfwlist +server=/tvbanywhere.com.sg/127.0.0.1#5335 +ipset=/tvbanywhere.com.sg/gfwlist +server=/gnu.org/127.0.0.1#5335 +ipset=/gnu.org/gfwlist +server=/paypa1.org/127.0.0.1#5335 +ipset=/paypa1.org/gfwlist +server=/alterauserforum.com/127.0.0.1#5335 +ipset=/alterauserforum.com/gfwlist +server=/battlefieldv.com/127.0.0.1#5335 +ipset=/battlefieldv.com/gfwlist +server=/livingyourambition.com/127.0.0.1#5335 +ipset=/livingyourambition.com/gfwlist +server=/zoho.eu/127.0.0.1#5335 +ipset=/zoho.eu/gfwlist +server=/demoprint.com/127.0.0.1#5335 +ipset=/demoprint.com/gfwlist +server=/google.com.vn/127.0.0.1#5335 +ipset=/google.com.vn/gfwlist +server=/david-laserscanner.com/127.0.0.1#5335 +ipset=/david-laserscanner.com/gfwlist +server=/compaq.org/127.0.0.1#5335 +ipset=/compaq.org/gfwlist +server=/oneworldmanystories.com/127.0.0.1#5335 +ipset=/oneworldmanystories.com/gfwlist +server=/thesun.co.uk/127.0.0.1#5335 +ipset=/thesun.co.uk/gfwlist +server=/campushp.com/127.0.0.1#5335 +ipset=/campushp.com/gfwlist +server=/as-hp.ca/127.0.0.1#5335 +ipset=/as-hp.ca/gfwlist +server=/8008206616.com/127.0.0.1#5335 +ipset=/8008206616.com/gfwlist +server=/123hplaserjet.com/127.0.0.1#5335 +ipset=/123hplaserjet.com/gfwlist +server=/123-hp.com/127.0.0.1#5335 +ipset=/123-hp.com/gfwlist +server=/mysimsracing.com/127.0.0.1#5335 +ipset=/mysimsracing.com/gfwlist +server=/jos.com/127.0.0.1#5335 +ipset=/jos.com/gfwlist +server=/hkbnes.net/127.0.0.1#5335 +ipset=/hkbnes.net/gfwlist +server=/hkbn.com.hk/127.0.0.1#5335 +ipset=/hkbn.com.hk/gfwlist +server=/csifund.org/127.0.0.1#5335 +ipset=/csifund.org/gfwlist +server=/youporn.com/127.0.0.1#5335 +ipset=/youporn.com/gfwlist +server=/disney.fr/127.0.0.1#5335 +ipset=/disney.fr/gfwlist +server=/appleid.com/127.0.0.1#5335 +ipset=/appleid.com/gfwlist +server=/googlecode.com/127.0.0.1#5335 +ipset=/googlecode.com/gfwlist +server=/dicela.com/127.0.0.1#5335 +ipset=/dicela.com/gfwlist +server=/huffingtonpost.de/127.0.0.1#5335 +ipset=/huffingtonpost.de/gfwlist +server=/travelex.com.om/127.0.0.1#5335 +ipset=/travelex.com.om/gfwlist +server=/fcacebook.com/127.0.0.1#5335 +ipset=/fcacebook.com/gfwlist +server=/disney.pl/127.0.0.1#5335 +ipset=/disney.pl/gfwlist +server=/xda-developers.com/127.0.0.1#5335 +ipset=/xda-developers.com/gfwlist +server=/xn--gogl-0nd52e.com/127.0.0.1#5335 +ipset=/xn--gogl-0nd52e.com/gfwlist +server=/xn--ggle-55da.com/127.0.0.1#5335 +ipset=/xn--ggle-55da.com/gfwlist +server=/xn--flw351e.com/127.0.0.1#5335 +ipset=/xn--flw351e.com/gfwlist +server=/scholar.google.co.il/127.0.0.1#5335 +ipset=/scholar.google.co.il/gfwlist +server=/xn--9trs65b.com/127.0.0.1#5335 +ipset=/xn--9trs65b.com/gfwlist +server=/gfotolia.com/127.0.0.1#5335 +ipset=/gfotolia.com/gfwlist +server=/ieeer10.org/127.0.0.1#5335 +ipset=/ieeer10.org/gfwlist +server=/atlassian.com/127.0.0.1#5335 +ipset=/atlassian.com/gfwlist +server=/filipino-music.net/127.0.0.1#5335 +ipset=/filipino-music.net/gfwlist +server=/withgoogle.com/127.0.0.1#5335 +ipset=/withgoogle.com/gfwlist +server=/bmw.com.do/127.0.0.1#5335 +ipset=/bmw.com.do/gfwlist +server=/jsbridgestone.com/127.0.0.1#5335 +ipset=/jsbridgestone.com/gfwlist +server=/miniso.ie/127.0.0.1#5335 +ipset=/miniso.ie/gfwlist +server=/alphabet.co.hu/127.0.0.1#5335 +ipset=/alphabet.co.hu/gfwlist +server=/webappfieldguide.com/127.0.0.1#5335 +ipset=/webappfieldguide.com/gfwlist +server=/waze.com/127.0.0.1#5335 +ipset=/waze.com/gfwlist +server=/waymo.com/127.0.0.1#5335 +ipset=/waymo.com/gfwlist +server=/ministeagathe.com/127.0.0.1#5335 +ipset=/ministeagathe.com/gfwlist +server=/verilystudywatch.org/127.0.0.1#5335 +ipset=/verilystudywatch.org/gfwlist +server=/ebayit.com/127.0.0.1#5335 +ipset=/ebayit.com/gfwlist +server=/volvotrucks.am/127.0.0.1#5335 +ipset=/volvotrucks.am/gfwlist +server=/verilystudyhub.com/127.0.0.1#5335 +ipset=/verilystudyhub.com/gfwlist +server=/appsonebay.net/127.0.0.1#5335 +ipset=/appsonebay.net/gfwlist +server=/volvobuses.ph/127.0.0.1#5335 +ipset=/volvobuses.ph/gfwlist +server=/google.lu/127.0.0.1#5335 +ipset=/google.lu/gfwlist +server=/starbucks.ph/127.0.0.1#5335 +ipset=/starbucks.ph/gfwlist +server=/unfiltered.news/127.0.0.1#5335 +ipset=/unfiltered.news/gfwlist +server=/thinkquarterly.com/127.0.0.1#5335 +ipset=/thinkquarterly.com/gfwlist +server=/iosinthecar.com/127.0.0.1#5335 +ipset=/iosinthecar.com/gfwlist +server=/tensorflow.org/127.0.0.1#5335 +ipset=/tensorflow.org/gfwlist +server=/nintendonyc.com/127.0.0.1#5335 +ipset=/nintendonyc.com/gfwlist +server=/synergyse.com/127.0.0.1#5335 +ipset=/synergyse.com/gfwlist +server=/animezilla.com/127.0.0.1#5335 +ipset=/animezilla.com/gfwlist +server=/stxmosquitoproject.com/127.0.0.1#5335 +ipset=/stxmosquitoproject.com/gfwlist +server=/tribler.org/127.0.0.1#5335 +ipset=/tribler.org/gfwlist +server=/bmw-grouparchives.com/127.0.0.1#5335 +ipset=/bmw-grouparchives.com/gfwlist +server=/zencoder.com/127.0.0.1#5335 +ipset=/zencoder.com/gfwlist +server=/freedomplatform.tv/127.0.0.1#5335 +ipset=/freedomplatform.tv/gfwlist +server=/ninemediaroom.com.au/127.0.0.1#5335 +ipset=/ninemediaroom.com.au/gfwlist +server=/dilcdn.com/127.0.0.1#5335 +ipset=/dilcdn.com/gfwlist +server=/gfx.ms/127.0.0.1#5335 +ipset=/gfx.ms/gfwlist +server=/brazzers.com/127.0.0.1#5335 +ipset=/brazzers.com/gfwlist +server=/stcroixmosquitoproject.com/127.0.0.1#5335 +ipset=/stcroixmosquitoproject.com/gfwlist +server=/bbgwatch.com/127.0.0.1#5335 +ipset=/bbgwatch.com/gfwlist +server=/stcroixmosquito.com/127.0.0.1#5335 +ipset=/stcroixmosquito.com/gfwlist +server=/adobestock.com/127.0.0.1#5335 +ipset=/adobestock.com/gfwlist +server=/blogspot.co.nz/127.0.0.1#5335 +ipset=/blogspot.co.nz/gfwlist +server=/enfamil.es/127.0.0.1#5335 +ipset=/enfamil.es/gfwlist +server=/aorus.com/127.0.0.1#5335 +ipset=/aorus.com/gfwlist +server=/illianacomputerrecycling.com/127.0.0.1#5335 +ipset=/illianacomputerrecycling.com/gfwlist +server=/ebay-25-assets.s3-us-west-1.amazonaws.com/127.0.0.1#5335 +ipset=/ebay-25-assets.s3-us-west-1.amazonaws.com/gfwlist +server=/apole.com/127.0.0.1#5335 +ipset=/apole.com/gfwlist +server=/solveforx.com/127.0.0.1#5335 +ipset=/solveforx.com/gfwlist +server=/screenwisetrendspanel.com/127.0.0.1#5335 +ipset=/screenwisetrendspanel.com/gfwlist +server=/screenwisetrends.com/127.0.0.1#5335 +ipset=/screenwisetrends.com/gfwlist +server=/mastercard.es/127.0.0.1#5335 +ipset=/mastercard.es/gfwlist +server=/easports.jp/127.0.0.1#5335 +ipset=/easports.jp/gfwlist +server=/jwpltx.com/127.0.0.1#5335 +ipset=/jwpltx.com/gfwlist +server=/finishinfo.com/127.0.0.1#5335 +ipset=/finishinfo.com/gfwlist +server=/login-paypal.info/127.0.0.1#5335 +ipset=/login-paypal.info/gfwlist +server=/sfx.ms/127.0.0.1#5335 +ipset=/sfx.ms/gfwlist +server=/run.app/127.0.0.1#5335 +ipset=/run.app/gfwlist +server=/huffingtonpost.com/127.0.0.1#5335 +ipset=/huffingtonpost.com/gfwlist +server=/fontshop.com/127.0.0.1#5335 +ipset=/fontshop.com/gfwlist +server=/cnivogue.com.au/127.0.0.1#5335 +ipset=/cnivogue.com.au/gfwlist +server=/ridepenguin.com/127.0.0.1#5335 +ipset=/ridepenguin.com/gfwlist +server=/m12.vc/127.0.0.1#5335 +ipset=/m12.vc/gfwlist +server=/esbeatsbydrebuy.com/127.0.0.1#5335 +ipset=/esbeatsbydrebuy.com/gfwlist +server=/quiksee.com/127.0.0.1#5335 +ipset=/quiksee.com/gfwlist +server=/happymeal.co.nz/127.0.0.1#5335 +ipset=/happymeal.co.nz/gfwlist +server=/questvisual.com/127.0.0.1#5335 +ipset=/questvisual.com/gfwlist +server=/paypalindia.com/127.0.0.1#5335 +ipset=/paypalindia.com/gfwlist +server=/foxrobots.com/127.0.0.1#5335 +ipset=/foxrobots.com/gfwlist +server=/dtci.co/127.0.0.1#5335 +ipset=/dtci.co/gfwlist +server=/projectara.com/127.0.0.1#5335 +ipset=/projectara.com/gfwlist +server=/adobess.com/127.0.0.1#5335 +ipset=/adobess.com/gfwlist +server=/bmwmagazine.de/127.0.0.1#5335 +ipset=/bmwmagazine.de/gfwlist +server=/privacysandbox.com/127.0.0.1#5335 +ipset=/privacysandbox.com/gfwlist +server=/news.net.au/127.0.0.1#5335 +ipset=/news.net.au/gfwlist +server=/pixate.com/127.0.0.1#5335 +ipset=/pixate.com/gfwlist +server=/kindleoasis.us/127.0.0.1#5335 +ipset=/kindleoasis.us/gfwlist +server=/bmw-authority-vehicles.com/127.0.0.1#5335 +ipset=/bmw-authority-vehicles.com/gfwlist +server=/picasaweb.com/127.0.0.1#5335 +ipset=/picasaweb.com/gfwlist +server=/amerikaninsesi.org/127.0.0.1#5335 +ipset=/amerikaninsesi.org/gfwlist +server=/connectionslearning.com/127.0.0.1#5335 +ipset=/connectionslearning.com/gfwlist +server=/ebay-us.com/127.0.0.1#5335 +ipset=/ebay-us.com/gfwlist +server=/panoramio.com/127.0.0.1#5335 +ipset=/panoramio.com/gfwlist +server=/pageview.mobi/127.0.0.1#5335 +ipset=/pageview.mobi/gfwlist +server=/brand-protection-team.com/127.0.0.1#5335 +ipset=/brand-protection-team.com/gfwlist +server=/pagespeedmobilizer.com/127.0.0.1#5335 +ipset=/pagespeedmobilizer.com/gfwlist +server=/vfsco.ca/127.0.0.1#5335 +ipset=/vfsco.ca/gfwlist +server=/geek-squad.org/127.0.0.1#5335 +ipset=/geek-squad.org/gfwlist +server=/colorprotechnology.com/127.0.0.1#5335 +ipset=/colorprotechnology.com/gfwlist +server=/beatsdrdreneon.com/127.0.0.1#5335 +ipset=/beatsdrdreneon.com/gfwlist +server=/mini-tahiti.com/127.0.0.1#5335 +ipset=/mini-tahiti.com/gfwlist +server=/youav.com/127.0.0.1#5335 +ipset=/youav.com/gfwlist +server=/blackfridaydrebeatsnew.com/127.0.0.1#5335 +ipset=/blackfridaydrebeatsnew.com/gfwlist +server=/monsterheadphone.net/127.0.0.1#5335 +ipset=/monsterheadphone.net/gfwlist +server=/thegeorgiascene.com/127.0.0.1#5335 +ipset=/thegeorgiascene.com/gfwlist +server=/shopbmwusa.com/127.0.0.1#5335 +ipset=/shopbmwusa.com/gfwlist +server=/on2.com/127.0.0.1#5335 +ipset=/on2.com/gfwlist +server=/towerauction.com/127.0.0.1#5335 +ipset=/towerauction.com/gfwlist +server=/on.here/127.0.0.1#5335 +ipset=/on.here/gfwlist +server=/drdrebeatsretail2013.com/127.0.0.1#5335 +ipset=/drdrebeatsretail2013.com/gfwlist +server=/fury.help/127.0.0.1#5335 +ipset=/fury.help/gfwlist +server=/azureiotcentral.com/127.0.0.1#5335 +ipset=/azureiotcentral.com/gfwlist +server=/near.by/127.0.0.1#5335 +ipset=/near.by/gfwlist +server=/mobileview.page/127.0.0.1#5335 +ipset=/mobileview.page/gfwlist +server=/itunes.co/127.0.0.1#5335 +ipset=/itunes.co/gfwlist +server=/meet.new/127.0.0.1#5335 +ipset=/meet.new/gfwlist +server=/gettyimages.com.au/127.0.0.1#5335 +ipset=/gettyimages.com.au/gfwlist +server=/m-power.com/127.0.0.1#5335 +ipset=/m-power.com/gfwlist +server=/material.io/127.0.0.1#5335 +ipset=/material.io/gfwlist +server=/workplace.com/127.0.0.1#5335 +ipset=/workplace.com/gfwlist +server=/nikefree.com/127.0.0.1#5335 +ipset=/nikefree.com/gfwlist +server=/canon.com.by/127.0.0.1#5335 +ipset=/canon.com.by/gfwlist +server=/madewithcode.com/127.0.0.1#5335 +ipset=/madewithcode.com/gfwlist +server=/like.com/127.0.0.1#5335 +ipset=/like.com/gfwlist +server=/lanternal.com/127.0.0.1#5335 +ipset=/lanternal.com/gfwlist +server=/veet.dk/127.0.0.1#5335 +ipset=/veet.dk/gfwlist +server=/jibemobile.com/127.0.0.1#5335 +ipset=/jibemobile.com/gfwlist +server=/bmw-motorrad.cz/127.0.0.1#5335 +ipset=/bmw-motorrad.cz/gfwlist +server=/setapp.com/127.0.0.1#5335 +ipset=/setapp.com/gfwlist +server=/renovacionoffice.com/127.0.0.1#5335 +ipset=/renovacionoffice.com/gfwlist +server=/enfagrow.com.ph/127.0.0.1#5335 +ipset=/enfagrow.com.ph/gfwlist +server=/akamai-platform.net/127.0.0.1#5335 +ipset=/akamai-platform.net/gfwlist +server=/cloudcone.com/127.0.0.1#5335 +ipset=/cloudcone.com/gfwlist +server=/youtube.at/127.0.0.1#5335 +ipset=/youtube.at/gfwlist +server=/gvt9.com/127.0.0.1#5335 +ipset=/gvt9.com/gfwlist +server=/gannett.com/127.0.0.1#5335 +ipset=/gannett.com/gfwlist +server=/gvt6.com/127.0.0.1#5335 +ipset=/gvt6.com/gfwlist +server=/beatsbydreus.com/127.0.0.1#5335 +ipset=/beatsbydreus.com/gfwlist +server=/binoculus.com/127.0.0.1#5335 +ipset=/binoculus.com/gfwlist +server=/pricelessaruba.com/127.0.0.1#5335 +ipset=/pricelessaruba.com/gfwlist +server=/momo5188.com/127.0.0.1#5335 +ipset=/momo5188.com/gfwlist +server=/scholar.google.co.id/127.0.0.1#5335 +ipset=/scholar.google.co.id/gfwlist +server=/gvt1.com/127.0.0.1#5335 +ipset=/gvt1.com/gfwlist +server=/gvt0.com/127.0.0.1#5335 +ipset=/gvt0.com/gfwlist +server=/veetcentroamerica.com/127.0.0.1#5335 +ipset=/veetcentroamerica.com/gfwlist +server=/bwh88.net/127.0.0.1#5335 +ipset=/bwh88.net/gfwlist +server=/gsuite.com/127.0.0.1#5335 +ipset=/gsuite.com/gfwlist +server=/gstatic.com/127.0.0.1#5335 +ipset=/gstatic.com/gfwlist +server=/ggsrv.com/127.0.0.1#5335 +ipset=/ggsrv.com/gfwlist +server=/bumpshare.com/127.0.0.1#5335 +ipset=/bumpshare.com/gfwlist +server=/visa.dk/127.0.0.1#5335 +ipset=/visa.dk/gfwlist +server=/aboutamazon.de/127.0.0.1#5335 +ipset=/aboutamazon.de/gfwlist +server=/szwinnertechnology.com/127.0.0.1#5335 +ipset=/szwinnertechnology.com/gfwlist +server=/gooogle.com/127.0.0.1#5335 +ipset=/gooogle.com/gfwlist +server=/sony.com.ar/127.0.0.1#5335 +ipset=/sony.com.ar/gfwlist +server=/googlr.com/127.0.0.1#5335 +ipset=/googlr.com/gfwlist +server=/pinterest.pt/127.0.0.1#5335 +ipset=/pinterest.pt/gfwlist +server=/scholarpedia.org/127.0.0.1#5335 +ipset=/scholarpedia.org/gfwlist +server=/capitalgames.com/127.0.0.1#5335 +ipset=/capitalgames.com/gfwlist +server=/nurofen.no/127.0.0.1#5335 +ipset=/nurofen.no/gfwlist +server=/googlesverige.com/127.0.0.1#5335 +ipset=/googlesverige.com/gfwlist +server=/googlesource.com/127.0.0.1#5335 +ipset=/googlesource.com/gfwlist +server=/visa.co.za/127.0.0.1#5335 +ipset=/visa.co.za/gfwlist +server=/finish.pt/127.0.0.1#5335 +ipset=/finish.pt/gfwlist +server=/amazonpay.com/127.0.0.1#5335 +ipset=/amazonpay.com/gfwlist +server=/googleplay.com/127.0.0.1#5335 +ipset=/googleplay.com/gfwlist +server=/futureshop.ca/127.0.0.1#5335 +ipset=/futureshop.ca/gfwlist +server=/googlephotos.com/127.0.0.1#5335 +ipset=/googlephotos.com/gfwlist +server=/googlepagecreator.com/127.0.0.1#5335 +ipset=/googlepagecreator.com/gfwlist +server=/srebrenica360.com/127.0.0.1#5335 +ipset=/srebrenica360.com/gfwlist +server=/googlemaps.com/127.0.0.1#5335 +ipset=/googlemaps.com/gfwlist +server=/visaluxuryhotels.com/127.0.0.1#5335 +ipset=/visaluxuryhotels.com/gfwlist +server=/yale.edu/127.0.0.1#5335 +ipset=/yale.edu/gfwlist +server=/googlefiber.net/127.0.0.1#5335 +ipset=/googlefiber.net/gfwlist +server=/hpsoftware.com/127.0.0.1#5335 +ipset=/hpsoftware.com/gfwlist +server=/ecoforme.jp/127.0.0.1#5335 +ipset=/ecoforme.jp/gfwlist +server=/minisothailand.com/127.0.0.1#5335 +ipset=/minisothailand.com/gfwlist +server=/applemusic.wang/127.0.0.1#5335 +ipset=/applemusic.wang/gfwlist +server=/w.wiki/127.0.0.1#5335 +ipset=/w.wiki/gfwlist +server=/localbitcoinschain.com/127.0.0.1#5335 +ipset=/localbitcoinschain.com/gfwlist +server=/macintosh.eu/127.0.0.1#5335 +ipset=/macintosh.eu/gfwlist +server=/microsoftsiteselection.com/127.0.0.1#5335 +ipset=/microsoftsiteselection.com/gfwlist +server=/googlebot.com/127.0.0.1#5335 +ipset=/googlebot.com/gfwlist +server=/newisiknowledge.com/127.0.0.1#5335 +ipset=/newisiknowledge.com/gfwlist +server=/edninfo.com/127.0.0.1#5335 +ipset=/edninfo.com/gfwlist +server=/vaginacontest.com/127.0.0.1#5335 +ipset=/vaginacontest.com/gfwlist +server=/intheknow.com.au/127.0.0.1#5335 +ipset=/intheknow.com.au/gfwlist +server=/etwealth.com/127.0.0.1#5335 +ipset=/etwealth.com/gfwlist +server=/facebookinc.com/127.0.0.1#5335 +ipset=/facebookinc.com/gfwlist +server=/beatsblackfridaydeals.net/127.0.0.1#5335 +ipset=/beatsblackfridaydeals.net/gfwlist +server=/pornhd.com/127.0.0.1#5335 +ipset=/pornhd.com/gfwlist +server=/strepsils.com.co/127.0.0.1#5335 +ipset=/strepsils.com.co/gfwlist +server=/google.net/127.0.0.1#5335 +ipset=/google.net/gfwlist +server=/google.dev/127.0.0.1#5335 +ipset=/google.dev/gfwlist +server=/youtubego.in/127.0.0.1#5335 +ipset=/youtubego.in/gfwlist +server=/vanish.no/127.0.0.1#5335 +ipset=/vanish.no/gfwlist +server=/google.co.bw/127.0.0.1#5335 +ipset=/google.co.bw/gfwlist +server=/faceboook.com/127.0.0.1#5335 +ipset=/faceboook.com/gfwlist +server=/goo.gl/127.0.0.1#5335 +ipset=/goo.gl/gfwlist +server=/microsoftreactor.net/127.0.0.1#5335 +ipset=/microsoftreactor.net/gfwlist +server=/gonglchuangl.net/127.0.0.1#5335 +ipset=/gonglchuangl.net/gfwlist +server=/gogle.com/127.0.0.1#5335 +ipset=/gogle.com/gfwlist +server=/gmodules.com/127.0.0.1#5335 +ipset=/gmodules.com/gfwlist +server=/gmail.com/127.0.0.1#5335 +ipset=/gmail.com/gfwlist +server=/volvosaatio.fi/127.0.0.1#5335 +ipset=/volvosaatio.fi/gfwlist +server=/dettol.co.ke/127.0.0.1#5335 +ipset=/dettol.co.ke/gfwlist +server=/umagazine.com.hk/127.0.0.1#5335 +ipset=/umagazine.com.hk/gfwlist +server=/gipscorp.com/127.0.0.1#5335 +ipset=/gipscorp.com/gfwlist +server=/volvotrucks.co.il/127.0.0.1#5335 +ipset=/volvotrucks.co.il/gfwlist +server=/directvdsl.tv/127.0.0.1#5335 +ipset=/directvdsl.tv/gfwlist +server=/getbumptop.com/127.0.0.1#5335 +ipset=/getbumptop.com/gfwlist +server=/gerritcodereview.com/127.0.0.1#5335 +ipset=/gerritcodereview.com/gfwlist +server=/gcr.io/127.0.0.1#5335 +ipset=/gcr.io/gfwlist +server=/gateway.dev/127.0.0.1#5335 +ipset=/gateway.dev/gfwlist +server=/thomsonreuters.co.uk/127.0.0.1#5335 +ipset=/thomsonreuters.co.uk/gfwlist +server=/google.co.cr/127.0.0.1#5335 +ipset=/google.co.cr/gfwlist +server=/g-tun.com/127.0.0.1#5335 +ipset=/g-tun.com/gfwlist +server=/ghcr.io/127.0.0.1#5335 +ipset=/ghcr.io/gfwlist +server=/fuchsia.dev/127.0.0.1#5335 +ipset=/fuchsia.dev/gfwlist +server=/entermediadb.org/127.0.0.1#5335 +ipset=/entermediadb.org/gfwlist +server=/gettyimages.nl/127.0.0.1#5335 +ipset=/gettyimages.nl/gfwlist +server=/shadowsocks.org/127.0.0.1#5335 +ipset=/shadowsocks.org/gfwlist +server=/pieceofplastic.com/127.0.0.1#5335 +ipset=/pieceofplastic.com/gfwlist +server=/deepmind.com/127.0.0.1#5335 +ipset=/deepmind.com/gfwlist +server=/rakuten.ne.jp/127.0.0.1#5335 +ipset=/rakuten.ne.jp/gfwlist +server=/beatsbydrdre-officials5.com/127.0.0.1#5335 +ipset=/beatsbydrdre-officials5.com/gfwlist +server=/dombosco.com.br/127.0.0.1#5335 +ipset=/dombosco.com.br/gfwlist +server=/foofle.com/127.0.0.1#5335 +ipset=/foofle.com/gfwlist +server=/iamakamai.com/127.0.0.1#5335 +ipset=/iamakamai.com/gfwlist +server=/directvonline.com/127.0.0.1#5335 +ipset=/directvonline.com/gfwlist +server=/firebaseapp.com/127.0.0.1#5335 +ipset=/firebaseapp.com/gfwlist +server=/amazon-lantern.com/127.0.0.1#5335 +ipset=/amazon-lantern.com/gfwlist +server=/visa.de/127.0.0.1#5335 +ipset=/visa.de/gfwlist +server=/redditmail.com/127.0.0.1#5335 +ipset=/redditmail.com/gfwlist +server=/episodic.com/127.0.0.1#5335 +ipset=/episodic.com/gfwlist +server=/nikechosen.com/127.0.0.1#5335 +ipset=/nikechosen.com/gfwlist +server=/dialogflow.com/127.0.0.1#5335 +ipset=/dialogflow.com/gfwlist +server=/corporatecashpassport.com/127.0.0.1#5335 +ipset=/corporatecashpassport.com/gfwlist +server=/devsitetest.how/127.0.0.1#5335 +ipset=/devsitetest.how/gfwlist +server=/blogspot.co.ke/127.0.0.1#5335 +ipset=/blogspot.co.ke/gfwlist +server=/vcanedge.com/127.0.0.1#5335 +ipset=/vcanedge.com/gfwlist +server=/linemobile.com/127.0.0.1#5335 +ipset=/linemobile.com/gfwlist +server=/dataliberation.org/127.0.0.1#5335 +ipset=/dataliberation.org/gfwlist +server=/dartsearch.net/127.0.0.1#5335 +ipset=/dartsearch.net/gfwlist +server=/crr.com/127.0.0.1#5335 +ipset=/crr.com/gfwlist +server=/dotmac.de/127.0.0.1#5335 +ipset=/dotmac.de/gfwlist +server=/coova.org/127.0.0.1#5335 +ipset=/coova.org/gfwlist +server=/media.prod.mdn.mozit.cloud/127.0.0.1#5335 +ipset=/media.prod.mdn.mozit.cloud/gfwlist +server=/coova.com/127.0.0.1#5335 +ipset=/coova.com/gfwlist +server=/sciencedirect.com/127.0.0.1#5335 +ipset=/sciencedirect.com/gfwlist +server=/azure-test.net/127.0.0.1#5335 +ipset=/azure-test.net/gfwlist +server=/oculusrift.com/127.0.0.1#5335 +ipset=/oculusrift.com/gfwlist +server=/codespot.com/127.0.0.1#5335 +ipset=/codespot.com/gfwlist +server=/cobrasearch.com/127.0.0.1#5335 +ipset=/cobrasearch.com/gfwlist +server=/bestbuyus.com/127.0.0.1#5335 +ipset=/bestbuyus.com/gfwlist +server=/chronicle.security/127.0.0.1#5335 +ipset=/chronicle.security/gfwlist +server=/4beatsbydre.com/127.0.0.1#5335 +ipset=/4beatsbydre.com/gfwlist +server=/chromecast.com/127.0.0.1#5335 +ipset=/chromecast.com/gfwlist +server=/caijinglengyan.com/127.0.0.1#5335 +ipset=/caijinglengyan.com/gfwlist +server=/cheapbeatsbydrestudioutlet.com/127.0.0.1#5335 +ipset=/cheapbeatsbydrestudioutlet.com/gfwlist +server=/softbankmobile.net/127.0.0.1#5335 +ipset=/softbankmobile.net/gfwlist +server=/bloombergapps.com/127.0.0.1#5335 +ipset=/bloombergapps.com/gfwlist +server=/t21.nikkei.co.jp/127.0.0.1#5335 +ipset=/t21.nikkei.co.jp/gfwlist +server=/buyaple.com/127.0.0.1#5335 +ipset=/buyaple.com/gfwlist +server=/12diasdepresentesdeitunes.com/127.0.0.1#5335 +ipset=/12diasdepresentesdeitunes.com/gfwlist +server=/bumptunes.com/127.0.0.1#5335 +ipset=/bumptunes.com/gfwlist +server=/bumptop.com/127.0.0.1#5335 +ipset=/bumptop.com/gfwlist +server=/sing68.com/127.0.0.1#5335 +ipset=/sing68.com/gfwlist +server=/bmwcenternet.com/127.0.0.1#5335 +ipset=/bmwcenternet.com/gfwlist +server=/amazondevicesupport.com/127.0.0.1#5335 +ipset=/amazondevicesupport.com/gfwlist +server=/bumptop.ca/127.0.0.1#5335 +ipset=/bumptop.ca/gfwlist +server=/fanatical.com/127.0.0.1#5335 +ipset=/fanatical.com/gfwlist +server=/bmw-mdrivetour.com/127.0.0.1#5335 +ipset=/bmw-mdrivetour.com/gfwlist +server=/blogblog.com/127.0.0.1#5335 +ipset=/blogblog.com/gfwlist +server=/billpoint.tv/127.0.0.1#5335 +ipset=/billpoint.tv/gfwlist +server=/stateofthemap.com/127.0.0.1#5335 +ipset=/stateofthemap.com/gfwlist +server=/google.ch/127.0.0.1#5335 +ipset=/google.ch/gfwlist +server=/appl-e.com/127.0.0.1#5335 +ipset=/appl-e.com/gfwlist +server=/thomsonreuters.in/127.0.0.1#5335 +ipset=/thomsonreuters.in/gfwlist +server=/visa.co.ni/127.0.0.1#5335 +ipset=/visa.co.ni/gfwlist +server=/ibooksauthor.com/127.0.0.1#5335 +ipset=/ibooksauthor.com/gfwlist +server=/baselinestudy.org/127.0.0.1#5335 +ipset=/baselinestudy.org/gfwlist +server=/bandpage.com/127.0.0.1#5335 +ipset=/bandpage.com/gfwlist +server=/gumtree.sg/127.0.0.1#5335 +ipset=/gumtree.sg/gfwlist +server=/paypal-comunidad.com/127.0.0.1#5335 +ipset=/paypal-comunidad.com/gfwlist +server=/appleoriginalproductions.com/127.0.0.1#5335 +ipset=/appleoriginalproductions.com/gfwlist +server=/apture.com/127.0.0.1#5335 +ipset=/apture.com/gfwlist +server=/carcare-and-tireshop.jp/127.0.0.1#5335 +ipset=/carcare-and-tireshop.jp/gfwlist +server=/appbridge.it/127.0.0.1#5335 +ipset=/appbridge.it/gfwlist +server=/appbridge.io/127.0.0.1#5335 +ipset=/appbridge.io/gfwlist +server=/firestonecomercial.co.cr/127.0.0.1#5335 +ipset=/firestonecomercial.co.cr/gfwlist +server=/custombeatsny.com/127.0.0.1#5335 +ipset=/custombeatsny.com/gfwlist +server=/api.ai/127.0.0.1#5335 +ipset=/api.ai/gfwlist +server=/yande.re/127.0.0.1#5335 +ipset=/yande.re/gfwlist +server=/angulardart.org/127.0.0.1#5335 +ipset=/angulardart.org/gfwlist +server=/visaitalia.com/127.0.0.1#5335 +ipset=/visaitalia.com/gfwlist +server=/adgoogle.net/127.0.0.1#5335 +ipset=/adgoogle.net/gfwlist +server=/abc.xyz/127.0.0.1#5335 +ipset=/abc.xyz/gfwlist +server=/verisign.de/127.0.0.1#5335 +ipset=/verisign.de/gfwlist +server=/yahoo.ps/127.0.0.1#5335 +ipset=/yahoo.ps/gfwlist +server=/monstercasquebeatspascher.net/127.0.0.1#5335 +ipset=/monstercasquebeatspascher.net/gfwlist +server=/dlercloud.org/127.0.0.1#5335 +ipset=/dlercloud.org/gfwlist +server=/akamai-staging.net/127.0.0.1#5335 +ipset=/akamai-staging.net/gfwlist +server=/google.ws/127.0.0.1#5335 +ipset=/google.ws/gfwlist +server=/microsoftiotcentral.com/127.0.0.1#5335 +ipset=/microsoftiotcentral.com/gfwlist +server=/google.to/127.0.0.1#5335 +ipset=/google.to/gfwlist +server=/flutterapp.com/127.0.0.1#5335 +ipset=/flutterapp.com/gfwlist +server=/google.sr/127.0.0.1#5335 +ipset=/google.sr/gfwlist +server=/google.so/127.0.0.1#5335 +ipset=/google.so/gfwlist +server=/google.sk/127.0.0.1#5335 +ipset=/google.sk/gfwlist +server=/facebook30.com/127.0.0.1#5335 +ipset=/facebook30.com/gfwlist +server=/google.si/127.0.0.1#5335 +ipset=/google.si/gfwlist +server=/theman.in/127.0.0.1#5335 +ipset=/theman.in/gfwlist +server=/google.sh/127.0.0.1#5335 +ipset=/google.sh/gfwlist +server=/google.se/127.0.0.1#5335 +ipset=/google.se/gfwlist +server=/my20dc.com/127.0.0.1#5335 +ipset=/my20dc.com/gfwlist +server=/itunes.com/127.0.0.1#5335 +ipset=/itunes.com/gfwlist +server=/google.pt/127.0.0.1#5335 +ipset=/google.pt/gfwlist +server=/visa.com.hn/127.0.0.1#5335 +ipset=/visa.com.hn/gfwlist +server=/google.ps/127.0.0.1#5335 +ipset=/google.ps/gfwlist +server=/google.nl/127.0.0.1#5335 +ipset=/google.nl/gfwlist +server=/drdre-beats.com/127.0.0.1#5335 +ipset=/drdre-beats.com/gfwlist +server=/alchemysynth.com/127.0.0.1#5335 +ipset=/alchemysynth.com/gfwlist +server=/klik.me/127.0.0.1#5335 +ipset=/klik.me/gfwlist +server=/google.mv/127.0.0.1#5335 +ipset=/google.mv/gfwlist +server=/fireside.fm/127.0.0.1#5335 +ipset=/fireside.fm/gfwlist +server=/beatsbydre-club.com/127.0.0.1#5335 +ipset=/beatsbydre-club.com/gfwlist +server=/cisconetapp.com/127.0.0.1#5335 +ipset=/cisconetapp.com/gfwlist +server=/google.mn/127.0.0.1#5335 +ipset=/google.mn/gfwlist +server=/google.ml/127.0.0.1#5335 +ipset=/google.ml/gfwlist +server=/google.mg/127.0.0.1#5335 +ipset=/google.mg/gfwlist +server=/nextmedia.com.tw/127.0.0.1#5335 +ipset=/nextmedia.com.tw/gfwlist +server=/cpan.org/127.0.0.1#5335 +ipset=/cpan.org/gfwlist +server=/foxest.com/127.0.0.1#5335 +ipset=/foxest.com/gfwlist +server=/apple.no/127.0.0.1#5335 +ipset=/apple.no/gfwlist +server=/bollywoodlife.com/127.0.0.1#5335 +ipset=/bollywoodlife.com/gfwlist +server=/verilylifesciences.com/127.0.0.1#5335 +ipset=/verilylifesciences.com/gfwlist +server=/google.lt/127.0.0.1#5335 +ipset=/google.lt/gfwlist +server=/nikebetterworld.info/127.0.0.1#5335 +ipset=/nikebetterworld.info/gfwlist +server=/bookmybridgestonetyre.com/127.0.0.1#5335 +ipset=/bookmybridgestonetyre.com/gfwlist +server=/google.kz/127.0.0.1#5335 +ipset=/google.kz/gfwlist +server=/google.ki/127.0.0.1#5335 +ipset=/google.ki/gfwlist +server=/duckduckgo.pl/127.0.0.1#5335 +ipset=/duckduckgo.pl/gfwlist +server=/drdrebeatsdesale.com/127.0.0.1#5335 +ipset=/drdrebeatsdesale.com/gfwlist +server=/monsterbeatssales.com/127.0.0.1#5335 +ipset=/monsterbeatssales.com/gfwlist +server=/google.jo/127.0.0.1#5335 +ipset=/google.jo/gfwlist +server=/google.is/127.0.0.1#5335 +ipset=/google.is/gfwlist +server=/niketraining.com/127.0.0.1#5335 +ipset=/niketraining.com/gfwlist +server=/ebay.co.za/127.0.0.1#5335 +ipset=/ebay.co.za/gfwlist +server=/minilaval.ca/127.0.0.1#5335 +ipset=/minilaval.ca/gfwlist +server=/besthentaitube.com/127.0.0.1#5335 +ipset=/besthentaitube.com/gfwlist +server=/historyofdota.org/127.0.0.1#5335 +ipset=/historyofdota.org/gfwlist +server=/scholar.google.cz/127.0.0.1#5335 +ipset=/scholar.google.cz/gfwlist +server=/google.iq/127.0.0.1#5335 +ipset=/google.iq/gfwlist +server=/nikefoampositeshoes.com/127.0.0.1#5335 +ipset=/nikefoampositeshoes.com/gfwlist +server=/dvdstudiopro.us/127.0.0.1#5335 +ipset=/dvdstudiopro.us/gfwlist +server=/google.im/127.0.0.1#5335 +ipset=/google.im/gfwlist +server=/google.ie/127.0.0.1#5335 +ipset=/google.ie/gfwlist +server=/google.hu/127.0.0.1#5335 +ipset=/google.hu/gfwlist +server=/minisojordan.com/127.0.0.1#5335 +ipset=/minisojordan.com/gfwlist +server=/nikeshoesgroup.com/127.0.0.1#5335 +ipset=/nikeshoesgroup.com/gfwlist +server=/pocketbiketrader.com/127.0.0.1#5335 +ipset=/pocketbiketrader.com/gfwlist +server=/google.hr/127.0.0.1#5335 +ipset=/google.hr/gfwlist +server=/pinterest.ca/127.0.0.1#5335 +ipset=/pinterest.ca/gfwlist +server=/akamqi.com/127.0.0.1#5335 +ipset=/akamqi.com/gfwlist +server=/google.gl/127.0.0.1#5335 +ipset=/google.gl/gfwlist +server=/f8.com/127.0.0.1#5335 +ipset=/f8.com/gfwlist +server=/verisign.com/127.0.0.1#5335 +ipset=/verisign.com/gfwlist +server=/ebayla.org/127.0.0.1#5335 +ipset=/ebayla.org/gfwlist +server=/google.gg/127.0.0.1#5335 +ipset=/google.gg/gfwlist +server=/ntdtv.jp/127.0.0.1#5335 +ipset=/ntdtv.jp/gfwlist +server=/google.ge/127.0.0.1#5335 +ipset=/google.ge/gfwlist +server=/foxandfriends.com/127.0.0.1#5335 +ipset=/foxandfriends.com/gfwlist +server=/beatsbydre-sell.com/127.0.0.1#5335 +ipset=/beatsbydre-sell.com/gfwlist +server=/fotolia-noticias.com/127.0.0.1#5335 +ipset=/fotolia-noticias.com/gfwlist +server=/google.es/127.0.0.1#5335 +ipset=/google.es/gfwlist +server=/google.ee/127.0.0.1#5335 +ipset=/google.ee/gfwlist +server=/google.dz/127.0.0.1#5335 +ipset=/google.dz/gfwlist +server=/nytco.com/127.0.0.1#5335 +ipset=/nytco.com/gfwlist +server=/z5.com/127.0.0.1#5335 +ipset=/z5.com/gfwlist +server=/francecasquebeatssolde.com/127.0.0.1#5335 +ipset=/francecasquebeatssolde.com/gfwlist +server=/visa.co.ve/127.0.0.1#5335 +ipset=/visa.co.ve/gfwlist +server=/bcovlive-a.akamaihd.net/127.0.0.1#5335 +ipset=/bcovlive-a.akamaihd.net/gfwlist +server=/google.dj/127.0.0.1#5335 +ipset=/google.dj/gfwlist +server=/google.com.vc/127.0.0.1#5335 +ipset=/google.com.vc/gfwlist +server=/ciscoinvestments.com/127.0.0.1#5335 +ipset=/ciscoinvestments.com/gfwlist +server=/cnnpolitics.com/127.0.0.1#5335 +ipset=/cnnpolitics.com/gfwlist +server=/google.com.tr/127.0.0.1#5335 +ipset=/google.com.tr/gfwlist +server=/cowboom.com/127.0.0.1#5335 +ipset=/cowboom.com/gfwlist +server=/google.com.na/127.0.0.1#5335 +ipset=/google.com.na/gfwlist +server=/iphone.pt/127.0.0.1#5335 +ipset=/iphone.pt/gfwlist +server=/nytchina.com/127.0.0.1#5335 +ipset=/nytchina.com/gfwlist +server=/egghead.io/127.0.0.1#5335 +ipset=/egghead.io/gfwlist +server=/edx.org/127.0.0.1#5335 +ipset=/edx.org/gfwlist +server=/google.com.qa/127.0.0.1#5335 +ipset=/google.com.qa/gfwlist +server=/regiongold.com/127.0.0.1#5335 +ipset=/regiongold.com/gfwlist +server=/google.com.pr/127.0.0.1#5335 +ipset=/google.com.pr/gfwlist +server=/google.com.pk/127.0.0.1#5335 +ipset=/google.com.pk/gfwlist +server=/greatfire.org/127.0.0.1#5335 +ipset=/greatfire.org/gfwlist +server=/free-sns.com/127.0.0.1#5335 +ipset=/free-sns.com/gfwlist +server=/google.com.ph/127.0.0.1#5335 +ipset=/google.com.ph/gfwlist +server=/githubusercontent.com/127.0.0.1#5335 +ipset=/githubusercontent.com/gfwlist +server=/google.com.pg/127.0.0.1#5335 +ipset=/google.com.pg/gfwlist +server=/books.com.tw/127.0.0.1#5335 +ipset=/books.com.tw/gfwlist +server=/bmwworld.net/127.0.0.1#5335 +ipset=/bmwworld.net/gfwlist +server=/cloudflare.com/127.0.0.1#5335 +ipset=/cloudflare.com/gfwlist +server=/google.com.pe/127.0.0.1#5335 +ipset=/google.com.pe/gfwlist +server=/google.com.pa/127.0.0.1#5335 +ipset=/google.com.pa/gfwlist +server=/google.com.ng/127.0.0.1#5335 +ipset=/google.com.ng/gfwlist +server=/visa.com.hr/127.0.0.1#5335 +ipset=/visa.com.hr/gfwlist +server=/facebooktv.org/127.0.0.1#5335 +ipset=/facebooktv.org/gfwlist +server=/google.com.mm/127.0.0.1#5335 +ipset=/google.com.mm/gfwlist +server=/securepaypal.info/127.0.0.1#5335 +ipset=/securepaypal.info/gfwlist +server=/google.com.lb/127.0.0.1#5335 +ipset=/google.com.lb/gfwlist +server=/facebookvacation.com/127.0.0.1#5335 +ipset=/facebookvacation.com/gfwlist +server=/mastercard.pl/127.0.0.1#5335 +ipset=/mastercard.pl/gfwlist +server=/google.com.jm/127.0.0.1#5335 +ipset=/google.com.jm/gfwlist +server=/facebookdevelopergarage.com/127.0.0.1#5335 +ipset=/facebookdevelopergarage.com/gfwlist +server=/scholar.google.it/127.0.0.1#5335 +ipset=/scholar.google.it/gfwlist +server=/google.com.gi/127.0.0.1#5335 +ipset=/google.com.gi/gfwlist +server=/google.com.fj/127.0.0.1#5335 +ipset=/google.com.fj/gfwlist +server=/google.com.et/127.0.0.1#5335 +ipset=/google.com.et/gfwlist +server=/careerfundas.com/127.0.0.1#5335 +ipset=/careerfundas.com/gfwlist +server=/google.com.ec/127.0.0.1#5335 +ipset=/google.com.ec/gfwlist +server=/douwriteright.com/127.0.0.1#5335 +ipset=/douwriteright.com/gfwlist +server=/google.com.do/127.0.0.1#5335 +ipset=/google.com.do/gfwlist +server=/beatthatquote.com/127.0.0.1#5335 +ipset=/beatthatquote.com/gfwlist +server=/foxnewshealth.com/127.0.0.1#5335 +ipset=/foxnewshealth.com/gfwlist +server=/google.com.co/127.0.0.1#5335 +ipset=/google.com.co/gfwlist +server=/ikea.net/127.0.0.1#5335 +ipset=/ikea.net/gfwlist +server=/mdialog.com/127.0.0.1#5335 +ipset=/mdialog.com/gfwlist +server=/google.com.bn/127.0.0.1#5335 +ipset=/google.com.bn/gfwlist +server=/images-amazon.com/127.0.0.1#5335 +ipset=/images-amazon.com/gfwlist +server=/fosebook.com/127.0.0.1#5335 +ipset=/fosebook.com/gfwlist +server=/psiphon3.com/127.0.0.1#5335 +ipset=/psiphon3.com/gfwlist +server=/google.com.ai/127.0.0.1#5335 +ipset=/google.com.ai/gfwlist +server=/google.com.ag/127.0.0.1#5335 +ipset=/google.com.ag/gfwlist +server=/engineeringvillage.com/127.0.0.1#5335 +ipset=/engineeringvillage.com/gfwlist +server=/mini.co.me/127.0.0.1#5335 +ipset=/mini.co.me/gfwlist +server=/worldsfastestgamer.net/127.0.0.1#5335 +ipset=/worldsfastestgamer.net/gfwlist +server=/google.co.zw/127.0.0.1#5335 +ipset=/google.co.zw/gfwlist +server=/google.co.zm/127.0.0.1#5335 +ipset=/google.co.zm/gfwlist +server=/google.co.za/127.0.0.1#5335 +ipset=/google.co.za/gfwlist +server=/google.co.vi/127.0.0.1#5335 +ipset=/google.co.vi/gfwlist +server=/google.co.ve/127.0.0.1#5335 +ipset=/google.co.ve/gfwlist +server=/beatssaleus.com/127.0.0.1#5335 +ipset=/beatssaleus.com/gfwlist +server=/google.co.ug/127.0.0.1#5335 +ipset=/google.co.ug/gfwlist +server=/geodesummit.com/127.0.0.1#5335 +ipset=/geodesummit.com/gfwlist +server=/google.co.th/127.0.0.1#5335 +ipset=/google.co.th/gfwlist +server=/jable.tv/127.0.0.1#5335 +ipset=/jable.tv/gfwlist +server=/google.co.nz/127.0.0.1#5335 +ipset=/google.co.nz/gfwlist +server=/google.co.mz/127.0.0.1#5335 +ipset=/google.co.mz/gfwlist +server=/netflixdnstest1.com/127.0.0.1#5335 +ipset=/netflixdnstest1.com/gfwlist +server=/bingworld.com/127.0.0.1#5335 +ipset=/bingworld.com/gfwlist +server=/nypost.com/127.0.0.1#5335 +ipset=/nypost.com/gfwlist +server=/pokemonletsgopikachu.com/127.0.0.1#5335 +ipset=/pokemonletsgopikachu.com/gfwlist +server=/google.co.ls/127.0.0.1#5335 +ipset=/google.co.ls/gfwlist +server=/google.co.kr/127.0.0.1#5335 +ipset=/google.co.kr/gfwlist +server=/instagmania.com/127.0.0.1#5335 +ipset=/instagmania.com/gfwlist +server=/google.co.ke/127.0.0.1#5335 +ipset=/google.co.ke/gfwlist +server=/google.co.in/127.0.0.1#5335 +ipset=/google.co.in/gfwlist +server=/airav.cc/127.0.0.1#5335 +ipset=/airav.cc/gfwlist +server=/stlouisbmw.net/127.0.0.1#5335 +ipset=/stlouisbmw.net/gfwlist +server=/g.page/127.0.0.1#5335 +ipset=/g.page/gfwlist +server=/barrons-advisor.com/127.0.0.1#5335 +ipset=/barrons-advisor.com/gfwlist +server=/asproex.com/127.0.0.1#5335 +ipset=/asproex.com/gfwlist +server=/bluefootcms.com/127.0.0.1#5335 +ipset=/bluefootcms.com/gfwlist +server=/javhdfree.net/127.0.0.1#5335 +ipset=/javhdfree.net/gfwlist +server=/loli.net/127.0.0.1#5335 +ipset=/loli.net/gfwlist +server=/google.cm/127.0.0.1#5335 +ipset=/google.cm/gfwlist +server=/google.ci/127.0.0.1#5335 +ipset=/google.ci/gfwlist +server=/volvotrucks.com.co/127.0.0.1#5335 +ipset=/volvotrucks.com.co/gfwlist +server=/dierectv.com/127.0.0.1#5335 +ipset=/dierectv.com/gfwlist +server=/google.com.cy/127.0.0.1#5335 +ipset=/google.com.cy/gfwlist +server=/google.cd/127.0.0.1#5335 +ipset=/google.cd/gfwlist +server=/google.bt/127.0.0.1#5335 +ipset=/google.bt/gfwlist +server=/womensnikeshox.com/127.0.0.1#5335 +ipset=/womensnikeshox.com/gfwlist +server=/google.bs/127.0.0.1#5335 +ipset=/google.bs/gfwlist +server=/beatsbydre-outletstore.com/127.0.0.1#5335 +ipset=/beatsbydre-outletstore.com/gfwlist +server=/bmw-connecteddrive.co.uk/127.0.0.1#5335 +ipset=/bmw-connecteddrive.co.uk/gfwlist +server=/tvbanywhere.com/127.0.0.1#5335 +ipset=/tvbanywhere.com/gfwlist +server=/google.bj/127.0.0.1#5335 +ipset=/google.bj/gfwlist +server=/google.bi/127.0.0.1#5335 +ipset=/google.bi/gfwlist +server=/pashtovoa.com/127.0.0.1#5335 +ipset=/pashtovoa.com/gfwlist +server=/google.bg/127.0.0.1#5335 +ipset=/google.bg/gfwlist +server=/google.bf/127.0.0.1#5335 +ipset=/google.bf/gfwlist +server=/google.ba/127.0.0.1#5335 +ipset=/google.ba/gfwlist +server=/google.am/127.0.0.1#5335 +ipset=/google.am/gfwlist +server=/swisssigner.com/127.0.0.1#5335 +ipset=/swisssigner.com/gfwlist +server=/google.al/127.0.0.1#5335 +ipset=/google.al/gfwlist +server=/applepremiumreseller.com.au/127.0.0.1#5335 +ipset=/applepremiumreseller.com.au/gfwlist +server=/ibook.eu/127.0.0.1#5335 +ipset=/ibook.eu/gfwlist +server=/uux68.com/127.0.0.1#5335 +ipset=/uux68.com/gfwlist +server=/google.ad/127.0.0.1#5335 +ipset=/google.ad/gfwlist +server=/blizzak-juken.jp/127.0.0.1#5335 +ipset=/blizzak-juken.jp/gfwlist +server=/youtubekids.com/127.0.0.1#5335 +ipset=/youtubekids.com/gfwlist +server=/youtubei.googleapis.com/127.0.0.1#5335 +ipset=/youtubei.googleapis.com/gfwlist +server=/beats-bydreoutletssale.net/127.0.0.1#5335 +ipset=/beats-bydreoutletssale.net/gfwlist +server=/texttobuy.org/127.0.0.1#5335 +ipset=/texttobuy.org/gfwlist +server=/vaultify.info/127.0.0.1#5335 +ipset=/vaultify.info/gfwlist +server=/appstore.co.id/127.0.0.1#5335 +ipset=/appstore.co.id/gfwlist +server=/ieee-region6.org/127.0.0.1#5335 +ipset=/ieee-region6.org/gfwlist +server=/youtubego.com/127.0.0.1#5335 +ipset=/youtubego.com/gfwlist +server=/zee5.com/127.0.0.1#5335 +ipset=/zee5.com/gfwlist +server=/japanknowledge.com/127.0.0.1#5335 +ipset=/japanknowledge.com/gfwlist +server=/wiisportsresort.com/127.0.0.1#5335 +ipset=/wiisportsresort.com/gfwlist +server=/freebs.com/127.0.0.1#5335 +ipset=/freebs.com/gfwlist +server=/binancezh.com/127.0.0.1#5335 +ipset=/binancezh.com/gfwlist +server=/youtubegaming.com/127.0.0.1#5335 +ipset=/youtubegaming.com/gfwlist +server=/riotpin.com/127.0.0.1#5335 +ipset=/riotpin.com/gfwlist +server=/youtubeeducation.com/127.0.0.1#5335 +ipset=/youtubeeducation.com/gfwlist +server=/facebooik.org/127.0.0.1#5335 +ipset=/facebooik.org/gfwlist +server=/youtube.ug/127.0.0.1#5335 +ipset=/youtube.ug/gfwlist +server=/adobetcstrialdvd.com/127.0.0.1#5335 +ipset=/adobetcstrialdvd.com/gfwlist +server=/leagueoflegends.org/127.0.0.1#5335 +ipset=/leagueoflegends.org/gfwlist +server=/monsterbeats8beatsbydre.com/127.0.0.1#5335 +ipset=/monsterbeats8beatsbydre.com/gfwlist +server=/paypal-login.info/127.0.0.1#5335 +ipset=/paypal-login.info/gfwlist +server=/youtube.tn/127.0.0.1#5335 +ipset=/youtube.tn/gfwlist +server=/findercdn.me/127.0.0.1#5335 +ipset=/findercdn.me/gfwlist +server=/computer.org/127.0.0.1#5335 +ipset=/computer.org/gfwlist +server=/iphone.host/127.0.0.1#5335 +ipset=/iphone.host/gfwlist +server=/visaeurope.ch/127.0.0.1#5335 +ipset=/visaeurope.ch/gfwlist +server=/foxnews.cc/127.0.0.1#5335 +ipset=/foxnews.cc/gfwlist +server=/youtube.co/127.0.0.1#5335 +ipset=/youtube.co/gfwlist +server=/youtube.sn/127.0.0.1#5335 +ipset=/youtube.sn/gfwlist +server=/beatsbydrdre-onsale.com/127.0.0.1#5335 +ipset=/beatsbydrdre-onsale.com/gfwlist +server=/youtube.sk/127.0.0.1#5335 +ipset=/youtube.sk/gfwlist +server=/blogspot.com.ar/127.0.0.1#5335 +ipset=/blogspot.com.ar/gfwlist +server=/dropboxforum.com/127.0.0.1#5335 +ipset=/dropboxforum.com/gfwlist +server=/forbes.com/127.0.0.1#5335 +ipset=/forbes.com/gfwlist +server=/debugproject.com/127.0.0.1#5335 +ipset=/debugproject.com/gfwlist +server=/globalsign.eu/127.0.0.1#5335 +ipset=/globalsign.eu/gfwlist +server=/youtube.pr/127.0.0.1#5335 +ipset=/youtube.pr/gfwlist +server=/youtube.pl/127.0.0.1#5335 +ipset=/youtube.pl/gfwlist +server=/swissstick.com/127.0.0.1#5335 +ipset=/swissstick.com/gfwlist +server=/volvotruckcenter.fi/127.0.0.1#5335 +ipset=/volvotruckcenter.fi/gfwlist +server=/youtube.ph/127.0.0.1#5335 +ipset=/youtube.ph/gfwlist +server=/youtube.nl/127.0.0.1#5335 +ipset=/youtube.nl/gfwlist +server=/youtube.ma/127.0.0.1#5335 +ipset=/youtube.ma/gfwlist +server=/youtube.lv/127.0.0.1#5335 +ipset=/youtube.lv/gfwlist +server=/youtube.lk/127.0.0.1#5335 +ipset=/youtube.lk/gfwlist +server=/pearsoneducationbooks.com/127.0.0.1#5335 +ipset=/pearsoneducationbooks.com/gfwlist +server=/youtube.la/127.0.0.1#5335 +ipset=/youtube.la/gfwlist +server=/mini.com.br/127.0.0.1#5335 +ipset=/mini.com.br/gfwlist +server=/applestor.com/127.0.0.1#5335 +ipset=/applestor.com/gfwlist +server=/google.com.bh/127.0.0.1#5335 +ipset=/google.com.bh/gfwlist +server=/buyshoponly.com/127.0.0.1#5335 +ipset=/buyshoponly.com/gfwlist +server=/dcard.tw/127.0.0.1#5335 +ipset=/dcard.tw/gfwlist +server=/blogspot.co.za/127.0.0.1#5335 +ipset=/blogspot.co.za/gfwlist +server=/battlefield5.com/127.0.0.1#5335 +ipset=/battlefield5.com/gfwlist +server=/youtube.kr/127.0.0.1#5335 +ipset=/youtube.kr/gfwlist +server=/youtube.soy/127.0.0.1#5335 +ipset=/youtube.soy/gfwlist +server=/youtube.ie/127.0.0.1#5335 +ipset=/youtube.ie/gfwlist +server=/tokyomotion.net/127.0.0.1#5335 +ipset=/tokyomotion.net/gfwlist +server=/akafms.net/127.0.0.1#5335 +ipset=/akafms.net/gfwlist +server=/youtube.gr/127.0.0.1#5335 +ipset=/youtube.gr/gfwlist +server=/youtube.ge/127.0.0.1#5335 +ipset=/youtube.ge/gfwlist +server=/ikea.com/127.0.0.1#5335 +ipset=/ikea.com/gfwlist +server=/youtube.fi/127.0.0.1#5335 +ipset=/youtube.fi/gfwlist +server=/canon.pl/127.0.0.1#5335 +ipset=/canon.pl/gfwlist +server=/itsoc.org/127.0.0.1#5335 +ipset=/itsoc.org/gfwlist +server=/kijjiji.ca/127.0.0.1#5335 +ipset=/kijjiji.ca/gfwlist +server=/repswing.com/127.0.0.1#5335 +ipset=/repswing.com/gfwlist +server=/craigslist.org/127.0.0.1#5335 +ipset=/craigslist.org/gfwlist +server=/sahabatsetiasmartone.com/127.0.0.1#5335 +ipset=/sahabatsetiasmartone.com/gfwlist +server=/applepay.com.tw/127.0.0.1#5335 +ipset=/applepay.com.tw/gfwlist +server=/youtube.dk/127.0.0.1#5335 +ipset=/youtube.dk/gfwlist +server=/youtube.de/127.0.0.1#5335 +ipset=/youtube.de/gfwlist +server=/brilliant.org/127.0.0.1#5335 +ipset=/brilliant.org/gfwlist +server=/facebook-texas-holdem.net/127.0.0.1#5335 +ipset=/facebook-texas-holdem.net/gfwlist +server=/youtube.cr/127.0.0.1#5335 +ipset=/youtube.cr/gfwlist +server=/youtube.com.tw/127.0.0.1#5335 +ipset=/youtube.com.tw/gfwlist +server=/youtube.com.tr/127.0.0.1#5335 +ipset=/youtube.com.tr/gfwlist +server=/samsungdm.com/127.0.0.1#5335 +ipset=/samsungdm.com/gfwlist +server=/visa.com.ec/127.0.0.1#5335 +ipset=/visa.com.ec/gfwlist +server=/bmw-motorrad.ru/127.0.0.1#5335 +ipset=/bmw-motorrad.ru/gfwlist +server=/directtv-deals.tv/127.0.0.1#5335 +ipset=/directtv-deals.tv/gfwlist +server=/identrust.co.uk/127.0.0.1#5335 +ipset=/identrust.co.uk/gfwlist +server=/sony.ru/127.0.0.1#5335 +ipset=/sony.ru/gfwlist +server=/youtube.com.pt/127.0.0.1#5335 +ipset=/youtube.com.pt/gfwlist +server=/pugetsoundmini.com/127.0.0.1#5335 +ipset=/pugetsoundmini.com/gfwlist +server=/technologyandsociety.org/127.0.0.1#5335 +ipset=/technologyandsociety.org/gfwlist +server=/google.com.sg/127.0.0.1#5335 +ipset=/google.com.sg/gfwlist +server=/googleanalytics.com/127.0.0.1#5335 +ipset=/googleanalytics.com/gfwlist +server=/youtube.com.pe/127.0.0.1#5335 +ipset=/youtube.com.pe/gfwlist +server=/directvdeals.com/127.0.0.1#5335 +ipset=/directvdeals.com/gfwlist +server=/youtube.com.pa/127.0.0.1#5335 +ipset=/youtube.com.pa/gfwlist +server=/voakorea.com/127.0.0.1#5335 +ipset=/voakorea.com/gfwlist +server=/youtube.com.om/127.0.0.1#5335 +ipset=/youtube.com.om/gfwlist +server=/successwithteams.com/127.0.0.1#5335 +ipset=/successwithteams.com/gfwlist +server=/youtube.com.mx/127.0.0.1#5335 +ipset=/youtube.com.mx/gfwlist +server=/paypal-database.com/127.0.0.1#5335 +ipset=/paypal-database.com/gfwlist +server=/youtube.com.mt/127.0.0.1#5335 +ipset=/youtube.com.mt/gfwlist +server=/youtube.com.mk/127.0.0.1#5335 +ipset=/youtube.com.mk/gfwlist +server=/youtube.com.lv/127.0.0.1#5335 +ipset=/youtube.com.lv/gfwlist +server=/youtube.com.lb/127.0.0.1#5335 +ipset=/youtube.com.lb/gfwlist +server=/youtube.com.kw/127.0.0.1#5335 +ipset=/youtube.com.kw/gfwlist +server=/barrons.com/127.0.0.1#5335 +ipset=/barrons.com/gfwlist +server=/youtube.com.jo/127.0.0.1#5335 +ipset=/youtube.com.jo/gfwlist +server=/pinterest.com.bo/127.0.0.1#5335 +ipset=/pinterest.com.bo/gfwlist +server=/paypalme.com/127.0.0.1#5335 +ipset=/paypalme.com/gfwlist +server=/news.co.uk/127.0.0.1#5335 +ipset=/news.co.uk/gfwlist +server=/youtube.com.jm/127.0.0.1#5335 +ipset=/youtube.com.jm/gfwlist +server=/myfoxtwincities.com/127.0.0.1#5335 +ipset=/myfoxtwincities.com/gfwlist +server=/o365weve-ppe.com/127.0.0.1#5335 +ipset=/o365weve-ppe.com/gfwlist +server=/youtube.com.hk/127.0.0.1#5335 +ipset=/youtube.com.hk/gfwlist +server=/cosmosdb.net/127.0.0.1#5335 +ipset=/cosmosdb.net/gfwlist +server=/youtube.com.gr/127.0.0.1#5335 +ipset=/youtube.com.gr/gfwlist +server=/youtube.com.eg/127.0.0.1#5335 +ipset=/youtube.com.eg/gfwlist +server=/moov.hk/127.0.0.1#5335 +ipset=/moov.hk/gfwlist +server=/youtube.com.ee/127.0.0.1#5335 +ipset=/youtube.com.ee/gfwlist +server=/youtube.com.do/127.0.0.1#5335 +ipset=/youtube.com.do/gfwlist +server=/youtube.com.by/127.0.0.1#5335 +ipset=/youtube.com.by/gfwlist +server=/tiktok.com/127.0.0.1#5335 +ipset=/tiktok.com/gfwlist +server=/yogify.com/127.0.0.1#5335 +ipset=/yogify.com/gfwlist +server=/youtube.com.bo/127.0.0.1#5335 +ipset=/youtube.com.bo/gfwlist +server=/wii-u.com/127.0.0.1#5335 +ipset=/wii-u.com/gfwlist +server=/youtube.com.bd/127.0.0.1#5335 +ipset=/youtube.com.bd/gfwlist +server=/moneywithfacebook.com/127.0.0.1#5335 +ipset=/moneywithfacebook.com/gfwlist +server=/youtube.com.au/127.0.0.1#5335 +ipset=/youtube.com.au/gfwlist +server=/nikestyles.com/127.0.0.1#5335 +ipset=/nikestyles.com/gfwlist +server=/routledgehandbooks.com/127.0.0.1#5335 +ipset=/routledgehandbooks.com/gfwlist +server=/dailymailonline.com/127.0.0.1#5335 +ipset=/dailymailonline.com/gfwlist +server=/ajtalk.com/127.0.0.1#5335 +ipset=/ajtalk.com/gfwlist +server=/verizondigitalmedia.com/127.0.0.1#5335 +ipset=/verizondigitalmedia.com/gfwlist +server=/youtube.co.za/127.0.0.1#5335 +ipset=/youtube.co.za/gfwlist +server=/bestbuys.com/127.0.0.1#5335 +ipset=/bestbuys.com/gfwlist +server=/youtube.co.tz/127.0.0.1#5335 +ipset=/youtube.co.tz/gfwlist +server=/vsphere.com/127.0.0.1#5335 +ipset=/vsphere.com/gfwlist +server=/youtube.co.nz/127.0.0.1#5335 +ipset=/youtube.co.nz/gfwlist +server=/12diasderegalosdeitunes.gt/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.gt/gfwlist +server=/squarecapital.com/127.0.0.1#5335 +ipset=/squarecapital.com/gfwlist +server=/attnetclient.com/127.0.0.1#5335 +ipset=/attnetclient.com/gfwlist +server=/youtube.co.kr/127.0.0.1#5335 +ipset=/youtube.co.kr/gfwlist +server=/whatsappbrand.com/127.0.0.1#5335 +ipset=/whatsappbrand.com/gfwlist +server=/ebay.pk/127.0.0.1#5335 +ipset=/ebay.pk/gfwlist +server=/youtube.co.il/127.0.0.1#5335 +ipset=/youtube.co.il/gfwlist +server=/mcdonalds.hk/127.0.0.1#5335 +ipset=/mcdonalds.hk/gfwlist +server=/ppaypal.com/127.0.0.1#5335 +ipset=/ppaypal.com/gfwlist +server=/stackpath.com/127.0.0.1#5335 +ipset=/stackpath.com/gfwlist +server=/bittrex.com/127.0.0.1#5335 +ipset=/bittrex.com/gfwlist +server=/youtube.co.ae/127.0.0.1#5335 +ipset=/youtube.co.ae/gfwlist +server=/youtube.ch/127.0.0.1#5335 +ipset=/youtube.ch/gfwlist +server=/airtunes.info/127.0.0.1#5335 +ipset=/airtunes.info/gfwlist +server=/castro.fm/127.0.0.1#5335 +ipset=/castro.fm/gfwlist +server=/youtube.by/127.0.0.1#5335 +ipset=/youtube.by/gfwlist +server=/youtube.am/127.0.0.1#5335 +ipset=/youtube.am/gfwlist +server=/ggpht.com/127.0.0.1#5335 +ipset=/ggpht.com/gfwlist +server=/bmw.co.jp/127.0.0.1#5335 +ipset=/bmw.co.jp/gfwlist +server=/get.page/127.0.0.1#5335 +ipset=/get.page/gfwlist +server=/get.dev/127.0.0.1#5335 +ipset=/get.dev/gfwlist +server=/instagtram.com/127.0.0.1#5335 +ipset=/instagtram.com/gfwlist +server=/registry.google/127.0.0.1#5335 +ipset=/registry.google/gfwlist +server=/airwick.ro/127.0.0.1#5335 +ipset=/airwick.ro/gfwlist +server=/googleadservices.com/127.0.0.1#5335 +ipset=/googleadservices.com/gfwlist +server=/googleadapis.com/127.0.0.1#5335 +ipset=/googleadapis.com/gfwlist +server=/google-analytics.com/127.0.0.1#5335 +ipset=/google-analytics.com/gfwlist +server=/bmw-motorrad.ro/127.0.0.1#5335 +ipset=/bmw-motorrad.ro/gfwlist +server=/facvebook.com/127.0.0.1#5335 +ipset=/facvebook.com/gfwlist +server=/doubleclick.com/127.0.0.1#5335 +ipset=/doubleclick.com/gfwlist +server=/app-measurement.com/127.0.0.1#5335 +ipset=/app-measurement.com/gfwlist +server=/db.tt/127.0.0.1#5335 +ipset=/db.tt/gfwlist +server=/foxaffiliateportal.com/127.0.0.1#5335 +ipset=/foxaffiliateportal.com/gfwlist +server=/whatsapp.org/127.0.0.1#5335 +ipset=/whatsapp.org/gfwlist +server=/slack-edge.com/127.0.0.1#5335 +ipset=/slack-edge.com/gfwlist +server=/manorama.com/127.0.0.1#5335 +ipset=/manorama.com/gfwlist +server=/vimeocdn.com/127.0.0.1#5335 +ipset=/vimeocdn.com/gfwlist +server=/microsoft.ro/127.0.0.1#5335 +ipset=/microsoft.ro/gfwlist +server=/cbs.com/127.0.0.1#5335 +ipset=/cbs.com/gfwlist +server=/customdrdrebeats.com/127.0.0.1#5335 +ipset=/customdrdrebeats.com/gfwlist +server=/intercomassets.com/127.0.0.1#5335 +ipset=/intercomassets.com/gfwlist +server=/monsterbeatsbydrefactory.com/127.0.0.1#5335 +ipset=/monsterbeatsbydrefactory.com/gfwlist +server=/blogspot.ru/127.0.0.1#5335 +ipset=/blogspot.ru/gfwlist +server=/blogspot.rs/127.0.0.1#5335 +ipset=/blogspot.rs/gfwlist +server=/blogspot.re/127.0.0.1#5335 +ipset=/blogspot.re/gfwlist +server=/monstersbeatbydres.com/127.0.0.1#5335 +ipset=/monstersbeatbydres.com/gfwlist +server=/beatbydre2013.com/127.0.0.1#5335 +ipset=/beatbydre2013.com/gfwlist +server=/nexpart.com/127.0.0.1#5335 +ipset=/nexpart.com/gfwlist +server=/ehgt.org/127.0.0.1#5335 +ipset=/ehgt.org/gfwlist +server=/mastercard.co.kr/127.0.0.1#5335 +ipset=/mastercard.co.kr/gfwlist +server=/beatsmonstersales.com/127.0.0.1#5335 +ipset=/beatsmonstersales.com/gfwlist +server=/blogspot.pe/127.0.0.1#5335 +ipset=/blogspot.pe/gfwlist +server=/visa.com.ru/127.0.0.1#5335 +ipset=/visa.com.ru/gfwlist +server=/blogspot.no/127.0.0.1#5335 +ipset=/blogspot.no/gfwlist +server=/opencollective.com/127.0.0.1#5335 +ipset=/opencollective.com/gfwlist +server=/goldnikeclub.com/127.0.0.1#5335 +ipset=/goldnikeclub.com/gfwlist +server=/slackb.com/127.0.0.1#5335 +ipset=/slackb.com/gfwlist +server=/fr-beatsbydrestore.com/127.0.0.1#5335 +ipset=/fr-beatsbydrestore.com/gfwlist +server=/m.me/127.0.0.1#5335 +ipset=/m.me/gfwlist +server=/blogspot.md/127.0.0.1#5335 +ipset=/blogspot.md/gfwlist +server=/blogspot.lu/127.0.0.1#5335 +ipset=/blogspot.lu/gfwlist +server=/fptolia.com/127.0.0.1#5335 +ipset=/fptolia.com/gfwlist +server=/gitlab-assets.oss-cn-hongkong.aliyuncs.com/127.0.0.1#5335 +ipset=/gitlab-assets.oss-cn-hongkong.aliyuncs.com/gfwlist +server=/blogspot.ie/127.0.0.1#5335 +ipset=/blogspot.ie/gfwlist +server=/blogspot.hk/127.0.0.1#5335 +ipset=/blogspot.hk/gfwlist +server=/blogspot.gr/127.0.0.1#5335 +ipset=/blogspot.gr/gfwlist +server=/blogspot.fr/127.0.0.1#5335 +ipset=/blogspot.fr/gfwlist +server=/blogspot.fi/127.0.0.1#5335 +ipset=/blogspot.fi/gfwlist +server=/ebayvietnam.net/127.0.0.1#5335 +ipset=/ebayvietnam.net/gfwlist +server=/iphoneimessage.com/127.0.0.1#5335 +ipset=/iphoneimessage.com/gfwlist +server=/blogspot.dk/127.0.0.1#5335 +ipset=/blogspot.dk/gfwlist +server=/blogspot.de/127.0.0.1#5335 +ipset=/blogspot.de/gfwlist +server=/blogspot.cz/127.0.0.1#5335 +ipset=/blogspot.cz/gfwlist +server=/digitalid.ch/127.0.0.1#5335 +ipset=/digitalid.ch/gfwlist +server=/akamai-thailand.com/127.0.0.1#5335 +ipset=/akamai-thailand.com/gfwlist +server=/gwktravelex.nl/127.0.0.1#5335 +ipset=/gwktravelex.nl/gfwlist +server=/blogspot.com.uy/127.0.0.1#5335 +ipset=/blogspot.com.uy/gfwlist +server=/blogspot.com.tr/127.0.0.1#5335 +ipset=/blogspot.com.tr/gfwlist +server=/pixnet.cc/127.0.0.1#5335 +ipset=/pixnet.cc/gfwlist +server=/bestbuy.ca/127.0.0.1#5335 +ipset=/bestbuy.ca/gfwlist +server=/direcpath.com/127.0.0.1#5335 +ipset=/direcpath.com/gfwlist +server=/t.me/127.0.0.1#5335 +ipset=/t.me/gfwlist +server=/blogspot.com.eg/127.0.0.1#5335 +ipset=/blogspot.com.eg/gfwlist +server=/disney.in/127.0.0.1#5335 +ipset=/disney.in/gfwlist +server=/canon.fr/127.0.0.1#5335 +ipset=/canon.fr/gfwlist +server=/blogspot.com.cy/127.0.0.1#5335 +ipset=/blogspot.com.cy/gfwlist +server=/blogspot.com.br/127.0.0.1#5335 +ipset=/blogspot.com.br/gfwlist +server=/blogspot.com.au/127.0.0.1#5335 +ipset=/blogspot.com.au/gfwlist +server=/youtube.si/127.0.0.1#5335 +ipset=/youtube.si/gfwlist +server=/tandberg-china.com/127.0.0.1#5335 +ipset=/tandberg-china.com/gfwlist +server=/blogspot.co.il/127.0.0.1#5335 +ipset=/blogspot.co.il/gfwlist +server=/blogspot.cl/127.0.0.1#5335 +ipset=/blogspot.cl/gfwlist +server=/go-disneyworldgo.com/127.0.0.1#5335 +ipset=/go-disneyworldgo.com/gfwlist +server=/mini.tm/127.0.0.1#5335 +ipset=/mini.tm/gfwlist +server=/blogspot.ch/127.0.0.1#5335 +ipset=/blogspot.ch/gfwlist +server=/directvpomise.com/127.0.0.1#5335 +ipset=/directvpomise.com/gfwlist +server=/ao3.org/127.0.0.1#5335 +ipset=/ao3.org/gfwlist +server=/needforspeedboost.com/127.0.0.1#5335 +ipset=/needforspeedboost.com/gfwlist +server=/blogspot.ba/127.0.0.1#5335 +ipset=/blogspot.ba/gfwlist +server=/sundanceignite2016.com/127.0.0.1#5335 +ipset=/sundanceignite2016.com/gfwlist +server=/gobuyonlinestore.net/127.0.0.1#5335 +ipset=/gobuyonlinestore.net/gfwlist +server=/pornhub.com/127.0.0.1#5335 +ipset=/pornhub.com/gfwlist +server=/bmw-connecteddrive.sg/127.0.0.1#5335 +ipset=/bmw-connecteddrive.sg/gfwlist +server=/blogspot.am/127.0.0.1#5335 +ipset=/blogspot.am/gfwlist +server=/binance.charity/127.0.0.1#5335 +ipset=/binance.charity/gfwlist +server=/blogspot.ae/127.0.0.1#5335 +ipset=/blogspot.ae/gfwlist +server=/geforce.com/127.0.0.1#5335 +ipset=/geforce.com/gfwlist +server=/dtv2009offers.com/127.0.0.1#5335 +ipset=/dtv2009offers.com/gfwlist +server=/sa78gs.wpc.edgecastcdn.net/127.0.0.1#5335 +ipset=/sa78gs.wpc.edgecastcdn.net/gfwlist +server=/nexcat.com/127.0.0.1#5335 +ipset=/nexcat.com/gfwlist +server=/gigabyte2.azureedge.net/127.0.0.1#5335 +ipset=/gigabyte2.azureedge.net/gfwlist +server=/udfs.com/127.0.0.1#5335 +ipset=/udfs.com/gfwlist +server=/gigabyte.com/127.0.0.1#5335 +ipset=/gigabyte.com/gfwlist +server=/wal-mart.com/127.0.0.1#5335 +ipset=/wal-mart.com/gfwlist +server=/c-spanvideo.org/127.0.0.1#5335 +ipset=/c-spanvideo.org/gfwlist +server=/vanish.cl/127.0.0.1#5335 +ipset=/vanish.cl/gfwlist +server=/workplaceusecases.com/127.0.0.1#5335 +ipset=/workplaceusecases.com/gfwlist +server=/zuckerberg.net/127.0.0.1#5335 +ipset=/zuckerberg.net/gfwlist +server=/zuckerberg.com/127.0.0.1#5335 +ipset=/zuckerberg.com/gfwlist +server=/wwwfacebook.com/127.0.0.1#5335 +ipset=/wwwfacebook.com/gfwlist +server=/bmwhk.com/127.0.0.1#5335 +ipset=/bmwhk.com/gfwlist +server=/bmw.com.pa/127.0.0.1#5335 +ipset=/bmw.com.pa/gfwlist +server=/singtaola.com/127.0.0.1#5335 +ipset=/singtaola.com/gfwlist +server=/2013beatshdcybermonday.com/127.0.0.1#5335 +ipset=/2013beatshdcybermonday.com/gfwlist +server=/cdn77.scoreuniverse.com/127.0.0.1#5335 +ipset=/cdn77.scoreuniverse.com/gfwlist +server=/supportfacebook.com/127.0.0.1#5335 +ipset=/supportfacebook.com/gfwlist +server=/sportstream.com/127.0.0.1#5335 +ipset=/sportstream.com/gfwlist +server=/sportsfacebook.com/127.0.0.1#5335 +ipset=/sportsfacebook.com/gfwlist +server=/shopfacebook.com/127.0.0.1#5335 +ipset=/shopfacebook.com/gfwlist +server=/fcebook.com/127.0.0.1#5335 +ipset=/fcebook.com/gfwlist +server=/nextstop.com/127.0.0.1#5335 +ipset=/nextstop.com/gfwlist +server=/visa.so/127.0.0.1#5335 +ipset=/visa.so/gfwlist +server=/youtube.com.az/127.0.0.1#5335 +ipset=/youtube.com.az/gfwlist +server=/wwwdecide.com/127.0.0.1#5335 +ipset=/wwwdecide.com/gfwlist +server=/mastercard.rs/127.0.0.1#5335 +ipset=/mastercard.rs/gfwlist +server=/uun86.com/127.0.0.1#5335 +ipset=/uun86.com/gfwlist +server=/mobilefacebook.com/127.0.0.1#5335 +ipset=/mobilefacebook.com/gfwlist +server=/bmw-int1.com/127.0.0.1#5335 +ipset=/bmw-int1.com/gfwlist +server=/nflxsearch.net/127.0.0.1#5335 +ipset=/nflxsearch.net/gfwlist +server=/disney.fi/127.0.0.1#5335 +ipset=/disney.fi/gfwlist +server=/disney.io/127.0.0.1#5335 +ipset=/disney.io/gfwlist +server=/swtor.com/127.0.0.1#5335 +ipset=/swtor.com/gfwlist +server=/midentsolutions.com/127.0.0.1#5335 +ipset=/midentsolutions.com/gfwlist +server=/markzuckerberg.com/127.0.0.1#5335 +ipset=/markzuckerberg.com/gfwlist +server=/scholar.google.com/127.0.0.1#5335 +ipset=/scholar.google.com/gfwlist +server=/canon-europa.com/127.0.0.1#5335 +ipset=/canon-europa.com/gfwlist +server=/vimeoondemand.com/127.0.0.1#5335 +ipset=/vimeoondemand.com/gfwlist +server=/singpao.com.hk/127.0.0.1#5335 +ipset=/singpao.com.hk/gfwlist +server=/oxfordhandbooks.com/127.0.0.1#5335 +ipset=/oxfordhandbooks.com/gfwlist +server=/repsneakermall.com/127.0.0.1#5335 +ipset=/repsneakermall.com/gfwlist +server=/liverail.tv/127.0.0.1#5335 +ipset=/liverail.tv/gfwlist +server=/mastercard.sk/127.0.0.1#5335 +ipset=/mastercard.sk/gfwlist +server=/facebookportal.com/127.0.0.1#5335 +ipset=/facebookportal.com/gfwlist +server=/ecapi-pchome.cdn.hinet.net/127.0.0.1#5335 +ipset=/ecapi-pchome.cdn.hinet.net/gfwlist +server=/internet.org/127.0.0.1#5335 +ipset=/internet.org/gfwlist +server=/apple.cl/127.0.0.1#5335 +ipset=/apple.cl/gfwlist +server=/howtohackfacebook-account.com/127.0.0.1#5335 +ipset=/howtohackfacebook-account.com/gfwlist +server=/hifacebook.info/127.0.0.1#5335 +ipset=/hifacebook.info/gfwlist +server=/bmwmagazine.com/127.0.0.1#5335 +ipset=/bmwmagazine.com/gfwlist +server=/monsterbydrebeat.com/127.0.0.1#5335 +ipset=/monsterbydrebeat.com/gfwlist +server=/groups.com/127.0.0.1#5335 +ipset=/groups.com/gfwlist +server=/leaguehighschool.com/127.0.0.1#5335 +ipset=/leaguehighschool.com/gfwlist +server=/volvotrucks.qa/127.0.0.1#5335 +ipset=/volvotrucks.qa/gfwlist +server=/gfacecbook.com/127.0.0.1#5335 +ipset=/gfacecbook.com/gfwlist +server=/dettol.pt/127.0.0.1#5335 +ipset=/dettol.pt/gfwlist +server=/veet.com/127.0.0.1#5335 +ipset=/veet.com/gfwlist +server=/yahoo.co.vi/127.0.0.1#5335 +ipset=/yahoo.co.vi/gfwlist +server=/fundraisingwithfacebook.com/127.0.0.1#5335 +ipset=/fundraisingwithfacebook.com/gfwlist +server=/spore.com/127.0.0.1#5335 +ipset=/spore.com/gfwlist +server=/applenews.hamburg/127.0.0.1#5335 +ipset=/applenews.hamburg/gfwlist +server=/friendfeed.com/127.0.0.1#5335 +ipset=/friendfeed.com/gfwlist +server=/friendfeed-media.com/127.0.0.1#5335 +ipset=/friendfeed-media.com/gfwlist +server=/friendfeed-api.com/127.0.0.1#5335 +ipset=/friendfeed-api.com/gfwlist +server=/dot.net/127.0.0.1#5335 +ipset=/dot.net/gfwlist +server=/friendfed.com/127.0.0.1#5335 +ipset=/friendfed.com/gfwlist +server=/viacomcbs.com/127.0.0.1#5335 +ipset=/viacomcbs.com/gfwlist +server=/amerikaovozi.com/127.0.0.1#5335 +ipset=/amerikaovozi.com/gfwlist +server=/firestonecompleteautocare.com/127.0.0.1#5335 +ipset=/firestonecompleteautocare.com/gfwlist +server=/freefacebookads.net/127.0.0.1#5335 +ipset=/freefacebookads.net/gfwlist +server=/epochstories.com/127.0.0.1#5335 +ipset=/epochstories.com/gfwlist +server=/potenza.jp/127.0.0.1#5335 +ipset=/potenza.jp/gfwlist +server=/swisstsa.li/127.0.0.1#5335 +ipset=/swisstsa.li/gfwlist +server=/wiremoneytoirelandwithxoomeasierandcheaper.com/127.0.0.1#5335 +ipset=/wiremoneytoirelandwithxoomeasierandcheaper.com/gfwlist +server=/youtubego.co.in/127.0.0.1#5335 +ipset=/youtubego.co.in/gfwlist +server=/freefacebook.net/127.0.0.1#5335 +ipset=/freefacebook.net/gfwlist +server=/freeb.com/127.0.0.1#5335 +ipset=/freeb.com/gfwlist +server=/hulunetwork.com/127.0.0.1#5335 +ipset=/hulunetwork.com/gfwlist +server=/mini-connected.ch/127.0.0.1#5335 +ipset=/mini-connected.ch/gfwlist +server=/shopbeatsdre.com/127.0.0.1#5335 +ipset=/shopbeatsdre.com/gfwlist +server=/kk.stream/127.0.0.1#5335 +ipset=/kk.stream/gfwlist +server=/myfoxhurricane.com/127.0.0.1#5335 +ipset=/myfoxhurricane.com/gfwlist +server=/bbyintl.com/127.0.0.1#5335 +ipset=/bbyintl.com/gfwlist +server=/fracebook.com/127.0.0.1#5335 +ipset=/fracebook.com/gfwlist +server=/google.com.bd/127.0.0.1#5335 +ipset=/google.com.bd/gfwlist +server=/leaguesharp.info/127.0.0.1#5335 +ipset=/leaguesharp.info/gfwlist +server=/yjcontentdelivery.com/127.0.0.1#5335 +ipset=/yjcontentdelivery.com/gfwlist +server=/shotwithgeforce.com/127.0.0.1#5335 +ipset=/shotwithgeforce.com/gfwlist +server=/fescebook.com/127.0.0.1#5335 +ipset=/fescebook.com/gfwlist +server=/uun95.com/127.0.0.1#5335 +ipset=/uun95.com/gfwlist +server=/ferabook.com/127.0.0.1#5335 +ipset=/ferabook.com/gfwlist +server=/fececbook.com/127.0.0.1#5335 +ipset=/fececbook.com/gfwlist +server=/feceboox.com/127.0.0.1#5335 +ipset=/feceboox.com/gfwlist +server=/azure.net/127.0.0.1#5335 +ipset=/azure.net/gfwlist +server=/mcdonalds.com.hk/127.0.0.1#5335 +ipset=/mcdonalds.com.hk/gfwlist +server=/heyzo.com/127.0.0.1#5335 +ipset=/heyzo.com/gfwlist +server=/beatsbydre2081.com/127.0.0.1#5335 +ipset=/beatsbydre2081.com/gfwlist +server=/hpcodewarsbcn.com/127.0.0.1#5335 +ipset=/hpcodewarsbcn.com/gfwlist +server=/fecbbok.com/127.0.0.1#5335 +ipset=/fecbbok.com/gfwlist +server=/dmm-extension.com/127.0.0.1#5335 +ipset=/dmm-extension.com/gfwlist +server=/vmglobal.net/127.0.0.1#5335 +ipset=/vmglobal.net/gfwlist +server=/bmw-m.com/127.0.0.1#5335 +ipset=/bmw-m.com/gfwlist +server=/akamaiphillipines.net/127.0.0.1#5335 +ipset=/akamaiphillipines.net/gfwlist +server=/cheapestbeatsdrdre.com/127.0.0.1#5335 +ipset=/cheapestbeatsdrdre.com/gfwlist +server=/nextechafrica.net/127.0.0.1#5335 +ipset=/nextechafrica.net/gfwlist +server=/visa-atm.com/127.0.0.1#5335 +ipset=/visa-atm.com/gfwlist +server=/fdacebook.info/127.0.0.1#5335 +ipset=/fdacebook.info/gfwlist +server=/gcrtires.com/127.0.0.1#5335 +ipset=/gcrtires.com/gfwlist +server=/fcebookk.com/127.0.0.1#5335 +ipset=/fcebookk.com/gfwlist +server=/online-deals.net/127.0.0.1#5335 +ipset=/online-deals.net/gfwlist +server=/linegame.jp/127.0.0.1#5335 +ipset=/linegame.jp/gfwlist +server=/xn--gogl-1nd42e.com/127.0.0.1#5335 +ipset=/xn--gogl-1nd42e.com/gfwlist +server=/bmw.com.mo/127.0.0.1#5335 +ipset=/bmw.com.mo/gfwlist +server=/parstream.com/127.0.0.1#5335 +ipset=/parstream.com/gfwlist +server=/fbworkmail.com/127.0.0.1#5335 +ipset=/fbworkmail.com/gfwlist +server=/bloomberglaw.com/127.0.0.1#5335 +ipset=/bloomberglaw.com/gfwlist +server=/ieee-ecce.org/127.0.0.1#5335 +ipset=/ieee-ecce.org/gfwlist +server=/nurofen.ie/127.0.0.1#5335 +ipset=/nurofen.ie/gfwlist +server=/faccebook.com/127.0.0.1#5335 +ipset=/faccebook.com/gfwlist +server=/ssl-certificate.ch/127.0.0.1#5335 +ipset=/ssl-certificate.ch/gfwlist +server=/volvotruckcenter.se/127.0.0.1#5335 +ipset=/volvotruckcenter.se/gfwlist +server=/qualcomm.com/127.0.0.1#5335 +ipset=/qualcomm.com/gfwlist +server=/fbsbx.com/127.0.0.1#5335 +ipset=/fbsbx.com/gfwlist +server=/faacebok.com/127.0.0.1#5335 +ipset=/faacebok.com/gfwlist +server=/duckduckgo.com/127.0.0.1#5335 +ipset=/duckduckgo.com/gfwlist +server=/fbreg.com/127.0.0.1#5335 +ipset=/fbreg.com/gfwlist +server=/paypal-search.com/127.0.0.1#5335 +ipset=/paypal-search.com/gfwlist +server=/nvidia.com.tw/127.0.0.1#5335 +ipset=/nvidia.com.tw/gfwlist +server=/attexperts.com/127.0.0.1#5335 +ipset=/attexperts.com/gfwlist +server=/soundofhope.org/127.0.0.1#5335 +ipset=/soundofhope.org/gfwlist +server=/swissign.com/127.0.0.1#5335 +ipset=/swissign.com/gfwlist +server=/fbinnovation.com/127.0.0.1#5335 +ipset=/fbinnovation.com/gfwlist +server=/12diasderegalosdeitunes.com.hn/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.com.hn/gfwlist +server=/wwwebay.net/127.0.0.1#5335 +ipset=/wwwebay.net/gfwlist +server=/thawte.de/127.0.0.1#5335 +ipset=/thawte.de/gfwlist +server=/fbfeedback.com/127.0.0.1#5335 +ipset=/fbfeedback.com/gfwlist +server=/mairbeats.com/127.0.0.1#5335 +ipset=/mairbeats.com/gfwlist +server=/vmwaredemandcenter.com/127.0.0.1#5335 +ipset=/vmwaredemandcenter.com/gfwlist +server=/fbboostyourbusiness.com/127.0.0.1#5335 +ipset=/fbboostyourbusiness.com/gfwlist +server=/motionpictureser.com/127.0.0.1#5335 +ipset=/motionpictureser.com/gfwlist +server=/paisapay.cc/127.0.0.1#5335 +ipset=/paisapay.cc/gfwlist +server=/bloombergspace.com/127.0.0.1#5335 +ipset=/bloombergspace.com/gfwlist +server=/statics-marketingsites-eus-ms-com.akamaized.net/127.0.0.1#5335 +ipset=/statics-marketingsites-eus-ms-com.akamaized.net/gfwlist +server=/lghvacstory.com/127.0.0.1#5335 +ipset=/lghvacstory.com/gfwlist +server=/blzddistkr1-a.akamaihd.net/127.0.0.1#5335 +ipset=/blzddistkr1-a.akamaihd.net/gfwlist +server=/newsmaxtv.com/127.0.0.1#5335 +ipset=/newsmaxtv.com/gfwlist +server=/bowsersinsidestory.com/127.0.0.1#5335 +ipset=/bowsersinsidestory.com/gfwlist +server=/fb.careers/127.0.0.1#5335 +ipset=/fb.careers/gfwlist +server=/instagram-press.com/127.0.0.1#5335 +ipset=/instagram-press.com/gfwlist +server=/theepochtimessubscribe.com/127.0.0.1#5335 +ipset=/theepochtimessubscribe.com/gfwlist +server=/intel.tf/127.0.0.1#5335 +ipset=/intel.tf/gfwlist +server=/fasebokk.com/127.0.0.1#5335 +ipset=/fasebokk.com/gfwlist +server=/faicbooc.com/127.0.0.1#5335 +ipset=/faicbooc.com/gfwlist +server=/ntnews.com.au/127.0.0.1#5335 +ipset=/ntnews.com.au/gfwlist +server=/unlocklimitlesslearning.com/127.0.0.1#5335 +ipset=/unlocklimitlesslearning.com/gfwlist +server=/minidealernet.com/127.0.0.1#5335 +ipset=/minidealernet.com/gfwlist +server=/mastercard.jo/127.0.0.1#5335 +ipset=/mastercard.jo/gfwlist +server=/monsterbeatsitaly.com/127.0.0.1#5335 +ipset=/monsterbeatsitaly.com/gfwlist +server=/fadebook.com/127.0.0.1#5335 +ipset=/fadebook.com/gfwlist +server=/facxebook.com/127.0.0.1#5335 +ipset=/facxebook.com/gfwlist +server=/facwebook.com/127.0.0.1#5335 +ipset=/facwebook.com/gfwlist +server=/doubleclick.net/127.0.0.1#5335 +ipset=/doubleclick.net/gfwlist +server=/biomedcentral.com/127.0.0.1#5335 +ipset=/biomedcentral.com/gfwlist +server=/facrbook.com/127.0.0.1#5335 +ipset=/facrbook.com/gfwlist +server=/bmw-art-journey.com/127.0.0.1#5335 +ipset=/bmw-art-journey.com/gfwlist +server=/hulugo.com/127.0.0.1#5335 +ipset=/hulugo.com/gfwlist +server=/fackebook.com/127.0.0.1#5335 +ipset=/fackebook.com/gfwlist +server=/getdropbox.com/127.0.0.1#5335 +ipset=/getdropbox.com/gfwlist +server=/facewook.com/127.0.0.1#5335 +ipset=/facewook.com/gfwlist +server=/icloud.pt/127.0.0.1#5335 +ipset=/icloud.pt/gfwlist +server=/facewbook.co/127.0.0.1#5335 +ipset=/facewbook.co/gfwlist +server=/huffingtonpost.ca/127.0.0.1#5335 +ipset=/huffingtonpost.ca/gfwlist +server=/facevbook.com/127.0.0.1#5335 +ipset=/facevbook.com/gfwlist +server=/muji.com.hk/127.0.0.1#5335 +ipset=/muji.com.hk/gfwlist +server=/facetook.com/127.0.0.1#5335 +ipset=/facetook.com/gfwlist +server=/facesounds.com/127.0.0.1#5335 +ipset=/facesounds.com/gfwlist +server=/facesbooc.com/127.0.0.1#5335 +ipset=/facesbooc.com/gfwlist +server=/faceobook.com/127.0.0.1#5335 +ipset=/faceobook.com/gfwlist +server=/vmwarecloud.com/127.0.0.1#5335 +ipset=/vmwarecloud.com/gfwlist +server=/sharepoint.com/127.0.0.1#5335 +ipset=/sharepoint.com/gfwlist +server=/facegbok.com/127.0.0.1#5335 +ipset=/facegbok.com/gfwlist +server=/faceebot.com/127.0.0.1#5335 +ipset=/faceebot.com/gfwlist +server=/faceebook.com/127.0.0.1#5335 +ipset=/faceebook.com/gfwlist +server=/monsterbeatshere.com/127.0.0.1#5335 +ipset=/monsterbeatshere.com/gfwlist +server=/disneytvajobs.com/127.0.0.1#5335 +ipset=/disneytvajobs.com/gfwlist +server=/facedbook.com/127.0.0.1#5335 +ipset=/facedbook.com/gfwlist +server=/facecook.org/127.0.0.1#5335 +ipset=/facecook.org/gfwlist +server=/secretchina.com/127.0.0.1#5335 +ipset=/secretchina.com/gfwlist +server=/foxredeem.com/127.0.0.1#5335 +ipset=/foxredeem.com/gfwlist +server=/archlinux.org/127.0.0.1#5335 +ipset=/archlinux.org/gfwlist +server=/revolv.com/127.0.0.1#5335 +ipset=/revolv.com/gfwlist +server=/facebopk.com/127.0.0.1#5335 +ipset=/facebopk.com/gfwlist +server=/faceboot.com/127.0.0.1#5335 +ipset=/faceboot.com/gfwlist +server=/applestorepro.eu/127.0.0.1#5335 +ipset=/applestorepro.eu/gfwlist +server=/googel.com/127.0.0.1#5335 +ipset=/googel.com/gfwlist +server=/faceboom.com/127.0.0.1#5335 +ipset=/faceboom.com/gfwlist +server=/facebooll.com/127.0.0.1#5335 +ipset=/facebooll.com/gfwlist +server=/huffingtonpost.kr/127.0.0.1#5335 +ipset=/huffingtonpost.kr/gfwlist +server=/facebookw.com/127.0.0.1#5335 +ipset=/facebookw.com/gfwlist +server=/google.com.mt/127.0.0.1#5335 +ipset=/google.com.mt/gfwlist +server=/pre-bmwgroup.jobs/127.0.0.1#5335 +ipset=/pre-bmwgroup.jobs/gfwlist +server=/facebooktv.net/127.0.0.1#5335 +ipset=/facebooktv.net/gfwlist +server=/custombeatssbydreus.com/127.0.0.1#5335 +ipset=/custombeatssbydreus.com/gfwlist +server=/realclearpolitics.com/127.0.0.1#5335 +ipset=/realclearpolitics.com/gfwlist +server=/calgon.com/127.0.0.1#5335 +ipset=/calgon.com/gfwlist +server=/facebooksuppliers.com/127.0.0.1#5335 +ipset=/facebooksuppliers.com/gfwlist +server=/sourcingforebay.tv/127.0.0.1#5335 +ipset=/sourcingforebay.tv/gfwlist +server=/hketgroup.com/127.0.0.1#5335 +ipset=/hketgroup.com/gfwlist +server=/simility.com/127.0.0.1#5335 +ipset=/simility.com/gfwlist +server=/facebooksupplier.com/127.0.0.1#5335 +ipset=/facebooksupplier.com/gfwlist +server=/facebookstudios.net/127.0.0.1#5335 +ipset=/facebookstudios.net/gfwlist +server=/facebookstories.com/127.0.0.1#5335 +ipset=/facebookstories.com/gfwlist +server=/facebooksafety.com/127.0.0.1#5335 +ipset=/facebooksafety.com/gfwlist +server=/nintendo.at/127.0.0.1#5335 +ipset=/nintendo.at/gfwlist +server=/evernote.com/127.0.0.1#5335 +ipset=/evernote.com/gfwlist +server=/facebooks.com/127.0.0.1#5335 +ipset=/facebooks.com/gfwlist +server=/facebookporno.net/127.0.0.1#5335 +ipset=/facebookporno.net/gfwlist +server=/facebookporn.org/127.0.0.1#5335 +ipset=/facebookporn.org/gfwlist +server=/speeddreamride.com/127.0.0.1#5335 +ipset=/speeddreamride.com/gfwlist +server=/ebaydlassifieds.com/127.0.0.1#5335 +ipset=/ebaydlassifieds.com/gfwlist +server=/disney.my/127.0.0.1#5335 +ipset=/disney.my/gfwlist +server=/facebookpoke.org/127.0.0.1#5335 +ipset=/facebookpoke.org/gfwlist +server=/instagranm.com/127.0.0.1#5335 +ipset=/instagranm.com/gfwlist +server=/facebookpoke.net/127.0.0.1#5335 +ipset=/facebookpoke.net/gfwlist +server=/bridgestone.co.th/127.0.0.1#5335 +ipset=/bridgestone.co.th/gfwlist +server=/amazonworkdocs.com/127.0.0.1#5335 +ipset=/amazonworkdocs.com/gfwlist +server=/facebookphonenumber.net/127.0.0.1#5335 +ipset=/facebookphonenumber.net/gfwlist +server=/minicooper.ca/127.0.0.1#5335 +ipset=/minicooper.ca/gfwlist +server=/facebookook.com/127.0.0.1#5335 +ipset=/facebookook.com/gfwlist +server=/xn--yt8h.la/127.0.0.1#5335 +ipset=/xn--yt8h.la/gfwlist +server=/disney.se/127.0.0.1#5335 +ipset=/disney.se/gfwlist +server=/bml.info/127.0.0.1#5335 +ipset=/bml.info/gfwlist +server=/duckduckgo.de/127.0.0.1#5335 +ipset=/duckduckgo.de/gfwlist +server=/ebaysoho.com/127.0.0.1#5335 +ipset=/ebaysoho.com/gfwlist +server=/itunes-radio.net/127.0.0.1#5335 +ipset=/itunes-radio.net/gfwlist +server=/facebooknfl.com/127.0.0.1#5335 +ipset=/facebooknfl.com/gfwlist +server=/rgpub.io/127.0.0.1#5335 +ipset=/rgpub.io/gfwlist +server=/savethedate.foo/127.0.0.1#5335 +ipset=/savethedate.foo/gfwlist +server=/icloud.ie/127.0.0.1#5335 +ipset=/icloud.ie/gfwlist +server=/facebookmarketing.info/127.0.0.1#5335 +ipset=/facebookmarketing.info/gfwlist +server=/facebookmanager.info/127.0.0.1#5335 +ipset=/facebookmanager.info/gfwlist +server=/ipadair.fr/127.0.0.1#5335 +ipset=/ipadair.fr/gfwlist +server=/facebookmail.tv/127.0.0.1#5335 +ipset=/facebookmail.tv/gfwlist +server=/nikeairmaxs.com/127.0.0.1#5335 +ipset=/nikeairmaxs.com/gfwlist +server=/fox35orlando.com/127.0.0.1#5335 +ipset=/fox35orlando.com/gfwlist +server=/kijijiautos.ca/127.0.0.1#5335 +ipset=/kijijiautos.ca/gfwlist +server=/headphoneshome.com/127.0.0.1#5335 +ipset=/headphoneshome.com/gfwlist +server=/facebooklogin.com/127.0.0.1#5335 +ipset=/facebooklogin.com/gfwlist +server=/appleipodsettlement.com/127.0.0.1#5335 +ipset=/appleipodsettlement.com/gfwlist +server=/cdngarenanow-a.akamaihd.net/127.0.0.1#5335 +ipset=/cdngarenanow-a.akamaihd.net/gfwlist +server=/facebooki.com/127.0.0.1#5335 +ipset=/facebooki.com/gfwlist +server=/facebookhub.com/127.0.0.1#5335 +ipset=/facebookhub.com/gfwlist +server=/visa.pt/127.0.0.1#5335 +ipset=/visa.pt/gfwlist +server=/mastercard.co.za/127.0.0.1#5335 +ipset=/mastercard.co.za/gfwlist +server=/ebayheels.com/127.0.0.1#5335 +ipset=/ebayheels.com/gfwlist +server=/facebookhome.cc/127.0.0.1#5335 +ipset=/facebookhome.cc/gfwlist +server=/paypal-innovationlab.com/127.0.0.1#5335 +ipset=/paypal-innovationlab.com/gfwlist +server=/ebayoncampus.com/127.0.0.1#5335 +ipset=/ebayoncampus.com/gfwlist +server=/facebookgraphsearch.com/127.0.0.1#5335 +ipset=/facebookgraphsearch.com/gfwlist +server=/facebookcoronavirus.com/127.0.0.1#5335 +ipset=/facebookcoronavirus.com/gfwlist +server=/facebookconsultant.org/127.0.0.1#5335 +ipset=/facebookconsultant.org/gfwlist +server=/facebookcom.com/127.0.0.1#5335 +ipset=/facebookcom.com/gfwlist +server=/frescolib.org/127.0.0.1#5335 +ipset=/frescolib.org/gfwlist +server=/facebookclub.com/127.0.0.1#5335 +ipset=/facebookclub.com/gfwlist +server=/facebookbrand.net/127.0.0.1#5335 +ipset=/facebookbrand.net/gfwlist +server=/gettyimages.com.mx/127.0.0.1#5335 +ipset=/gettyimages.com.mx/gfwlist +server=/facebookadvertisingsecrets.com/127.0.0.1#5335 +ipset=/facebookadvertisingsecrets.com/gfwlist +server=/facebook.us/127.0.0.1#5335 +ipset=/facebook.us/gfwlist +server=/facebook.shop/127.0.0.1#5335 +ipset=/facebook.shop/gfwlist +server=/disqus.com/127.0.0.1#5335 +ipset=/disqus.com/gfwlist +server=/wixapps.net/127.0.0.1#5335 +ipset=/wixapps.net/gfwlist +server=/facebook.nl/127.0.0.1#5335 +ipset=/facebook.nl/gfwlist +server=/fecebook.net/127.0.0.1#5335 +ipset=/fecebook.net/gfwlist +server=/huobigroup.com/127.0.0.1#5335 +ipset=/huobigroup.com/gfwlist +server=/vidmpreview.com/127.0.0.1#5335 +ipset=/vidmpreview.com/gfwlist +server=/facebook.hu/127.0.0.1#5335 +ipset=/facebook.hu/gfwlist +server=/facebook.net/127.0.0.1#5335 +ipset=/facebook.net/gfwlist +server=/canon.com/127.0.0.1#5335 +ipset=/canon.com/gfwlist +server=/facebook.br/127.0.0.1#5335 +ipset=/facebook.br/gfwlist +server=/paypal-prepagata.com/127.0.0.1#5335 +ipset=/paypal-prepagata.com/gfwlist +server=/terapeack.com/127.0.0.1#5335 +ipset=/terapeack.com/gfwlist +server=/facebook-texas-holdem.com/127.0.0.1#5335 +ipset=/facebook-texas-holdem.com/gfwlist +server=/nyt.net/127.0.0.1#5335 +ipset=/nyt.net/gfwlist +server=/oculusbrand.com/127.0.0.1#5335 +ipset=/oculusbrand.com/gfwlist +server=/facebook-pmdcenter.net/127.0.0.1#5335 +ipset=/facebook-pmdcenter.net/gfwlist +server=/curseforge.com/127.0.0.1#5335 +ipset=/curseforge.com/gfwlist +server=/francemail.com/127.0.0.1#5335 +ipset=/francemail.com/gfwlist +server=/shopcustomizedbeats.com/127.0.0.1#5335 +ipset=/shopcustomizedbeats.com/gfwlist +server=/storesense.com/127.0.0.1#5335 +ipset=/storesense.com/gfwlist +server=/vfsco.se/127.0.0.1#5335 +ipset=/vfsco.se/gfwlist +server=/facebook-newsroom.com/127.0.0.1#5335 +ipset=/facebook-newsroom.com/gfwlist +server=/facebook-forum.com/127.0.0.1#5335 +ipset=/facebook-forum.com/gfwlist +server=/easic.com/127.0.0.1#5335 +ipset=/easic.com/gfwlist +server=/easportsfootball.com/127.0.0.1#5335 +ipset=/easportsfootball.com/gfwlist +server=/miniworkshop.com/127.0.0.1#5335 +ipset=/miniworkshop.com/gfwlist +server=/nike-org.com/127.0.0.1#5335 +ipset=/nike-org.com/gfwlist +server=/facebook-corp.com/127.0.0.1#5335 +ipset=/facebook-corp.com/gfwlist +server=/microsoft.cz/127.0.0.1#5335 +ipset=/microsoft.cz/gfwlist +server=/faceboock.com/127.0.0.1#5335 +ipset=/faceboock.com/gfwlist +server=/paypal-business.org/127.0.0.1#5335 +ipset=/paypal-business.org/gfwlist +server=/visa.com.sg/127.0.0.1#5335 +ipset=/visa.com.sg/gfwlist +server=/bmw.com.ph/127.0.0.1#5335 +ipset=/bmw.com.ph/gfwlist +server=/bookclubcorner.com/127.0.0.1#5335 +ipset=/bookclubcorner.com/gfwlist +server=/faceboobok.com/127.0.0.1#5335 +ipset=/faceboobok.com/gfwlist +server=/beatswirelesscuffie.com/127.0.0.1#5335 +ipset=/beatswirelesscuffie.com/gfwlist +server=/faceboo.com/127.0.0.1#5335 +ipset=/faceboo.com/gfwlist +server=/betternike.com/127.0.0.1#5335 +ipset=/betternike.com/gfwlist +server=/facebomok.com/127.0.0.1#5335 +ipset=/facebomok.com/gfwlist +server=/fteproxy.org/127.0.0.1#5335 +ipset=/fteproxy.org/gfwlist +server=/attuverseonline.com/127.0.0.1#5335 +ipset=/attuverseonline.com/gfwlist +server=/braintreeps.com/127.0.0.1#5335 +ipset=/braintreeps.com/gfwlist +server=/renovacionxboxlive.com/127.0.0.1#5335 +ipset=/renovacionxboxlive.com/gfwlist +server=/facebokok.com/127.0.0.1#5335 +ipset=/facebokok.com/gfwlist +server=/facebokk.com/127.0.0.1#5335 +ipset=/facebokk.com/gfwlist +server=/canonproprinters.com/127.0.0.1#5335 +ipset=/canonproprinters.com/gfwlist +server=/beatsbydreonlines-ireland.com/127.0.0.1#5335 +ipset=/beatsbydreonlines-ireland.com/gfwlist +server=/facebokc.com/127.0.0.1#5335 +ipset=/facebokc.com/gfwlist +server=/facebokbook.com/127.0.0.1#5335 +ipset=/facebokbook.com/gfwlist +server=/facebocke.com/127.0.0.1#5335 +ipset=/facebocke.com/gfwlist +server=/faceboak.com/127.0.0.1#5335 +ipset=/faceboak.com/gfwlist +server=/google.co.uk/127.0.0.1#5335 +ipset=/google.co.uk/gfwlist +server=/drebeats-singapore.net/127.0.0.1#5335 +ipset=/drebeats-singapore.net/gfwlist +server=/facebkkk.com/127.0.0.1#5335 +ipset=/facebkkk.com/gfwlist +server=/desktopmovies.net/127.0.0.1#5335 +ipset=/desktopmovies.net/gfwlist +server=/botstop.com/127.0.0.1#5335 +ipset=/botstop.com/gfwlist +server=/arphic.com/127.0.0.1#5335 +ipset=/arphic.com/gfwlist +server=/facebdok.com/127.0.0.1#5335 +ipset=/facebdok.com/gfwlist +server=/dailymail.co.uk/127.0.0.1#5335 +ipset=/dailymail.co.uk/gfwlist +server=/ext-twitch.tv/127.0.0.1#5335 +ipset=/ext-twitch.tv/gfwlist +server=/facebboook.com/127.0.0.1#5335 +ipset=/facebboook.com/gfwlist +server=/facebbook.com/127.0.0.1#5335 +ipset=/facebbook.com/gfwlist +server=/faceabook.com/127.0.0.1#5335 +ipset=/faceabook.com/gfwlist +server=/volvotrucks.sg/127.0.0.1#5335 +ipset=/volvotrucks.sg/gfwlist +server=/face-book.com/127.0.0.1#5335 +ipset=/face-book.com/gfwlist +server=/vct.news/127.0.0.1#5335 +ipset=/vct.news/gfwlist +server=/facdebook.com/127.0.0.1#5335 +ipset=/facdebook.com/gfwlist +server=/cashbycashapp.com/127.0.0.1#5335 +ipset=/cashbycashapp.com/gfwlist +server=/newton.com/127.0.0.1#5335 +ipset=/newton.com/gfwlist +server=/beats-headphones.us/127.0.0.1#5335 +ipset=/beats-headphones.us/gfwlist +server=/firestonecomercial.com.mx/127.0.0.1#5335 +ipset=/firestonecomercial.com.mx/gfwlist +server=/facbool.com/127.0.0.1#5335 +ipset=/facbool.com/gfwlist +server=/alphera.co.in/127.0.0.1#5335 +ipset=/alphera.co.in/gfwlist +server=/facbook.com/127.0.0.1#5335 +ipset=/facbook.com/gfwlist +server=/facbeok.com/127.0.0.1#5335 +ipset=/facbeok.com/gfwlist +server=/youtube.co.zw/127.0.0.1#5335 +ipset=/youtube.co.zw/gfwlist +server=/faacebook.com/127.0.0.1#5335 +ipset=/faacebook.com/gfwlist +server=/dotfacebook.net/127.0.0.1#5335 +ipset=/dotfacebook.net/gfwlist +server=/webex.co.uk/127.0.0.1#5335 +ipset=/webex.co.uk/gfwlist +server=/adobesign.com/127.0.0.1#5335 +ipset=/adobesign.com/gfwlist +server=/bmw-connecteddrive.hu/127.0.0.1#5335 +ipset=/bmw-connecteddrive.hu/gfwlist +server=/como-hackearfacebook.com/127.0.0.1#5335 +ipset=/como-hackearfacebook.com/gfwlist +server=/china-facebook.com/127.0.0.1#5335 +ipset=/china-facebook.com/gfwlist +server=/celebgramme.com/127.0.0.1#5335 +ipset=/celebgramme.com/gfwlist +server=/careersatfb.com/127.0.0.1#5335 +ipset=/careersatfb.com/gfwlist +server=/fbf8.com/127.0.0.1#5335 +ipset=/fbf8.com/gfwlist +server=/reactjs.org/127.0.0.1#5335 +ipset=/reactjs.org/gfwlist +server=/atlasdmt.com/127.0.0.1#5335 +ipset=/atlasdmt.com/gfwlist +server=/youtube.hu/127.0.0.1#5335 +ipset=/youtube.hu/gfwlist +server=/canon.be/127.0.0.1#5335 +ipset=/canon.be/gfwlist +server=/alphabet.asia/127.0.0.1#5335 +ipset=/alphabet.asia/gfwlist +server=/bloombergbriefs.com/127.0.0.1#5335 +ipset=/bloombergbriefs.com/gfwlist +server=/epicbrowser.com/127.0.0.1#5335 +ipset=/epicbrowser.com/gfwlist +server=/myrewardzone.com/127.0.0.1#5335 +ipset=/myrewardzone.com/gfwlist +server=/beautyandthebeastmusical.co.uk/127.0.0.1#5335 +ipset=/beautyandthebeastmusical.co.uk/gfwlist +server=/beatsbydreboxingdayca.com/127.0.0.1#5335 +ipset=/beatsbydreboxingdayca.com/gfwlist +server=/acebooik.com/127.0.0.1#5335 +ipset=/acebooik.com/gfwlist +server=/youtube.co.jp/127.0.0.1#5335 +ipset=/youtube.co.jp/gfwlist +server=/admob.com/127.0.0.1#5335 +ipset=/admob.com/gfwlist +server=/whatsapp.net/127.0.0.1#5335 +ipset=/whatsapp.net/gfwlist +server=/paypal-plaza.com/127.0.0.1#5335 +ipset=/paypal-plaza.com/gfwlist +server=/whatsapp.info/127.0.0.1#5335 +ipset=/whatsapp.info/gfwlist +server=/rakuten.tw/127.0.0.1#5335 +ipset=/rakuten.tw/gfwlist +server=/verisign.info/127.0.0.1#5335 +ipset=/verisign.info/gfwlist +server=/typekit.net/127.0.0.1#5335 +ipset=/typekit.net/gfwlist +server=/vfsco.com.br/127.0.0.1#5335 +ipset=/vfsco.com.br/gfwlist +server=/whatsapp.cc/127.0.0.1#5335 +ipset=/whatsapp.cc/gfwlist +server=/blizzcon-a.akamaihd.net/127.0.0.1#5335 +ipset=/blizzcon-a.akamaihd.net/gfwlist +server=/nsimg.net/127.0.0.1#5335 +ipset=/nsimg.net/gfwlist +server=/oculusvr.com/127.0.0.1#5335 +ipset=/oculusvr.com/gfwlist +server=/visa.lt/127.0.0.1#5335 +ipset=/visa.lt/gfwlist +server=/rbbusinessshop.com/127.0.0.1#5335 +ipset=/rbbusinessshop.com/gfwlist +server=/wwwpaypass.com/127.0.0.1#5335 +ipset=/wwwpaypass.com/gfwlist +server=/steamgames.com/127.0.0.1#5335 +ipset=/steamgames.com/gfwlist +server=/gbnews.uk/127.0.0.1#5335 +ipset=/gbnews.uk/gfwlist +server=/maskedsingerfox.com/127.0.0.1#5335 +ipset=/maskedsingerfox.com/gfwlist +server=/facebook-pmdcenter.org/127.0.0.1#5335 +ipset=/facebook-pmdcenter.org/gfwlist +server=/oculus.com/127.0.0.1#5335 +ipset=/oculus.com/gfwlist +server=/gvt3.com/127.0.0.1#5335 +ipset=/gvt3.com/gfwlist +server=/nbabot.net/127.0.0.1#5335 +ipset=/nbabot.net/gfwlist +server=/bmw.tt/127.0.0.1#5335 +ipset=/bmw.tt/gfwlist +server=/directvlosangeles.com/127.0.0.1#5335 +ipset=/directvlosangeles.com/gfwlist +server=/epochtimes.pl/127.0.0.1#5335 +ipset=/epochtimes.pl/gfwlist +server=/web-instagram.net/127.0.0.1#5335 +ipset=/web-instagram.net/gfwlist +server=/online-instagram.com/127.0.0.1#5335 +ipset=/online-instagram.com/gfwlist +server=/facebhook.com/127.0.0.1#5335 +ipset=/facebhook.com/gfwlist +server=/theinstagramhack.com/127.0.0.1#5335 +ipset=/theinstagramhack.com/gfwlist +server=/volvopenta.nl/127.0.0.1#5335 +ipset=/volvopenta.nl/gfwlist +server=/lnstagram-help.com/127.0.0.1#5335 +ipset=/lnstagram-help.com/gfwlist +server=/canon-emea.com/127.0.0.1#5335 +ipset=/canon-emea.com/gfwlist +server=/bmwm.com/127.0.0.1#5335 +ipset=/bmwm.com/gfwlist +server=/kingstagram.com/127.0.0.1#5335 +ipset=/kingstagram.com/gfwlist +server=/instgram.com/127.0.0.1#5335 +ipset=/instgram.com/gfwlist +server=/instastyle.tv/127.0.0.1#5335 +ipset=/instastyle.tv/gfwlist +server=/vhxqa1.com/127.0.0.1#5335 +ipset=/vhxqa1.com/gfwlist +server=/blzmedia-a.akamaihd.net/127.0.0.1#5335 +ipset=/blzmedia-a.akamaihd.net/gfwlist +server=/gopivotal.com/127.0.0.1#5335 +ipset=/gopivotal.com/gfwlist +server=/braintreepayments.org/127.0.0.1#5335 +ipset=/braintreepayments.org/gfwlist +server=/instanttelegram.com/127.0.0.1#5335 +ipset=/instanttelegram.com/gfwlist +server=/tvmedia.net.au/127.0.0.1#5335 +ipset=/tvmedia.net.au/gfwlist +server=/21centuryaccess.com/127.0.0.1#5335 +ipset=/21centuryaccess.com/gfwlist +server=/volvobuses.com.ar/127.0.0.1#5335 +ipset=/volvobuses.com.ar/gfwlist +server=/geeksquad.com/127.0.0.1#5335 +ipset=/geeksquad.com/gfwlist +server=/time.gov/127.0.0.1#5335 +ipset=/time.gov/gfwlist +server=/amplifyframework.com/127.0.0.1#5335 +ipset=/amplifyframework.com/gfwlist +server=/sundayready.com/127.0.0.1#5335 +ipset=/sundayready.com/gfwlist +server=/instagrem.com/127.0.0.1#5335 +ipset=/instagrem.com/gfwlist +server=/licensebuttons.net/127.0.0.1#5335 +ipset=/licensebuttons.net/gfwlist +server=/thomsonreuters.com.br/127.0.0.1#5335 +ipset=/thomsonreuters.com.br/gfwlist +server=/instagramtips.com/127.0.0.1#5335 +ipset=/instagramtips.com/gfwlist +server=/zeronet.io/127.0.0.1#5335 +ipset=/zeronet.io/gfwlist +server=/aanaan.com/127.0.0.1#5335 +ipset=/aanaan.com/gfwlist +server=/hplatexknowledgecenter.com/127.0.0.1#5335 +ipset=/hplatexknowledgecenter.com/gfwlist +server=/pypl.tv/127.0.0.1#5335 +ipset=/pypl.tv/gfwlist +server=/riotforgegames.com/127.0.0.1#5335 +ipset=/riotforgegames.com/gfwlist +server=/instagramdi.com/127.0.0.1#5335 +ipset=/instagramdi.com/gfwlist +server=/sourcingforebay.net/127.0.0.1#5335 +ipset=/sourcingforebay.net/gfwlist +server=/zeenews-fonts.s3.amazonaws.com/127.0.0.1#5335 +ipset=/zeenews-fonts.s3.amazonaws.com/gfwlist +server=/instagramm.com/127.0.0.1#5335 +ipset=/instagramm.com/gfwlist +server=/drdrebeatsuk.com/127.0.0.1#5335 +ipset=/drdrebeatsuk.com/gfwlist +server=/paypalbeacon.com/127.0.0.1#5335 +ipset=/paypalbeacon.com/gfwlist +server=/instagramkusu.com/127.0.0.1#5335 +ipset=/instagramkusu.com/gfwlist +server=/mray.club/127.0.0.1#5335 +ipset=/mray.club/gfwlist +server=/origin.com/127.0.0.1#5335 +ipset=/origin.com/gfwlist +server=/icloud.vn/127.0.0.1#5335 +ipset=/icloud.vn/gfwlist +server=/thinkdifferent.us/127.0.0.1#5335 +ipset=/thinkdifferent.us/gfwlist +server=/instagramcn.com/127.0.0.1#5335 +ipset=/instagramcn.com/gfwlist +server=/instagramci.com/127.0.0.1#5335 +ipset=/instagramci.com/gfwlist +server=/pixiv.net/127.0.0.1#5335 +ipset=/pixiv.net/gfwlist +server=/pokemonvgc.com/127.0.0.1#5335 +ipset=/pokemonvgc.com/gfwlist +server=/apple.pl/127.0.0.1#5335 +ipset=/apple.pl/gfwlist +server=/canon.com.cy/127.0.0.1#5335 +ipset=/canon.com.cy/gfwlist +server=/vanish.ch/127.0.0.1#5335 +ipset=/vanish.ch/gfwlist +server=/booking.com/127.0.0.1#5335 +ipset=/booking.com/gfwlist +server=/payypal.com/127.0.0.1#5335 +ipset=/payypal.com/gfwlist +server=/workers.dev/127.0.0.1#5335 +ipset=/workers.dev/gfwlist +server=/intel.sy/127.0.0.1#5335 +ipset=/intel.sy/gfwlist +server=/instagda.com/127.0.0.1#5335 +ipset=/instagda.com/gfwlist +server=/foxsportsneworleans.com/127.0.0.1#5335 +ipset=/foxsportsneworleans.com/gfwlist +server=/instafallow.com/127.0.0.1#5335 +ipset=/instafallow.com/gfwlist +server=/steemit.com/127.0.0.1#5335 +ipset=/steemit.com/gfwlist +server=/foxsportssupports.com/127.0.0.1#5335 +ipset=/foxsportssupports.com/gfwlist +server=/instachecker.com/127.0.0.1#5335 +ipset=/instachecker.com/gfwlist +server=/instaadder.com/127.0.0.1#5335 +ipset=/instaadder.com/gfwlist +server=/scholar.google.si/127.0.0.1#5335 +ipset=/scholar.google.si/gfwlist +server=/dnsvisa.com/127.0.0.1#5335 +ipset=/dnsvisa.com/gfwlist +server=/igtv.com/127.0.0.1#5335 +ipset=/igtv.com/gfwlist +server=/igsonar.com/127.0.0.1#5335 +ipset=/igsonar.com/gfwlist +server=/yahoo.com.om/127.0.0.1#5335 +ipset=/yahoo.com.om/gfwlist +server=/volvobuses.se/127.0.0.1#5335 +ipset=/volvobuses.se/gfwlist +server=/google.dk/127.0.0.1#5335 +ipset=/google.dk/gfwlist +server=/ebuyheadphones.com/127.0.0.1#5335 +ipset=/ebuyheadphones.com/gfwlist +server=/cdninstagram.com/127.0.0.1#5335 +ipset=/cdninstagram.com/gfwlist +server=/applepremiumresellers.com.au/127.0.0.1#5335 +ipset=/applepremiumresellers.com.au/gfwlist +server=/palestineremix.com/127.0.0.1#5335 +ipset=/palestineremix.com/gfwlist +server=/acheterdesfollowersinstagram.com/127.0.0.1#5335 +ipset=/acheterdesfollowersinstagram.com/gfwlist +server=/achat-followers-instagram.com/127.0.0.1#5335 +ipset=/achat-followers-instagram.com/gfwlist +server=/globaledu.org/127.0.0.1#5335 +ipset=/globaledu.org/gfwlist +server=/battlefront2.com/127.0.0.1#5335 +ipset=/battlefront2.com/gfwlist +server=/swisssign-group.com/127.0.0.1#5335 +ipset=/swisssign-group.com/gfwlist +server=/amebaownd.com/127.0.0.1#5335 +ipset=/amebaownd.com/gfwlist +server=/thomsonreuters.com.ar/127.0.0.1#5335 +ipset=/thomsonreuters.com.ar/gfwlist +server=/airwatchqa.com/127.0.0.1#5335 +ipset=/airwatchqa.com/gfwlist +server=/s2stagehance.com/127.0.0.1#5335 +ipset=/s2stagehance.com/gfwlist +server=/airwatchexpress.com/127.0.0.1#5335 +ipset=/airwatchexpress.com/gfwlist +server=/air-watch.com/127.0.0.1#5335 +ipset=/air-watch.com/gfwlist +server=/vsphere.net/127.0.0.1#5335 +ipset=/vsphere.net/gfwlist +server=/foxuv.com/127.0.0.1#5335 +ipset=/foxuv.com/gfwlist +server=/paragon.com/127.0.0.1#5335 +ipset=/paragon.com/gfwlist +server=/miniofmonrovia.com/127.0.0.1#5335 +ipset=/miniofmonrovia.com/gfwlist +server=/wireguard.com/127.0.0.1#5335 +ipset=/wireguard.com/gfwlist +server=/aliverewind.com/127.0.0.1#5335 +ipset=/aliverewind.com/gfwlist +server=/aliveitsm.com/127.0.0.1#5335 +ipset=/aliveitsm.com/gfwlist +server=/hpcustomersupport.net/127.0.0.1#5335 +ipset=/hpcustomersupport.net/gfwlist +server=/nyansa.com/127.0.0.1#5335 +ipset=/nyansa.com/gfwlist +server=/kubeapps.com/127.0.0.1#5335 +ipset=/kubeapps.com/gfwlist +server=/durex.cl/127.0.0.1#5335 +ipset=/durex.cl/gfwlist +server=/cloudhealthtech.com/127.0.0.1#5335 +ipset=/cloudhealthtech.com/gfwlist +server=/dockerizer.com/127.0.0.1#5335 +ipset=/dockerizer.com/gfwlist +server=/mastercard.com.ph/127.0.0.1#5335 +ipset=/mastercard.com.ph/gfwlist +server=/bitnamiapp.com/127.0.0.1#5335 +ipset=/bitnamiapp.com/gfwlist +server=/shopee.com/127.0.0.1#5335 +ipset=/shopee.com/gfwlist +server=/badaas.com/127.0.0.1#5335 +ipset=/badaas.com/gfwlist +server=/bronto.com/127.0.0.1#5335 +ipset=/bronto.com/gfwlist +server=/officialbeatsbydrestore.com/127.0.0.1#5335 +ipset=/officialbeatsbydrestore.com/gfwlist +server=/sway-cdn.com/127.0.0.1#5335 +ipset=/sway-cdn.com/gfwlist +server=/vnware.net/127.0.0.1#5335 +ipset=/vnware.net/gfwlist +server=/cyber-bay.org/127.0.0.1#5335 +ipset=/cyber-bay.org/gfwlist +server=/sonydesign.com/127.0.0.1#5335 +ipset=/sonydesign.com/gfwlist +server=/forzaracingchampionship.com/127.0.0.1#5335 +ipset=/forzaracingchampionship.com/gfwlist +server=/vmworld2010.com/127.0.0.1#5335 +ipset=/vmworld2010.com/gfwlist +server=/vmwlearningplatform.com/127.0.0.1#5335 +ipset=/vmwlearningplatform.com/gfwlist +server=/vmwgcomms.com/127.0.0.1#5335 +ipset=/vmwgcomms.com/gfwlist +server=/vmwarestuff.com/127.0.0.1#5335 +ipset=/vmwarestuff.com/gfwlist +server=/vmwarelearningplatform.com/127.0.0.1#5335 +ipset=/vmwarelearningplatform.com/gfwlist +server=/vmwaregrid.com/127.0.0.1#5335 +ipset=/vmwaregrid.com/gfwlist +server=/tvb.com/127.0.0.1#5335 +ipset=/tvb.com/gfwlist +server=/streamable.com/127.0.0.1#5335 +ipset=/streamable.com/gfwlist +server=/foxkansas.com/127.0.0.1#5335 +ipset=/foxkansas.com/gfwlist +server=/fbcdn.com/127.0.0.1#5335 +ipset=/fbcdn.com/gfwlist +server=/awsautoscaling.com/127.0.0.1#5335 +ipset=/awsautoscaling.com/gfwlist +server=/casquebeatsfracheter.com/127.0.0.1#5335 +ipset=/casquebeatsfracheter.com/gfwlist +server=/vmwareausnews.com/127.0.0.1#5335 +ipset=/vmwareausnews.com/gfwlist +server=/pickshoesclothes.com/127.0.0.1#5335 +ipset=/pickshoesclothes.com/gfwlist +server=/hcaptchastatus.com/127.0.0.1#5335 +ipset=/hcaptchastatus.com/gfwlist +server=/dettol.pk/127.0.0.1#5335 +ipset=/dettol.pk/gfwlist +server=/scholar.google.co.nz/127.0.0.1#5335 +ipset=/scholar.google.co.nz/gfwlist +server=/realitykings.com/127.0.0.1#5335 +ipset=/realitykings.com/gfwlist +server=/hulupurchase.com/127.0.0.1#5335 +ipset=/hulupurchase.com/gfwlist +server=/drebeatsbydreoutlet.com/127.0.0.1#5335 +ipset=/drebeatsbydreoutlet.com/gfwlist +server=/shops-disney.com/127.0.0.1#5335 +ipset=/shops-disney.com/gfwlist +server=/spoti.fi/127.0.0.1#5335 +ipset=/spoti.fi/gfwlist +server=/foxnewsradio.com/127.0.0.1#5335 +ipset=/foxnewsradio.com/gfwlist +server=/e-hentai.org/127.0.0.1#5335 +ipset=/e-hentai.org/gfwlist +server=/firestonecomercial.com.br/127.0.0.1#5335 +ipset=/firestonecomercial.com.br/gfwlist +server=/sonypicturesstudios.com/127.0.0.1#5335 +ipset=/sonypicturesstudios.com/gfwlist +server=/feacebook.com/127.0.0.1#5335 +ipset=/feacebook.com/gfwlist +server=/ampproject.org/127.0.0.1#5335 +ipset=/ampproject.org/gfwlist +server=/virsto.com/127.0.0.1#5335 +ipset=/virsto.com/gfwlist +server=/vfabric.net/127.0.0.1#5335 +ipset=/vfabric.net/gfwlist +server=/dcard.io/127.0.0.1#5335 +ipset=/dcard.io/gfwlist +server=/youtube.sa/127.0.0.1#5335 +ipset=/youtube.sa/gfwlist +server=/ssdevrd.com/127.0.0.1#5335 +ipset=/ssdevrd.com/gfwlist +server=/snapvolumes.com/127.0.0.1#5335 +ipset=/snapvolumes.com/gfwlist +server=/mini-connected.be/127.0.0.1#5335 +ipset=/mini-connected.be/gfwlist +server=/steamcommunity-a.akamaihd.net/127.0.0.1#5335 +ipset=/steamcommunity-a.akamaihd.net/gfwlist +server=/facfacebook.com/127.0.0.1#5335 +ipset=/facfacebook.com/gfwlist +server=/itfromtheinside.com/127.0.0.1#5335 +ipset=/itfromtheinside.com/gfwlist +server=/hwslabs.com/127.0.0.1#5335 +ipset=/hwslabs.com/gfwlist +server=/greenplum.net/127.0.0.1#5335 +ipset=/greenplum.net/gfwlist +server=/foxlexington.com/127.0.0.1#5335 +ipset=/foxlexington.com/gfwlist +server=/iphone.com.gr/127.0.0.1#5335 +ipset=/iphone.com.gr/gfwlist +server=/udtrucksmeena.com/127.0.0.1#5335 +ipset=/udtrucksmeena.com/gfwlist +server=/getboxer.com/127.0.0.1#5335 +ipset=/getboxer.com/gfwlist +server=/9to5toys.com/127.0.0.1#5335 +ipset=/9to5toys.com/gfwlist +server=/mastercard.co.id/127.0.0.1#5335 +ipset=/mastercard.co.id/gfwlist +server=/xamarin.com/127.0.0.1#5335 +ipset=/xamarin.com/gfwlist +server=/starbucks.de/127.0.0.1#5335 +ipset=/starbucks.de/gfwlist +server=/mini-clubs-international.com/127.0.0.1#5335 +ipset=/mini-clubs-international.com/gfwlist +server=/gemfire.net/127.0.0.1#5335 +ipset=/gemfire.net/gfwlist +server=/dvh30n.vip/127.0.0.1#5335 +ipset=/dvh30n.vip/gfwlist +server=/property.com.au/127.0.0.1#5335 +ipset=/property.com.au/gfwlist +server=/dat.foundation/127.0.0.1#5335 +ipset=/dat.foundation/gfwlist +server=/bbycontent.com/127.0.0.1#5335 +ipset=/bbycontent.com/gfwlist +server=/disney.ch/127.0.0.1#5335 +ipset=/disney.ch/gfwlist +server=/fbacebook.com/127.0.0.1#5335 +ipset=/fbacebook.com/gfwlist +server=/play4free.com/127.0.0.1#5335 +ipset=/play4free.com/gfwlist +server=/businessinsider.sg/127.0.0.1#5335 +ipset=/businessinsider.sg/gfwlist +server=/cpedge.com/127.0.0.1#5335 +ipset=/cpedge.com/gfwlist +server=/slack-msgs.com/127.0.0.1#5335 +ipset=/slack-msgs.com/gfwlist +server=/javcc.cc/127.0.0.1#5335 +ipset=/javcc.cc/gfwlist +server=/barefootnetworks.com/127.0.0.1#5335 +ipset=/barefootnetworks.com/gfwlist +server=/cfblob.com/127.0.0.1#5335 +ipset=/cfblob.com/gfwlist +server=/cloudcone.net/127.0.0.1#5335 +ipset=/cloudcone.net/gfwlist +server=/paypal.info/127.0.0.1#5335 +ipset=/paypal.info/gfwlist +server=/howtogetmo.co.uk/127.0.0.1#5335 +ipset=/howtogetmo.co.uk/gfwlist +server=/google.ne/127.0.0.1#5335 +ipset=/google.ne/gfwlist +server=/cisco.evergage.com/127.0.0.1#5335 +ipset=/cisco.evergage.com/gfwlist +server=/rethink.net/127.0.0.1#5335 +ipset=/rethink.net/gfwlist +server=/tailf.com/127.0.0.1#5335 +ipset=/tailf.com/gfwlist +server=/scholar.google.com.co/127.0.0.1#5335 +ipset=/scholar.google.com.co/gfwlist +server=/cloudflareresolve.com/127.0.0.1#5335 +ipset=/cloudflareresolve.com/gfwlist +server=/webex.fr/127.0.0.1#5335 +ipset=/webex.fr/gfwlist +server=/merakigo.com/127.0.0.1#5335 +ipset=/merakigo.com/gfwlist +server=/oxfordlawtrove.com/127.0.0.1#5335 +ipset=/oxfordlawtrove.com/gfwlist +server=/stackpath.dev/127.0.0.1#5335 +ipset=/stackpath.dev/gfwlist +server=/svpply.com/127.0.0.1#5335 +ipset=/svpply.com/gfwlist +server=/spyjinx.com/127.0.0.1#5335 +ipset=/spyjinx.com/gfwlist +server=/collector.xhamster.com/127.0.0.1#5335 +ipset=/collector.xhamster.com/gfwlist +server=/dukgo.com/127.0.0.1#5335 +ipset=/dukgo.com/gfwlist +server=/ettrade.com.hk/127.0.0.1#5335 +ipset=/ettrade.com.hk/gfwlist +server=/bmw-connecteddrive.com.br/127.0.0.1#5335 +ipset=/bmw-connecteddrive.com.br/gfwlist +server=/pokemonswordshield.com/127.0.0.1#5335 +ipset=/pokemonswordshield.com/gfwlist +server=/kicksnike1.com/127.0.0.1#5335 +ipset=/kicksnike1.com/gfwlist +server=/fbthirdpartypixel.org/127.0.0.1#5335 +ipset=/fbthirdpartypixel.org/gfwlist +server=/steamcdn-a.akamaihd.net/127.0.0.1#5335 +ipset=/steamcdn-a.akamaihd.net/gfwlist +server=/gmoney.org/127.0.0.1#5335 +ipset=/gmoney.org/gfwlist +server=/youtube.com.pk/127.0.0.1#5335 +ipset=/youtube.com.pk/gfwlist +server=/fox46charlotte.com/127.0.0.1#5335 +ipset=/fox46charlotte.com/gfwlist +server=/apple-store.wang/127.0.0.1#5335 +ipset=/apple-store.wang/gfwlist +server=/phprcdn.com/127.0.0.1#5335 +ipset=/phprcdn.com/gfwlist +server=/nintendo.co.za/127.0.0.1#5335 +ipset=/nintendo.co.za/gfwlist +server=/kindleproject.com/127.0.0.1#5335 +ipset=/kindleproject.com/gfwlist +server=/sagepub.com/127.0.0.1#5335 +ipset=/sagepub.com/gfwlist +server=/itunes.hk/127.0.0.1#5335 +ipset=/itunes.hk/gfwlist +server=/hpofficejetprinter.com/127.0.0.1#5335 +ipset=/hpofficejetprinter.com/gfwlist +server=/bbyurl.us/127.0.0.1#5335 +ipset=/bbyurl.us/gfwlist +server=/monsterbeatsbydre2015.com/127.0.0.1#5335 +ipset=/monsterbeatsbydre2015.com/gfwlist +server=/mac.eu/127.0.0.1#5335 +ipset=/mac.eu/gfwlist +server=/unbrandedproducts.com/127.0.0.1#5335 +ipset=/unbrandedproducts.com/gfwlist +server=/videochampion.com/127.0.0.1#5335 +ipset=/videochampion.com/gfwlist +server=/bmw-motorrad.sk/127.0.0.1#5335 +ipset=/bmw-motorrad.sk/gfwlist +server=/beddit.tv/127.0.0.1#5335 +ipset=/beddit.tv/gfwlist +server=/convrgencegame.com/127.0.0.1#5335 +ipset=/convrgencegame.com/gfwlist +server=/starwarsbattlefront2.com/127.0.0.1#5335 +ipset=/starwarsbattlefront2.com/gfwlist +server=/gettyimages.at/127.0.0.1#5335 +ipset=/gettyimages.at/gfwlist +server=/tandberg.com/127.0.0.1#5335 +ipset=/tandberg.com/gfwlist +server=/aaagradeheadphones.com/127.0.0.1#5335 +ipset=/aaagradeheadphones.com/gfwlist +server=/static-cisco.com/127.0.0.1#5335 +ipset=/static-cisco.com/gfwlist +server=/bmwgroupfs.com/127.0.0.1#5335 +ipset=/bmwgroupfs.com/gfwlist +server=/blogspot.it/127.0.0.1#5335 +ipset=/blogspot.it/gfwlist +server=/applestore.qa/127.0.0.1#5335 +ipset=/applestore.qa/gfwlist +server=/strepsils.co.kr/127.0.0.1#5335 +ipset=/strepsils.co.kr/gfwlist +server=/obsrvbl.com/127.0.0.1#5335 +ipset=/obsrvbl.com/gfwlist +server=/anthemthegame.com/127.0.0.1#5335 +ipset=/anthemthegame.com/gfwlist +server=/mini101.ca/127.0.0.1#5335 +ipset=/mini101.ca/gfwlist +server=/observable.net/127.0.0.1#5335 +ipset=/observable.net/gfwlist +server=/applestore.kr/127.0.0.1#5335 +ipset=/applestore.kr/gfwlist +server=/minimotoringschool.com/127.0.0.1#5335 +ipset=/minimotoringschool.com/gfwlist +server=/bbthat.com/127.0.0.1#5335 +ipset=/bbthat.com/gfwlist +server=/adobetag.com/127.0.0.1#5335 +ipset=/adobetag.com/gfwlist +server=/londonmithraeum.com/127.0.0.1#5335 +ipset=/londonmithraeum.com/gfwlist +server=/mybridgestoneeducation.com/127.0.0.1#5335 +ipset=/mybridgestoneeducation.com/gfwlist +server=/kingkong.com.tw/127.0.0.1#5335 +ipset=/kingkong.com.tw/gfwlist +server=/zb.io/127.0.0.1#5335 +ipset=/zb.io/gfwlist +server=/huluinstantmessenger.com/127.0.0.1#5335 +ipset=/huluinstantmessenger.com/gfwlist +server=/bmwgroup-werke.com/127.0.0.1#5335 +ipset=/bmwgroup-werke.com/gfwlist +server=/mysdn.net/127.0.0.1#5335 +ipset=/mysdn.net/gfwlist +server=/mysdn.info/127.0.0.1#5335 +ipset=/mysdn.info/gfwlist +server=/onedrive.net/127.0.0.1#5335 +ipset=/onedrive.net/gfwlist +server=/multiplydiversity.com/127.0.0.1#5335 +ipset=/multiplydiversity.com/gfwlist +server=/redditmedia.com/127.0.0.1#5335 +ipset=/redditmedia.com/gfwlist +server=/alphabet.lu/127.0.0.1#5335 +ipset=/alphabet.lu/gfwlist +server=/mastercard.be/127.0.0.1#5335 +ipset=/mastercard.be/gfwlist +server=/foxnewsgo.tv/127.0.0.1#5335 +ipset=/foxnewsgo.tv/gfwlist +server=/ipodtouch.co/127.0.0.1#5335 +ipset=/ipodtouch.co/gfwlist +server=/apple.tw/127.0.0.1#5335 +ipset=/apple.tw/gfwlist +server=/fonts.net/127.0.0.1#5335 +ipset=/fonts.net/gfwlist +server=/visa.hu/127.0.0.1#5335 +ipset=/visa.hu/gfwlist +server=/applecomputerinc.info/127.0.0.1#5335 +ipset=/applecomputerinc.info/gfwlist +server=/froogle.com/127.0.0.1#5335 +ipset=/froogle.com/gfwlist +server=/paypal-security.org/127.0.0.1#5335 +ipset=/paypal-security.org/gfwlist +server=/nordstrom.com/127.0.0.1#5335 +ipset=/nordstrom.com/gfwlist +server=/nikehightops.com/127.0.0.1#5335 +ipset=/nikehightops.com/gfwlist +server=/volvogroup.be/127.0.0.1#5335 +ipset=/volvogroup.be/gfwlist +server=/solarcity.com/127.0.0.1#5335 +ipset=/solarcity.com/gfwlist +server=/visa.tc/127.0.0.1#5335 +ipset=/visa.tc/gfwlist +server=/100classicbooks.com/127.0.0.1#5335 +ipset=/100classicbooks.com/gfwlist +server=/internetofeverything.com/127.0.0.1#5335 +ipset=/internetofeverything.com/gfwlist +server=/mypearsonenglish.ch/127.0.0.1#5335 +ipset=/mypearsonenglish.ch/gfwlist +server=/thomsonreuters.com.pe/127.0.0.1#5335 +ipset=/thomsonreuters.com.pe/gfwlist +server=/gpstheseries.com/127.0.0.1#5335 +ipset=/gpstheseries.com/gfwlist +server=/volvotrucks.hu/127.0.0.1#5335 +ipset=/volvotrucks.hu/gfwlist +server=/lojaiphone.com.br/127.0.0.1#5335 +ipset=/lojaiphone.com.br/gfwlist +server=/ultimaonline.com/127.0.0.1#5335 +ipset=/ultimaonline.com/gfwlist +server=/finish.ro/127.0.0.1#5335 +ipset=/finish.ro/gfwlist +server=/spaindisney.com/127.0.0.1#5335 +ipset=/spaindisney.com/gfwlist +server=/dnaspaces.io/127.0.0.1#5335 +ipset=/dnaspaces.io/gfwlist +server=/areyoucreditwise.com/127.0.0.1#5335 +ipset=/areyoucreditwise.com/gfwlist +server=/cs.co/127.0.0.1#5335 +ipset=/cs.co/gfwlist +server=/9to5mac.com/127.0.0.1#5335 +ipset=/9to5mac.com/gfwlist +server=/longtailvideo.com/127.0.0.1#5335 +ipset=/longtailvideo.com/gfwlist +server=/minibrossard.ca/127.0.0.1#5335 +ipset=/minibrossard.ca/gfwlist +server=/bmw.co.uk/127.0.0.1#5335 +ipset=/bmw.co.uk/gfwlist +server=/canon.es/127.0.0.1#5335 +ipset=/canon.es/gfwlist +server=/findacard.com/127.0.0.1#5335 +ipset=/findacard.com/gfwlist +server=/cloupia.net/127.0.0.1#5335 +ipset=/cloupia.net/gfwlist +server=/instagy.com/127.0.0.1#5335 +ipset=/instagy.com/gfwlist +server=/appledaily.hk/127.0.0.1#5335 +ipset=/appledaily.hk/gfwlist +server=/nvidia.com.ve/127.0.0.1#5335 +ipset=/nvidia.com.ve/gfwlist +server=/ciscowebseminars.com/127.0.0.1#5335 +ipset=/ciscowebseminars.com/gfwlist +server=/ciscovideo.com/127.0.0.1#5335 +ipset=/ciscovideo.com/gfwlist +server=/ciscoturk.net/127.0.0.1#5335 +ipset=/ciscoturk.net/gfwlist +server=/ciscotr.com/127.0.0.1#5335 +ipset=/ciscotr.com/gfwlist +server=/ciscotaccc.com/127.0.0.1#5335 +ipset=/ciscotaccc.com/gfwlist +server=/nicoseiga.jp/127.0.0.1#5335 +ipset=/nicoseiga.jp/gfwlist +server=/disney.co.il/127.0.0.1#5335 +ipset=/disney.co.il/gfwlist +server=/ciscospark.jp/127.0.0.1#5335 +ipset=/ciscospark.jp/gfwlist +server=/download.91porn005.me/127.0.0.1#5335 +ipset=/download.91porn005.me/gfwlist +server=/69story.com/127.0.0.1#5335 +ipset=/69story.com/gfwlist +server=/microsoftonline-p.com/127.0.0.1#5335 +ipset=/microsoftonline-p.com/gfwlist +server=/icloudo.de/127.0.0.1#5335 +ipset=/icloudo.de/gfwlist +server=/ciscoprice.com/127.0.0.1#5335 +ipset=/ciscoprice.com/gfwlist +server=/geeksquadforums.com/127.0.0.1#5335 +ipset=/geeksquadforums.com/gfwlist +server=/nhentai.net/127.0.0.1#5335 +ipset=/nhentai.net/gfwlist +server=/ciscopowercube.com/127.0.0.1#5335 +ipset=/ciscopowercube.com/gfwlist +server=/softbankbb.com/127.0.0.1#5335 +ipset=/softbankbb.com/gfwlist +server=/foxnetworksinfo.com/127.0.0.1#5335 +ipset=/foxnetworksinfo.com/gfwlist +server=/beatsbydresdanmark.net/127.0.0.1#5335 +ipset=/beatsbydresdanmark.net/gfwlist +server=/login-paypal.com/127.0.0.1#5335 +ipset=/login-paypal.com/gfwlist +server=/ciscopartnermarketing.com/127.0.0.1#5335 +ipset=/ciscopartnermarketing.com/gfwlist +server=/fox28media.com/127.0.0.1#5335 +ipset=/fox28media.com/gfwlist +server=/leagueoflegends.ca/127.0.0.1#5335 +ipset=/leagueoflegends.ca/gfwlist +server=/minitroisrivieres.ca/127.0.0.1#5335 +ipset=/minitroisrivieres.ca/gfwlist +server=/pearsoncred.com/127.0.0.1#5335 +ipset=/pearsoncred.com/gfwlist +server=/imessage.tv/127.0.0.1#5335 +ipset=/imessage.tv/gfwlist +server=/battlebreakers.com/127.0.0.1#5335 +ipset=/battlebreakers.com/gfwlist +server=/makeeu.com/127.0.0.1#5335 +ipset=/makeeu.com/gfwlist +server=/ipple.com/127.0.0.1#5335 +ipset=/ipple.com/gfwlist +server=/nintendo.net/127.0.0.1#5335 +ipset=/nintendo.net/gfwlist +server=/ciscolive.com/127.0.0.1#5335 +ipset=/ciscolive.com/gfwlist +server=/bmw-connecteddrive.tw/127.0.0.1#5335 +ipset=/bmw-connecteddrive.tw/gfwlist +server=/veet.cl/127.0.0.1#5335 +ipset=/veet.cl/gfwlist +server=/sforce.com/127.0.0.1#5335 +ipset=/sforce.com/gfwlist +server=/canon.co.uk/127.0.0.1#5335 +ipset=/canon.co.uk/gfwlist +server=/foftolia.com/127.0.0.1#5335 +ipset=/foftolia.com/gfwlist +server=/bmw.co.nz/127.0.0.1#5335 +ipset=/bmw.co.nz/gfwlist +server=/digitaloceanspaces.com/127.0.0.1#5335 +ipset=/digitaloceanspaces.com/gfwlist +server=/ciscoerate.com/127.0.0.1#5335 +ipset=/ciscoerate.com/gfwlist +server=/epochtimes.co.il/127.0.0.1#5335 +ipset=/epochtimes.co.il/gfwlist +server=/calgon.it/127.0.0.1#5335 +ipset=/calgon.it/gfwlist +server=/paypal-qrshopping.org/127.0.0.1#5335 +ipset=/paypal-qrshopping.org/gfwlist +server=/monsterbeatsbydrdre-nz.com/127.0.0.1#5335 +ipset=/monsterbeatsbydrdre-nz.com/gfwlist +server=/beatsdresale2013.com/127.0.0.1#5335 +ipset=/beatsdresale2013.com/gfwlist +server=/rolls-roycemotorcarsna.com/127.0.0.1#5335 +ipset=/rolls-roycemotorcarsna.com/gfwlist +server=/gravatar.com/127.0.0.1#5335 +ipset=/gravatar.com/gfwlist +server=/ebayuae.net/127.0.0.1#5335 +ipset=/ebayuae.net/gfwlist +server=/persianepochtimes.com/127.0.0.1#5335 +ipset=/persianepochtimes.com/gfwlist +server=/bsw.co.jp/127.0.0.1#5335 +ipset=/bsw.co.jp/gfwlist +server=/etviet.com/127.0.0.1#5335 +ipset=/etviet.com/gfwlist +server=/guambmw.com/127.0.0.1#5335 +ipset=/guambmw.com/gfwlist +server=/oxfordmedicine.com/127.0.0.1#5335 +ipset=/oxfordmedicine.com/gfwlist +server=/cisco-warrantyfinder.com/127.0.0.1#5335 +ipset=/cisco-warrantyfinder.com/gfwlist +server=/ebay.ca/127.0.0.1#5335 +ipset=/ebay.ca/gfwlist +server=/the-tls.co.uk/127.0.0.1#5335 +ipset=/the-tls.co.uk/gfwlist +server=/perl.org/127.0.0.1#5335 +ipset=/perl.org/gfwlist +server=/hpmobile.com/127.0.0.1#5335 +ipset=/hpmobile.com/gfwlist +server=/cciesecuritylabs.com/127.0.0.1#5335 +ipset=/cciesecuritylabs.com/gfwlist +server=/mastercard.cz/127.0.0.1#5335 +ipset=/mastercard.cz/gfwlist +server=/myfoxla.com/127.0.0.1#5335 +ipset=/myfoxla.com/gfwlist +server=/bridgestonecomercial.com.br/127.0.0.1#5335 +ipset=/bridgestonecomercial.com.br/gfwlist +server=/volvogroup.fr/127.0.0.1#5335 +ipset=/volvogroup.fr/gfwlist +server=/spiedigitallibrary.org/127.0.0.1#5335 +ipset=/spiedigitallibrary.org/gfwlist +server=/academynetriders.com/127.0.0.1#5335 +ipset=/academynetriders.com/gfwlist +server=/paypalnetwork.net/127.0.0.1#5335 +ipset=/paypalnetwork.net/gfwlist +server=/881903.com/127.0.0.1#5335 +ipset=/881903.com/gfwlist +server=/yahoo.com.gi/127.0.0.1#5335 +ipset=/yahoo.com.gi/gfwlist +server=/webex.com.br/127.0.0.1#5335 +ipset=/webex.com.br/gfwlist +server=/bmw-connecteddrive.si/127.0.0.1#5335 +ipset=/bmw-connecteddrive.si/gfwlist +server=/foxdeportes.com/127.0.0.1#5335 +ipset=/foxdeportes.com/gfwlist +server=/bbystatic.com/127.0.0.1#5335 +ipset=/bbystatic.com/gfwlist +server=/netflixdnstest9.com/127.0.0.1#5335 +ipset=/netflixdnstest9.com/gfwlist +server=/cloudapp.net/127.0.0.1#5335 +ipset=/cloudapp.net/gfwlist +server=/teslamotors.com/127.0.0.1#5335 +ipset=/teslamotors.com/gfwlist +server=/webex.co.nz/127.0.0.1#5335 +ipset=/webex.co.nz/gfwlist +server=/webex.co.kr/127.0.0.1#5335 +ipset=/webex.co.kr/gfwlist +server=/sony.be/127.0.0.1#5335 +ipset=/sony.be/gfwlist +server=/bmw-saudiarabia.com/127.0.0.1#5335 +ipset=/bmw-saudiarabia.com/gfwlist +server=/myfoxdfw.com/127.0.0.1#5335 +ipset=/myfoxdfw.com/gfwlist +server=/webex.co.it/127.0.0.1#5335 +ipset=/webex.co.it/gfwlist +server=/webex.co.in/127.0.0.1#5335 +ipset=/webex.co.in/gfwlist +server=/madvr.net/127.0.0.1#5335 +ipset=/madvr.net/gfwlist +server=/mmdnn.com/127.0.0.1#5335 +ipset=/mmdnn.com/gfwlist +server=/google.com.sb/127.0.0.1#5335 +ipset=/google.com.sb/gfwlist +server=/gettyimages.co.jp/127.0.0.1#5335 +ipset=/gettyimages.co.jp/gfwlist +server=/canon.ru/127.0.0.1#5335 +ipset=/canon.ru/gfwlist +server=/mini.com.mx/127.0.0.1#5335 +ipset=/mini.com.mx/gfwlist +server=/bmw.ch/127.0.0.1#5335 +ipset=/bmw.ch/gfwlist +server=/europepmc.org/127.0.0.1#5335 +ipset=/europepmc.org/gfwlist +server=/pixfs.net/127.0.0.1#5335 +ipset=/pixfs.net/gfwlist +server=/apple.ru/127.0.0.1#5335 +ipset=/apple.ru/gfwlist +server=/canon.ro/127.0.0.1#5335 +ipset=/canon.ro/gfwlist +server=/miniwidget.ca/127.0.0.1#5335 +ipset=/miniwidget.ca/gfwlist +server=/visa.com.ph/127.0.0.1#5335 +ipset=/visa.com.ph/gfwlist +server=/ieee-npss.org/127.0.0.1#5335 +ipset=/ieee-npss.org/gfwlist +server=/ebaybags.com/127.0.0.1#5335 +ipset=/ebaybags.com/gfwlist +server=/cheapbeatsbydr.com/127.0.0.1#5335 +ipset=/cheapbeatsbydr.com/gfwlist +server=/canon.no/127.0.0.1#5335 +ipset=/canon.no/gfwlist +server=/intel.af/127.0.0.1#5335 +ipset=/intel.af/gfwlist +server=/currently.com/127.0.0.1#5335 +ipset=/currently.com/gfwlist +server=/canon.me/127.0.0.1#5335 +ipset=/canon.me/gfwlist +server=/qualcomm.co.uk/127.0.0.1#5335 +ipset=/qualcomm.co.uk/gfwlist +server=/macbookair.co.kr/127.0.0.1#5335 +ipset=/macbookair.co.kr/gfwlist +server=/cheapbeatsbydrestudioedition.com/127.0.0.1#5335 +ipset=/cheapbeatsbydrestudioedition.com/gfwlist +server=/sinoinsider.com/127.0.0.1#5335 +ipset=/sinoinsider.com/gfwlist +server=/maddenseason.net/127.0.0.1#5335 +ipset=/maddenseason.net/gfwlist +server=/foxnews.com/127.0.0.1#5335 +ipset=/foxnews.com/gfwlist +server=/lovemarca.com/127.0.0.1#5335 +ipset=/lovemarca.com/gfwlist +server=/canon.lu/127.0.0.1#5335 +ipset=/canon.lu/gfwlist +server=/verisign.vn/127.0.0.1#5335 +ipset=/verisign.vn/gfwlist +server=/easportsfootballclub.com/127.0.0.1#5335 +ipset=/easportsfootballclub.com/gfwlist +server=/prepsure.com/127.0.0.1#5335 +ipset=/prepsure.com/gfwlist +server=/intel.com.my/127.0.0.1#5335 +ipset=/intel.com.my/gfwlist +server=/myferrariheadphones.com/127.0.0.1#5335 +ipset=/myferrariheadphones.com/gfwlist +server=/ebay-inc.com/127.0.0.1#5335 +ipset=/ebay-inc.com/gfwlist +server=/bmwjamaica.com/127.0.0.1#5335 +ipset=/bmwjamaica.com/gfwlist +server=/canon.ie/127.0.0.1#5335 +ipset=/canon.ie/gfwlist +server=/cloudvolumes.com/127.0.0.1#5335 +ipset=/cloudvolumes.com/gfwlist +server=/globalsign.be/127.0.0.1#5335 +ipset=/globalsign.be/gfwlist +server=/pricelesshongkong.com/127.0.0.1#5335 +ipset=/pricelesshongkong.com/gfwlist +server=/hkteducation.com/127.0.0.1#5335 +ipset=/hkteducation.com/gfwlist +server=/foxnews.org/127.0.0.1#5335 +ipset=/foxnews.org/gfwlist +server=/ebaystore77.com/127.0.0.1#5335 +ipset=/ebaystore77.com/gfwlist +server=/macbookpros.com/127.0.0.1#5335 +ipset=/macbookpros.com/gfwlist +server=/mini.kz/127.0.0.1#5335 +ipset=/mini.kz/gfwlist +server=/lihkg.com/127.0.0.1#5335 +ipset=/lihkg.com/gfwlist +server=/mini.sk/127.0.0.1#5335 +ipset=/mini.sk/gfwlist +server=/yahoo.com.fj/127.0.0.1#5335 +ipset=/yahoo.com.fj/gfwlist +server=/steam-chat.com/127.0.0.1#5335 +ipset=/steam-chat.com/gfwlist +server=/foxdigitalmovies.com/127.0.0.1#5335 +ipset=/foxdigitalmovies.com/gfwlist +server=/google.com.af/127.0.0.1#5335 +ipset=/google.com.af/gfwlist +server=/nikegadgets.com/127.0.0.1#5335 +ipset=/nikegadgets.com/gfwlist +server=/shopifycloud.com/127.0.0.1#5335 +ipset=/shopifycloud.com/gfwlist +server=/canon.com.tr/127.0.0.1#5335 +ipset=/canon.com.tr/gfwlist +server=/canon.com.my/127.0.0.1#5335 +ipset=/canon.com.my/gfwlist +server=/paypalonline.org/127.0.0.1#5335 +ipset=/paypalonline.org/gfwlist +server=/disneymagicmoments.co.il/127.0.0.1#5335 +ipset=/disneymagicmoments.co.il/gfwlist +server=/rea.io/127.0.0.1#5335 +ipset=/rea.io/gfwlist +server=/bmwcolorado.com/127.0.0.1#5335 +ipset=/bmwcolorado.com/gfwlist +server=/volvotrucks.cl/127.0.0.1#5335 +ipset=/volvotrucks.cl/gfwlist +server=/speedxtra.com/127.0.0.1#5335 +ipset=/speedxtra.com/gfwlist +server=/emojipedia.org/127.0.0.1#5335 +ipset=/emojipedia.org/gfwlist +server=/canon.com.au/127.0.0.1#5335 +ipset=/canon.com.au/gfwlist +server=/instantssl.com/127.0.0.1#5335 +ipset=/instantssl.com/gfwlist +server=/canon.dk/127.0.0.1#5335 +ipset=/canon.dk/gfwlist +server=/iphine.com/127.0.0.1#5335 +ipset=/iphine.com/gfwlist +server=/mastercard.co.jp/127.0.0.1#5335 +ipset=/mastercard.co.jp/gfwlist +server=/itunes.co.th/127.0.0.1#5335 +ipset=/itunes.co.th/gfwlist +server=/foxrad.io/127.0.0.1#5335 +ipset=/foxrad.io/gfwlist +server=/newbemany.com/127.0.0.1#5335 +ipset=/newbemany.com/gfwlist +server=/bmw-sudan.com/127.0.0.1#5335 +ipset=/bmw-sudan.com/gfwlist +server=/facebook.design/127.0.0.1#5335 +ipset=/facebook.design/gfwlist +server=/canon.co.za/127.0.0.1#5335 +ipset=/canon.co.za/gfwlist +server=/x18r.com/127.0.0.1#5335 +ipset=/x18r.com/gfwlist +server=/mini.com.uy/127.0.0.1#5335 +ipset=/mini.com.uy/gfwlist +server=/ingkacentres.com/127.0.0.1#5335 +ipset=/ingkacentres.com/gfwlist +server=/scp-wiki.net/127.0.0.1#5335 +ipset=/scp-wiki.net/gfwlist +server=/i-scmp.com/127.0.0.1#5335 +ipset=/i-scmp.com/gfwlist +server=/bmwi.ca/127.0.0.1#5335 +ipset=/bmwi.ca/gfwlist +server=/thisispolaris.com/127.0.0.1#5335 +ipset=/thisispolaris.com/gfwlist +server=/canon.ca/127.0.0.1#5335 +ipset=/canon.ca/gfwlist +server=/kyurem.com/127.0.0.1#5335 +ipset=/kyurem.com/gfwlist +server=/canon.bg/127.0.0.1#5335 +ipset=/canon.bg/gfwlist +server=/canon.com.hk/127.0.0.1#5335 +ipset=/canon.com.hk/gfwlist +server=/volvotrucks.gr/127.0.0.1#5335 +ipset=/volvotrucks.gr/gfwlist +server=/visadigitalconcierge.com/127.0.0.1#5335 +ipset=/visadigitalconcierge.com/gfwlist +server=/alphera.my/127.0.0.1#5335 +ipset=/alphera.my/gfwlist +server=/foxplus.com/127.0.0.1#5335 +ipset=/foxplus.com/gfwlist +server=/advancediddetection.com/127.0.0.1#5335 +ipset=/advancediddetection.com/gfwlist +server=/intel.co.ae/127.0.0.1#5335 +ipset=/intel.co.ae/gfwlist +server=/ntc.party/127.0.0.1#5335 +ipset=/ntc.party/gfwlist +server=/canon.am/127.0.0.1#5335 +ipset=/canon.am/gfwlist +server=/rbgrads.com/127.0.0.1#5335 +ipset=/rbgrads.com/gfwlist +server=/softbankventuresasia.com/127.0.0.1#5335 +ipset=/softbankventuresasia.com/gfwlist +server=/hkcsl.com/127.0.0.1#5335 +ipset=/hkcsl.com/gfwlist +server=/canon-me.com/127.0.0.1#5335 +ipset=/canon-me.com/gfwlist +server=/voashona.com/127.0.0.1#5335 +ipset=/voashona.com/gfwlist +server=/instagramn.com/127.0.0.1#5335 +ipset=/instagramn.com/gfwlist +server=/google.gy/127.0.0.1#5335 +ipset=/google.gy/gfwlist +server=/canon-europe.com/127.0.0.1#5335 +ipset=/canon-europe.com/gfwlist +server=/mastercardbiz.com/127.0.0.1#5335 +ipset=/mastercardbiz.com/gfwlist +server=/volvotrucks.ae/127.0.0.1#5335 +ipset=/volvotrucks.ae/gfwlist +server=/akamaihd.com/127.0.0.1#5335 +ipset=/akamaihd.com/gfwlist +server=/adobe-aemassets-value.com/127.0.0.1#5335 +ipset=/adobe-aemassets-value.com/gfwlist +server=/login-account.net/127.0.0.1#5335 +ipset=/login-account.net/gfwlist +server=/canon-ebm.com.hk/127.0.0.1#5335 +ipset=/canon-ebm.com.hk/gfwlist +server=/www-facebook.com/127.0.0.1#5335 +ipset=/www-facebook.com/gfwlist +server=/pearsonclinical.dk/127.0.0.1#5335 +ipset=/pearsonclinical.dk/gfwlist +server=/eanordic.com/127.0.0.1#5335 +ipset=/eanordic.com/gfwlist +server=/dynamics.com/127.0.0.1#5335 +ipset=/dynamics.com/gfwlist +server=/bmwshop.ca/127.0.0.1#5335 +ipset=/bmwshop.ca/gfwlist +server=/c-ij.com/127.0.0.1#5335 +ipset=/c-ij.com/gfwlist +server=/couriermail.com.au/127.0.0.1#5335 +ipset=/couriermail.com.au/gfwlist +server=/airmax360.com/127.0.0.1#5335 +ipset=/airmax360.com/gfwlist +server=/bwh8.net/127.0.0.1#5335 +ipset=/bwh8.net/gfwlist +server=/mastercard.ke/127.0.0.1#5335 +ipset=/mastercard.ke/gfwlist +server=/bwh1.net/127.0.0.1#5335 +ipset=/bwh1.net/gfwlist +server=/alibabacloud.com/127.0.0.1#5335 +ipset=/alibabacloud.com/gfwlist +server=/mydirectvchannels.com/127.0.0.1#5335 +ipset=/mydirectvchannels.com/gfwlist +server=/itunesradio.tv/127.0.0.1#5335 +ipset=/itunesradio.tv/gfwlist +server=/lordofultima.com/127.0.0.1#5335 +ipset=/lordofultima.com/gfwlist +server=/flow.dev/127.0.0.1#5335 +ipset=/flow.dev/gfwlist +server=/beats-deal.com/127.0.0.1#5335 +ipset=/beats-deal.com/gfwlist +server=/d29vzk4ow07wi7.cloudfront.net/127.0.0.1#5335 +ipset=/d29vzk4ow07wi7.cloudfront.net/gfwlist +server=/download.i91av.org/127.0.0.1#5335 +ipset=/download.i91av.org/gfwlist +server=/le-direct.tv/127.0.0.1#5335 +ipset=/le-direct.tv/gfwlist +server=/linefriends.com/127.0.0.1#5335 +ipset=/linefriends.com/gfwlist +server=/hddirectv.com/127.0.0.1#5335 +ipset=/hddirectv.com/gfwlist +server=/arewereadyyet.com/127.0.0.1#5335 +ipset=/arewereadyyet.com/gfwlist +server=/adidas.com/127.0.0.1#5335 +ipset=/adidas.com/gfwlist +server=/volvobuses.es/127.0.0.1#5335 +ipset=/volvobuses.es/gfwlist +server=/diretv.com/127.0.0.1#5335 +ipset=/diretv.com/gfwlist +server=/direectv.com/127.0.0.1#5335 +ipset=/direectv.com/gfwlist +server=/telekom.com/127.0.0.1#5335 +ipset=/telekom.com/gfwlist +server=/mini.com.mo/127.0.0.1#5335 +ipset=/mini.com.mo/gfwlist +server=/comodo.com/127.0.0.1#5335 +ipset=/comodo.com/gfwlist +server=/hpstore-china.com/127.0.0.1#5335 +ipset=/hpstore-china.com/gfwlist +server=/directvsports.com/127.0.0.1#5335 +ipset=/directvsports.com/gfwlist +server=/pearsonclinical.nl/127.0.0.1#5335 +ipset=/pearsonclinical.nl/gfwlist +server=/strepsils.com.br/127.0.0.1#5335 +ipset=/strepsils.com.br/gfwlist +server=/mini-bosnia.com/127.0.0.1#5335 +ipset=/mini-bosnia.com/gfwlist +server=/flatmates.com.au/127.0.0.1#5335 +ipset=/flatmates.com.au/gfwlist +server=/directvpromise.com/127.0.0.1#5335 +ipset=/directvpromise.com/gfwlist +server=/powerbook.eu/127.0.0.1#5335 +ipset=/powerbook.eu/gfwlist +server=/bamgrid.com/127.0.0.1#5335 +ipset=/bamgrid.com/gfwlist +server=/mycardbenefits.com/127.0.0.1#5335 +ipset=/mycardbenefits.com/gfwlist +server=/bmwoftulsa.com/127.0.0.1#5335 +ipset=/bmwoftulsa.com/gfwlist +server=/wkap.nl/127.0.0.1#5335 +ipset=/wkap.nl/gfwlist +server=/blogspot.cf/127.0.0.1#5335 +ipset=/blogspot.cf/gfwlist +server=/paypal.com.sg/127.0.0.1#5335 +ipset=/paypal.com.sg/gfwlist +server=/adobeaemcloud.net/127.0.0.1#5335 +ipset=/adobeaemcloud.net/gfwlist +server=/ebaymotorsblog.com/127.0.0.1#5335 +ipset=/ebaymotorsblog.com/gfwlist +server=/breitbart.com/127.0.0.1#5335 +ipset=/breitbart.com/gfwlist +server=/nextfilm.com.hk/127.0.0.1#5335 +ipset=/nextfilm.com.hk/gfwlist +server=/directvnewhampshire.com/127.0.0.1#5335 +ipset=/directvnewhampshire.com/gfwlist +server=/malayalamanorama.com/127.0.0.1#5335 +ipset=/malayalamanorama.com/gfwlist +server=/knoxemm.com/127.0.0.1#5335 +ipset=/knoxemm.com/gfwlist +server=/mastercard-email.com/127.0.0.1#5335 +ipset=/mastercard-email.com/gfwlist +server=/beats-seller.com/127.0.0.1#5335 +ipset=/beats-seller.com/gfwlist +server=/directvmonitoring.com/127.0.0.1#5335 +ipset=/directvmonitoring.com/gfwlist +server=/ebay.com.ph/127.0.0.1#5335 +ipset=/ebay.com.ph/gfwlist +server=/directvmetropolisil.com/127.0.0.1#5335 +ipset=/directvmetropolisil.com/gfwlist +server=/theclasshroom.com/127.0.0.1#5335 +ipset=/theclasshroom.com/gfwlist +server=/bmw.fi/127.0.0.1#5335 +ipset=/bmw.fi/gfwlist +server=/entermediadb.net/127.0.0.1#5335 +ipset=/entermediadb.net/gfwlist +server=/ficeboock.com/127.0.0.1#5335 +ipset=/ficeboock.com/gfwlist +server=/xdsummit.com/127.0.0.1#5335 +ipset=/xdsummit.com/gfwlist +server=/discord.gifts/127.0.0.1#5335 +ipset=/discord.gifts/gfwlist +server=/scholar.google.ch/127.0.0.1#5335 +ipset=/scholar.google.ch/gfwlist +server=/directvkentucky.com/127.0.0.1#5335 +ipset=/directvkentucky.com/gfwlist +server=/directvinternet.com/127.0.0.1#5335 +ipset=/directvinternet.com/gfwlist +server=/bmwmotorrad.com.ph/127.0.0.1#5335 +ipset=/bmwmotorrad.com.ph/gfwlist +server=/bestbuyethics.com/127.0.0.1#5335 +ipset=/bestbuyethics.com/gfwlist +server=/visceralgames.com/127.0.0.1#5335 +ipset=/visceralgames.com/gfwlist +server=/apnews.com/127.0.0.1#5335 +ipset=/apnews.com/gfwlist +server=/volvotrucks.com.tw/127.0.0.1#5335 +ipset=/volvotrucks.com.tw/gfwlist +server=/paypalnet.org/127.0.0.1#5335 +ipset=/paypalnet.org/gfwlist +server=/skyassets.com/127.0.0.1#5335 +ipset=/skyassets.com/gfwlist +server=/bmwmuseum.net/127.0.0.1#5335 +ipset=/bmwmuseum.net/gfwlist +server=/bmw-arts-design.com/127.0.0.1#5335 +ipset=/bmw-arts-design.com/gfwlist +server=/dettol.cz/127.0.0.1#5335 +ipset=/dettol.cz/gfwlist +server=/gettyimages.se/127.0.0.1#5335 +ipset=/gettyimages.se/gfwlist +server=/paypal-activate.info/127.0.0.1#5335 +ipset=/paypal-activate.info/gfwlist +server=/disney.co.th/127.0.0.1#5335 +ipset=/disney.co.th/gfwlist +server=/ebay.com.sg/127.0.0.1#5335 +ipset=/ebay.com.sg/gfwlist +server=/icloud.sk/127.0.0.1#5335 +ipset=/icloud.sk/gfwlist +server=/mini.rs/127.0.0.1#5335 +ipset=/mini.rs/gfwlist +server=/starbucks.es/127.0.0.1#5335 +ipset=/starbucks.es/gfwlist +server=/directvdealer.com/127.0.0.1#5335 +ipset=/directvdealer.com/gfwlist +server=/google.ae/127.0.0.1#5335 +ipset=/google.ae/gfwlist +server=/nike-us.com/127.0.0.1#5335 +ipset=/nike-us.com/gfwlist +server=/elite.com/127.0.0.1#5335 +ipset=/elite.com/gfwlist +server=/tesla.com/127.0.0.1#5335 +ipset=/tesla.com/gfwlist +server=/niken7.com/127.0.0.1#5335 +ipset=/niken7.com/gfwlist +server=/appstore.my/127.0.0.1#5335 +ipset=/appstore.my/gfwlist +server=/ipod.com/127.0.0.1#5335 +ipset=/ipod.com/gfwlist +server=/ebay.it/127.0.0.1#5335 +ipset=/ebay.it/gfwlist +server=/hpallinoneprinter.com/127.0.0.1#5335 +ipset=/hpallinoneprinter.com/gfwlist +server=/directvbusiness.com/127.0.0.1#5335 +ipset=/directvbusiness.com/gfwlist +server=/adguard-vpn.com/127.0.0.1#5335 +ipset=/adguard-vpn.com/gfwlist +server=/scmp.com/127.0.0.1#5335 +ipset=/scmp.com/gfwlist +server=/iphonexs.tv/127.0.0.1#5335 +ipset=/iphonexs.tv/gfwlist +server=/voanouvel.com/127.0.0.1#5335 +ipset=/voanouvel.com/gfwlist +server=/imgix.net/127.0.0.1#5335 +ipset=/imgix.net/gfwlist +server=/xbox360.com/127.0.0.1#5335 +ipset=/xbox360.com/gfwlist +server=/directvboston.com/127.0.0.1#5335 +ipset=/directvboston.com/gfwlist +server=/beatsbydretoutlet.com/127.0.0.1#5335 +ipset=/beatsbydretoutlet.com/gfwlist +server=/directvadsales.com/127.0.0.1#5335 +ipset=/directvadsales.com/gfwlist +server=/directv-newyork.com/127.0.0.1#5335 +ipset=/directv-newyork.com/gfwlist +server=/abc.com/127.0.0.1#5335 +ipset=/abc.com/gfwlist +server=/bbc.com/127.0.0.1#5335 +ipset=/bbc.com/gfwlist +server=/applestore.wang/127.0.0.1#5335 +ipset=/applestore.wang/gfwlist +server=/cashpassport.co.za/127.0.0.1#5335 +ipset=/cashpassport.co.za/gfwlist +server=/directtvdeals.tv/127.0.0.1#5335 +ipset=/directtvdeals.tv/gfwlist +server=/shopping-days.net/127.0.0.1#5335 +ipset=/shopping-days.net/gfwlist +server=/directtv.net/127.0.0.1#5335 +ipset=/directtv.net/gfwlist +server=/mypearsonshop.mx/127.0.0.1#5335 +ipset=/mypearsonshop.mx/gfwlist +server=/dkrecttv.com/127.0.0.1#5335 +ipset=/dkrecttv.com/gfwlist +server=/eu-consumer-empowerment.com/127.0.0.1#5335 +ipset=/eu-consumer-empowerment.com/gfwlist +server=/tailwindtraders.com/127.0.0.1#5335 +ipset=/tailwindtraders.com/gfwlist +server=/mastercard.kz/127.0.0.1#5335 +ipset=/mastercard.kz/gfwlist +server=/paypalcredit.com/127.0.0.1#5335 +ipset=/paypalcredit.com/gfwlist +server=/pinterest.co.in/127.0.0.1#5335 +ipset=/pinterest.co.in/gfwlist +server=/blogspot.com.es/127.0.0.1#5335 +ipset=/blogspot.com.es/gfwlist +server=/squarecloudservices.com/127.0.0.1#5335 +ipset=/squarecloudservices.com/gfwlist +server=/braveux.com/127.0.0.1#5335 +ipset=/braveux.com/gfwlist +server=/developer.microsoft.com/127.0.0.1#5335 +ipset=/developer.microsoft.com/gfwlist +server=/videolan.org/127.0.0.1#5335 +ipset=/videolan.org/gfwlist +server=/nginx.com/127.0.0.1#5335 +ipset=/nginx.com/gfwlist +server=/softether-download.com/127.0.0.1#5335 +ipset=/softether-download.com/gfwlist +server=/nbc.com/127.0.0.1#5335 +ipset=/nbc.com/gfwlist +server=/facebookgraphsearch.info/127.0.0.1#5335 +ipset=/facebookgraphsearch.info/gfwlist +server=/ebay.com.my/127.0.0.1#5335 +ipset=/ebay.com.my/gfwlist +server=/nurofengel.com/127.0.0.1#5335 +ipset=/nurofengel.com/gfwlist +server=/audiencenetwork.tv/127.0.0.1#5335 +ipset=/audiencenetwork.tv/gfwlist +server=/bmw-motorrad.hu/127.0.0.1#5335 +ipset=/bmw-motorrad.hu/gfwlist +server=/xboxone.co/127.0.0.1#5335 +ipset=/xboxone.co/gfwlist +server=/audiencenetwork.com/127.0.0.1#5335 +ipset=/audiencenetwork.com/gfwlist +server=/leaguoflegends.com/127.0.0.1#5335 +ipset=/leaguoflegends.com/gfwlist +server=/guardianapis.com/127.0.0.1#5335 +ipset=/guardianapis.com/gfwlist +server=/attdns.com/127.0.0.1#5335 +ipset=/attdns.com/gfwlist +server=/att-idns.net/127.0.0.1#5335 +ipset=/att-idns.net/gfwlist +server=/vfsco.us/127.0.0.1#5335 +ipset=/vfsco.us/gfwlist +server=/beats-dre-us.com/127.0.0.1#5335 +ipset=/beats-dre-us.com/gfwlist +server=/bmwworld.com/127.0.0.1#5335 +ipset=/bmwworld.com/gfwlist +server=/darwinsource.com/127.0.0.1#5335 +ipset=/darwinsource.com/gfwlist +server=/tvpromise.com/127.0.0.1#5335 +ipset=/tvpromise.com/gfwlist +server=/newsnowfox.com/127.0.0.1#5335 +ipset=/newsnowfox.com/gfwlist +server=/synaptic.net/127.0.0.1#5335 +ipset=/synaptic.net/gfwlist +server=/travelex.com.my/127.0.0.1#5335 +ipset=/travelex.com.my/gfwlist +server=/instagrm.com/127.0.0.1#5335 +ipset=/instagrm.com/gfwlist +server=/mini-connected.pl/127.0.0.1#5335 +ipset=/mini-connected.pl/gfwlist +server=/newsconcierge.com.au/127.0.0.1#5335 +ipset=/newsconcierge.com.au/gfwlist +server=/airwick.hu/127.0.0.1#5335 +ipset=/airwick.hu/gfwlist +server=/bmw-motorrad.com/127.0.0.1#5335 +ipset=/bmw-motorrad.com/gfwlist +server=/beatsbydreforsalesonline.com/127.0.0.1#5335 +ipset=/beatsbydreforsalesonline.com/gfwlist +server=/vmwarecertificationvideos.com/127.0.0.1#5335 +ipset=/vmwarecertificationvideos.com/gfwlist +server=/itcanwait.com/127.0.0.1#5335 +ipset=/itcanwait.com/gfwlist +server=/chinapower.csis.org/127.0.0.1#5335 +ipset=/chinapower.csis.org/gfwlist +server=/enterprisepaging.com/127.0.0.1#5335 +ipset=/enterprisepaging.com/gfwlist +server=/bmw-motorrad.si/127.0.0.1#5335 +ipset=/bmw-motorrad.si/gfwlist +server=/vmwservices.com/127.0.0.1#5335 +ipset=/vmwservices.com/gfwlist +server=/currently.net/127.0.0.1#5335 +ipset=/currently.net/gfwlist +server=/miniusatires.com/127.0.0.1#5335 +ipset=/miniusatires.com/gfwlist +server=/canon.net/127.0.0.1#5335 +ipset=/canon.net/gfwlist +server=/geforce.com.tw/127.0.0.1#5335 +ipset=/geforce.com.tw/gfwlist +server=/paypalshopping.com/127.0.0.1#5335 +ipset=/paypalshopping.com/gfwlist +server=/omghk.com/127.0.0.1#5335 +ipset=/omghk.com/gfwlist +server=/vod-abematv.akamaized.net/127.0.0.1#5335 +ipset=/vod-abematv.akamaized.net/gfwlist +server=/costco-static.com/127.0.0.1#5335 +ipset=/costco-static.com/gfwlist +server=/budatt.com/127.0.0.1#5335 +ipset=/budatt.com/gfwlist +server=/csis.org/127.0.0.1#5335 +ipset=/csis.org/gfwlist +server=/librarylovefest.com/127.0.0.1#5335 +ipset=/librarylovefest.com/gfwlist +server=/scnshop.cc/127.0.0.1#5335 +ipset=/scnshop.cc/gfwlist +server=/baicaonetwork.com/127.0.0.1#5335 +ipset=/baicaonetwork.com/gfwlist +server=/attwirelessonline.com/127.0.0.1#5335 +ipset=/attwirelessonline.com/gfwlist +server=/intel.mx/127.0.0.1#5335 +ipset=/intel.mx/gfwlist +server=/lexuemei.com/127.0.0.1#5335 +ipset=/lexuemei.com/gfwlist +server=/appbridge.ca/127.0.0.1#5335 +ipset=/appbridge.ca/gfwlist +server=/yahoo.com.bo/127.0.0.1#5335 +ipset=/yahoo.com.bo/gfwlist +server=/ebaylocal.net/127.0.0.1#5335 +ipset=/ebaylocal.net/gfwlist +server=/ogp.me/127.0.0.1#5335 +ipset=/ogp.me/gfwlist +server=/disneystreaming.com/127.0.0.1#5335 +ipset=/disneystreaming.com/gfwlist +server=/intelplay.com/127.0.0.1#5335 +ipset=/intelplay.com/gfwlist +server=/attwifi.com/127.0.0.1#5335 +ipset=/attwifi.com/gfwlist +server=/bestrecipes.com.au/127.0.0.1#5335 +ipset=/bestrecipes.com.au/gfwlist +server=/visa.com.my/127.0.0.1#5335 +ipset=/visa.com.my/gfwlist +server=/travelex.co.uk/127.0.0.1#5335 +ipset=/travelex.co.uk/gfwlist +server=/mega.nz/127.0.0.1#5335 +ipset=/mega.nz/gfwlist +server=/sysinternals.com/127.0.0.1#5335 +ipset=/sysinternals.com/gfwlist +server=/foxsoccerplus.net/127.0.0.1#5335 +ipset=/foxsoccerplus.net/gfwlist +server=/attuverseoffers.com/127.0.0.1#5335 +ipset=/attuverseoffers.com/gfwlist +server=/goduckgo.com/127.0.0.1#5335 +ipset=/goduckgo.com/gfwlist +server=/scholar.google.lv/127.0.0.1#5335 +ipset=/scholar.google.lv/gfwlist +server=/bmw.kz/127.0.0.1#5335 +ipset=/bmw.kz/gfwlist +server=/scholar.google.com.bo/127.0.0.1#5335 +ipset=/scholar.google.com.bo/gfwlist +server=/yahoo.com.af/127.0.0.1#5335 +ipset=/yahoo.com.af/gfwlist +server=/attpublicpolicy.com/127.0.0.1#5335 +ipset=/attpublicpolicy.com/gfwlist +server=/youtube.co.ma/127.0.0.1#5335 +ipset=/youtube.co.ma/gfwlist +server=/firestone.cl/127.0.0.1#5335 +ipset=/firestone.cl/gfwlist +server=/usatoday.com/127.0.0.1#5335 +ipset=/usatoday.com/gfwlist +server=/tver.jp/127.0.0.1#5335 +ipset=/tver.jp/gfwlist +server=/attjoy.com/127.0.0.1#5335 +ipset=/attjoy.com/gfwlist +server=/nicovideo.jp/127.0.0.1#5335 +ipset=/nicovideo.jp/gfwlist +server=/pise.pw/127.0.0.1#5335 +ipset=/pise.pw/gfwlist +server=/attglobal.net/127.0.0.1#5335 +ipset=/attglobal.net/gfwlist +server=/pearson.pl/127.0.0.1#5335 +ipset=/pearson.pl/gfwlist +server=/zeplin.dev/127.0.0.1#5335 +ipset=/zeplin.dev/gfwlist +server=/attcollaborate.com/127.0.0.1#5335 +ipset=/attcollaborate.com/gfwlist +server=/akamii.com/127.0.0.1#5335 +ipset=/akamii.com/gfwlist +server=/tearapeak.com/127.0.0.1#5335 +ipset=/tearapeak.com/gfwlist +server=/fox26.com/127.0.0.1#5335 +ipset=/fox26.com/gfwlist +server=/foxsports.com.ar/127.0.0.1#5335 +ipset=/foxsports.com.ar/gfwlist +server=/mylcloud.net/127.0.0.1#5335 +ipset=/mylcloud.net/gfwlist +server=/foxfaq.com/127.0.0.1#5335 +ipset=/foxfaq.com/gfwlist +server=/naver.net/127.0.0.1#5335 +ipset=/naver.net/gfwlist +server=/onejav.com/127.0.0.1#5335 +ipset=/onejav.com/gfwlist +server=/beats-bydreoutletsale.net/127.0.0.1#5335 +ipset=/beats-bydreoutletsale.net/gfwlist +server=/attinnovationspace.com/127.0.0.1#5335 +ipset=/attinnovationspace.com/gfwlist +server=/ebayinc.net/127.0.0.1#5335 +ipset=/ebayinc.net/gfwlist +server=/disneymagicmoments.co.uk/127.0.0.1#5335 +ipset=/disneymagicmoments.co.uk/gfwlist +server=/att.jobs/127.0.0.1#5335 +ipset=/att.jobs/gfwlist +server=/launchpadlibrarian.org/127.0.0.1#5335 +ipset=/launchpadlibrarian.org/gfwlist +server=/pogo.com/127.0.0.1#5335 +ipset=/pogo.com/gfwlist +server=/att-promotions.com/127.0.0.1#5335 +ipset=/att-promotions.com/gfwlist +server=/oreilly.com/127.0.0.1#5335 +ipset=/oreilly.com/gfwlist +server=/arxiv.org/127.0.0.1#5335 +ipset=/arxiv.org/gfwlist +server=/ak1.net/127.0.0.1#5335 +ipset=/ak1.net/gfwlist +server=/google.com.my/127.0.0.1#5335 +ipset=/google.com.my/gfwlist +server=/att-mail.com/127.0.0.1#5335 +ipset=/att-mail.com/gfwlist +server=/directvcookevilletn.com/127.0.0.1#5335 +ipset=/directvcookevilletn.com/gfwlist +server=/microsoftaffiliates.com/127.0.0.1#5335 +ipset=/microsoftaffiliates.com/gfwlist +server=/accbusiness.com/127.0.0.1#5335 +ipset=/accbusiness.com/gfwlist +server=/cyber-bay.info/127.0.0.1#5335 +ipset=/cyber-bay.info/gfwlist +server=/e-bay.net/127.0.0.1#5335 +ipset=/e-bay.net/gfwlist +server=/bitbucket.org/127.0.0.1#5335 +ipset=/bitbucket.org/gfwlist +server=/miniso.pk/127.0.0.1#5335 +ipset=/miniso.pk/gfwlist +server=/mini.com.gt/127.0.0.1#5335 +ipset=/mini.com.gt/gfwlist +server=/pinterest.id/127.0.0.1#5335 +ipset=/pinterest.id/gfwlist +server=/foxnewsgo.net/127.0.0.1#5335 +ipset=/foxnewsgo.net/gfwlist +server=/amazon.jp/127.0.0.1#5335 +ipset=/amazon.jp/gfwlist +server=/womenwill.in/127.0.0.1#5335 +ipset=/womenwill.in/gfwlist +server=/mastercard.co.th/127.0.0.1#5335 +ipset=/mastercard.co.th/gfwlist +server=/pchome.com.tw/127.0.0.1#5335 +ipset=/pchome.com.tw/gfwlist +server=/xbox.com/127.0.0.1#5335 +ipset=/xbox.com/gfwlist +server=/nintendodsi.com/127.0.0.1#5335 +ipset=/nintendodsi.com/gfwlist +server=/cfna.com/127.0.0.1#5335 +ipset=/cfna.com/gfwlist +server=/ntdtv.co.kr/127.0.0.1#5335 +ipset=/ntdtv.co.kr/gfwlist +server=/mortein.co.za/127.0.0.1#5335 +ipset=/mortein.co.za/gfwlist +server=/xn--hxtr4rozx.xn--czr694b/127.0.0.1#5335 +ipset=/xn--hxtr4rozx.xn--czr694b/gfwlist +server=/bmw-yemen.com/127.0.0.1#5335 +ipset=/bmw-yemen.com/gfwlist +server=/thawte.com/127.0.0.1#5335 +ipset=/thawte.com/gfwlist +server=/xn--gtvz22d.xn--hxt814e/127.0.0.1#5335 +ipset=/xn--gtvz22d.xn--hxt814e/gfwlist +server=/attdns.net/127.0.0.1#5335 +ipset=/attdns.net/gfwlist +server=/apple.lv/127.0.0.1#5335 +ipset=/apple.lv/gfwlist +server=/dealsbeatsblackfriday.com/127.0.0.1#5335 +ipset=/dealsbeatsblackfriday.com/gfwlist +server=/fbredex.com/127.0.0.1#5335 +ipset=/fbredex.com/gfwlist +server=/xindelu.com/127.0.0.1#5335 +ipset=/xindelu.com/gfwlist +server=/epochmediagroup.com/127.0.0.1#5335 +ipset=/epochmediagroup.com/gfwlist +server=/bmw.mu/127.0.0.1#5335 +ipset=/bmw.mu/gfwlist +server=/bmw.is/127.0.0.1#5335 +ipset=/bmw.is/gfwlist +server=/scholar.google.com.tr/127.0.0.1#5335 +ipset=/scholar.google.com.tr/gfwlist +server=/radian6.com/127.0.0.1#5335 +ipset=/radian6.com/gfwlist +server=/audible.com/127.0.0.1#5335 +ipset=/audible.com/gfwlist +server=/volvogroup.nl/127.0.0.1#5335 +ipset=/volvogroup.nl/gfwlist +server=/account-paypal.net/127.0.0.1#5335 +ipset=/account-paypal.net/gfwlist +server=/mini-connected.es/127.0.0.1#5335 +ipset=/mini-connected.es/gfwlist +server=/amazonimages.com/127.0.0.1#5335 +ipset=/amazonimages.com/gfwlist +server=/wwapple.net/127.0.0.1#5335 +ipset=/wwapple.net/gfwlist +server=/1010.com.hk/127.0.0.1#5335 +ipset=/1010.com.hk/gfwlist +server=/localizestatus.com/127.0.0.1#5335 +ipset=/localizestatus.com/gfwlist +server=/bidbay.com/127.0.0.1#5335 +ipset=/bidbay.com/gfwlist +server=/codei.sh/127.0.0.1#5335 +ipset=/codei.sh/gfwlist +server=/webobjects.eu/127.0.0.1#5335 +ipset=/webobjects.eu/gfwlist +server=/voaafaanoromoo.com/127.0.0.1#5335 +ipset=/voaafaanoromoo.com/gfwlist +server=/softbankbb.net/127.0.0.1#5335 +ipset=/softbankbb.net/gfwlist +server=/mings-fashion.com/127.0.0.1#5335 +ipset=/mings-fashion.com/gfwlist +server=/webobjects.de/127.0.0.1#5335 +ipset=/webobjects.de/gfwlist +server=/nikelives.com/127.0.0.1#5335 +ipset=/nikelives.com/gfwlist +server=/touchid.tv/127.0.0.1#5335 +ipset=/touchid.tv/gfwlist +server=/latamvmwareforum.com/127.0.0.1#5335 +ipset=/latamvmwareforum.com/gfwlist +server=/spektral.cc/127.0.0.1#5335 +ipset=/spektral.cc/gfwlist +server=/nintendo.fi/127.0.0.1#5335 +ipset=/nintendo.fi/gfwlist +server=/siri.com/127.0.0.1#5335 +ipset=/siri.com/gfwlist +server=/eamobile.com/127.0.0.1#5335 +ipset=/eamobile.com/gfwlist +server=/steamstatic.com/127.0.0.1#5335 +ipset=/steamstatic.com/gfwlist +server=/nintendonetwork.net/127.0.0.1#5335 +ipset=/nintendonetwork.net/gfwlist +server=/vfsco.pe/127.0.0.1#5335 +ipset=/vfsco.pe/gfwlist +server=/bmwmotorrad.com.au/127.0.0.1#5335 +ipset=/bmwmotorrad.com.au/gfwlist +server=/macbooksale.com/127.0.0.1#5335 +ipset=/macbooksale.com/gfwlist +server=/quicktime.com.au/127.0.0.1#5335 +ipset=/quicktime.com.au/gfwlist +server=/fox32chicago.com/127.0.0.1#5335 +ipset=/fox32chicago.com/gfwlist +server=/xn--4vq475g.com/127.0.0.1#5335 +ipset=/xn--4vq475g.com/gfwlist +server=/pullstring.net/127.0.0.1#5335 +ipset=/pullstring.net/gfwlist +server=/macrumors.com/127.0.0.1#5335 +ipset=/macrumors.com/gfwlist +server=/googlesyndication.com/127.0.0.1#5335 +ipset=/googlesyndication.com/gfwlist +server=/facdbook.com/127.0.0.1#5335 +ipset=/facdbook.com/gfwlist +server=/api.news/127.0.0.1#5335 +ipset=/api.news/gfwlist +server=/youtube.ua/127.0.0.1#5335 +ipset=/youtube.ua/gfwlist +server=/foxbusiness.com/127.0.0.1#5335 +ipset=/foxbusiness.com/gfwlist +server=/wixmp.com/127.0.0.1#5335 +ipset=/wixmp.com/gfwlist +server=/paxful.com/127.0.0.1#5335 +ipset=/paxful.com/gfwlist +server=/macreach.net/127.0.0.1#5335 +ipset=/macreach.net/gfwlist +server=/mini-vietnam.com/127.0.0.1#5335 +ipset=/mini-vietnam.com/gfwlist +server=/macpazar.com/127.0.0.1#5335 +ipset=/macpazar.com/gfwlist +server=/bridgestoneperformance.com/127.0.0.1#5335 +ipset=/bridgestoneperformance.com/gfwlist +server=/myfoxaustin.com/127.0.0.1#5335 +ipset=/myfoxaustin.com/gfwlist +server=/aka-ai.com/127.0.0.1#5335 +ipset=/aka-ai.com/gfwlist +server=/macossierra.com/127.0.0.1#5335 +ipset=/macossierra.com/gfwlist +server=/bmwlifestyle.ca/127.0.0.1#5335 +ipset=/bmwlifestyle.ca/gfwlist +server=/macos.com.au/127.0.0.1#5335 +ipset=/macos.com.au/gfwlist +server=/scholar.google.pt/127.0.0.1#5335 +ipset=/scholar.google.pt/gfwlist +server=/discord.co/127.0.0.1#5335 +ipset=/discord.co/gfwlist +server=/macmini.com/127.0.0.1#5335 +ipset=/macmini.com/gfwlist +server=/khanacademy.org/127.0.0.1#5335 +ipset=/khanacademy.org/gfwlist +server=/beatsheadphonesdealer.com/127.0.0.1#5335 +ipset=/beatsheadphonesdealer.com/gfwlist +server=/scholar.google.com.au/127.0.0.1#5335 +ipset=/scholar.google.com.au/gfwlist +server=/beatsheadphones2u.com/127.0.0.1#5335 +ipset=/beatsheadphones2u.com/gfwlist +server=/cloudflarestream.com/127.0.0.1#5335 +ipset=/cloudflarestream.com/gfwlist +server=/macintoshsoftware.com/127.0.0.1#5335 +ipset=/macintoshsoftware.com/gfwlist +server=/ethereum.foundation/127.0.0.1#5335 +ipset=/ethereum.foundation/gfwlist +server=/verizonmedia.com/127.0.0.1#5335 +ipset=/verizonmedia.com/gfwlist +server=/apple.jo/127.0.0.1#5335 +ipset=/apple.jo/gfwlist +server=/machos.net/127.0.0.1#5335 +ipset=/machos.net/gfwlist +server=/ulol.com/127.0.0.1#5335 +ipset=/ulol.com/gfwlist +server=/ebay-inc.org/127.0.0.1#5335 +ipset=/ebay-inc.org/gfwlist +server=/blpevents.com/127.0.0.1#5335 +ipset=/blpevents.com/gfwlist +server=/swisssign.org/127.0.0.1#5335 +ipset=/swisssign.org/gfwlist +server=/slashdot.org/127.0.0.1#5335 +ipset=/slashdot.org/gfwlist +server=/mktroute.com/127.0.0.1#5335 +ipset=/mktroute.com/gfwlist +server=/macboxset.com/127.0.0.1#5335 +ipset=/macboxset.com/gfwlist +server=/stxmosquitoproject.net/127.0.0.1#5335 +ipset=/stxmosquitoproject.net/gfwlist +server=/easylist.to/127.0.0.1#5335 +ipset=/easylist.to/gfwlist +server=/battlefieldheroes.com/127.0.0.1#5335 +ipset=/battlefieldheroes.com/gfwlist +server=/ebaymainstreet.com/127.0.0.1#5335 +ipset=/ebaymainstreet.com/gfwlist +server=/mac.com/127.0.0.1#5335 +ipset=/mac.com/gfwlist +server=/cqcorea.com/127.0.0.1#5335 +ipset=/cqcorea.com/gfwlist +server=/ssx3.com/127.0.0.1#5335 +ipset=/ssx3.com/gfwlist +server=/chinapress.com.my/127.0.0.1#5335 +ipset=/chinapress.com.my/gfwlist +server=/bmwusa.com/127.0.0.1#5335 +ipset=/bmwusa.com/gfwlist +server=/pivotalinitiative.com/127.0.0.1#5335 +ipset=/pivotalinitiative.com/gfwlist +server=/iwork.wang/127.0.0.1#5335 +ipset=/iwork.wang/gfwlist +server=/firestone.com.ar/127.0.0.1#5335 +ipset=/firestone.com.ar/gfwlist +server=/minicaribbean.com/127.0.0.1#5335 +ipset=/minicaribbean.com/gfwlist +server=/cheapbeats.us/127.0.0.1#5335 +ipset=/cheapbeats.us/gfwlist +server=/cisconetspace.com/127.0.0.1#5335 +ipset=/cisconetspace.com/gfwlist +server=/thegooglestore.com/127.0.0.1#5335 +ipset=/thegooglestore.com/gfwlist +server=/adidas.ru/127.0.0.1#5335 +ipset=/adidas.ru/gfwlist +server=/yahoo.at/127.0.0.1#5335 +ipset=/yahoo.at/gfwlist +server=/badgen.net/127.0.0.1#5335 +ipset=/badgen.net/gfwlist +server=/archlinuxarm.org/127.0.0.1#5335 +ipset=/archlinuxarm.org/gfwlist +server=/bluemix.com/127.0.0.1#5335 +ipset=/bluemix.com/gfwlist +server=/ilife.gr/127.0.0.1#5335 +ipset=/ilife.gr/gfwlist +server=/huffingtonpost.fr/127.0.0.1#5335 +ipset=/huffingtonpost.fr/gfwlist +server=/superuser.com/127.0.0.1#5335 +ipset=/superuser.com/gfwlist +server=/bmw.co.th/127.0.0.1#5335 +ipset=/bmw.co.th/gfwlist +server=/vfsco.sk/127.0.0.1#5335 +ipset=/vfsco.sk/gfwlist +server=/bmw-diplomatic-sales.com/127.0.0.1#5335 +ipset=/bmw-diplomatic-sales.com/gfwlist +server=/kindleoasis.com/127.0.0.1#5335 +ipset=/kindleoasis.com/gfwlist +server=/mini.com.mk/127.0.0.1#5335 +ipset=/mini.com.mk/gfwlist +server=/playparagon.com/127.0.0.1#5335 +ipset=/playparagon.com/gfwlist +server=/cheapbeatsbydre-au.com/127.0.0.1#5335 +ipset=/cheapbeatsbydre-au.com/gfwlist +server=/paypal-photocard.com/127.0.0.1#5335 +ipset=/paypal-photocard.com/gfwlist +server=/apple.co.cr/127.0.0.1#5335 +ipset=/apple.co.cr/gfwlist +server=/micstl.com/127.0.0.1#5335 +ipset=/micstl.com/gfwlist +server=/vaultify.net/127.0.0.1#5335 +ipset=/vaultify.net/gfwlist +server=/finalcutpro.com/127.0.0.1#5335 +ipset=/finalcutpro.com/gfwlist +server=/pearson-studium.ch/127.0.0.1#5335 +ipset=/pearson-studium.ch/gfwlist +server=/facetime.net/127.0.0.1#5335 +ipset=/facetime.net/gfwlist +server=/bmw-abudhabi.com/127.0.0.1#5335 +ipset=/bmw-abudhabi.com/gfwlist +server=/advertiserscommunity.com/127.0.0.1#5335 +ipset=/advertiserscommunity.com/gfwlist +server=/aple.com/127.0.0.1#5335 +ipset=/aple.com/gfwlist +server=/bmwfilms.com/127.0.0.1#5335 +ipset=/bmwfilms.com/gfwlist +server=/eworld.com/127.0.0.1#5335 +ipset=/eworld.com/gfwlist +server=/momoshop.com.tw/127.0.0.1#5335 +ipset=/momoshop.com.tw/gfwlist +server=/zencdn.net/127.0.0.1#5335 +ipset=/zencdn.net/gfwlist +server=/bcsecure01-a.akamaihd.net/127.0.0.1#5335 +ipset=/bcsecure01-a.akamaihd.net/gfwlist +server=/soasta-dswb.com/127.0.0.1#5335 +ipset=/soasta-dswb.com/gfwlist +server=/directvconnect.com/127.0.0.1#5335 +ipset=/directvconnect.com/gfwlist +server=/githubapp.com/127.0.0.1#5335 +ipset=/githubapp.com/gfwlist +server=/serverlesslibrary.net/127.0.0.1#5335 +ipset=/serverlesslibrary.net/gfwlist +server=/volvobuses.ca/127.0.0.1#5335 +ipset=/volvobuses.ca/gfwlist +server=/ecgapp.net/127.0.0.1#5335 +ipset=/ecgapp.net/gfwlist +server=/volvotrucks.ps/127.0.0.1#5335 +ipset=/volvotrucks.ps/gfwlist +server=/earpod.net/127.0.0.1#5335 +ipset=/earpod.net/gfwlist +server=/huobi.sc/127.0.0.1#5335 +ipset=/huobi.sc/gfwlist +server=/dokusho-ojikan.jp/127.0.0.1#5335 +ipset=/dokusho-ojikan.jp/gfwlist +server=/tubetubetube.com/127.0.0.1#5335 +ipset=/tubetubetube.com/gfwlist +server=/airgonetworks.com/127.0.0.1#5335 +ipset=/airgonetworks.com/gfwlist +server=/sony.lv/127.0.0.1#5335 +ipset=/sony.lv/gfwlist +server=/dvdstudiopro.biz/127.0.0.1#5335 +ipset=/dvdstudiopro.biz/gfwlist +server=/iphonecases5.com/127.0.0.1#5335 +ipset=/iphonecases5.com/gfwlist +server=/digitalhub.com/127.0.0.1#5335 +ipset=/digitalhub.com/gfwlist +server=/bridgestone.com.sg/127.0.0.1#5335 +ipset=/bridgestone.com.sg/gfwlist +server=/yahoo.so/127.0.0.1#5335 +ipset=/yahoo.so/gfwlist +server=/oninstagram.com/127.0.0.1#5335 +ipset=/oninstagram.com/gfwlist +server=/buymeacoff.ee/127.0.0.1#5335 +ipset=/buymeacoff.ee/gfwlist +server=/ebaycareers.com/127.0.0.1#5335 +ipset=/ebaycareers.com/gfwlist +server=/sulwerphoto.com/127.0.0.1#5335 +ipset=/sulwerphoto.com/gfwlist +server=/intel.mt/127.0.0.1#5335 +ipset=/intel.mt/gfwlist +server=/sm.ms/127.0.0.1#5335 +ipset=/sm.ms/gfwlist +server=/yahoo.fi/127.0.0.1#5335 +ipset=/yahoo.fi/gfwlist +server=/joox.com/127.0.0.1#5335 +ipset=/joox.com/gfwlist +server=/test-ipv6.com/127.0.0.1#5335 +ipset=/test-ipv6.com/gfwlist +server=/dajiyuan.com/127.0.0.1#5335 +ipset=/dajiyuan.com/gfwlist +server=/coreml.net/127.0.0.1#5335 +ipset=/coreml.net/gfwlist +server=/chomp.com/127.0.0.1#5335 +ipset=/chomp.com/gfwlist +server=/volvobrandshop.com/127.0.0.1#5335 +ipset=/volvobrandshop.com/gfwlist +server=/volvo-truck.nl/127.0.0.1#5335 +ipset=/volvo-truck.nl/gfwlist +server=/camelspaceeffect.com/127.0.0.1#5335 +ipset=/camelspaceeffect.com/gfwlist +server=/mushymush.tv/127.0.0.1#5335 +ipset=/mushymush.tv/gfwlist +server=/termius.com/127.0.0.1#5335 +ipset=/termius.com/gfwlist +server=/buyaapl.com/127.0.0.1#5335 +ipset=/buyaapl.com/gfwlist +server=/degruyter.com/127.0.0.1#5335 +ipset=/degruyter.com/gfwlist +server=/fontsinuse.com/127.0.0.1#5335 +ipset=/fontsinuse.com/gfwlist +server=/alphabet.biz/127.0.0.1#5335 +ipset=/alphabet.biz/gfwlist +server=/googleusercontent.com/127.0.0.1#5335 +ipset=/googleusercontent.com/gfwlist +server=/cepacol.ca/127.0.0.1#5335 +ipset=/cepacol.ca/gfwlist +server=/ebay-fashion.com/127.0.0.1#5335 +ipset=/ebay-fashion.com/gfwlist +server=/swiftbank.us/127.0.0.1#5335 +ipset=/swiftbank.us/gfwlist +server=/isiknowledge.com/127.0.0.1#5335 +ipset=/isiknowledge.com/gfwlist +server=/cnpmjs.org/127.0.0.1#5335 +ipset=/cnpmjs.org/gfwlist +server=/cheapheadphonessale.com/127.0.0.1#5335 +ipset=/cheapheadphonessale.com/gfwlist +server=/visa.co.th/127.0.0.1#5335 +ipset=/visa.co.th/gfwlist +server=/buckbuild.com/127.0.0.1#5335 +ipset=/buckbuild.com/gfwlist +server=/applle.com/127.0.0.1#5335 +ipset=/applle.com/gfwlist +server=/wwwhuluplus.com/127.0.0.1#5335 +ipset=/wwwhuluplus.com/gfwlist +server=/applezh.com/127.0.0.1#5335 +ipset=/applezh.com/gfwlist +server=/paypal-knowledge.com/127.0.0.1#5335 +ipset=/paypal-knowledge.com/gfwlist +server=/amazonfctours.com/127.0.0.1#5335 +ipset=/amazonfctours.com/gfwlist +server=/appleweb.net/127.0.0.1#5335 +ipset=/appleweb.net/gfwlist +server=/cheapbeatsbydre99.com/127.0.0.1#5335 +ipset=/cheapbeatsbydre99.com/gfwlist +server=/eater.com/127.0.0.1#5335 +ipset=/eater.com/gfwlist +server=/bmw.com.bo/127.0.0.1#5335 +ipset=/bmw.com.bo/gfwlist +server=/appletaiwan.com/127.0.0.1#5335 +ipset=/appletaiwan.com/gfwlist +server=/mastercard.at/127.0.0.1#5335 +ipset=/mastercard.at/gfwlist +server=/appleshop.co.uk/127.0.0.1#5335 +ipset=/appleshop.co.uk/gfwlist +server=/microsoftedge.com/127.0.0.1#5335 +ipset=/microsoftedge.com/gfwlist +server=/mini-kuwait.com/127.0.0.1#5335 +ipset=/mini-kuwait.com/gfwlist +server=/awseducate.org/127.0.0.1#5335 +ipset=/awseducate.org/gfwlist +server=/calvappd.me/127.0.0.1#5335 +ipset=/calvappd.me/gfwlist +server=/fundpaypal.com/127.0.0.1#5335 +ipset=/fundpaypal.com/gfwlist +server=/nikeinstock.com/127.0.0.1#5335 +ipset=/nikeinstock.com/gfwlist +server=/apples-msk.ru/127.0.0.1#5335 +ipset=/apples-msk.ru/gfwlist +server=/feceboock.com/127.0.0.1#5335 +ipset=/feceboock.com/gfwlist +server=/futhead.com/127.0.0.1#5335 +ipset=/futhead.com/gfwlist +server=/realcleareducation.com/127.0.0.1#5335 +ipset=/realcleareducation.com/gfwlist +server=/carstagram.com/127.0.0.1#5335 +ipset=/carstagram.com/gfwlist +server=/mastercardezsavings.com/127.0.0.1#5335 +ipset=/mastercardezsavings.com/gfwlist +server=/directvlebanontn.com/127.0.0.1#5335 +ipset=/directvlebanontn.com/gfwlist +server=/bangbros.com/127.0.0.1#5335 +ipset=/bangbros.com/gfwlist +server=/ieee-edusociety.org/127.0.0.1#5335 +ipset=/ieee-edusociety.org/gfwlist +server=/uwpcommunitytoolkit.com/127.0.0.1#5335 +ipset=/uwpcommunitytoolkit.com/gfwlist +server=/clearlinux.org/127.0.0.1#5335 +ipset=/clearlinux.org/gfwlist +server=/jamanetwork.com/127.0.0.1#5335 +ipset=/jamanetwork.com/gfwlist +server=/chinadigitaltimes.net/127.0.0.1#5335 +ipset=/chinadigitaltimes.net/gfwlist +server=/taboola.com/127.0.0.1#5335 +ipset=/taboola.com/gfwlist +server=/google.lk/127.0.0.1#5335 +ipset=/google.lk/gfwlist +server=/mirrorsedge2d.com/127.0.0.1#5335 +ipset=/mirrorsedge2d.com/gfwlist +server=/appleonline.net/127.0.0.1#5335 +ipset=/appleonline.net/gfwlist +server=/hponlineprinting.com/127.0.0.1#5335 +ipset=/hponlineprinting.com/gfwlist +server=/media-amazon.com/127.0.0.1#5335 +ipset=/media-amazon.com/gfwlist +server=/steamuserimages-a.akamaihd.net/127.0.0.1#5335 +ipset=/steamuserimages-a.akamaihd.net/gfwlist +server=/bmw-bahrain.com/127.0.0.1#5335 +ipset=/bmw-bahrain.com/gfwlist +server=/u.nu/127.0.0.1#5335 +ipset=/u.nu/gfwlist +server=/wariowarediy.com/127.0.0.1#5335 +ipset=/wariowarediy.com/gfwlist +server=/pximg.net/127.0.0.1#5335 +ipset=/pximg.net/gfwlist +server=/kobbeatssbydredk.com/127.0.0.1#5335 +ipset=/kobbeatssbydredk.com/gfwlist +server=/facebooklivestaging.net/127.0.0.1#5335 +ipset=/facebooklivestaging.net/gfwlist +server=/sony.pt/127.0.0.1#5335 +ipset=/sony.pt/gfwlist +server=/ebay.co.nz/127.0.0.1#5335 +ipset=/ebay.co.nz/gfwlist +server=/visa.gp/127.0.0.1#5335 +ipset=/visa.gp/gfwlist +server=/crates.io/127.0.0.1#5335 +ipset=/crates.io/gfwlist +server=/paypal-sptam.com/127.0.0.1#5335 +ipset=/paypal-sptam.com/gfwlist +server=/mozilla.community/127.0.0.1#5335 +ipset=/mozilla.community/gfwlist +server=/applecomputers.co.nz/127.0.0.1#5335 +ipset=/applecomputers.co.nz/gfwlist +server=/pxt.io/127.0.0.1#5335 +ipset=/pxt.io/gfwlist +server=/testonfox.com/127.0.0.1#5335 +ipset=/testonfox.com/gfwlist +server=/applecomputerimac.com/127.0.0.1#5335 +ipset=/applecomputerimac.com/gfwlist +server=/homephoneplus.com/127.0.0.1#5335 +ipset=/homephoneplus.com/gfwlist +server=/applecomputer.hu/127.0.0.1#5335 +ipset=/applecomputer.hu/gfwlist +server=/nike-dunksb.com/127.0.0.1#5335 +ipset=/nike-dunksb.com/gfwlist +server=/applecomputer.com.tw/127.0.0.1#5335 +ipset=/applecomputer.com.tw/gfwlist +server=/applecomputer.co.nz/127.0.0.1#5335 +ipset=/applecomputer.co.nz/gfwlist +server=/wordpress.org/127.0.0.1#5335 +ipset=/wordpress.org/gfwlist +server=/careerjournal.com/127.0.0.1#5335 +ipset=/careerjournal.com/gfwlist +server=/bmw.vn/127.0.0.1#5335 +ipset=/bmw.vn/gfwlist +server=/applecomputer-imac.com/127.0.0.1#5335 +ipset=/applecomputer-imac.com/gfwlist +server=/privatemarketplaces.net/127.0.0.1#5335 +ipset=/privatemarketplaces.net/gfwlist +server=/beatsbydrerealstore.com/127.0.0.1#5335 +ipset=/beatsbydrerealstore.com/gfwlist +server=/applecom.com/127.0.0.1#5335 +ipset=/applecom.com/gfwlist +server=/emcs.org/127.0.0.1#5335 +ipset=/emcs.org/gfwlist +server=/hayabusa.media/127.0.0.1#5335 +ipset=/hayabusa.media/gfwlist +server=/appleclub.com.hk/127.0.0.1#5335 +ipset=/appleclub.com.hk/gfwlist +server=/paypass.net/127.0.0.1#5335 +ipset=/paypass.net/gfwlist +server=/zee5.tv/127.0.0.1#5335 +ipset=/zee5.tv/gfwlist +server=/applecentre.com.au/127.0.0.1#5335 +ipset=/applecentre.com.au/gfwlist +server=/ghostgames.com/127.0.0.1#5335 +ipset=/ghostgames.com/gfwlist +server=/eaplay.com/127.0.0.1#5335 +ipset=/eaplay.com/gfwlist +server=/applecentar.rs/127.0.0.1#5335 +ipset=/applecentar.rs/gfwlist +server=/globalsign.com.au/127.0.0.1#5335 +ipset=/globalsign.com.au/gfwlist +server=/bitwarden.com/127.0.0.1#5335 +ipset=/bitwarden.com/gfwlist +server=/oculusconnect.com/127.0.0.1#5335 +ipset=/oculusconnect.com/gfwlist +server=/beatsjoy.com/127.0.0.1#5335 +ipset=/beatsjoy.com/gfwlist +server=/dropboxapi.com/127.0.0.1#5335 +ipset=/dropboxapi.com/gfwlist +server=/facebooklogin.info/127.0.0.1#5335 +ipset=/facebooklogin.info/gfwlist +server=/dice.se/127.0.0.1#5335 +ipset=/dice.se/gfwlist +server=/appleaustralia.com.au/127.0.0.1#5335 +ipset=/appleaustralia.com.au/gfwlist +server=/appleafrica.com/127.0.0.1#5335 +ipset=/appleafrica.com/gfwlist +server=/grss-ieee.org/127.0.0.1#5335 +ipset=/grss-ieee.org/gfwlist +server=/apple-inc.net/127.0.0.1#5335 +ipset=/apple-inc.net/gfwlist +server=/apple-hk.com/127.0.0.1#5335 +ipset=/apple-hk.com/gfwlist +server=/braintreegateway.tv/127.0.0.1#5335 +ipset=/braintreegateway.tv/gfwlist +server=/bmw-corporate-sales.com/127.0.0.1#5335 +ipset=/bmw-corporate-sales.com/gfwlist +server=/bestmallawards.com/127.0.0.1#5335 +ipset=/bestmallawards.com/gfwlist +server=/ipodnano.com/127.0.0.1#5335 +ipset=/ipodnano.com/gfwlist +server=/apple-dns.com/127.0.0.1#5335 +ipset=/apple-dns.com/gfwlist +server=/mini.com.ar/127.0.0.1#5335 +ipset=/mini.com.ar/gfwlist +server=/elsevier-ae.com/127.0.0.1#5335 +ipset=/elsevier-ae.com/gfwlist +server=/apple-darwin.org/127.0.0.1#5335 +ipset=/apple-darwin.org/gfwlist +server=/apple-darwin.net/127.0.0.1#5335 +ipset=/apple-darwin.net/gfwlist +server=/ebay.com.hk/127.0.0.1#5335 +ipset=/ebay.com.hk/gfwlist +server=/verisign.org/127.0.0.1#5335 +ipset=/verisign.org/gfwlist +server=/huluplus.com/127.0.0.1#5335 +ipset=/huluplus.com/gfwlist +server=/apple-darwin.com/127.0.0.1#5335 +ipset=/apple-darwin.com/gfwlist +server=/nextplus.com.hk/127.0.0.1#5335 +ipset=/nextplus.com.hk/gfwlist +server=/joinclubhouse.com/127.0.0.1#5335 +ipset=/joinclubhouse.com/gfwlist +server=/line-beta.me/127.0.0.1#5335 +ipset=/line-beta.me/gfwlist +server=/appl4e.com/127.0.0.1#5335 +ipset=/appl4e.com/gfwlist +server=/paypal-activate.com/127.0.0.1#5335 +ipset=/paypal-activate.com/gfwlist +server=/rprimelab.com/127.0.0.1#5335 +ipset=/rprimelab.com/gfwlist +server=/bdn.dev/127.0.0.1#5335 +ipset=/bdn.dev/gfwlist +server=/packagist.org/127.0.0.1#5335 +ipset=/packagist.org/gfwlist +server=/bmw.com.mk/127.0.0.1#5335 +ipset=/bmw.com.mk/gfwlist +server=/miniitalianjob.com/127.0.0.1#5335 +ipset=/miniitalianjob.com/gfwlist +server=/flickr.com/127.0.0.1#5335 +ipset=/flickr.com/gfwlist +server=/volvobuses.com.kw/127.0.0.1#5335 +ipset=/volvobuses.com.kw/gfwlist +server=/ap0le.com/127.0.0.1#5335 +ipset=/ap0le.com/gfwlist +server=/epochtimes.jp/127.0.0.1#5335 +ipset=/epochtimes.jp/gfwlist +server=/iphonegermany.com/127.0.0.1#5335 +ipset=/iphonegermany.com/gfwlist +server=/vipshoes2.com/127.0.0.1#5335 +ipset=/vipshoes2.com/gfwlist +server=/forgecdn.net/127.0.0.1#5335 +ipset=/forgecdn.net/gfwlist +server=/1to1computing.com.au/127.0.0.1#5335 +ipset=/1to1computing.com.au/gfwlist +server=/pearson-anaya.com/127.0.0.1#5335 +ipset=/pearson-anaya.com/gfwlist +server=/prostores.com/127.0.0.1#5335 +ipset=/prostores.com/gfwlist +server=/appleone.host/127.0.0.1#5335 +ipset=/appleone.host/gfwlist +server=/volvobuses.co.uk/127.0.0.1#5335 +ipset=/volvobuses.co.uk/gfwlist +server=/ilife.wang/127.0.0.1#5335 +ipset=/ilife.wang/gfwlist +server=/bmwmotorrad.co.kr/127.0.0.1#5335 +ipset=/bmwmotorrad.co.kr/gfwlist +server=/jfrog.org/127.0.0.1#5335 +ipset=/jfrog.org/gfwlist +server=/directv-4-you.com/127.0.0.1#5335 +ipset=/directv-4-you.com/gfwlist +server=/ingka.dev/127.0.0.1#5335 +ipset=/ingka.dev/gfwlist +server=/myfoxphoenix.com/127.0.0.1#5335 +ipset=/myfoxphoenix.com/gfwlist +server=/appleone.blog/127.0.0.1#5335 +ipset=/appleone.blog/gfwlist +server=/dropbox.com/127.0.0.1#5335 +ipset=/dropbox.com/gfwlist +server=/appleone.audio/127.0.0.1#5335 +ipset=/appleone.audio/gfwlist +server=/appletv.wang/127.0.0.1#5335 +ipset=/appletv.wang/gfwlist +server=/flic.kr/127.0.0.1#5335 +ipset=/flic.kr/gfwlist +server=/thomsonreuters.ca/127.0.0.1#5335 +ipset=/thomsonreuters.ca/gfwlist +server=/ipod.is/127.0.0.1#5335 +ipset=/ipod.is/gfwlist +server=/youtube.com.sg/127.0.0.1#5335 +ipset=/youtube.com.sg/gfwlist +server=/visa.mq/127.0.0.1#5335 +ipset=/visa.mq/gfwlist +server=/signalprocessingsociety.org/127.0.0.1#5335 +ipset=/signalprocessingsociety.org/gfwlist +server=/apple-pay.rs/127.0.0.1#5335 +ipset=/apple-pay.rs/gfwlist +server=/appletv.com/127.0.0.1#5335 +ipset=/appletv.com/gfwlist +server=/mini.bg/127.0.0.1#5335 +ipset=/mini.bg/gfwlist +server=/kindle4rss.com/127.0.0.1#5335 +ipset=/kindle4rss.com/gfwlist +server=/duckduckhack.com/127.0.0.1#5335 +ipset=/duckduckhack.com/gfwlist +server=/appleid.berlin/127.0.0.1#5335 +ipset=/appleid.berlin/gfwlist +server=/appleid-uk.us/127.0.0.1#5335 +ipset=/appleid-uk.us/gfwlist +server=/verizonenterprise.com/127.0.0.1#5335 +ipset=/verizonenterprise.com/gfwlist +server=/appleid-applemx.us/127.0.0.1#5335 +ipset=/appleid-applemx.us/gfwlist +server=/hibdontire.com/127.0.0.1#5335 +ipset=/hibdontire.com/gfwlist +server=/bmwmperformance.com/127.0.0.1#5335 +ipset=/bmwmperformance.com/gfwlist +server=/bmwmotorrad.com.sg/127.0.0.1#5335 +ipset=/bmwmotorrad.com.sg/gfwlist +server=/meadjohnson.net/127.0.0.1#5335 +ipset=/meadjohnson.net/gfwlist +server=/uo.com/127.0.0.1#5335 +ipset=/uo.com/gfwlist +server=/learnwithleague.com/127.0.0.1#5335 +ipset=/learnwithleague.com/gfwlist +server=/appleinsider.com/127.0.0.1#5335 +ipset=/appleinsider.com/gfwlist +server=/squarefoot.com.hk/127.0.0.1#5335 +ipset=/squarefoot.com.hk/gfwlist +server=/steamunlocked.net/127.0.0.1#5335 +ipset=/steamunlocked.net/gfwlist +server=/volvotrucks.fi/127.0.0.1#5335 +ipset=/volvotrucks.fi/gfwlist +server=/mini.ro/127.0.0.1#5335 +ipset=/mini.ro/gfwlist +server=/beatsshopstore.com/127.0.0.1#5335 +ipset=/beatsshopstore.com/gfwlist +server=/scholar.google.is/127.0.0.1#5335 +ipset=/scholar.google.is/gfwlist +server=/akaeai.com/127.0.0.1#5335 +ipset=/akaeai.com/gfwlist +server=/sneaker666.com/127.0.0.1#5335 +ipset=/sneaker666.com/gfwlist +server=/verisign.biz/127.0.0.1#5335 +ipset=/verisign.biz/gfwlist +server=/getws1.com/127.0.0.1#5335 +ipset=/getws1.com/gfwlist +server=/shadowcomplex.com/127.0.0.1#5335 +ipset=/shadowcomplex.com/gfwlist +server=/go.com/127.0.0.1#5335 +ipset=/go.com/gfwlist +server=/dailymail.com/127.0.0.1#5335 +ipset=/dailymail.com/gfwlist +server=/hbfile.net/127.0.0.1#5335 +ipset=/hbfile.net/gfwlist +server=/bmw.cz/127.0.0.1#5335 +ipset=/bmw.cz/gfwlist +server=/venmo.com/127.0.0.1#5335 +ipset=/venmo.com/gfwlist +server=/visiontimesjp.com/127.0.0.1#5335 +ipset=/visiontimesjp.com/gfwlist +server=/app-store.wang/127.0.0.1#5335 +ipset=/app-store.wang/gfwlist +server=/marketodesigner.com/127.0.0.1#5335 +ipset=/marketodesigner.com/gfwlist +server=/premiumfs.de/127.0.0.1#5335 +ipset=/premiumfs.de/gfwlist +server=/change.org/127.0.0.1#5335 +ipset=/change.org/gfwlist +server=/alphera-finance.co.in/127.0.0.1#5335 +ipset=/alphera-finance.co.in/gfwlist +server=/tidalhifi.com/127.0.0.1#5335 +ipset=/tidalhifi.com/gfwlist +server=/bazel.build/127.0.0.1#5335 +ipset=/bazel.build/gfwlist +server=/aws-iot-hackathon.com/127.0.0.1#5335 +ipset=/aws-iot-hackathon.com/gfwlist +server=/20thcenturystudios.jp/127.0.0.1#5335 +ipset=/20thcenturystudios.jp/gfwlist +server=/wp.com/127.0.0.1#5335 +ipset=/wp.com/gfwlist +server=/nimg.jp/127.0.0.1#5335 +ipset=/nimg.jp/gfwlist +server=/ibook.com/127.0.0.1#5335 +ipset=/ibook.com/gfwlist +server=/bridgestone-brand.com/127.0.0.1#5335 +ipset=/bridgestone-brand.com/gfwlist +server=/twitch.tv/127.0.0.1#5335 +ipset=/twitch.tv/gfwlist +server=/mastercard.co.il/127.0.0.1#5335 +ipset=/mastercard.co.il/gfwlist +server=/imac.co.nz/127.0.0.1#5335 +ipset=/imac.co.nz/gfwlist +server=/applewallet.com/127.0.0.1#5335 +ipset=/applewallet.com/gfwlist +server=/xn--4vq477m.com/127.0.0.1#5335 +ipset=/xn--4vq477m.com/gfwlist +server=/metcams.com/127.0.0.1#5335 +ipset=/metcams.com/gfwlist +server=/applepaysupplies.tv/127.0.0.1#5335 +ipset=/applepaysupplies.tv/gfwlist +server=/applepaysupplies.info/127.0.0.1#5335 +ipset=/applepaysupplies.info/gfwlist +server=/applepaysupplies.com/127.0.0.1#5335 +ipset=/applepaysupplies.com/gfwlist +server=/applepaycash.tv/127.0.0.1#5335 +ipset=/applepaycash.tv/gfwlist +server=/kindle.it/127.0.0.1#5335 +ipset=/kindle.it/gfwlist +server=/womenwill.mx/127.0.0.1#5335 +ipset=/womenwill.mx/gfwlist +server=/googlecapital.com/127.0.0.1#5335 +ipset=/googlecapital.com/gfwlist +server=/hp.com/127.0.0.1#5335 +ipset=/hp.com/gfwlist +server=/dreprofy.com/127.0.0.1#5335 +ipset=/dreprofy.com/gfwlist +server=/glyphsapp.com/127.0.0.1#5335 +ipset=/glyphsapp.com/gfwlist +server=/nikelunarglide.com/127.0.0.1#5335 +ipset=/nikelunarglide.com/gfwlist +server=/mastercard.fr/127.0.0.1#5335 +ipset=/mastercard.fr/gfwlist +server=/iphone.wang/127.0.0.1#5335 +ipset=/iphone.wang/gfwlist +server=/applepay.info/127.0.0.1#5335 +ipset=/applepay.info/gfwlist +server=/wirelessgroup.co.uk/127.0.0.1#5335 +ipset=/wirelessgroup.co.uk/gfwlist +server=/miniusa.com/127.0.0.1#5335 +ipset=/miniusa.com/gfwlist +server=/ebay-inc.net/127.0.0.1#5335 +ipset=/ebay-inc.net/gfwlist +server=/gettyimages.dk/127.0.0.1#5335 +ipset=/gettyimages.dk/gfwlist +server=/wixstatic.com/127.0.0.1#5335 +ipset=/wixstatic.com/gfwlist +server=/albeats.com/127.0.0.1#5335 +ipset=/albeats.com/gfwlist +server=/apple-pay.com/127.0.0.1#5335 +ipset=/apple-pay.com/gfwlist +server=/thesims3.com/127.0.0.1#5335 +ipset=/thesims3.com/gfwlist +server=/womenwill.com/127.0.0.1#5335 +ipset=/womenwill.com/gfwlist +server=/whosthehost.com/127.0.0.1#5335 +ipset=/whosthehost.com/gfwlist +server=/paypal-community.net/127.0.0.1#5335 +ipset=/paypal-community.net/gfwlist +server=/gvt5.com/127.0.0.1#5335 +ipset=/gvt5.com/gfwlist +server=/fox5atlanta.com/127.0.0.1#5335 +ipset=/fox5atlanta.com/gfwlist +server=/coreduo.com/127.0.0.1#5335 +ipset=/coreduo.com/gfwlist +server=/iwork.com/127.0.0.1#5335 +ipset=/iwork.com/gfwlist +server=/apple.news/127.0.0.1#5335 +ipset=/apple.news/gfwlist +server=/aboutamazon.com/127.0.0.1#5335 +ipset=/aboutamazon.com/gfwlist +server=/beatshopuk.com/127.0.0.1#5335 +ipset=/beatshopuk.com/gfwlist +server=/itun.es/127.0.0.1#5335 +ipset=/itun.es/gfwlist +server=/visa.mn/127.0.0.1#5335 +ipset=/visa.mn/gfwlist +server=/musickit.net/127.0.0.1#5335 +ipset=/musickit.net/gfwlist +server=/tidal.com/127.0.0.1#5335 +ipset=/tidal.com/gfwlist +server=/googledanmark.com/127.0.0.1#5335 +ipset=/googledanmark.com/gfwlist +server=/applemusic.hamburg/127.0.0.1#5335 +ipset=/applemusic.hamburg/gfwlist +server=/bmw.ps/127.0.0.1#5335 +ipset=/bmw.ps/gfwlist +server=/youtube.gt/127.0.0.1#5335 +ipset=/youtube.gt/gfwlist +server=/hm.com/127.0.0.1#5335 +ipset=/hm.com/gfwlist +server=/kraken.com/127.0.0.1#5335 +ipset=/kraken.com/gfwlist +server=/adobetechcommdemo.com/127.0.0.1#5335 +ipset=/adobetechcommdemo.com/gfwlist +server=/applemusic.com/127.0.0.1#5335 +ipset=/applemusic.com/gfwlist +server=/bloombergenvironment.com/127.0.0.1#5335 +ipset=/bloombergenvironment.com/gfwlist +server=/line-cdn.net/127.0.0.1#5335 +ipset=/line-cdn.net/gfwlist +server=/heydoga.com/127.0.0.1#5335 +ipset=/heydoga.com/gfwlist +server=/applemusic.berlin/127.0.0.1#5335 +ipset=/applemusic.berlin/gfwlist +server=/pinterest.nl/127.0.0.1#5335 +ipset=/pinterest.nl/gfwlist +server=/deluxe.com.hk/127.0.0.1#5335 +ipset=/deluxe.com.hk/gfwlist +server=/bmw.dk/127.0.0.1#5335 +ipset=/bmw.dk/gfwlist +server=/zohomeetups.com/127.0.0.1#5335 +ipset=/zohomeetups.com/gfwlist +server=/volvobuses.hk/127.0.0.1#5335 +ipset=/volvobuses.hk/gfwlist +server=/applewatch.wang/127.0.0.1#5335 +ipset=/applewatch.wang/gfwlist +server=/114av.xyz/127.0.0.1#5335 +ipset=/114av.xyz/gfwlist +server=/volvogrouptruckcenter.nl/127.0.0.1#5335 +ipset=/volvogrouptruckcenter.nl/gfwlist +server=/nbcudigitaladops.com/127.0.0.1#5335 +ipset=/nbcudigitaladops.com/gfwlist +server=/monsterbeatspascher.net/127.0.0.1#5335 +ipset=/monsterbeatspascher.net/gfwlist +server=/globalsign.com.hk/127.0.0.1#5335 +ipset=/globalsign.com.hk/gfwlist +server=/itunesparty.com/127.0.0.1#5335 +ipset=/itunesparty.com/gfwlist +server=/appl.com/127.0.0.1#5335 +ipset=/appl.com/gfwlist +server=/macbookpro.us/127.0.0.1#5335 +ipset=/macbookpro.us/gfwlist +server=/durex.jp/127.0.0.1#5335 +ipset=/durex.jp/gfwlist +server=/ipod.gr/127.0.0.1#5335 +ipset=/ipod.gr/gfwlist +server=/beatspromotions.com/127.0.0.1#5335 +ipset=/beatspromotions.com/gfwlist +server=/macbookair.net/127.0.0.1#5335 +ipset=/macbookair.net/gfwlist +server=/wwwitunes.com/127.0.0.1#5335 +ipset=/wwwitunes.com/gfwlist +server=/dev-guardianapis.com/127.0.0.1#5335 +ipset=/dev-guardianapis.com/gfwlist +server=/minidowntown.ca/127.0.0.1#5335 +ipset=/minidowntown.ca/gfwlist +server=/handbags-nike.com/127.0.0.1#5335 +ipset=/handbags-nike.com/gfwlist +server=/macbookair.kr/127.0.0.1#5335 +ipset=/macbookair.kr/gfwlist +server=/visa.com.ua/127.0.0.1#5335 +ipset=/visa.com.ua/gfwlist +server=/nintendo.dk/127.0.0.1#5335 +ipset=/nintendo.dk/gfwlist +server=/macbookair.hk/127.0.0.1#5335 +ipset=/macbookair.hk/gfwlist +server=/macbookair.com.au/127.0.0.1#5335 +ipset=/macbookair.com.au/gfwlist +server=/cheapbeatsdrestudios.com/127.0.0.1#5335 +ipset=/cheapbeatsdrestudios.com/gfwlist +server=/macbookair.com/127.0.0.1#5335 +ipset=/macbookair.com/gfwlist +server=/mailonsunday.ie/127.0.0.1#5335 +ipset=/mailonsunday.ie/gfwlist +server=/macbook.hk/127.0.0.1#5335 +ipset=/macbook.hk/gfwlist +server=/digital-rb.com/127.0.0.1#5335 +ipset=/digital-rb.com/gfwlist +server=/hopstop.tv/127.0.0.1#5335 +ipset=/hopstop.tv/gfwlist +server=/ymail.com/127.0.0.1#5335 +ipset=/ymail.com/gfwlist +server=/citylab.com/127.0.0.1#5335 +ipset=/citylab.com/gfwlist +server=/bootstrapcdn.com/127.0.0.1#5335 +ipset=/bootstrapcdn.com/gfwlist +server=/mastercard.ro/127.0.0.1#5335 +ipset=/mastercard.ro/gfwlist +server=/bridgestonewx.com/127.0.0.1#5335 +ipset=/bridgestonewx.com/gfwlist +server=/nintendoswitch.com/127.0.0.1#5335 +ipset=/nintendoswitch.com/gfwlist +server=/firestone.com.mx/127.0.0.1#5335 +ipset=/firestone.com.mx/gfwlist +server=/hulurussia.com/127.0.0.1#5335 +ipset=/hulurussia.com/gfwlist +server=/offrezdesipods.com/127.0.0.1#5335 +ipset=/offrezdesipods.com/gfwlist +server=/myipod.net/127.0.0.1#5335 +ipset=/myipod.net/gfwlist +server=/coinbase.com/127.0.0.1#5335 +ipset=/coinbase.com/gfwlist +server=/realclearpolicy.com/127.0.0.1#5335 +ipset=/realclearpolicy.com/gfwlist +server=/eafootballworld.com/127.0.0.1#5335 +ipset=/eafootballworld.com/gfwlist +server=/hptechventures.com/127.0.0.1#5335 +ipset=/hptechventures.com/gfwlist +server=/cloudflareok.com/127.0.0.1#5335 +ipset=/cloudflareok.com/gfwlist +server=/scholar.google.ae/127.0.0.1#5335 +ipset=/scholar.google.ae/gfwlist +server=/pricelesstoronto.ca/127.0.0.1#5335 +ipset=/pricelesstoronto.ca/gfwlist +server=/intelforchange.com/127.0.0.1#5335 +ipset=/intelforchange.com/gfwlist +server=/mastercard.co.ke/127.0.0.1#5335 +ipset=/mastercard.co.ke/gfwlist +server=/rimg.com.tw/127.0.0.1#5335 +ipset=/rimg.com.tw/gfwlist +server=/orbitera.com/127.0.0.1#5335 +ipset=/orbitera.com/gfwlist +server=/ipodrip.ca/127.0.0.1#5335 +ipset=/ipodrip.ca/gfwlist +server=/foxnewsaroundtheworld.com/127.0.0.1#5335 +ipset=/foxnewsaroundtheworld.com/gfwlist +server=/ipodprices.com/127.0.0.1#5335 +ipset=/ipodprices.com/gfwlist +server=/thecompaqstore.com/127.0.0.1#5335 +ipset=/thecompaqstore.com/gfwlist +server=/apple-enews.com/127.0.0.1#5335 +ipset=/apple-enews.com/gfwlist +server=/approvedusedbmw.com/127.0.0.1#5335 +ipset=/approvedusedbmw.com/gfwlist +server=/netname.com.br/127.0.0.1#5335 +ipset=/netname.com.br/gfwlist +server=/ipodcentre.nl/127.0.0.1#5335 +ipset=/ipodcentre.nl/gfwlist +server=/vmmark.com/127.0.0.1#5335 +ipset=/vmmark.com/gfwlist +server=/gravitytank.com/127.0.0.1#5335 +ipset=/gravitytank.com/gfwlist +server=/discord.com/127.0.0.1#5335 +ipset=/discord.com/gfwlist +server=/ipod.ru/127.0.0.1#5335 +ipset=/ipod.ru/gfwlist +server=/disneymeetingsandevents.com/127.0.0.1#5335 +ipset=/disneymeetingsandevents.com/gfwlist +server=/bridgestone-business-service.jp/127.0.0.1#5335 +ipset=/bridgestone-business-service.jp/gfwlist +server=/huffingtonpost.co.za/127.0.0.1#5335 +ipset=/huffingtonpost.co.za/gfwlist +server=/ipod.rs/127.0.0.1#5335 +ipset=/ipod.rs/gfwlist +server=/ipod.net/127.0.0.1#5335 +ipset=/ipod.net/gfwlist +server=/visa.com.bz/127.0.0.1#5335 +ipset=/visa.com.bz/gfwlist +server=/rt.com/127.0.0.1#5335 +ipset=/rt.com/gfwlist +server=/element.io/127.0.0.1#5335 +ipset=/element.io/gfwlist +server=/stark-verlag.ch/127.0.0.1#5335 +ipset=/stark-verlag.ch/gfwlist +server=/razersupport.com/127.0.0.1#5335 +ipset=/razersupport.com/gfwlist +server=/bestbuycharityclassic.com/127.0.0.1#5335 +ipset=/bestbuycharityclassic.com/gfwlist +server=/ipod.hk/127.0.0.1#5335 +ipset=/ipod.hk/gfwlist +server=/battlefrontii.com/127.0.0.1#5335 +ipset=/battlefrontii.com/gfwlist +server=/javfinder.sh/127.0.0.1#5335 +ipset=/javfinder.sh/gfwlist +server=/instagram-engineering.com/127.0.0.1#5335 +ipset=/instagram-engineering.com/gfwlist +server=/ipod.fr/127.0.0.1#5335 +ipset=/ipod.fr/gfwlist +server=/bmw.de/127.0.0.1#5335 +ipset=/bmw.de/gfwlist +server=/amp.akamaized.net/127.0.0.1#5335 +ipset=/amp.akamaized.net/gfwlist +server=/kidgrid.tv/127.0.0.1#5335 +ipset=/kidgrid.tv/gfwlist +server=/funnyordie.com/127.0.0.1#5335 +ipset=/funnyordie.com/gfwlist +server=/ipod.es/127.0.0.1#5335 +ipset=/ipod.es/gfwlist +server=/nikerunner.com/127.0.0.1#5335 +ipset=/nikerunner.com/gfwlist +server=/microsoft.md/127.0.0.1#5335 +ipset=/microsoft.md/gfwlist +server=/ipod.com.au/127.0.0.1#5335 +ipset=/ipod.com.au/gfwlist +server=/9nation.com.au/127.0.0.1#5335 +ipset=/9nation.com.au/gfwlist +server=/wionews.com/127.0.0.1#5335 +ipset=/wionews.com/gfwlist +server=/microsoftready.com/127.0.0.1#5335 +ipset=/microsoftready.com/gfwlist +server=/fox6now.com/127.0.0.1#5335 +ipset=/fox6now.com/gfwlist +server=/getbraintree.com/127.0.0.1#5335 +ipset=/getbraintree.com/gfwlist +server=/ipod.cm/127.0.0.1#5335 +ipset=/ipod.cm/gfwlist +server=/akamai-thailand.net/127.0.0.1#5335 +ipset=/akamai-thailand.net/gfwlist +server=/bmw-motorrad.tw/127.0.0.1#5335 +ipset=/bmw-motorrad.tw/gfwlist +server=/cambridgedigital.net/127.0.0.1#5335 +ipset=/cambridgedigital.net/gfwlist +server=/ebay.us/127.0.0.1#5335 +ipset=/ebay.us/gfwlist +server=/realclearpublicaffairs.com/127.0.0.1#5335 +ipset=/realclearpublicaffairs.com/gfwlist +server=/beatsdresalestore.com/127.0.0.1#5335 +ipset=/beatsdresalestore.com/gfwlist +server=/signal.org/127.0.0.1#5335 +ipset=/signal.org/gfwlist +server=/ieee-pes.org/127.0.0.1#5335 +ipset=/ieee-pes.org/gfwlist +server=/appleclassicipod.com/127.0.0.1#5335 +ipset=/appleclassicipod.com/gfwlist +server=/realclearscience.com/127.0.0.1#5335 +ipset=/realclearscience.com/gfwlist +server=/volvodefense.com/127.0.0.1#5335 +ipset=/volvodefense.com/gfwlist +server=/paypalhere.com/127.0.0.1#5335 +ipset=/paypalhere.com/gfwlist +server=/bmw.ie/127.0.0.1#5335 +ipset=/bmw.ie/gfwlist +server=/imacapplecomputer.com/127.0.0.1#5335 +ipset=/imacapplecomputer.com/gfwlist +server=/youtube.com/127.0.0.1#5335 +ipset=/youtube.com/gfwlist +server=/vhxqa4.com/127.0.0.1#5335 +ipset=/vhxqa4.com/gfwlist +server=/bmwgroup.com/127.0.0.1#5335 +ipset=/bmwgroup.com/gfwlist +server=/yahoo.sr/127.0.0.1#5335 +ipset=/yahoo.sr/gfwlist +server=/cygwin.com/127.0.0.1#5335 +ipset=/cygwin.com/gfwlist +server=/manoramayearbook.in/127.0.0.1#5335 +ipset=/manoramayearbook.in/gfwlist +server=/airtunes.com/127.0.0.1#5335 +ipset=/airtunes.com/gfwlist +server=/iphoneclaro.com.br/127.0.0.1#5335 +ipset=/iphoneclaro.com.br/gfwlist +server=/mini.de/127.0.0.1#5335 +ipset=/mini.de/gfwlist +server=/targetimg1.com/127.0.0.1#5335 +ipset=/targetimg1.com/gfwlist +server=/beats-sale.com/127.0.0.1#5335 +ipset=/beats-sale.com/gfwlist +server=/elderscrolls.com/127.0.0.1#5335 +ipset=/elderscrolls.com/gfwlist +server=/stripecdn.com/127.0.0.1#5335 +ipset=/stripecdn.com/gfwlist +server=/uun96.com/127.0.0.1#5335 +ipset=/uun96.com/gfwlist +server=/hbabit.com/127.0.0.1#5335 +ipset=/hbabit.com/gfwlist +server=/adobe-audience-finder.com/127.0.0.1#5335 +ipset=/adobe-audience-finder.com/gfwlist +server=/gettyimages.es/127.0.0.1#5335 +ipset=/gettyimages.es/gfwlist +server=/beatsoutletonlines.com/127.0.0.1#5335 +ipset=/beatsoutletonlines.com/gfwlist +server=/bybeatsdre.com/127.0.0.1#5335 +ipset=/bybeatsdre.com/gfwlist +server=/qualcomm-email.com/127.0.0.1#5335 +ipset=/qualcomm-email.com/gfwlist +server=/paypal-online.org/127.0.0.1#5335 +ipset=/paypal-online.org/gfwlist +server=/bmwmotorsport.com/127.0.0.1#5335 +ipset=/bmwmotorsport.com/gfwlist +server=/nikebuy.com/127.0.0.1#5335 +ipset=/nikebuy.com/gfwlist +server=/bmw-grouparchiv.de/127.0.0.1#5335 +ipset=/bmw-grouparchiv.de/gfwlist +server=/applemx-icloud.com/127.0.0.1#5335 +ipset=/applemx-icloud.com/gfwlist +server=/disney.ph/127.0.0.1#5335 +ipset=/disney.ph/gfwlist +server=/tr.com/127.0.0.1#5335 +ipset=/tr.com/gfwlist +server=/iphonecase2013.com/127.0.0.1#5335 +ipset=/iphonecase2013.com/gfwlist +server=/iphone5s5case.com/127.0.0.1#5335 +ipset=/iphone5s5case.com/gfwlist +server=/mini-dubai.com/127.0.0.1#5335 +ipset=/mini-dubai.com/gfwlist +server=/electronjs.org/127.0.0.1#5335 +ipset=/electronjs.org/gfwlist +server=/paypal-scoop.com/127.0.0.1#5335 +ipset=/paypal-scoop.com/gfwlist +server=/monsterbeats-solo.com/127.0.0.1#5335 +ipset=/monsterbeats-solo.com/gfwlist +server=/google.com.sv/127.0.0.1#5335 +ipset=/google.com.sv/gfwlist +server=/macappsto.re/127.0.0.1#5335 +ipset=/macappsto.re/gfwlist +server=/nintendo.ch/127.0.0.1#5335 +ipset=/nintendo.ch/gfwlist +server=/kijijii.ca/127.0.0.1#5335 +ipset=/kijijii.ca/gfwlist +server=/beatsbydredr.com/127.0.0.1#5335 +ipset=/beatsbydredr.com/gfwlist +server=/faasbook.com/127.0.0.1#5335 +ipset=/faasbook.com/gfwlist +server=/iphone-vip3.com/127.0.0.1#5335 +ipset=/iphone-vip3.com/gfwlist +server=/ipodrocks.com.au/127.0.0.1#5335 +ipset=/ipodrocks.com.au/gfwlist +server=/apple.bg/127.0.0.1#5335 +ipset=/apple.bg/gfwlist +server=/sunglassessale2014.com/127.0.0.1#5335 +ipset=/sunglassessale2014.com/gfwlist +server=/ebayca.org/127.0.0.1#5335 +ipset=/ebayca.org/gfwlist +server=/amazon.sg/127.0.0.1#5335 +ipset=/amazon.sg/gfwlist +server=/nflxext.com/127.0.0.1#5335 +ipset=/nflxext.com/gfwlist +server=/iphone-vip1.com/127.0.0.1#5335 +ipset=/iphone-vip1.com/gfwlist +server=/mastercard.co.ve/127.0.0.1#5335 +ipset=/mastercard.co.ve/gfwlist +server=/zert.ch/127.0.0.1#5335 +ipset=/zert.ch/gfwlist +server=/mastercard.com.my/127.0.0.1#5335 +ipset=/mastercard.com.my/gfwlist +server=/iphone-cn.com/127.0.0.1#5335 +ipset=/iphone-cn.com/gfwlist +server=/ovid.com/127.0.0.1#5335 +ipset=/ovid.com/gfwlist +server=/iphone-cd.com/127.0.0.1#5335 +ipset=/iphone-cd.com/gfwlist +server=/icloudmusic.net/127.0.0.1#5335 +ipset=/icloudmusic.net/gfwlist +server=/osm.org/127.0.0.1#5335 +ipset=/osm.org/gfwlist +server=/drdremonsterdre.com/127.0.0.1#5335 +ipset=/drdremonsterdre.com/gfwlist +server=/dditsadn.com/127.0.0.1#5335 +ipset=/dditsadn.com/gfwlist +server=/accountpaypal.org/127.0.0.1#5335 +ipset=/accountpaypal.org/gfwlist +server=/starbucks.bg/127.0.0.1#5335 +ipset=/starbucks.bg/gfwlist +server=/beats-bydreoutletonline.com/127.0.0.1#5335 +ipset=/beats-bydreoutletonline.com/gfwlist +server=/designeriphonescases.com/127.0.0.1#5335 +ipset=/designeriphonescases.com/gfwlist +server=/visa.es/127.0.0.1#5335 +ipset=/visa.es/gfwlist +server=/fox-corporation.com/127.0.0.1#5335 +ipset=/fox-corporation.com/gfwlist +server=/webex.com.au/127.0.0.1#5335 +ipset=/webex.com.au/gfwlist +server=/swoosh.tv/127.0.0.1#5335 +ipset=/swoosh.tv/gfwlist +server=/bestiphonestuff.com/127.0.0.1#5335 +ipset=/bestiphonestuff.com/gfwlist +server=/linetv.tw/127.0.0.1#5335 +ipset=/linetv.tw/gfwlist +server=/intelnet.component/127.0.0.1#5335 +ipset=/intelnet.component/gfwlist +server=/applestore.cm/127.0.0.1#5335 +ipset=/applestore.cm/gfwlist +server=/mastercardbiz.ca/127.0.0.1#5335 +ipset=/mastercardbiz.ca/gfwlist +server=/kijijiauto.ca/127.0.0.1#5335 +ipset=/kijijiauto.ca/gfwlist +server=/beatsheadphones1.com/127.0.0.1#5335 +ipset=/beatsheadphones1.com/gfwlist +server=/ipadair.jp/127.0.0.1#5335 +ipset=/ipadair.jp/gfwlist +server=/bejeweledstars.com/127.0.0.1#5335 +ipset=/bejeweledstars.com/gfwlist +server=/patreon.com/127.0.0.1#5335 +ipset=/patreon.com/gfwlist +server=/travelex.com.hk/127.0.0.1#5335 +ipset=/travelex.com.hk/gfwlist +server=/vod-dash-ww-live.akamaized.net/127.0.0.1#5335 +ipset=/vod-dash-ww-live.akamaized.net/gfwlist +server=/ubuntu.com/127.0.0.1#5335 +ipset=/ubuntu.com/gfwlist +server=/fixtracking.com/127.0.0.1#5335 +ipset=/fixtracking.com/gfwlist +server=/applecare.cc/127.0.0.1#5335 +ipset=/applecare.cc/gfwlist +server=/ipadair.cm/127.0.0.1#5335 +ipset=/ipadair.cm/gfwlist +server=/ipadair.cl/127.0.0.1#5335 +ipset=/ipadair.cl/gfwlist +server=/ipad3.com/127.0.0.1#5335 +ipset=/ipad3.com/gfwlist +server=/pearsoncanada.ca/127.0.0.1#5335 +ipset=/pearsoncanada.ca/gfwlist +server=/privilege.tw/127.0.0.1#5335 +ipset=/privilege.tw/gfwlist +server=/ebayforeclosure.org/127.0.0.1#5335 +ipset=/ebayforeclosure.org/gfwlist +server=/scholar.google.com.uy/127.0.0.1#5335 +ipset=/scholar.google.com.uy/gfwlist +server=/paypal-security.net/127.0.0.1#5335 +ipset=/paypal-security.net/gfwlist +server=/alphera.net/127.0.0.1#5335 +ipset=/alphera.net/gfwlist +server=/paypal.me/127.0.0.1#5335 +ipset=/paypal.me/gfwlist +server=/dremonsterbeatsoutlets.com/127.0.0.1#5335 +ipset=/dremonsterbeatsoutlets.com/gfwlist +server=/fox2news.com/127.0.0.1#5335 +ipset=/fox2news.com/gfwlist +server=/beatsnzsale.com/127.0.0.1#5335 +ipset=/beatsnzsale.com/gfwlist +server=/webpkgcache.com/127.0.0.1#5335 +ipset=/webpkgcache.com/gfwlist +server=/ebookforipad.com/127.0.0.1#5335 +ipset=/ebookforipad.com/gfwlist +server=/uun79.com/127.0.0.1#5335 +ipset=/uun79.com/gfwlist +server=/volvobuses.jo/127.0.0.1#5335 +ipset=/volvobuses.jo/gfwlist +server=/foxsports.com.mx/127.0.0.1#5335 +ipset=/foxsports.com.mx/gfwlist +server=/verisign.us/127.0.0.1#5335 +ipset=/verisign.us/gfwlist +server=/quicktime.com/127.0.0.1#5335 +ipset=/quicktime.com/gfwlist +server=/rarbg.to/127.0.0.1#5335 +ipset=/rarbg.to/gfwlist +server=/volvobuses.sg/127.0.0.1#5335 +ipset=/volvobuses.sg/gfwlist +server=/paypal-business.com/127.0.0.1#5335 +ipset=/paypal-business.com/gfwlist +server=/imac.eu/127.0.0.1#5335 +ipset=/imac.eu/gfwlist +server=/apple-imac.com/127.0.0.1#5335 +ipset=/apple-imac.com/gfwlist +server=/tvappstore.net/127.0.0.1#5335 +ipset=/tvappstore.net/gfwlist +server=/ebaybenefits.com/127.0.0.1#5335 +ipset=/ebaybenefits.com/gfwlist +server=/kindle.fr/127.0.0.1#5335 +ipset=/kindle.fr/gfwlist +server=/applestore.com.pt/127.0.0.1#5335 +ipset=/applestore.com.pt/gfwlist +server=/google.co.ma/127.0.0.1#5335 +ipset=/google.co.ma/gfwlist +server=/starbucks.ie/127.0.0.1#5335 +ipset=/starbucks.ie/gfwlist +server=/applestoreonline.com/127.0.0.1#5335 +ipset=/applestoreonline.com/gfwlist +server=/facebook-covid-19.com/127.0.0.1#5335 +ipset=/facebook-covid-19.com/gfwlist +server=/veetbangladesh.com/127.0.0.1#5335 +ipset=/veetbangladesh.com/gfwlist +server=/nintendo.it/127.0.0.1#5335 +ipset=/nintendo.it/gfwlist +server=/hinet.net/127.0.0.1#5335 +ipset=/hinet.net/gfwlist +server=/applestore.net/127.0.0.1#5335 +ipset=/applestore.net/gfwlist +server=/ysm.yahoo.com/127.0.0.1#5335 +ipset=/ysm.yahoo.com/gfwlist +server=/line-apps-beta.com/127.0.0.1#5335 +ipset=/line-apps-beta.com/gfwlist +server=/disneyarena.com/127.0.0.1#5335 +ipset=/disneyarena.com/gfwlist +server=/globalvoicesonline.org/127.0.0.1#5335 +ipset=/globalvoicesonline.org/gfwlist +server=/kijij.ca/127.0.0.1#5335 +ipset=/kijij.ca/gfwlist +server=/volvotrucks.my/127.0.0.1#5335 +ipset=/volvotrucks.my/gfwlist +server=/applestore.com.sn/127.0.0.1#5335 +ipset=/applestore.com.sn/gfwlist +server=/pricelesssurprises.com/127.0.0.1#5335 +ipset=/pricelesssurprises.com/gfwlist +server=/volvotrucks.by/127.0.0.1#5335 +ipset=/volvotrucks.by/gfwlist +server=/quiz.directory/127.0.0.1#5335 +ipset=/quiz.directory/gfwlist +server=/biorxiv.org/127.0.0.1#5335 +ipset=/biorxiv.org/gfwlist +server=/applestore.com.ro/127.0.0.1#5335 +ipset=/applestore.com.ro/gfwlist +server=/appstore.hk/127.0.0.1#5335 +ipset=/appstore.hk/gfwlist +server=/sandisk.co.jp/127.0.0.1#5335 +ipset=/sandisk.co.jp/gfwlist +server=/minikelowna.ca/127.0.0.1#5335 +ipset=/minikelowna.ca/gfwlist +server=/bmw.sk/127.0.0.1#5335 +ipset=/bmw.sk/gfwlist +server=/applestore.com.pl/127.0.0.1#5335 +ipset=/applestore.com.pl/gfwlist +server=/applestore.com.my/127.0.0.1#5335 +ipset=/applestore.com.my/gfwlist +server=/skillshare.com/127.0.0.1#5335 +ipset=/skillshare.com/gfwlist +server=/sony-olympus-medical.com/127.0.0.1#5335 +ipset=/sony-olympus-medical.com/gfwlist +server=/bmw-motorrad.cr/127.0.0.1#5335 +ipset=/bmw-motorrad.cr/gfwlist +server=/appye.com/127.0.0.1#5335 +ipset=/appye.com/gfwlist +server=/applestore.com.hr/127.0.0.1#5335 +ipset=/applestore.com.hr/gfwlist +server=/bag-glasses1.com/127.0.0.1#5335 +ipset=/bag-glasses1.com/gfwlist +server=/applestore.com.gr/127.0.0.1#5335 +ipset=/applestore.com.gr/gfwlist +server=/simplyipod.com/127.0.0.1#5335 +ipset=/simplyipod.com/gfwlist +server=/bill-safe.com/127.0.0.1#5335 +ipset=/bill-safe.com/gfwlist +server=/priceless.com/127.0.0.1#5335 +ipset=/priceless.com/gfwlist +server=/newhampshirebmw.com/127.0.0.1#5335 +ipset=/newhampshirebmw.com/gfwlist +server=/volvobuses.pk/127.0.0.1#5335 +ipset=/volvobuses.pk/gfwlist +server=/vjav.com/127.0.0.1#5335 +ipset=/vjav.com/gfwlist +server=/google.com.sa/127.0.0.1#5335 +ipset=/google.com.sa/gfwlist +server=/hpsupport.com/127.0.0.1#5335 +ipset=/hpsupport.com/gfwlist +server=/applestore.com/127.0.0.1#5335 +ipset=/applestore.com/gfwlist +server=/cixp.net/127.0.0.1#5335 +ipset=/cixp.net/gfwlist +server=/bridgestonemerchandise.com/127.0.0.1#5335 +ipset=/bridgestonemerchandise.com/gfwlist +server=/fox247.com/127.0.0.1#5335 +ipset=/fox247.com/gfwlist +server=/ethereum.org/127.0.0.1#5335 +ipset=/ethereum.org/gfwlist +server=/ebayfashion.com/127.0.0.1#5335 +ipset=/ebayfashion.com/gfwlist +server=/oxfordre.com/127.0.0.1#5335 +ipset=/oxfordre.com/gfwlist +server=/battlelog.com/127.0.0.1#5335 +ipset=/battlelog.com/gfwlist +server=/sarajevopodopsadom.com/127.0.0.1#5335 +ipset=/sarajevopodopsadom.com/gfwlist +server=/danemarket.com/127.0.0.1#5335 +ipset=/danemarket.com/gfwlist +server=/gv.com/127.0.0.1#5335 +ipset=/gv.com/gfwlist +server=/esm.run/127.0.0.1#5335 +ipset=/esm.run/gfwlist +server=/netflixdnstest4.com/127.0.0.1#5335 +ipset=/netflixdnstest4.com/gfwlist +server=/aplestore.com/127.0.0.1#5335 +ipset=/aplestore.com/gfwlist +server=/apple.xn--czr694b/127.0.0.1#5335 +ipset=/apple.xn--czr694b/gfwlist +server=/aplleipods.com/127.0.0.1#5335 +ipset=/aplleipods.com/gfwlist +server=/ebayfashion.net/127.0.0.1#5335 +ipset=/ebayfashion.net/gfwlist +server=/vimeo-staging2.com/127.0.0.1#5335 +ipset=/vimeo-staging2.com/gfwlist +server=/apple.so/127.0.0.1#5335 +ipset=/apple.so/gfwlist +server=/apple.sa/127.0.0.1#5335 +ipset=/apple.sa/gfwlist +server=/soundcloud.com/127.0.0.1#5335 +ipset=/soundcloud.com/gfwlist +server=/canon.rs/127.0.0.1#5335 +ipset=/canon.rs/gfwlist +server=/ebaycdn.net/127.0.0.1#5335 +ipset=/ebaycdn.net/gfwlist +server=/instagram.com/127.0.0.1#5335 +ipset=/instagram.com/gfwlist +server=/mastercard.ca/127.0.0.1#5335 +ipset=/mastercard.ca/gfwlist +server=/foxnewslatino.com/127.0.0.1#5335 +ipset=/foxnewslatino.com/gfwlist +server=/google.md/127.0.0.1#5335 +ipset=/google.md/gfwlist +server=/simcity.com/127.0.0.1#5335 +ipset=/simcity.com/gfwlist +server=/excitebots.com/127.0.0.1#5335 +ipset=/excitebots.com/gfwlist +server=/visaconciergelac.com/127.0.0.1#5335 +ipset=/visaconciergelac.com/gfwlist +server=/marvelspotlightplays.com/127.0.0.1#5335 +ipset=/marvelspotlightplays.com/gfwlist +server=/beatssaustraliabuy.com/127.0.0.1#5335 +ipset=/beatssaustraliabuy.com/gfwlist +server=/apple.net/127.0.0.1#5335 +ipset=/apple.net/gfwlist +server=/ebay.fr/127.0.0.1#5335 +ipset=/ebay.fr/gfwlist +server=/researchkit.net/127.0.0.1#5335 +ipset=/researchkit.net/gfwlist +server=/youtube.fr/127.0.0.1#5335 +ipset=/youtube.fr/gfwlist +server=/apple.lt/127.0.0.1#5335 +ipset=/apple.lt/gfwlist +server=/apple.lk/127.0.0.1#5335 +ipset=/apple.lk/gfwlist +server=/apple.kr/127.0.0.1#5335 +ipset=/apple.kr/gfwlist +server=/facebookswagstore.com/127.0.0.1#5335 +ipset=/facebookswagstore.com/gfwlist +server=/netflix.ca/127.0.0.1#5335 +ipset=/netflix.ca/gfwlist +server=/shopmonsterbeats.com/127.0.0.1#5335 +ipset=/shopmonsterbeats.com/gfwlist +server=/cafr.ca/127.0.0.1#5335 +ipset=/cafr.ca/gfwlist +server=/zerohedge.com/127.0.0.1#5335 +ipset=/zerohedge.com/gfwlist +server=/nordstrommedia.com/127.0.0.1#5335 +ipset=/nordstrommedia.com/gfwlist +server=/apple.hr/127.0.0.1#5335 +ipset=/apple.hr/gfwlist +server=/static-nike.com/127.0.0.1#5335 +ipset=/static-nike.com/gfwlist +server=/nikestares.com/127.0.0.1#5335 +ipset=/nikestares.com/gfwlist +server=/instagram-brand.com/127.0.0.1#5335 +ipset=/instagram-brand.com/gfwlist +server=/maxgo.com/127.0.0.1#5335 +ipset=/maxgo.com/gfwlist +server=/mini-connected.it/127.0.0.1#5335 +ipset=/mini-connected.it/gfwlist +server=/apple.eu/127.0.0.1#5335 +ipset=/apple.eu/gfwlist +server=/blzddist1-a.akamaihd.net/127.0.0.1#5335 +ipset=/blzddist1-a.akamaihd.net/gfwlist +server=/beatsbydre4usales.com/127.0.0.1#5335 +ipset=/beatsbydre4usales.com/gfwlist +server=/industrialtoys.com/127.0.0.1#5335 +ipset=/industrialtoys.com/gfwlist +server=/bloombergbna.com/127.0.0.1#5335 +ipset=/bloombergbna.com/gfwlist +server=/apple.es/127.0.0.1#5335 +ipset=/apple.es/gfwlist +server=/twitterstat.us/127.0.0.1#5335 +ipset=/twitterstat.us/gfwlist +server=/disney.com/127.0.0.1#5335 +ipset=/disney.com/gfwlist +server=/apple.cz/127.0.0.1#5335 +ipset=/apple.cz/gfwlist +server=/apexlegends.com/127.0.0.1#5335 +ipset=/apexlegends.com/gfwlist +server=/vfsforgit.org/127.0.0.1#5335 +ipset=/vfsforgit.org/gfwlist +server=/apple.co.uk/127.0.0.1#5335 +ipset=/apple.co.uk/gfwlist +server=/pinterest.pe/127.0.0.1#5335 +ipset=/pinterest.pe/gfwlist +server=/foxnewsgo.org/127.0.0.1#5335 +ipset=/foxnewsgo.org/gfwlist +server=/apple.co.th/127.0.0.1#5335 +ipset=/apple.co.th/gfwlist +server=/12diasderegalosdeitunes.hn/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.hn/gfwlist +server=/apple.co.mz/127.0.0.1#5335 +ipset=/apple.co.mz/gfwlist +server=/pypl.com/127.0.0.1#5335 +ipset=/pypl.com/gfwlist +server=/guangming.com.my/127.0.0.1#5335 +ipset=/guangming.com.my/gfwlist +server=/beatssingapores.com/127.0.0.1#5335 +ipset=/beatssingapores.com/gfwlist +server=/headphonesol.com/127.0.0.1#5335 +ipset=/headphonesol.com/gfwlist +server=/volvogroup.mx/127.0.0.1#5335 +ipset=/volvogroup.mx/gfwlist +server=/viacom.com/127.0.0.1#5335 +ipset=/viacom.com/gfwlist +server=/vfsco.ro/127.0.0.1#5335 +ipset=/vfsco.ro/gfwlist +server=/hsfacebook.com/127.0.0.1#5335 +ipset=/hsfacebook.com/gfwlist +server=/bmw-motorrad.co.id/127.0.0.1#5335 +ipset=/bmw-motorrad.co.id/gfwlist +server=/riot.net/127.0.0.1#5335 +ipset=/riot.net/gfwlist +server=/bmw-motorrad.com.br/127.0.0.1#5335 +ipset=/bmw-motorrad.com.br/gfwlist +server=/x-art.com/127.0.0.1#5335 +ipset=/x-art.com/gfwlist +server=/pricelessbeijing.com/127.0.0.1#5335 +ipset=/pricelessbeijing.com/gfwlist +server=/pinterest.com.ec/127.0.0.1#5335 +ipset=/pinterest.com.ec/gfwlist +server=/ebaymall.com/127.0.0.1#5335 +ipset=/ebaymall.com/gfwlist +server=/xn--qoq462m.com/127.0.0.1#5335 +ipset=/xn--qoq462m.com/gfwlist +server=/bmwsports.com/127.0.0.1#5335 +ipset=/bmwsports.com/gfwlist +server=/apple.ca/127.0.0.1#5335 +ipset=/apple.ca/gfwlist +server=/vip-beats.com/127.0.0.1#5335 +ipset=/vip-beats.com/gfwlist +server=/thismon.ee/127.0.0.1#5335 +ipset=/thismon.ee/gfwlist +server=/mastercard.md/127.0.0.1#5335 +ipset=/mastercard.md/gfwlist +server=/apple.ae/127.0.0.1#5335 +ipset=/apple.ae/gfwlist +server=/mini-antilles.fr/127.0.0.1#5335 +ipset=/mini-antilles.fr/gfwlist +server=/yahoo.it/127.0.0.1#5335 +ipset=/yahoo.it/gfwlist +server=/iutunes.com/127.0.0.1#5335 +ipset=/iutunes.com/gfwlist +server=/winticket.jp/127.0.0.1#5335 +ipset=/winticket.jp/gfwlist +server=/businessinsider.in/127.0.0.1#5335 +ipset=/businessinsider.in/gfwlist +server=/kfs.io/127.0.0.1#5335 +ipset=/kfs.io/gfwlist +server=/btt804.com/127.0.0.1#5335 +ipset=/btt804.com/gfwlist +server=/itunesradio.rio/127.0.0.1#5335 +ipset=/itunesradio.rio/gfwlist +server=/mucinexprofessional.com/127.0.0.1#5335 +ipset=/mucinexprofessional.com/gfwlist +server=/onionshare.org/127.0.0.1#5335 +ipset=/onionshare.org/gfwlist +server=/road-crew.com/127.0.0.1#5335 +ipset=/road-crew.com/gfwlist +server=/dollarfotoclub.com/127.0.0.1#5335 +ipset=/dollarfotoclub.com/gfwlist +server=/globalvoices.org/127.0.0.1#5335 +ipset=/globalvoices.org/gfwlist +server=/indazn.com/127.0.0.1#5335 +ipset=/indazn.com/gfwlist +server=/foxsports.com.bo/127.0.0.1#5335 +ipset=/foxsports.com.bo/gfwlist +server=/itunes.us/127.0.0.1#5335 +ipset=/itunes.us/gfwlist +server=/itunes.rio/127.0.0.1#5335 +ipset=/itunes.rio/gfwlist +server=/jinnaju.com/127.0.0.1#5335 +ipset=/jinnaju.com/gfwlist +server=/monsterbeatssalg.com/127.0.0.1#5335 +ipset=/monsterbeatssalg.com/gfwlist +server=/google.ro/127.0.0.1#5335 +ipset=/google.ro/gfwlist +server=/bmw-eg.com/127.0.0.1#5335 +ipset=/bmw-eg.com/gfwlist +server=/shorturl.at/127.0.0.1#5335 +ipset=/shorturl.at/gfwlist +server=/pearsonvue.net/127.0.0.1#5335 +ipset=/pearsonvue.net/gfwlist +server=/miniso-au.com/127.0.0.1#5335 +ipset=/miniso-au.com/gfwlist +server=/gtv1.org/127.0.0.1#5335 +ipset=/gtv1.org/gfwlist +server=/12joursdecadeauxdeitunes.com/127.0.0.1#5335 +ipset=/12joursdecadeauxdeitunes.com/gfwlist +server=/hanime1.me/127.0.0.1#5335 +ipset=/hanime1.me/gfwlist +server=/nikeoutletstore.com/127.0.0.1#5335 +ipset=/nikeoutletstore.com/gfwlist +server=/imstagram.com/127.0.0.1#5335 +ipset=/imstagram.com/gfwlist +server=/github-cloud.s3.amazonaws.com/127.0.0.1#5335 +ipset=/github-cloud.s3.amazonaws.com/gfwlist +server=/stackapps.com/127.0.0.1#5335 +ipset=/stackapps.com/gfwlist +server=/statsmakemecry.com/127.0.0.1#5335 +ipset=/statsmakemecry.com/gfwlist +server=/fflick.com/127.0.0.1#5335 +ipset=/fflick.com/gfwlist +server=/billpointnewzealand.com/127.0.0.1#5335 +ipset=/billpointnewzealand.com/gfwlist +server=/zopim.com/127.0.0.1#5335 +ipset=/zopim.com/gfwlist +server=/12diasderegalosdeitunes.com/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.com/gfwlist +server=/bmw-motorrad.at/127.0.0.1#5335 +ipset=/bmw-motorrad.at/gfwlist +server=/12diasderegalosdeitunes.co.ni/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.co.ni/gfwlist +server=/cambridgemaths.org/127.0.0.1#5335 +ipset=/cambridgemaths.org/gfwlist +server=/applecensorship.com/127.0.0.1#5335 +ipset=/applecensorship.com/gfwlist +server=/avatargarenanow-a.akamaihd.net/127.0.0.1#5335 +ipset=/avatargarenanow-a.akamaihd.net/gfwlist +server=/duck.com/127.0.0.1#5335 +ipset=/duck.com/gfwlist +server=/xbox.org/127.0.0.1#5335 +ipset=/xbox.org/gfwlist +server=/star-latam.com/127.0.0.1#5335 +ipset=/star-latam.com/gfwlist +server=/shopee.ph/127.0.0.1#5335 +ipset=/shopee.ph/gfwlist +server=/netflixdnstest6.com/127.0.0.1#5335 +ipset=/netflixdnstest6.com/gfwlist +server=/starcraft.com/127.0.0.1#5335 +ipset=/starcraft.com/gfwlist +server=/volvotrucks.com.ar/127.0.0.1#5335 +ipset=/volvotrucks.com.ar/gfwlist +server=/netlify.com/127.0.0.1#5335 +ipset=/netlify.com/gfwlist +server=/sublimetext.com/127.0.0.1#5335 +ipset=/sublimetext.com/gfwlist +server=/icloudbrowser.net/127.0.0.1#5335 +ipset=/icloudbrowser.net/gfwlist +server=/getbootstrap.com/127.0.0.1#5335 +ipset=/getbootstrap.com/gfwlist +server=/pinterest.th/127.0.0.1#5335 +ipset=/pinterest.th/gfwlist +server=/parkinfo.com/127.0.0.1#5335 +ipset=/parkinfo.com/gfwlist +server=/wwwicloud.com/127.0.0.1#5335 +ipset=/wwwicloud.com/gfwlist +server=/acebook.com/127.0.0.1#5335 +ipset=/acebook.com/gfwlist +server=/pobl-content.com/127.0.0.1#5335 +ipset=/pobl-content.com/gfwlist +server=/now.sh/127.0.0.1#5335 +ipset=/now.sh/gfwlist +server=/harpercollinsadvantage.com/127.0.0.1#5335 +ipset=/harpercollinsadvantage.com/gfwlist +server=/mini-windsor.com/127.0.0.1#5335 +ipset=/mini-windsor.com/gfwlist +server=/icloudsecure.net/127.0.0.1#5335 +ipset=/icloudsecure.net/gfwlist +server=/apple-expo.com/127.0.0.1#5335 +ipset=/apple-expo.com/gfwlist +server=/bmw-connecteddrive.com/127.0.0.1#5335 +ipset=/bmw-connecteddrive.com/gfwlist +server=/ebayauction.com/127.0.0.1#5335 +ipset=/ebayauction.com/gfwlist +server=/akamaitechnologies.com/127.0.0.1#5335 +ipset=/akamaitechnologies.com/gfwlist +server=/icloudo.com/127.0.0.1#5335 +ipset=/icloudo.com/gfwlist +server=/uun89.com/127.0.0.1#5335 +ipset=/uun89.com/gfwlist +server=/icloudpay.net/127.0.0.1#5335 +ipset=/icloudpay.net/gfwlist +server=/reutersagency.cn/127.0.0.1#5335 +ipset=/reutersagency.cn/gfwlist +server=/icloudnet.net/127.0.0.1#5335 +ipset=/icloudnet.net/gfwlist +server=/projectbaseline.com/127.0.0.1#5335 +ipset=/projectbaseline.com/gfwlist +server=/newscommercial.co.uk/127.0.0.1#5335 +ipset=/newscommercial.co.uk/gfwlist +server=/mastercard.com.au/127.0.0.1#5335 +ipset=/mastercard.com.au/gfwlist +server=/geeksquadservices.org/127.0.0.1#5335 +ipset=/geeksquadservices.org/gfwlist +server=/youtube.sg/127.0.0.1#5335 +ipset=/youtube.sg/gfwlist +server=/vanish.ie/127.0.0.1#5335 +ipset=/vanish.ie/gfwlist +server=/android.com/127.0.0.1#5335 +ipset=/android.com/gfwlist +server=/scholar.google.com.ph/127.0.0.1#5335 +ipset=/scholar.google.com.ph/gfwlist +server=/instagramhilecim.com/127.0.0.1#5335 +ipset=/instagramhilecim.com/gfwlist +server=/apple.hamburg/127.0.0.1#5335 +ipset=/apple.hamburg/gfwlist +server=/init.shop/127.0.0.1#5335 +ipset=/init.shop/gfwlist +server=/visa.cl/127.0.0.1#5335 +ipset=/visa.cl/gfwlist +server=/scholar.google.co.uk/127.0.0.1#5335 +ipset=/scholar.google.co.uk/gfwlist +server=/i-cable.com/127.0.0.1#5335 +ipset=/i-cable.com/gfwlist +server=/icloud.org/127.0.0.1#5335 +ipset=/icloud.org/gfwlist +server=/nike.xn--hxt814e/127.0.0.1#5335 +ipset=/nike.xn--hxt814e/gfwlist +server=/icloud.om/127.0.0.1#5335 +ipset=/icloud.om/gfwlist +server=/icloud.lv/127.0.0.1#5335 +ipset=/icloud.lv/gfwlist +server=/facebookmarketingpartner.com/127.0.0.1#5335 +ipset=/facebookmarketingpartner.com/gfwlist +server=/bmwofcentralpa.com/127.0.0.1#5335 +ipset=/bmwofcentralpa.com/gfwlist +server=/paypall.com/127.0.0.1#5335 +ipset=/paypall.com/gfwlist +server=/bitcoin.org/127.0.0.1#5335 +ipset=/bitcoin.org/gfwlist +server=/nike.ci/127.0.0.1#5335 +ipset=/nike.ci/gfwlist +server=/thescottishsun.co.uk/127.0.0.1#5335 +ipset=/thescottishsun.co.uk/gfwlist +server=/bloomberglp.com/127.0.0.1#5335 +ipset=/bloomberglp.com/gfwlist +server=/mini.com/127.0.0.1#5335 +ipset=/mini.com/gfwlist +server=/disneysubscription.com/127.0.0.1#5335 +ipset=/disneysubscription.com/gfwlist +server=/volvobuses.co.nz/127.0.0.1#5335 +ipset=/volvobuses.co.nz/gfwlist +server=/git.io/127.0.0.1#5335 +ipset=/git.io/gfwlist +server=/icloud-content.com/127.0.0.1#5335 +ipset=/icloud-content.com/gfwlist +server=/itripto.com/127.0.0.1#5335 +ipset=/itripto.com/gfwlist +server=/tutanota.com/127.0.0.1#5335 +ipset=/tutanota.com/gfwlist +server=/wholesaleonlinemart.com/127.0.0.1#5335 +ipset=/wholesaleonlinemart.com/gfwlist +server=/wholesalefine.com/127.0.0.1#5335 +ipset=/wholesalefine.com/gfwlist +server=/bmw-connecteddrive.my/127.0.0.1#5335 +ipset=/bmw-connecteddrive.my/gfwlist +server=/iamakamai.net/127.0.0.1#5335 +ipset=/iamakamai.net/gfwlist +server=/mini.com.gr/127.0.0.1#5335 +ipset=/mini.com.gr/gfwlist +server=/5lml.com/127.0.0.1#5335 +ipset=/5lml.com/gfwlist +server=/avinin.com/127.0.0.1#5335 +ipset=/avinin.com/gfwlist +server=/pwnedpasswords.com/127.0.0.1#5335 +ipset=/pwnedpasswords.com/gfwlist +server=/voatour.com/127.0.0.1#5335 +ipset=/voatour.com/gfwlist +server=/bmw-motorrad.nl/127.0.0.1#5335 +ipset=/bmw-motorrad.nl/gfwlist +server=/swisssign.ch/127.0.0.1#5335 +ipset=/swisssign.ch/gfwlist +server=/visa.pl/127.0.0.1#5335 +ipset=/visa.pl/gfwlist +server=/sb.sb/127.0.0.1#5335 +ipset=/sb.sb/gfwlist +server=/nikesportswear.com/127.0.0.1#5335 +ipset=/nikesportswear.com/gfwlist +server=/thebeatsheadphonesale.com/127.0.0.1#5335 +ipset=/thebeatsheadphonesale.com/gfwlist +server=/tteshop.com/127.0.0.1#5335 +ipset=/tteshop.com/gfwlist +server=/stackauth.com/127.0.0.1#5335 +ipset=/stackauth.com/gfwlist +server=/tradevip1.com/127.0.0.1#5335 +ipset=/tradevip1.com/gfwlist +server=/buzzav.com/127.0.0.1#5335 +ipset=/buzzav.com/gfwlist +server=/topbeatsforsale.com/127.0.0.1#5335 +ipset=/topbeatsforsale.com/gfwlist +server=/topbeatsdealer.com/127.0.0.1#5335 +ipset=/topbeatsdealer.com/gfwlist +server=/cdn-terapeak.com/127.0.0.1#5335 +ipset=/cdn-terapeak.com/gfwlist +server=/rolfoundation.org/127.0.0.1#5335 +ipset=/rolfoundation.org/gfwlist +server=/bmw.mq/127.0.0.1#5335 +ipset=/bmw.mq/gfwlist +server=/kodi.wiki/127.0.0.1#5335 +ipset=/kodi.wiki/gfwlist +server=/marvelsuperheroseptember.com/127.0.0.1#5335 +ipset=/marvelsuperheroseptember.com/gfwlist +server=/the-monster-beats.com/127.0.0.1#5335 +ipset=/the-monster-beats.com/gfwlist +server=/hpservices.com/127.0.0.1#5335 +ipset=/hpservices.com/gfwlist +server=/zeriamerikes.com/127.0.0.1#5335 +ipset=/zeriamerikes.com/gfwlist +server=/nintendo.com/127.0.0.1#5335 +ipset=/nintendo.com/gfwlist +server=/apple.us/127.0.0.1#5335 +ipset=/apple.us/gfwlist +server=/myhulu.com/127.0.0.1#5335 +ipset=/myhulu.com/gfwlist +server=/visaeurope.si/127.0.0.1#5335 +ipset=/visaeurope.si/gfwlist +server=/fragrancebay.com/127.0.0.1#5335 +ipset=/fragrancebay.com/gfwlist +server=/szcheapmonsterheadphones.com/127.0.0.1#5335 +ipset=/szcheapmonsterheadphones.com/gfwlist +server=/sustainthesound.com/127.0.0.1#5335 +ipset=/sustainthesound.com/gfwlist +server=/starbuckssummergame.ca/127.0.0.1#5335 +ipset=/starbuckssummergame.ca/gfwlist +server=/awayoutgame.com/127.0.0.1#5335 +ipset=/awayoutgame.com/gfwlist +server=/amazonbusinessblog.com/127.0.0.1#5335 +ipset=/amazonbusinessblog.com/gfwlist +server=/mgo-images.com/127.0.0.1#5335 +ipset=/mgo-images.com/gfwlist +server=/ebay-confirm.com/127.0.0.1#5335 +ipset=/ebay-confirm.com/gfwlist +server=/superearsenjoy.com/127.0.0.1#5335 +ipset=/superearsenjoy.com/gfwlist +server=/swiftcapital.com/127.0.0.1#5335 +ipset=/swiftcapital.com/gfwlist +server=/pixinsight.com.tw/127.0.0.1#5335 +ipset=/pixinsight.com.tw/gfwlist +server=/atlasonepoint.com/127.0.0.1#5335 +ipset=/atlasonepoint.com/gfwlist +server=/billpoint.us/127.0.0.1#5335 +ipset=/billpoint.us/gfwlist +server=/automobile.fr/127.0.0.1#5335 +ipset=/automobile.fr/gfwlist +server=/jitsi.org/127.0.0.1#5335 +ipset=/jitsi.org/gfwlist +server=/miniwholesaleconnect.com/127.0.0.1#5335 +ipset=/miniwholesaleconnect.com/gfwlist +server=/lolshop.co.kr/127.0.0.1#5335 +ipset=/lolshop.co.kr/gfwlist +server=/disney.pt/127.0.0.1#5335 +ipset=/disney.pt/gfwlist +server=/bbycastatic.ca/127.0.0.1#5335 +ipset=/bbycastatic.ca/gfwlist +server=/bowenpress.com/127.0.0.1#5335 +ipset=/bowenpress.com/gfwlist +server=/specialtyheadphones.com/127.0.0.1#5335 +ipset=/specialtyheadphones.com/gfwlist +server=/dlfacebook.com/127.0.0.1#5335 +ipset=/dlfacebook.com/gfwlist +server=/associates-amazon.com/127.0.0.1#5335 +ipset=/associates-amazon.com/gfwlist +server=/secomtrust.net/127.0.0.1#5335 +ipset=/secomtrust.net/gfwlist +server=/predictivetechnologies.com/127.0.0.1#5335 +ipset=/predictivetechnologies.com/gfwlist +server=/browserleaks.com/127.0.0.1#5335 +ipset=/browserleaks.com/gfwlist +server=/appleexpo.info/127.0.0.1#5335 +ipset=/appleexpo.info/gfwlist +server=/sneakerpage.net/127.0.0.1#5335 +ipset=/sneakerpage.net/gfwlist +server=/translatewiki.org/127.0.0.1#5335 +ipset=/translatewiki.org/gfwlist +server=/voanoticias.com/127.0.0.1#5335 +ipset=/voanoticias.com/gfwlist +server=/pricelesstv.com/127.0.0.1#5335 +ipset=/pricelesstv.com/gfwlist +server=/agzy1.com/127.0.0.1#5335 +ipset=/agzy1.com/gfwlist +server=/intel.eu/127.0.0.1#5335 +ipset=/intel.eu/gfwlist +server=/researchkit.hk/127.0.0.1#5335 +ipset=/researchkit.hk/gfwlist +server=/icloudmail.net/127.0.0.1#5335 +ipset=/icloudmail.net/gfwlist +server=/shop-headphones.net/127.0.0.1#5335 +ipset=/shop-headphones.net/gfwlist +server=/bridgestonevan.com/127.0.0.1#5335 +ipset=/bridgestonevan.com/gfwlist +server=/btt904.com/127.0.0.1#5335 +ipset=/btt904.com/gfwlist +server=/shoers.com/127.0.0.1#5335 +ipset=/shoers.com/gfwlist +server=/opentranslatorstothings.org/127.0.0.1#5335 +ipset=/opentranslatorstothings.org/gfwlist +server=/bmwstepconnections.com/127.0.0.1#5335 +ipset=/bmwstepconnections.com/gfwlist +server=/nike.com.br/127.0.0.1#5335 +ipset=/nike.com.br/gfwlist +server=/sanvaras.com/127.0.0.1#5335 +ipset=/sanvaras.com/gfwlist +server=/travelex.co.nz/127.0.0.1#5335 +ipset=/travelex.co.nz/gfwlist +server=/minilaval.com/127.0.0.1#5335 +ipset=/minilaval.com/gfwlist +server=/visa.com.kh/127.0.0.1#5335 +ipset=/visa.com.kh/gfwlist +server=/prostudiobeatscybersale.com/127.0.0.1#5335 +ipset=/prostudiobeatscybersale.com/gfwlist +server=/promonsterbeatsbydre.com/127.0.0.1#5335 +ipset=/promonsterbeatsbydre.com/gfwlist +server=/powerbeatsbydrdre.com/127.0.0.1#5335 +ipset=/powerbeatsbydrdre.com/gfwlist +server=/lol-europe.com/127.0.0.1#5335 +ipset=/lol-europe.com/gfwlist +server=/evise.com/127.0.0.1#5335 +ipset=/evise.com/gfwlist +server=/nikepromax.com/127.0.0.1#5335 +ipset=/nikepromax.com/gfwlist +server=/minivancouver.ca/127.0.0.1#5335 +ipset=/minivancouver.ca/gfwlist +server=/personeelsland.com/127.0.0.1#5335 +ipset=/personeelsland.com/gfwlist +server=/store-bridgestonesports.com/127.0.0.1#5335 +ipset=/store-bridgestonesports.com/gfwlist +server=/cbsi.com/127.0.0.1#5335 +ipset=/cbsi.com/gfwlist +server=/lgsalesportal.com/127.0.0.1#5335 +ipset=/lgsalesportal.com/gfwlist +server=/billpoint.info/127.0.0.1#5335 +ipset=/billpoint.info/gfwlist +server=/volvotrucks.ph/127.0.0.1#5335 +ipset=/volvotrucks.ph/gfwlist +server=/beatsfactorycollection.com/127.0.0.1#5335 +ipset=/beatsfactorycollection.com/gfwlist +server=/xlstudio.com/127.0.0.1#5335 +ipset=/xlstudio.com/gfwlist +server=/bmw-motorrad.bg/127.0.0.1#5335 +ipset=/bmw-motorrad.bg/gfwlist +server=/offerairjordanlebron.com/127.0.0.1#5335 +ipset=/offerairjordanlebron.com/gfwlist +server=/nhncorp.jp/127.0.0.1#5335 +ipset=/nhncorp.jp/gfwlist +server=/sbnation.com/127.0.0.1#5335 +ipset=/sbnation.com/gfwlist +server=/newschristmasshopping.com/127.0.0.1#5335 +ipset=/newschristmasshopping.com/gfwlist +server=/volvobuses.com.tw/127.0.0.1#5335 +ipset=/volvobuses.com.tw/gfwlist +server=/newlysprung.net/127.0.0.1#5335 +ipset=/newlysprung.net/gfwlist +server=/bmwusatires.com/127.0.0.1#5335 +ipset=/bmwusatires.com/gfwlist +server=/newestbeatsbydre.com/127.0.0.1#5335 +ipset=/newestbeatsbydre.com/gfwlist +server=/newbeatsblackfriday.com/127.0.0.1#5335 +ipset=/newbeatsblackfriday.com/gfwlist +server=/negoziomonsterbeats.com/127.0.0.1#5335 +ipset=/negoziomonsterbeats.com/gfwlist +server=/nikebetrue.com/127.0.0.1#5335 +ipset=/nikebetrue.com/gfwlist +server=/abcheadphones.com/127.0.0.1#5335 +ipset=/abcheadphones.com/gfwlist +server=/gamer-cds.cdn.hinet.net/127.0.0.1#5335 +ipset=/gamer-cds.cdn.hinet.net/gfwlist +server=/pdxbmw.com/127.0.0.1#5335 +ipset=/pdxbmw.com/gfwlist +server=/msads.net/127.0.0.1#5335 +ipset=/msads.net/gfwlist +server=/scholar.google.co.jp/127.0.0.1#5335 +ipset=/scholar.google.co.jp/gfwlist +server=/racked.com/127.0.0.1#5335 +ipset=/racked.com/gfwlist +server=/gameon-masters.com/127.0.0.1#5335 +ipset=/gameon-masters.com/gfwlist +server=/globalspec.com/127.0.0.1#5335 +ipset=/globalspec.com/gfwlist +server=/mybeatsbydrestudio.com/127.0.0.1#5335 +ipset=/mybeatsbydrestudio.com/gfwlist +server=/webobjects.co.uk/127.0.0.1#5335 +ipset=/webobjects.co.uk/gfwlist +server=/beatsearbudsheadphoness.com/127.0.0.1#5335 +ipset=/beatsearbudsheadphoness.com/gfwlist +server=/ms4dre.com/127.0.0.1#5335 +ipset=/ms4dre.com/gfwlist +server=/monstersdebea.com/127.0.0.1#5335 +ipset=/monstersdebea.com/gfwlist +server=/blogspot.qa/127.0.0.1#5335 +ipset=/blogspot.qa/gfwlist +server=/monsterproduct.net/127.0.0.1#5335 +ipset=/monsterproduct.net/gfwlist +server=/thomsonreuters.es/127.0.0.1#5335 +ipset=/thomsonreuters.es/gfwlist +server=/kindle.in/127.0.0.1#5335 +ipset=/kindle.in/gfwlist +server=/54647.online/127.0.0.1#5335 +ipset=/54647.online/gfwlist +server=/js.org/127.0.0.1#5335 +ipset=/js.org/gfwlist +server=/worldhack.com/127.0.0.1#5335 +ipset=/worldhack.com/gfwlist +server=/monsterbeatstang.com/127.0.0.1#5335 +ipset=/monsterbeatstang.com/gfwlist +server=/myfoxchicago.com/127.0.0.1#5335 +ipset=/myfoxchicago.com/gfwlist +server=/zohoschools.com/127.0.0.1#5335 +ipset=/zohoschools.com/gfwlist +server=/businessfocus.io/127.0.0.1#5335 +ipset=/businessfocus.io/gfwlist +server=/fortnite.com/127.0.0.1#5335 +ipset=/fortnite.com/gfwlist +server=/v8.dev/127.0.0.1#5335 +ipset=/v8.dev/gfwlist +server=/yahoo.is/127.0.0.1#5335 +ipset=/yahoo.is/gfwlist +server=/alphabet.de/127.0.0.1#5335 +ipset=/alphabet.de/gfwlist +server=/monsterbeatsonlinestoreuk.com/127.0.0.1#5335 +ipset=/monsterbeatsonlinestoreuk.com/gfwlist +server=/bmw.com.ar/127.0.0.1#5335 +ipset=/bmw.com.ar/gfwlist +server=/nikeb.com/127.0.0.1#5335 +ipset=/nikeb.com/gfwlist +server=/monsterbeatsmall.com/127.0.0.1#5335 +ipset=/monsterbeatsmall.com/gfwlist +server=/faebook.com/127.0.0.1#5335 +ipset=/faebook.com/gfwlist +server=/tvmost.com.hk/127.0.0.1#5335 +ipset=/tvmost.com.hk/gfwlist +server=/geforce.co.kr/127.0.0.1#5335 +ipset=/geforce.co.kr/gfwlist +server=/drdrefnac.com/127.0.0.1#5335 +ipset=/drdrefnac.com/gfwlist +server=/venmo.org/127.0.0.1#5335 +ipset=/venmo.org/gfwlist +server=/swag.live/127.0.0.1#5335 +ipset=/swag.live/gfwlist +server=/ebaydts.com/127.0.0.1#5335 +ipset=/ebaydts.com/gfwlist +server=/bestshoesale2014.net/127.0.0.1#5335 +ipset=/bestshoesale2014.net/gfwlist +server=/monsterbeatsbydreshop.com/127.0.0.1#5335 +ipset=/monsterbeatsbydreshop.com/gfwlist +server=/pearsonclinical.in/127.0.0.1#5335 +ipset=/pearsonclinical.in/gfwlist +server=/hulu.us/127.0.0.1#5335 +ipset=/hulu.us/gfwlist +server=/tiburon.com/127.0.0.1#5335 +ipset=/tiburon.com/gfwlist +server=/comodoca4.com/127.0.0.1#5335 +ipset=/comodoca4.com/gfwlist +server=/apple.tt/127.0.0.1#5335 +ipset=/apple.tt/gfwlist +server=/monsterbeatsbydre-usa.com/127.0.0.1#5335 +ipset=/monsterbeatsbydre-usa.com/gfwlist +server=/minispecialoffers.ca/127.0.0.1#5335 +ipset=/minispecialoffers.ca/gfwlist +server=/geek-squads.net/127.0.0.1#5335 +ipset=/geek-squads.net/gfwlist +server=/scholar.google.com.py/127.0.0.1#5335 +ipset=/scholar.google.com.py/gfwlist +server=/ebaycourse.com/127.0.0.1#5335 +ipset=/ebaycourse.com/gfwlist +server=/omscr.com/127.0.0.1#5335 +ipset=/omscr.com/gfwlist +server=/monsterbeatsbydrdre-usa.com/127.0.0.1#5335 +ipset=/monsterbeatsbydrdre-usa.com/gfwlist +server=/leagueoflegends.com/127.0.0.1#5335 +ipset=/leagueoflegends.com/gfwlist +server=/beatsbydrdreoutlet.com/127.0.0.1#5335 +ipset=/beatsbydrdreoutlet.com/gfwlist +server=/coolmonster.net/127.0.0.1#5335 +ipset=/coolmonster.net/gfwlist +server=/ospray.net/127.0.0.1#5335 +ipset=/ospray.net/gfwlist +server=/myfoxcharlotte.com/127.0.0.1#5335 +ipset=/myfoxcharlotte.com/gfwlist +server=/electricluxury.com/127.0.0.1#5335 +ipset=/electricluxury.com/gfwlist +server=/huffingtonpost.es/127.0.0.1#5335 +ipset=/huffingtonpost.es/gfwlist +server=/monsterbeatsau.com/127.0.0.1#5335 +ipset=/monsterbeatsau.com/gfwlist +server=/unravel2.com/127.0.0.1#5335 +ipset=/unravel2.com/gfwlist +server=/bloombergforeducation.com/127.0.0.1#5335 +ipset=/bloombergforeducation.com/gfwlist +server=/islamiccenterofnewlondon.com/127.0.0.1#5335 +ipset=/islamiccenterofnewlondon.com/gfwlist +server=/easportsactiveonline.com/127.0.0.1#5335 +ipset=/easportsactiveonline.com/gfwlist +server=/dungeonkeeper.com.cn/127.0.0.1#5335 +ipset=/dungeonkeeper.com.cn/gfwlist +server=/branchportal.com/127.0.0.1#5335 +ipset=/branchportal.com/gfwlist +server=/microsoftsilverlight.org/127.0.0.1#5335 +ipset=/microsoftsilverlight.org/gfwlist +server=/gfw.press/127.0.0.1#5335 +ipset=/gfw.press/gfwlist +server=/telesell.com/127.0.0.1#5335 +ipset=/telesell.com/gfwlist +server=/monsterbeats-onsale.com/127.0.0.1#5335 +ipset=/monsterbeats-onsale.com/gfwlist +server=/leagueoflegendsscripts.com/127.0.0.1#5335 +ipset=/leagueoflegendsscripts.com/gfwlist +server=/monster-beats-headphones.com/127.0.0.1#5335 +ipset=/monster-beats-headphones.com/gfwlist +server=/facebookhome.com/127.0.0.1#5335 +ipset=/facebookhome.com/gfwlist +server=/paypal-signin.us/127.0.0.1#5335 +ipset=/paypal-signin.us/gfwlist +server=/mmonsterheadphones.net/127.0.0.1#5335 +ipset=/mmonsterheadphones.net/gfwlist +server=/yo1health.com/127.0.0.1#5335 +ipset=/yo1health.com/gfwlist +server=/bcrncdn.com/127.0.0.1#5335 +ipset=/bcrncdn.com/gfwlist +server=/troisrivieresmini.com/127.0.0.1#5335 +ipset=/troisrivieresmini.com/gfwlist +server=/pinterest.com.au/127.0.0.1#5335 +ipset=/pinterest.com.au/gfwlist +server=/beatsdrdre-it.com/127.0.0.1#5335 +ipset=/beatsdrdre-it.com/gfwlist +server=/bmw-welt.tv/127.0.0.1#5335 +ipset=/bmw-welt.tv/gfwlist +server=/cup.com.hk/127.0.0.1#5335 +ipset=/cup.com.hk/gfwlist +server=/voachinese.com/127.0.0.1#5335 +ipset=/voachinese.com/gfwlist +server=/passiontimes.hk/127.0.0.1#5335 +ipset=/passiontimes.hk/gfwlist +server=/marvelsdoubleagent.com/127.0.0.1#5335 +ipset=/marvelsdoubleagent.com/gfwlist +server=/bmw-motorrad.bo/127.0.0.1#5335 +ipset=/bmw-motorrad.bo/gfwlist +server=/adobedtm.com/127.0.0.1#5335 +ipset=/adobedtm.com/gfwlist +server=/facnbook.com/127.0.0.1#5335 +ipset=/facnbook.com/gfwlist +server=/intercamcashpassport.com.mx/127.0.0.1#5335 +ipset=/intercamcashpassport.com.mx/gfwlist +server=/mini.com.tr/127.0.0.1#5335 +ipset=/mini.com.tr/gfwlist +server=/ebaycafe.com/127.0.0.1#5335 +ipset=/ebaycafe.com/gfwlist +server=/cloudflare-ipfs.com/127.0.0.1#5335 +ipset=/cloudflare-ipfs.com/gfwlist +server=/akamaitech.net/127.0.0.1#5335 +ipset=/akamaitech.net/gfwlist +server=/ebayca.com/127.0.0.1#5335 +ipset=/ebayca.com/gfwlist +server=/webrtc.org/127.0.0.1#5335 +ipset=/webrtc.org/gfwlist +server=/nikeusa.com/127.0.0.1#5335 +ipset=/nikeusa.com/gfwlist +server=/pypl.net/127.0.0.1#5335 +ipset=/pypl.net/gfwlist +server=/galegroup.com/127.0.0.1#5335 +ipset=/galegroup.com/gfwlist +server=/nike-uk.com/127.0.0.1#5335 +ipset=/nike-uk.com/gfwlist +server=/v2ray.cool/127.0.0.1#5335 +ipset=/v2ray.cool/gfwlist +server=/foxsports.gt/127.0.0.1#5335 +ipset=/foxsports.gt/gfwlist +server=/bmw-motorrad.ec/127.0.0.1#5335 +ipset=/bmw-motorrad.ec/gfwlist +server=/ibeatsbydre.cc/127.0.0.1#5335 +ipset=/ibeatsbydre.cc/gfwlist +server=/icloud.ch/127.0.0.1#5335 +ipset=/icloud.ch/gfwlist +server=/pinterest.kr/127.0.0.1#5335 +ipset=/pinterest.kr/gfwlist +server=/southfloridamini.com/127.0.0.1#5335 +ipset=/southfloridamini.com/gfwlist +server=/ebay.co.ve/127.0.0.1#5335 +ipset=/ebay.co.ve/gfwlist +server=/hotbeatsonsale.com/127.0.0.1#5335 +ipset=/hotbeatsonsale.com/gfwlist +server=/bmw-jordan.com/127.0.0.1#5335 +ipset=/bmw-jordan.com/gfwlist +server=/gettyimages.hk/127.0.0.1#5335 +ipset=/gettyimages.hk/gfwlist +server=/mastercard.ua/127.0.0.1#5335 +ipset=/mastercard.ua/gfwlist +server=/headset987.com/127.0.0.1#5335 +ipset=/headset987.com/gfwlist +server=/canon.hu/127.0.0.1#5335 +ipset=/canon.hu/gfwlist +server=/veet.co.uk/127.0.0.1#5335 +ipset=/veet.co.uk/gfwlist +server=/topbeatsbydrdreoutlet.com/127.0.0.1#5335 +ipset=/topbeatsbydrdreoutlet.com/gfwlist +server=/microsoft.de/127.0.0.1#5335 +ipset=/microsoft.de/gfwlist +server=/bloombergprep.com/127.0.0.1#5335 +ipset=/bloombergprep.com/gfwlist +server=/minidurham.ca/127.0.0.1#5335 +ipset=/minidurham.ca/gfwlist +server=/headphoneses.com/127.0.0.1#5335 +ipset=/headphoneses.com/gfwlist +server=/aimei133.com/127.0.0.1#5335 +ipset=/aimei133.com/gfwlist +server=/dragonagekeep.com/127.0.0.1#5335 +ipset=/dragonagekeep.com/gfwlist +server=/classicnike.com/127.0.0.1#5335 +ipset=/classicnike.com/gfwlist +server=/freebasics.com/127.0.0.1#5335 +ipset=/freebasics.com/gfwlist +server=/ebayshop.com/127.0.0.1#5335 +ipset=/ebayshop.com/gfwlist +server=/gobeatsye.com/127.0.0.1#5335 +ipset=/gobeatsye.com/gfwlist +server=/openresty.org/127.0.0.1#5335 +ipset=/openresty.org/gfwlist +server=/bmw-albania.com/127.0.0.1#5335 +ipset=/bmw-albania.com/gfwlist +server=/ausbeatsbydrdre.com/127.0.0.1#5335 +ipset=/ausbeatsbydrdre.com/gfwlist +server=/citizenlab.org/127.0.0.1#5335 +ipset=/citizenlab.org/gfwlist +server=/gmnetworks.net/127.0.0.1#5335 +ipset=/gmnetworks.net/gfwlist +server=/alphabet.fr/127.0.0.1#5335 +ipset=/alphabet.fr/gfwlist +server=/dmed.technology/127.0.0.1#5335 +ipset=/dmed.technology/gfwlist +server=/ieeefoundation.org/127.0.0.1#5335 +ipset=/ieeefoundation.org/gfwlist +server=/frcasquesbeats.com/127.0.0.1#5335 +ipset=/frcasquesbeats.com/gfwlist +server=/chickstagram.com/127.0.0.1#5335 +ipset=/chickstagram.com/gfwlist +server=/blogspot.mk/127.0.0.1#5335 +ipset=/blogspot.mk/gfwlist +server=/bloombergvault.com/127.0.0.1#5335 +ipset=/bloombergvault.com/gfwlist +server=/drebeats-france.com/127.0.0.1#5335 +ipset=/drebeats-france.com/gfwlist +server=/haskell.org/127.0.0.1#5335 +ipset=/haskell.org/gfwlist +server=/paypalshopping.net/127.0.0.1#5335 +ipset=/paypalshopping.net/gfwlist +server=/etheadphones.com/127.0.0.1#5335 +ipset=/etheadphones.com/gfwlist +server=/huluusa.com/127.0.0.1#5335 +ipset=/huluusa.com/gfwlist +server=/nikesb.com/127.0.0.1#5335 +ipset=/nikesb.com/gfwlist +server=/mastercard.ba/127.0.0.1#5335 +ipset=/mastercard.ba/gfwlist +server=/drebeatstudio.com/127.0.0.1#5335 +ipset=/drebeatstudio.com/gfwlist +server=/hplip.net/127.0.0.1#5335 +ipset=/hplip.net/gfwlist +server=/bmw.com.uy/127.0.0.1#5335 +ipset=/bmw.com.uy/gfwlist +server=/bmw-motorrad.rs/127.0.0.1#5335 +ipset=/bmw-motorrad.rs/gfwlist +server=/paypal.ca/127.0.0.1#5335 +ipset=/paypal.ca/gfwlist +server=/physiology.org/127.0.0.1#5335 +ipset=/physiology.org/gfwlist +server=/wix.com/127.0.0.1#5335 +ipset=/wix.com/gfwlist +server=/drebeatsforsaleus.com/127.0.0.1#5335 +ipset=/drebeatsforsaleus.com/gfwlist +server=/bestbuycanadaltd.ca/127.0.0.1#5335 +ipset=/bestbuycanadaltd.ca/gfwlist +server=/akamainewzealand.com/127.0.0.1#5335 +ipset=/akamainewzealand.com/gfwlist +server=/lsnzxzy1.com/127.0.0.1#5335 +ipset=/lsnzxzy1.com/gfwlist +server=/chaturbate.com/127.0.0.1#5335 +ipset=/chaturbate.com/gfwlist +server=/lih.kg/127.0.0.1#5335 +ipset=/lih.kg/gfwlist +server=/ebay.jp/127.0.0.1#5335 +ipset=/ebay.jp/gfwlist +server=/nikeclub.com/127.0.0.1#5335 +ipset=/nikeclub.com/gfwlist +server=/kktix.com/127.0.0.1#5335 +ipset=/kktix.com/gfwlist +server=/diddykongracing.com/127.0.0.1#5335 +ipset=/diddykongracing.com/gfwlist +server=/bahamut.com.tw/127.0.0.1#5335 +ipset=/bahamut.com.tw/gfwlist +server=/drebeats-studio.com/127.0.0.1#5335 +ipset=/drebeats-studio.com/gfwlist +server=/amebame.com/127.0.0.1#5335 +ipset=/amebame.com/gfwlist +server=/minigrandriver.com/127.0.0.1#5335 +ipset=/minigrandriver.com/gfwlist +server=/enterprisessl.com/127.0.0.1#5335 +ipset=/enterprisessl.com/gfwlist +server=/drdreheadphonesusstore.com/127.0.0.1#5335 +ipset=/drdreheadphonesusstore.com/gfwlist +server=/pinterest.vn/127.0.0.1#5335 +ipset=/pinterest.vn/gfwlist +server=/instagramlogin.com/127.0.0.1#5335 +ipset=/instagramlogin.com/gfwlist +server=/drdrebeatssale7.com/127.0.0.1#5335 +ipset=/drdrebeatssale7.com/gfwlist +server=/akamaitechnologies.net/127.0.0.1#5335 +ipset=/akamaitechnologies.net/gfwlist +server=/centos.org/127.0.0.1#5335 +ipset=/centos.org/gfwlist +server=/visaglobalfinance.com/127.0.0.1#5335 +ipset=/visaglobalfinance.com/gfwlist +server=/oauthz.com/127.0.0.1#5335 +ipset=/oauthz.com/gfwlist +server=/faesebook.com/127.0.0.1#5335 +ipset=/faesebook.com/gfwlist +server=/v8project.org/127.0.0.1#5335 +ipset=/v8project.org/gfwlist +server=/drdrebeats-headphone.com/127.0.0.1#5335 +ipset=/drdrebeats-headphone.com/gfwlist +server=/discountbeatsstore.com/127.0.0.1#5335 +ipset=/discountbeatsstore.com/gfwlist +server=/bridgestonegz.com/127.0.0.1#5335 +ipset=/bridgestonegz.com/gfwlist +server=/microsoftcloud.com/127.0.0.1#5335 +ipset=/microsoftcloud.com/gfwlist +server=/mach-os.net/127.0.0.1#5335 +ipset=/mach-os.net/gfwlist +server=/azureserviceprofiler.com/127.0.0.1#5335 +ipset=/azureserviceprofiler.com/gfwlist +server=/gannettdigital.com/127.0.0.1#5335 +ipset=/gannettdigital.com/gfwlist +server=/mr-tireman.jp/127.0.0.1#5335 +ipset=/mr-tireman.jp/gfwlist +server=/battlefield.com/127.0.0.1#5335 +ipset=/battlefield.com/gfwlist +server=/gloryofheracles.com/127.0.0.1#5335 +ipset=/gloryofheracles.com/gfwlist +server=/trithucvn.net/127.0.0.1#5335 +ipset=/trithucvn.net/gfwlist +server=/paypalcommunity.com/127.0.0.1#5335 +ipset=/paypalcommunity.com/gfwlist +server=/linefriends.com.tw/127.0.0.1#5335 +ipset=/linefriends.com.tw/gfwlist +server=/azure-dns.info/127.0.0.1#5335 +ipset=/azure-dns.info/gfwlist +server=/vkontakte.ru/127.0.0.1#5335 +ipset=/vkontakte.ru/gfwlist +server=/mingw.org/127.0.0.1#5335 +ipset=/mingw.org/gfwlist +server=/custombeatsdeals.com/127.0.0.1#5335 +ipset=/custombeatsdeals.com/gfwlist +server=/sitepoint.com/127.0.0.1#5335 +ipset=/sitepoint.com/gfwlist +server=/afewmomentswith.com/127.0.0.1#5335 +ipset=/afewmomentswith.com/gfwlist +server=/visa.com.tr/127.0.0.1#5335 +ipset=/visa.com.tr/gfwlist +server=/drdrebeatsdiscount.com/127.0.0.1#5335 +ipset=/drdrebeatsdiscount.com/gfwlist +server=/cuffiesaldi.com/127.0.0.1#5335 +ipset=/cuffiesaldi.com/gfwlist +server=/ibook.net/127.0.0.1#5335 +ipset=/ibook.net/gfwlist +server=/wholecitiesfoundation.org/127.0.0.1#5335 +ipset=/wholecitiesfoundation.org/gfwlist +server=/beatsua.com/127.0.0.1#5335 +ipset=/beatsua.com/gfwlist +server=/cozydrdrebeats.com/127.0.0.1#5335 +ipset=/cozydrdrebeats.com/gfwlist +server=/techliquidators.com/127.0.0.1#5335 +ipset=/techliquidators.com/gfwlist +server=/cmhalq.com/127.0.0.1#5335 +ipset=/cmhalq.com/gfwlist +server=/soccermatchpass.com/127.0.0.1#5335 +ipset=/soccermatchpass.com/gfwlist +server=/nikeshoesmarket.com/127.0.0.1#5335 +ipset=/nikeshoesmarket.com/gfwlist +server=/pixnet.pro/127.0.0.1#5335 +ipset=/pixnet.pro/gfwlist +server=/volvotrucks.ba/127.0.0.1#5335 +ipset=/volvotrucks.ba/gfwlist +server=/mastercard.pt/127.0.0.1#5335 +ipset=/mastercard.pt/gfwlist +server=/nikegenealogy.com/127.0.0.1#5335 +ipset=/nikegenealogy.com/gfwlist +server=/cheapnikeoutlet.com/127.0.0.1#5335 +ipset=/cheapnikeoutlet.com/gfwlist +server=/cbsimg.net/127.0.0.1#5335 +ipset=/cbsimg.net/gfwlist +server=/foxentertainment.com/127.0.0.1#5335 +ipset=/foxentertainment.com/gfwlist +server=/cdnlab.live/127.0.0.1#5335 +ipset=/cdnlab.live/gfwlist +server=/kissjav.com/127.0.0.1#5335 +ipset=/kissjav.com/gfwlist +server=/windy.com/127.0.0.1#5335 +ipset=/windy.com/gfwlist +server=/cheapwirelessbeats.com/127.0.0.1#5335 +ipset=/cheapwirelessbeats.com/gfwlist +server=/adobelogin.com/127.0.0.1#5335 +ipset=/adobelogin.com/gfwlist +server=/cheapshoesvip.com/127.0.0.1#5335 +ipset=/cheapshoesvip.com/gfwlist +server=/sony.lt/127.0.0.1#5335 +ipset=/sony.lt/gfwlist +server=/ntdtvla.com/127.0.0.1#5335 +ipset=/ntdtvla.com/gfwlist +server=/ds-vod-abematv.akamaized.net/127.0.0.1#5335 +ipset=/ds-vod-abematv.akamaized.net/gfwlist +server=/cheapmonsterbeatssale.com/127.0.0.1#5335 +ipset=/cheapmonsterbeatssale.com/gfwlist +server=/buypass.se/127.0.0.1#5335 +ipset=/buypass.se/gfwlist +server=/alpherafs.co.nz/127.0.0.1#5335 +ipset=/alpherafs.co.nz/gfwlist +server=/bestbuysgeeksquad.com/127.0.0.1#5335 +ipset=/bestbuysgeeksquad.com/gfwlist +server=/livephotos.tv/127.0.0.1#5335 +ipset=/livephotos.tv/gfwlist +server=/att-japan.com/127.0.0.1#5335 +ipset=/att-japan.com/gfwlist +server=/ginzasonypark.jp/127.0.0.1#5335 +ipset=/ginzasonypark.jp/gfwlist +server=/cheapheadsetshop.com/127.0.0.1#5335 +ipset=/cheapheadsetshop.com/gfwlist +server=/paypal-survey.org/127.0.0.1#5335 +ipset=/paypal-survey.org/gfwlist +server=/buycheapbeatsbydre.com/127.0.0.1#5335 +ipset=/buycheapbeatsbydre.com/gfwlist +server=/zeit.co/127.0.0.1#5335 +ipset=/zeit.co/gfwlist +server=/cheapbeatsla.com/127.0.0.1#5335 +ipset=/cheapbeatsla.com/gfwlist +server=/cheapbeatsheadphones.us/127.0.0.1#5335 +ipset=/cheapbeatsheadphones.us/gfwlist +server=/mastercard.com.ng/127.0.0.1#5335 +ipset=/mastercard.com.ng/gfwlist +server=/volvotrucks.com.kw/127.0.0.1#5335 +ipset=/volvotrucks.com.kw/gfwlist +server=/unpkg.com/127.0.0.1#5335 +ipset=/unpkg.com/gfwlist +server=/hpvirtualthin.com/127.0.0.1#5335 +ipset=/hpvirtualthin.com/gfwlist +server=/zeitworld.com/127.0.0.1#5335 +ipset=/zeitworld.com/gfwlist +server=/huluim.com/127.0.0.1#5335 +ipset=/huluim.com/gfwlist +server=/monstercheapbeatss.com/127.0.0.1#5335 +ipset=/monstercheapbeatss.com/gfwlist +server=/liberapay.org/127.0.0.1#5335 +ipset=/liberapay.org/gfwlist +server=/visa.com.pa/127.0.0.1#5335 +ipset=/visa.com.pa/gfwlist +server=/guccimuseo.com/127.0.0.1#5335 +ipset=/guccimuseo.com/gfwlist +server=/aweencore.com/127.0.0.1#5335 +ipset=/aweencore.com/gfwlist +server=/ebay-discoveries.com/127.0.0.1#5335 +ipset=/ebay-discoveries.com/gfwlist +server=/news.com.au/127.0.0.1#5335 +ipset=/news.com.au/gfwlist +server=/independentoperatorcn.com/127.0.0.1#5335 +ipset=/independentoperatorcn.com/gfwlist +server=/paypal-prepaid.com/127.0.0.1#5335 +ipset=/paypal-prepaid.com/gfwlist +server=/rakuten-static.com/127.0.0.1#5335 +ipset=/rakuten-static.com/gfwlist +server=/iebay.com/127.0.0.1#5335 +ipset=/iebay.com/gfwlist +server=/alphabet.us/127.0.0.1#5335 +ipset=/alphabet.us/gfwlist +server=/outletbeatsshop.com/127.0.0.1#5335 +ipset=/outletbeatsshop.com/gfwlist +server=/casquemonsterbeats.com/127.0.0.1#5335 +ipset=/casquemonsterbeats.com/gfwlist +server=/casquebeatspascher2013.com/127.0.0.1#5335 +ipset=/casquebeatspascher2013.com/gfwlist +server=/s-bluemix.net/127.0.0.1#5335 +ipset=/s-bluemix.net/gfwlist +server=/casquebeatsmer.net/127.0.0.1#5335 +ipset=/casquebeatsmer.net/gfwlist +server=/ebayinternetsalestax.com/127.0.0.1#5335 +ipset=/ebayinternetsalestax.com/gfwlist +server=/primevideo.tv/127.0.0.1#5335 +ipset=/primevideo.tv/gfwlist +server=/bloombergtaxtech.com/127.0.0.1#5335 +ipset=/bloombergtaxtech.com/gfwlist +server=/foxsports.com.gt/127.0.0.1#5335 +ipset=/foxsports.com.gt/gfwlist +server=/foxsoccer.tv/127.0.0.1#5335 +ipset=/foxsoccer.tv/gfwlist +server=/buybeatsbydre-uk.com/127.0.0.1#5335 +ipset=/buybeatsbydre-uk.com/gfwlist +server=/mini-connected.co.uk/127.0.0.1#5335 +ipset=/mini-connected.co.uk/gfwlist +server=/buy-from-shanghai.com/127.0.0.1#5335 +ipset=/buy-from-shanghai.com/gfwlist +server=/javbus22.com/127.0.0.1#5335 +ipset=/javbus22.com/gfwlist +server=/volvobuses.at/127.0.0.1#5335 +ipset=/volvobuses.at/gfwlist +server=/royalsocietypublishing.org/127.0.0.1#5335 +ipset=/royalsocietypublishing.org/gfwlist +server=/visa.ca/127.0.0.1#5335 +ipset=/visa.ca/gfwlist +server=/fonolia.com/127.0.0.1#5335 +ipset=/fonolia.com/gfwlist +server=/directvhouston.com/127.0.0.1#5335 +ipset=/directvhouston.com/gfwlist +server=/biitii.com/127.0.0.1#5335 +ipset=/biitii.com/gfwlist +server=/tmsnrt.rs/127.0.0.1#5335 +ipset=/tmsnrt.rs/gfwlist +server=/ebayglobalshipping.com/127.0.0.1#5335 +ipset=/ebayglobalshipping.com/gfwlist +server=/beatswholesale.us/127.0.0.1#5335 +ipset=/beatswholesale.us/gfwlist +server=/vtvan.com/127.0.0.1#5335 +ipset=/vtvan.com/gfwlist +server=/beatsshop-uk.com/127.0.0.1#5335 +ipset=/beatsshop-uk.com/gfwlist +server=/x.com/127.0.0.1#5335 +ipset=/x.com/gfwlist +server=/facebo-ok.com/127.0.0.1#5335 +ipset=/facebo-ok.com/gfwlist +server=/airwick.hr/127.0.0.1#5335 +ipset=/airwick.hr/gfwlist +server=/nike.shop/127.0.0.1#5335 +ipset=/nike.shop/gfwlist +server=/spiritclubs.com/127.0.0.1#5335 +ipset=/spiritclubs.com/gfwlist +server=/youtube.ca/127.0.0.1#5335 +ipset=/youtube.ca/gfwlist +server=/beatspromonsterjp.com/127.0.0.1#5335 +ipset=/beatspromonsterjp.com/gfwlist +server=/beatspillnewcolor.com/127.0.0.1#5335 +ipset=/beatspillnewcolor.com/gfwlist +server=/foxsoccerplus.com/127.0.0.1#5335 +ipset=/foxsoccerplus.com/gfwlist +server=/mini.nc/127.0.0.1#5335 +ipset=/mini.nc/gfwlist +server=/beatsoutletanytime.com/127.0.0.1#5335 +ipset=/beatsoutletanytime.com/gfwlist +server=/priceless.org/127.0.0.1#5335 +ipset=/priceless.org/gfwlist +server=/bridgestonerewards.com/127.0.0.1#5335 +ipset=/bridgestonerewards.com/gfwlist +server=/starwarsjedifallenorder.com/127.0.0.1#5335 +ipset=/starwarsjedifallenorder.com/gfwlist +server=/mcisco.com/127.0.0.1#5335 +ipset=/mcisco.com/gfwlist +server=/drebeatsoutletstore.com/127.0.0.1#5335 +ipset=/drebeatsoutletstore.com/gfwlist +server=/yahoo.ca/127.0.0.1#5335 +ipset=/yahoo.ca/gfwlist +server=/vanish.pt/127.0.0.1#5335 +ipset=/vanish.pt/gfwlist +server=/paypal-europe.com/127.0.0.1#5335 +ipset=/paypal-europe.com/gfwlist +server=/picsee.pro/127.0.0.1#5335 +ipset=/picsee.pro/gfwlist +server=/natgeomaps.com/127.0.0.1#5335 +ipset=/natgeomaps.com/gfwlist +server=/eamythic.net/127.0.0.1#5335 +ipset=/eamythic.net/gfwlist +server=/alphabet.com.pl/127.0.0.1#5335 +ipset=/alphabet.com.pl/gfwlist +server=/beatsinsingapore.com/127.0.0.1#5335 +ipset=/beatsinsingapore.com/gfwlist +server=/beatsincanada.com/127.0.0.1#5335 +ipset=/beatsincanada.com/gfwlist +server=/travelex.qa/127.0.0.1#5335 +ipset=/travelex.qa/gfwlist +server=/gfashion.com/127.0.0.1#5335 +ipset=/gfashion.com/gfwlist +server=/visaluxuryhotelcollection.com/127.0.0.1#5335 +ipset=/visaluxuryhotelcollection.com/gfwlist +server=/vimeo.fr/127.0.0.1#5335 +ipset=/vimeo.fr/gfwlist +server=/beatsheadphonesale.com/127.0.0.1#5335 +ipset=/beatsheadphonesale.com/gfwlist +server=/etvonline.hk/127.0.0.1#5335 +ipset=/etvonline.hk/gfwlist +server=/pearson.es/127.0.0.1#5335 +ipset=/pearson.es/gfwlist +server=/yamaxun.com/127.0.0.1#5335 +ipset=/yamaxun.com/gfwlist +server=/mini.com.mt/127.0.0.1#5335 +ipset=/mini.com.mt/gfwlist +server=/bmwdelawarevalley.com/127.0.0.1#5335 +ipset=/bmwdelawarevalley.com/gfwlist +server=/paypal-gift.com/127.0.0.1#5335 +ipset=/paypal-gift.com/gfwlist +server=/muji.eu/127.0.0.1#5335 +ipset=/muji.eu/gfwlist +server=/icloud.hu/127.0.0.1#5335 +ipset=/icloud.hu/gfwlist +server=/ibm.com/127.0.0.1#5335 +ipset=/ibm.com/gfwlist +server=/casquebeatsbydrdresolohd.com/127.0.0.1#5335 +ipset=/casquebeatsbydrdresolohd.com/gfwlist +server=/bridgestonetire.ca/127.0.0.1#5335 +ipset=/bridgestonetire.ca/gfwlist +server=/openssl.org/127.0.0.1#5335 +ipset=/openssl.org/gfwlist +server=/beatselectronic.net/127.0.0.1#5335 +ipset=/beatselectronic.net/gfwlist +server=/telegram.org/127.0.0.1#5335 +ipset=/telegram.org/gfwlist +server=/softbank-telecom.com/127.0.0.1#5335 +ipset=/softbank-telecom.com/gfwlist +server=/icloud.com/127.0.0.1#5335 +ipset=/icloud.com/gfwlist +server=/beatsforcheap-usa.com/127.0.0.1#5335 +ipset=/beatsforcheap-usa.com/gfwlist +server=/ius.io/127.0.0.1#5335 +ipset=/ius.io/gfwlist +server=/amazon.com.au/127.0.0.1#5335 +ipset=/amazon.com.au/gfwlist +server=/abow.jp/127.0.0.1#5335 +ipset=/abow.jp/gfwlist +server=/beatsfactoroutlets.com/127.0.0.1#5335 +ipset=/beatsfactoroutlets.com/gfwlist +server=/beatsfacstore.com/127.0.0.1#5335 +ipset=/beatsfacstore.com/gfwlist +server=/bmw.lt/127.0.0.1#5335 +ipset=/bmw.lt/gfwlist +server=/ebayforcharity.org/127.0.0.1#5335 +ipset=/ebayforcharity.org/gfwlist +server=/flickr.net/127.0.0.1#5335 +ipset=/flickr.net/gfwlist +server=/eracom.com.tw/127.0.0.1#5335 +ipset=/eracom.com.tw/gfwlist +server=/beatsdresolo2013.com/127.0.0.1#5335 +ipset=/beatsdresolo2013.com/gfwlist +server=/thomsonreuters.com.hk/127.0.0.1#5335 +ipset=/thomsonreuters.com.hk/gfwlist +server=/webkit.org/127.0.0.1#5335 +ipset=/webkit.org/gfwlist +server=/yandex.ru/127.0.0.1#5335 +ipset=/yandex.ru/gfwlist +server=/firestonetire.com/127.0.0.1#5335 +ipset=/firestonetire.com/gfwlist +server=/fotiolia.com/127.0.0.1#5335 +ipset=/fotiolia.com/gfwlist +server=/youtube.tv/127.0.0.1#5335 +ipset=/youtube.tv/gfwlist +server=/monsterbeatsbydreaustraliacheap.com/127.0.0.1#5335 +ipset=/monsterbeatsbydreaustraliacheap.com/gfwlist +server=/connaissancesfinancierespratiques.ca/127.0.0.1#5335 +ipset=/connaissancesfinancierespratiques.ca/gfwlist +server=/nikeshoescity.com/127.0.0.1#5335 +ipset=/nikeshoescity.com/gfwlist +server=/beatsdrdre2014.com/127.0.0.1#5335 +ipset=/beatsdrdre2014.com/gfwlist +server=/amazonaws.co.uk/127.0.0.1#5335 +ipset=/amazonaws.co.uk/gfwlist +server=/beatsdanmark2013.com/127.0.0.1#5335 +ipset=/beatsdanmark2013.com/gfwlist +server=/lgappstv.com/127.0.0.1#5335 +ipset=/lgappstv.com/gfwlist +server=/ebayenterprise.tv/127.0.0.1#5335 +ipset=/ebayenterprise.tv/gfwlist +server=/ipadair.com.br/127.0.0.1#5335 +ipset=/ipadair.com.br/gfwlist +server=/hashicorp.com/127.0.0.1#5335 +ipset=/hashicorp.com/gfwlist +server=/accountpaypal.com/127.0.0.1#5335 +ipset=/accountpaypal.com/gfwlist +server=/berkeley.edu/127.0.0.1#5335 +ipset=/berkeley.edu/gfwlist +server=/audiomonsterbeatsonline.com/127.0.0.1#5335 +ipset=/audiomonsterbeatsonline.com/gfwlist +server=/beatsbydrew.com/127.0.0.1#5335 +ipset=/beatsbydrew.com/gfwlist +server=/mastercard.dk/127.0.0.1#5335 +ipset=/mastercard.dk/gfwlist +server=/beatsbydrevipde.com/127.0.0.1#5335 +ipset=/beatsbydrevipde.com/gfwlist +server=/beatsbydreuk.com/127.0.0.1#5335 +ipset=/beatsbydreuk.com/gfwlist +server=/beatsbydresaleonlines-nz.com/127.0.0.1#5335 +ipset=/beatsbydresaleonlines-nz.com/gfwlist +server=/microsoftadc.com/127.0.0.1#5335 +ipset=/microsoftadc.com/gfwlist +server=/worldsecureemail.com/127.0.0.1#5335 +ipset=/worldsecureemail.com/gfwlist +server=/onmanorama.com/127.0.0.1#5335 +ipset=/onmanorama.com/gfwlist +server=/bmw.rs/127.0.0.1#5335 +ipset=/bmw.rs/gfwlist +server=/msftauth.net/127.0.0.1#5335 +ipset=/msftauth.net/gfwlist +server=/beatsbydresingaporesale.com/127.0.0.1#5335 +ipset=/beatsbydresingaporesale.com/gfwlist +server=/foxnewsrundown.com/127.0.0.1#5335 +ipset=/foxnewsrundown.com/gfwlist +server=/akamai-platform-staging.com/127.0.0.1#5335 +ipset=/akamai-platform-staging.com/gfwlist +server=/nokiantyres.com/127.0.0.1#5335 +ipset=/nokiantyres.com/gfwlist +server=/bmw-motorrad.ch/127.0.0.1#5335 +ipset=/bmw-motorrad.ch/gfwlist +server=/beatsbydreshop-uk.com/127.0.0.1#5335 +ipset=/beatsbydreshop-uk.com/gfwlist +server=/mini-connected.fi/127.0.0.1#5335 +ipset=/mini-connected.fi/gfwlist +server=/kamisama-day.jp/127.0.0.1#5335 +ipset=/kamisama-day.jp/gfwlist +server=/natgeokidsbooks.co.uk/127.0.0.1#5335 +ipset=/natgeokidsbooks.co.uk/gfwlist +server=/linearcollider.org/127.0.0.1#5335 +ipset=/linearcollider.org/gfwlist +server=/beatsbydresalesonline-australia.com/127.0.0.1#5335 +ipset=/beatsbydresalesonline-australia.com/gfwlist +server=/intel.uk/127.0.0.1#5335 +ipset=/intel.uk/gfwlist +server=/9to5google.com/127.0.0.1#5335 +ipset=/9to5google.com/gfwlist +server=/coronavirusnow.com/127.0.0.1#5335 +ipset=/coronavirusnow.com/gfwlist +server=/beatsbydreonlinesale-nz.com/127.0.0.1#5335 +ipset=/beatsbydreonlinesale-nz.com/gfwlist +server=/madvr.com/127.0.0.1#5335 +ipset=/madvr.com/gfwlist +server=/youtube.co.at/127.0.0.1#5335 +ipset=/youtube.co.at/gfwlist +server=/youtube.rs/127.0.0.1#5335 +ipset=/youtube.rs/gfwlist +server=/sonyentertainmentnetwork.com/127.0.0.1#5335 +ipset=/sonyentertainmentnetwork.com/gfwlist +server=/beatsbydreofficialdanmark.com/127.0.0.1#5335 +ipset=/beatsbydreofficialdanmark.com/gfwlist +server=/beatsbydrenls.com/127.0.0.1#5335 +ipset=/beatsbydrenls.com/gfwlist +server=/alpherafs.com.my/127.0.0.1#5335 +ipset=/alpherafs.com.my/gfwlist +server=/beatsbydreirelandsale.com/127.0.0.1#5335 +ipset=/beatsbydreirelandsale.com/gfwlist +server=/openvpn.net/127.0.0.1#5335 +ipset=/openvpn.net/gfwlist +server=/beatsbydreireland-sales.com/127.0.0.1#5335 +ipset=/beatsbydreireland-sales.com/gfwlist +server=/beatsbydrehut.com/127.0.0.1#5335 +ipset=/beatsbydrehut.com/gfwlist +server=/graneodin.com.mx/127.0.0.1#5335 +ipset=/graneodin.com.mx/gfwlist +server=/beatsbydrehd.com/127.0.0.1#5335 +ipset=/beatsbydrehd.com/gfwlist +server=/youtube.co.cr/127.0.0.1#5335 +ipset=/youtube.co.cr/gfwlist +server=/akamai-sucks.net/127.0.0.1#5335 +ipset=/akamai-sucks.net/gfwlist +server=/amazonbusiness.org/127.0.0.1#5335 +ipset=/amazonbusiness.org/gfwlist +server=/metartnetwork.com/127.0.0.1#5335 +ipset=/metartnetwork.com/gfwlist +server=/beatsbydrediscountonline.net/127.0.0.1#5335 +ipset=/beatsbydrediscountonline.net/gfwlist +server=/akastream.com/127.0.0.1#5335 +ipset=/akastream.com/gfwlist +server=/beatsbydredealscybermonday.com/127.0.0.1#5335 +ipset=/beatsbydredealscybermonday.com/gfwlist +server=/createspace.com/127.0.0.1#5335 +ipset=/createspace.com/gfwlist +server=/beatsbydredealsblackfriday.com/127.0.0.1#5335 +ipset=/beatsbydredealsblackfriday.com/gfwlist +server=/volvotrucks.nl/127.0.0.1#5335 +ipset=/volvotrucks.nl/gfwlist +server=/visa.com.lk/127.0.0.1#5335 +ipset=/visa.com.lk/gfwlist +server=/beatsbydrecheap-outletstore.com/127.0.0.1#5335 +ipset=/beatsbydrecheap-outletstore.com/gfwlist +server=/metro.co.uk/127.0.0.1#5335 +ipset=/metro.co.uk/gfwlist +server=/beatsbydrecasquesfr.com/127.0.0.1#5335 +ipset=/beatsbydrecasquesfr.com/gfwlist +server=/instagramizlenme.com/127.0.0.1#5335 +ipset=/instagramizlenme.com/gfwlist +server=/bmw-driving-center.co.kr/127.0.0.1#5335 +ipset=/bmw-driving-center.co.kr/gfwlist +server=/digitalocean.com/127.0.0.1#5335 +ipset=/digitalocean.com/gfwlist +server=/earngeek.com/127.0.0.1#5335 +ipset=/earngeek.com/gfwlist +server=/googleapis.com/127.0.0.1#5335 +ipset=/googleapis.com/gfwlist +server=/beatsbydreauofficial.com/127.0.0.1#5335 +ipset=/beatsbydreauofficial.com/gfwlist +server=/protonstatus.com/127.0.0.1#5335 +ipset=/protonstatus.com/gfwlist +server=/beatsbydre411.com/127.0.0.1#5335 +ipset=/beatsbydre411.com/gfwlist +server=/travelcontroller.com/127.0.0.1#5335 +ipset=/travelcontroller.com/gfwlist +server=/beatsbydre-us.com/127.0.0.1#5335 +ipset=/beatsbydre-us.com/gfwlist +server=/sandisk.co.uk/127.0.0.1#5335 +ipset=/sandisk.co.uk/gfwlist +server=/paypal-mobilemoney.com/127.0.0.1#5335 +ipset=/paypal-mobilemoney.com/gfwlist +server=/hpcpi.com/127.0.0.1#5335 +ipset=/hpcpi.com/gfwlist +server=/positivessl.com/127.0.0.1#5335 +ipset=/positivessl.com/gfwlist +server=/paypal-biz.com/127.0.0.1#5335 +ipset=/paypal-biz.com/gfwlist +server=/beatsbydre-chen.com/127.0.0.1#5335 +ipset=/beatsbydre-chen.com/gfwlist +server=/beatsbydre-beatsheadphone.com/127.0.0.1#5335 +ipset=/beatsbydre-beatsheadphone.com/gfwlist +server=/beatsbydrdres.com/127.0.0.1#5335 +ipset=/beatsbydrdres.com/gfwlist +server=/mariobroswii.com/127.0.0.1#5335 +ipset=/mariobroswii.com/gfwlist +server=/ic.ac.uk/127.0.0.1#5335 +ipset=/ic.ac.uk/gfwlist +server=/pearsonassessment.nl/127.0.0.1#5335 +ipset=/pearsonassessment.nl/gfwlist +server=/vgcareers.net/127.0.0.1#5335 +ipset=/vgcareers.net/gfwlist +server=/ciscofax.com/127.0.0.1#5335 +ipset=/ciscofax.com/gfwlist +server=/beatsbydrdre-store.us/127.0.0.1#5335 +ipset=/beatsbydrdre-store.us/gfwlist +server=/netflixdnstest7.com/127.0.0.1#5335 +ipset=/netflixdnstest7.com/gfwlist +server=/akamaitech.com/127.0.0.1#5335 +ipset=/akamaitech.com/gfwlist +server=/hwgo.com/127.0.0.1#5335 +ipset=/hwgo.com/gfwlist +server=/disneycruisebrasil.com/127.0.0.1#5335 +ipset=/disneycruisebrasil.com/gfwlist +server=/nationalgeographicpartners.com/127.0.0.1#5335 +ipset=/nationalgeographicpartners.com/gfwlist +server=/beatsbydrdre-headphones.com/127.0.0.1#5335 +ipset=/beatsbydrdre-headphones.com/gfwlist +server=/disney.id/127.0.0.1#5335 +ipset=/disney.id/gfwlist +server=/vfsco.pl/127.0.0.1#5335 +ipset=/vfsco.pl/gfwlist +server=/briantreepayments.tv/127.0.0.1#5335 +ipset=/briantreepayments.tv/gfwlist +server=/bmw-motorrad.dz/127.0.0.1#5335 +ipset=/bmw-motorrad.dz/gfwlist +server=/beatsbeatsmonster.com/127.0.0.1#5335 +ipset=/beatsbeatsmonster.com/gfwlist +server=/bloombergnext.com/127.0.0.1#5335 +ipset=/bloombergnext.com/gfwlist +server=/beatsbydreoordopjes.com/127.0.0.1#5335 +ipset=/beatsbydreoordopjes.com/gfwlist +server=/beatsaudifonos.com/127.0.0.1#5335 +ipset=/beatsaudifonos.com/gfwlist +server=/beatsallsale.com/127.0.0.1#5335 +ipset=/beatsallsale.com/gfwlist +server=/pugpig.com/127.0.0.1#5335 +ipset=/pugpig.com/gfwlist +server=/beats123.com/127.0.0.1#5335 +ipset=/beats123.com/gfwlist +server=/beatstoreusa.com/127.0.0.1#5335 +ipset=/beatstoreusa.com/gfwlist +server=/dw.com/127.0.0.1#5335 +ipset=/dw.com/gfwlist +server=/touchsmartpc.com/127.0.0.1#5335 +ipset=/touchsmartpc.com/gfwlist +server=/now-ashare.com/127.0.0.1#5335 +ipset=/now-ashare.com/gfwlist +server=/freefblikes.com/127.0.0.1#5335 +ipset=/freefblikes.com/gfwlist +server=/youtubego.id/127.0.0.1#5335 +ipset=/youtubego.id/gfwlist +server=/beatmonstersaustralia.net/127.0.0.1#5335 +ipset=/beatmonstersaustralia.net/gfwlist +server=/appdomain.cloud/127.0.0.1#5335 +ipset=/appdomain.cloud/gfwlist +server=/disneyenconcert.com/127.0.0.1#5335 +ipset=/disneyenconcert.com/gfwlist +server=/beatbydreuk2014.com/127.0.0.1#5335 +ipset=/beatbydreuk2014.com/gfwlist +server=/applecentar.co.rs/127.0.0.1#5335 +ipset=/applecentar.co.rs/gfwlist +server=/oncars.in/127.0.0.1#5335 +ipset=/oncars.in/gfwlist +server=/supplybestjerseys.com/127.0.0.1#5335 +ipset=/supplybestjerseys.com/gfwlist +server=/beatbydremonster.com/127.0.0.1#5335 +ipset=/beatbydremonster.com/gfwlist +server=/flatpak.org/127.0.0.1#5335 +ipset=/flatpak.org/gfwlist +server=/ebayclassifiedsgroup.org/127.0.0.1#5335 +ipset=/ebayclassifiedsgroup.org/gfwlist +server=/beatbd.com/127.0.0.1#5335 +ipset=/beatbd.com/gfwlist +server=/kindleoasis.info/127.0.0.1#5335 +ipset=/kindleoasis.info/gfwlist +server=/awetv.com/127.0.0.1#5335 +ipset=/awetv.com/gfwlist +server=/anfutong.com/127.0.0.1#5335 +ipset=/anfutong.com/gfwlist +server=/fontshop-prod-responsive-images.s3.amazonaws.com/127.0.0.1#5335 +ipset=/fontshop-prod-responsive-images.s3.amazonaws.com/gfwlist +server=/ntd.com/127.0.0.1#5335 +ipset=/ntd.com/gfwlist +server=/auricularesbeatsmarkt.com/127.0.0.1#5335 +ipset=/auricularesbeatsmarkt.com/gfwlist +server=/auricularesbeatsbaratosshop.com/127.0.0.1#5335 +ipset=/auricularesbeatsbaratosshop.com/gfwlist +server=/llnw.net/127.0.0.1#5335 +ipset=/llnw.net/gfwlist +server=/audiobeatsau.com/127.0.0.1#5335 +ipset=/audiobeatsau.com/gfwlist +server=/vfsco.ie/127.0.0.1#5335 +ipset=/vfsco.ie/gfwlist +server=/newsmax.com/127.0.0.1#5335 +ipset=/newsmax.com/gfwlist +server=/aucheapbeats.com/127.0.0.1#5335 +ipset=/aucheapbeats.com/gfwlist +server=/applepay.berlin/127.0.0.1#5335 +ipset=/applepay.berlin/gfwlist +server=/verisign.com.tw/127.0.0.1#5335 +ipset=/verisign.com.tw/gfwlist +server=/cnnmoneystream.com/127.0.0.1#5335 +ipset=/cnnmoneystream.com/gfwlist +server=/instagramq.com/127.0.0.1#5335 +ipset=/instagramq.com/gfwlist +server=/hpshooping.com/127.0.0.1#5335 +ipset=/hpshooping.com/gfwlist +server=/bridgestonetire.com/127.0.0.1#5335 +ipset=/bridgestonetire.com/gfwlist +server=/5beatsbydre.com/127.0.0.1#5335 +ipset=/5beatsbydre.com/gfwlist +server=/chromium.org/127.0.0.1#5335 +ipset=/chromium.org/gfwlist +server=/2drdrebeats.com/127.0.0.1#5335 +ipset=/2drdrebeats.com/gfwlist +server=/av1688.cc/127.0.0.1#5335 +ipset=/av1688.cc/gfwlist +server=/2013pascherbeatsbydre.com/127.0.0.1#5335 +ipset=/2013pascherbeatsbydre.com/gfwlist +server=/mini-bahrain.com/127.0.0.1#5335 +ipset=/mini-bahrain.com/gfwlist +server=/bloomberg.com.br/127.0.0.1#5335 +ipset=/bloomberg.com.br/gfwlist +server=/2013beatsbydreshop.com/127.0.0.1#5335 +ipset=/2013beatsbydreshop.com/gfwlist +server=/telebay.com/127.0.0.1#5335 +ipset=/telebay.com/gfwlist +server=/adidas.ie/127.0.0.1#5335 +ipset=/adidas.ie/gfwlist +server=/bingagencyawards.com/127.0.0.1#5335 +ipset=/bingagencyawards.com/gfwlist +server=/vaultify.com/127.0.0.1#5335 +ipset=/vaultify.com/gfwlist +server=/accuweather.com/127.0.0.1#5335 +ipset=/accuweather.com/gfwlist +server=/thebeatsbydre.com/127.0.0.1#5335 +ipset=/thebeatsbydre.com/gfwlist +server=/artstationmedia.com/127.0.0.1#5335 +ipset=/artstationmedia.com/gfwlist +server=/volvo.com/127.0.0.1#5335 +ipset=/volvo.com/gfwlist +server=/facebookmsn.com/127.0.0.1#5335 +ipset=/facebookmsn.com/gfwlist +server=/ssl-images-amazon.com/127.0.0.1#5335 +ipset=/ssl-images-amazon.com/gfwlist +server=/bmw-connecteddrive.pt/127.0.0.1#5335 +ipset=/bmw-connecteddrive.pt/gfwlist +server=/easyanticheat.net/127.0.0.1#5335 +ipset=/easyanticheat.net/gfwlist +server=/globalsign.net/127.0.0.1#5335 +ipset=/globalsign.net/gfwlist +server=/billmelater.com/127.0.0.1#5335 +ipset=/billmelater.com/gfwlist +server=/nikeonlinestore.com/127.0.0.1#5335 +ipset=/nikeonlinestore.com/gfwlist +server=/primeday.info/127.0.0.1#5335 +ipset=/primeday.info/gfwlist +server=/4ebaytraders.com/127.0.0.1#5335 +ipset=/4ebaytraders.com/gfwlist +server=/youtube.kz/127.0.0.1#5335 +ipset=/youtube.kz/gfwlist +server=/bmw-dubai.com/127.0.0.1#5335 +ipset=/bmw-dubai.com/gfwlist +server=/gdansk-amazon.com/127.0.0.1#5335 +ipset=/gdansk-amazon.com/gfwlist +server=/rentaride.de/127.0.0.1#5335 +ipset=/rentaride.de/gfwlist +server=/google.com.br/127.0.0.1#5335 +ipset=/google.com.br/gfwlist +server=/solostudioksale.com/127.0.0.1#5335 +ipset=/solostudioksale.com/gfwlist +server=/bmw-asia.com/127.0.0.1#5335 +ipset=/bmw-asia.com/gfwlist +server=/scholar.google.lt/127.0.0.1#5335 +ipset=/scholar.google.lt/gfwlist +server=/pixiv.org/127.0.0.1#5335 +ipset=/pixiv.org/gfwlist +server=/dropboxcaptcha.com/127.0.0.1#5335 +ipset=/dropboxcaptcha.com/gfwlist +server=/downloadsforipod.com/127.0.0.1#5335 +ipset=/downloadsforipod.com/gfwlist +server=/akamai-access.net/127.0.0.1#5335 +ipset=/akamai-access.net/gfwlist +server=/alphabet.lv/127.0.0.1#5335 +ipset=/alphabet.lv/gfwlist +server=/amazonsdi.com/127.0.0.1#5335 +ipset=/amazonsdi.com/gfwlist +server=/amazonpay.in/127.0.0.1#5335 +ipset=/amazonpay.in/gfwlist +server=/ieee-cas.org/127.0.0.1#5335 +ipset=/ieee-cas.org/gfwlist +server=/scholar.google.com.ar/127.0.0.1#5335 +ipset=/scholar.google.com.ar/gfwlist +server=/free-aa.com/127.0.0.1#5335 +ipset=/free-aa.com/gfwlist +server=/bmw-kuwait.com/127.0.0.1#5335 +ipset=/bmw-kuwait.com/gfwlist +server=/paypalservice.com/127.0.0.1#5335 +ipset=/paypalservice.com/gfwlist +server=/cbspressexpress.com/127.0.0.1#5335 +ipset=/cbspressexpress.com/gfwlist +server=/huanyuju.com/127.0.0.1#5335 +ipset=/huanyuju.com/gfwlist +server=/mearki.com/127.0.0.1#5335 +ipset=/mearki.com/gfwlist +server=/bloombergbeta.com/127.0.0.1#5335 +ipset=/bloombergbeta.com/gfwlist +server=/raspberrypi.org/127.0.0.1#5335 +ipset=/raspberrypi.org/gfwlist +server=/eaassets-a.akamaihd.net/127.0.0.1#5335 +ipset=/eaassets-a.akamaihd.net/gfwlist +server=/titanfall.com/127.0.0.1#5335 +ipset=/titanfall.com/gfwlist +server=/itunes12days.com/127.0.0.1#5335 +ipset=/itunes12days.com/gfwlist +server=/playartifact.com/127.0.0.1#5335 +ipset=/playartifact.com/gfwlist +server=/ebaystatic.com/127.0.0.1#5335 +ipset=/ebaystatic.com/gfwlist +server=/my45.com/127.0.0.1#5335 +ipset=/my45.com/gfwlist +server=/pricelessarabia.com/127.0.0.1#5335 +ipset=/pricelessarabia.com/gfwlist +server=/directvcinema.com/127.0.0.1#5335 +ipset=/directvcinema.com/gfwlist +server=/skyoceanrescue.it/127.0.0.1#5335 +ipset=/skyoceanrescue.it/gfwlist +server=/appledarwin.net/127.0.0.1#5335 +ipset=/appledarwin.net/gfwlist +server=/volvotrucks.co.ao/127.0.0.1#5335 +ipset=/volvotrucks.co.ao/gfwlist +server=/bioware.com/127.0.0.1#5335 +ipset=/bioware.com/gfwlist +server=/openapiservice.com/127.0.0.1#5335 +ipset=/openapiservice.com/gfwlist +server=/amazon.it/127.0.0.1#5335 +ipset=/amazon.it/gfwlist +server=/amazon.fr/127.0.0.1#5335 +ipset=/amazon.fr/gfwlist +server=/amazon.com/127.0.0.1#5335 +ipset=/amazon.com/gfwlist +server=/facebookappcenter.org/127.0.0.1#5335 +ipset=/facebookappcenter.org/gfwlist +server=/cam4.com/127.0.0.1#5335 +ipset=/cam4.com/gfwlist +server=/12diasderegalosdeitunes.co.cr/127.0.0.1#5335 +ipset=/12diasderegalosdeitunes.co.cr/gfwlist +server=/book.com.tw/127.0.0.1#5335 +ipset=/book.com.tw/gfwlist +server=/thegatewaypundit.com/127.0.0.1#5335 +ipset=/thegatewaypundit.com/gfwlist +server=/nikecompany.com/127.0.0.1#5335 +ipset=/nikecompany.com/gfwlist +server=/amazon.co.uk/127.0.0.1#5335 +ipset=/amazon.co.uk/gfwlist +server=/amazon.ca/127.0.0.1#5335 +ipset=/amazon.ca/gfwlist +server=/amazon.ae/127.0.0.1#5335 +ipset=/amazon.ae/gfwlist +server=/paily.org/127.0.0.1#5335 +ipset=/paily.org/gfwlist +server=/bmw.si/127.0.0.1#5335 +ipset=/bmw.si/gfwlist +server=/amazonauthorinsights.com/127.0.0.1#5335 +ipset=/amazonauthorinsights.com/gfwlist +server=/bitly.com/127.0.0.1#5335 +ipset=/bitly.com/gfwlist +server=/amaaozn.com/127.0.0.1#5335 +ipset=/amaaozn.com/gfwlist +server=/aboutamazon.pl/127.0.0.1#5335 +ipset=/aboutamazon.pl/gfwlist +server=/paypalx.com/127.0.0.1#5335 +ipset=/paypalx.com/gfwlist +server=/webtype.com/127.0.0.1#5335 +ipset=/webtype.com/gfwlist +server=/fortuneinsight.com/127.0.0.1#5335 +ipset=/fortuneinsight.com/gfwlist +server=/xn--fiqs8sxootzz.xn--hxt814e/127.0.0.1#5335 +ipset=/xn--fiqs8sxootzz.xn--hxt814e/gfwlist +server=/nintendowii.com/127.0.0.1#5335 +ipset=/nintendowii.com/gfwlist +server=/oculusforbusiness.com/127.0.0.1#5335 +ipset=/oculusforbusiness.com/gfwlist +server=/aboutamazon.fr/127.0.0.1#5335 +ipset=/aboutamazon.fr/gfwlist +server=/azure.com/127.0.0.1#5335 +ipset=/azure.com/gfwlist +server=/carebay.com/127.0.0.1#5335 +ipset=/carebay.com/gfwlist +server=/a2z.com/127.0.0.1#5335 +ipset=/a2z.com/gfwlist +server=/myfoxlosangeles.com/127.0.0.1#5335 +ipset=/myfoxlosangeles.com/gfwlist +server=/vanish.com.co/127.0.0.1#5335 +ipset=/vanish.com.co/gfwlist +server=/primevideo.com/127.0.0.1#5335 +ipset=/primevideo.com/gfwlist +server=/beatsstudiosite.com/127.0.0.1#5335 +ipset=/beatsstudiosite.com/gfwlist +server=/comodoca3.com/127.0.0.1#5335 +ipset=/comodoca3.com/gfwlist +server=/bextbuy.com/127.0.0.1#5335 +ipset=/bextbuy.com/gfwlist +server=/foxcincy.com/127.0.0.1#5335 +ipset=/foxcincy.com/gfwlist +server=/accountpaypal.net/127.0.0.1#5335 +ipset=/accountpaypal.net/gfwlist +server=/riotgames.co.kr/127.0.0.1#5335 +ipset=/riotgames.co.kr/gfwlist +server=/facebookatschool.com/127.0.0.1#5335 +ipset=/facebookatschool.com/gfwlist +server=/alphera-finance.com.hk/127.0.0.1#5335 +ipset=/alphera-finance.com.hk/gfwlist +server=/ikids.com/127.0.0.1#5335 +ipset=/ikids.com/gfwlist +server=/applexpo.net/127.0.0.1#5335 +ipset=/applexpo.net/gfwlist +server=/justmysocks1.net/127.0.0.1#5335 +ipset=/justmysocks1.net/gfwlist +server=/fox247.tv/127.0.0.1#5335 +ipset=/fox247.tv/gfwlist +server=/bmwsafari.com/127.0.0.1#5335 +ipset=/bmwsafari.com/gfwlist +server=/weeklytimesnow.com.au/127.0.0.1#5335 +ipset=/weeklytimesnow.com.au/gfwlist +server=/kindle.com/127.0.0.1#5335 +ipset=/kindle.com/gfwlist +server=/elasticbeanstalk.com/127.0.0.1#5335 +ipset=/elasticbeanstalk.com/gfwlist +server=/minisovietam.vn/127.0.0.1#5335 +ipset=/minisovietam.vn/gfwlist +server=/pixplug.in/127.0.0.1#5335 +ipset=/pixplug.in/gfwlist +server=/iaablog.com/127.0.0.1#5335 +ipset=/iaablog.com/gfwlist +server=/verygoodnike.com/127.0.0.1#5335 +ipset=/verygoodnike.com/gfwlist +server=/isexlove.tw/127.0.0.1#5335 +ipset=/isexlove.tw/gfwlist +server=/containersonaws.com/127.0.0.1#5335 +ipset=/containersonaws.com/gfwlist +server=/moreheadphones.com/127.0.0.1#5335 +ipset=/moreheadphones.com/gfwlist +server=/usa-beatsbydreheadphonesonsale.net/127.0.0.1#5335 +ipset=/usa-beatsbydreheadphonesonsale.net/gfwlist +server=/mingpaotor.com/127.0.0.1#5335 +ipset=/mingpaotor.com/gfwlist +server=/ebaychina.net/127.0.0.1#5335 +ipset=/ebaychina.net/gfwlist +server=/paypal-hrsystem.com/127.0.0.1#5335 +ipset=/paypal-hrsystem.com/gfwlist +server=/cloudfront.net/127.0.0.1#5335 +ipset=/cloudfront.net/gfwlist +server=/awstrust.com/127.0.0.1#5335 +ipset=/awstrust.com/gfwlist +server=/awsedstart.com/127.0.0.1#5335 +ipset=/awsedstart.com/gfwlist +server=/akahost.net/127.0.0.1#5335 +ipset=/akahost.net/gfwlist +server=/cabletv.com.hk/127.0.0.1#5335 +ipset=/cabletv.com.hk/gfwlist +server=/awsautopilot.com/127.0.0.1#5335 +ipset=/awsautopilot.com/gfwlist +server=/mythicentertainment.net/127.0.0.1#5335 +ipset=/mythicentertainment.net/gfwlist +server=/ehtracker.org/127.0.0.1#5335 +ipset=/ehtracker.org/gfwlist +server=/instagramium.com/127.0.0.1#5335 +ipset=/instagramium.com/gfwlist +server=/heroku.me/127.0.0.1#5335 +ipset=/heroku.me/gfwlist +server=/amazonaws.tv/127.0.0.1#5335 +ipset=/amazonaws.tv/gfwlist +server=/bluemix.net/127.0.0.1#5335 +ipset=/bluemix.net/gfwlist +server=/airwick.de/127.0.0.1#5335 +ipset=/airwick.de/gfwlist +server=/durex.cz/127.0.0.1#5335 +ipset=/durex.cz/gfwlist +server=/kirbysepicyarn.com/127.0.0.1#5335 +ipset=/kirbysepicyarn.com/gfwlist +server=/alicloud.com/127.0.0.1#5335 +ipset=/alicloud.com/gfwlist +server=/alibabacloud.com.sg/127.0.0.1#5335 +ipset=/alibabacloud.com.sg/gfwlist +server=/alibabacloud.com.hk/127.0.0.1#5335 +ipset=/alibabacloud.com.hk/gfwlist +server=/half.tv/127.0.0.1#5335 +ipset=/half.tv/gfwlist +server=/microsoftadvertising.com/127.0.0.1#5335 +ipset=/microsoftadvertising.com/gfwlist +server=/toutapp.com/127.0.0.1#5335 +ipset=/toutapp.com/gfwlist +server=/digital-id.ch/127.0.0.1#5335 +ipset=/digital-id.ch/gfwlist +server=/spacex.com/127.0.0.1#5335 +ipset=/spacex.com/gfwlist +server=/volvotrucks.com/127.0.0.1#5335 +ipset=/volvotrucks.com/gfwlist +server=/ogameblog.com/127.0.0.1#5335 +ipset=/ogameblog.com/gfwlist +server=/yimg.com/127.0.0.1#5335 +ipset=/yimg.com/gfwlist +server=/oxfordartonline.com/127.0.0.1#5335 +ipset=/oxfordartonline.com/gfwlist +server=/magento.net/127.0.0.1#5335 +ipset=/magento.net/gfwlist +server=/s.team/127.0.0.1#5335 +ipset=/s.team/gfwlist +server=/google.co.ck/127.0.0.1#5335 +ipset=/google.co.ck/gfwlist +server=/mastercard.cl/127.0.0.1#5335 +ipset=/mastercard.cl/gfwlist +server=/westerndigital.com/127.0.0.1#5335 +ipset=/westerndigital.com/gfwlist +server=/quipelements.com/127.0.0.1#5335 +ipset=/quipelements.com/gfwlist +server=/nikefrance.com/127.0.0.1#5335 +ipset=/nikefrance.com/gfwlist +server=/justduckit.com/127.0.0.1#5335 +ipset=/justduckit.com/gfwlist +server=/beijingnike.com/127.0.0.1#5335 +ipset=/beijingnike.com/gfwlist +server=/bmw-drivingexperience.com/127.0.0.1#5335 +ipset=/bmw-drivingexperience.com/gfwlist +server=/bypasscensorship.org/127.0.0.1#5335 +ipset=/bypasscensorship.org/gfwlist +server=/motolia.com/127.0.0.1#5335 +ipset=/motolia.com/gfwlist +server=/x.team/127.0.0.1#5335 +ipset=/x.team/gfwlist +server=/bmw-motorrad.de/127.0.0.1#5335 +ipset=/bmw-motorrad.de/gfwlist +server=/google.fi/127.0.0.1#5335 +ipset=/google.fi/gfwlist +server=/faceboks.com/127.0.0.1#5335 +ipset=/faceboks.com/gfwlist +server=/heroku.com/127.0.0.1#5335 +ipset=/heroku.com/gfwlist +server=/ffotolia.com/127.0.0.1#5335 +ipset=/ffotolia.com/gfwlist +server=/zoho.in/127.0.0.1#5335 +ipset=/zoho.in/gfwlist +server=/newslicensing.co.uk/127.0.0.1#5335 +ipset=/newslicensing.co.uk/gfwlist +server=/o365weve-dev.com/127.0.0.1#5335 +ipset=/o365weve-dev.com/gfwlist +server=/etpress.com.hk/127.0.0.1#5335 +ipset=/etpress.com.hk/gfwlist +server=/warp.plus/127.0.0.1#5335 +ipset=/warp.plus/gfwlist +server=/disneyworld-go.com/127.0.0.1#5335 +ipset=/disneyworld-go.com/gfwlist +server=/faciometrics.com/127.0.0.1#5335 +ipset=/faciometrics.com/gfwlist +server=/sonypicturesanimation.com/127.0.0.1#5335 +ipset=/sonypicturesanimation.com/gfwlist +server=/ebayclassifieds.tv/127.0.0.1#5335 +ipset=/ebayclassifieds.tv/gfwlist +server=/bmw.pt/127.0.0.1#5335 +ipset=/bmw.pt/gfwlist +server=/mastercard.no/127.0.0.1#5335 +ipset=/mastercard.no/gfwlist +server=/enablementadobe.com/127.0.0.1#5335 +ipset=/enablementadobe.com/gfwlist +server=/disneymagicmomentsme.com/127.0.0.1#5335 +ipset=/disneymagicmomentsme.com/gfwlist +server=/maddenchampionship.com/127.0.0.1#5335 +ipset=/maddenchampionship.com/gfwlist +server=/ozvoice.org/127.0.0.1#5335 +ipset=/ozvoice.org/gfwlist +server=/longman.ch/127.0.0.1#5335 +ipset=/longman.ch/gfwlist +server=/thedailysnkr.com/127.0.0.1#5335 +ipset=/thedailysnkr.com/gfwlist +server=/adobespark.com/127.0.0.1#5335 +ipset=/adobespark.com/gfwlist +server=/pricelesssydney.com/127.0.0.1#5335 +ipset=/pricelesssydney.com/gfwlist +server=/adobeplatinumclub.com/127.0.0.1#5335 +ipset=/adobeplatinumclub.com/gfwlist +server=/finishinfo.it/127.0.0.1#5335 +ipset=/finishinfo.it/gfwlist +server=/akamai-regression.net/127.0.0.1#5335 +ipset=/akamai-regression.net/gfwlist +server=/adobelanding.com/127.0.0.1#5335 +ipset=/adobelanding.com/gfwlist +server=/akamaimagicmath.net/127.0.0.1#5335 +ipset=/akamaimagicmath.net/gfwlist +server=/americasvoice.news/127.0.0.1#5335 +ipset=/americasvoice.news/gfwlist +server=/redis.io/127.0.0.1#5335 +ipset=/redis.io/gfwlist +server=/tiktokcdn.com/127.0.0.1#5335 +ipset=/tiktokcdn.com/gfwlist +server=/deadspacegame.com/127.0.0.1#5335 +ipset=/deadspacegame.com/gfwlist +server=/adobe.ly/127.0.0.1#5335 +ipset=/adobe.ly/gfwlist +server=/pearsonelt.ch/127.0.0.1#5335 +ipset=/pearsonelt.ch/gfwlist +server=/weiyuksj.com/127.0.0.1#5335 +ipset=/weiyuksj.com/gfwlist +server=/10xfotolia.com/127.0.0.1#5335 +ipset=/10xfotolia.com/gfwlist +server=/typekit.com/127.0.0.1#5335 +ipset=/typekit.com/gfwlist +server=/xn--ruq8a011kt6y.xn--hxt814e/127.0.0.1#5335 +ipset=/xn--ruq8a011kt6y.xn--hxt814e/gfwlist +server=/needforspeed.com/127.0.0.1#5335 +ipset=/needforspeed.com/gfwlist +server=/liverail.com/127.0.0.1#5335 +ipset=/liverail.com/gfwlist +server=/postgresql.org/127.0.0.1#5335 +ipset=/postgresql.org/gfwlist +server=/azure-dns.com/127.0.0.1#5335 +ipset=/azure-dns.com/gfwlist +server=/contest.com/127.0.0.1#5335 +ipset=/contest.com/gfwlist +server=/githubassets.com/127.0.0.1#5335 +ipset=/githubassets.com/gfwlist +server=/openai.com/127.0.0.1#5335 +ipset=/openai.com/gfwlist +server=/notepad-plus-plus.org/127.0.0.1#5335 +ipset=/notepad-plus-plus.org/gfwlist +server=/pahabicilemezsurprizler.com/127.0.0.1#5335 +ipset=/pahabicilemezsurprizler.com/gfwlist +server=/verisign.dk/127.0.0.1#5335 +ipset=/verisign.dk/gfwlist +server=/lua.org/127.0.0.1#5335 +ipset=/lua.org/gfwlist +server=/bridgestonesyb.com/127.0.0.1#5335 +ipset=/bridgestonesyb.com/gfwlist +server=/jupyter.org/127.0.0.1#5335 +ipset=/jupyter.org/gfwlist +server=/swissign.li/127.0.0.1#5335 +ipset=/swissign.li/gfwlist +server=/mastercardservices.com/127.0.0.1#5335 +ipset=/mastercardservices.com/gfwlist +server=/nvidia.nl/127.0.0.1#5335 +ipset=/nvidia.nl/gfwlist +server=/iphoneplus.wang/127.0.0.1#5335 +ipset=/iphoneplus.wang/gfwlist +server=/doi.org/127.0.0.1#5335 +ipset=/doi.org/gfwlist +server=/ituneslogin.net/127.0.0.1#5335 +ipset=/ituneslogin.net/gfwlist +server=/instituteofwar.org/127.0.0.1#5335 +ipset=/instituteofwar.org/gfwlist +server=/53worldsweeps.com/127.0.0.1#5335 +ipset=/53worldsweeps.com/gfwlist +server=/nikesellorder.com/127.0.0.1#5335 +ipset=/nikesellorder.com/gfwlist +server=/apache.org/127.0.0.1#5335 +ipset=/apache.org/gfwlist +server=/msnbc.com/127.0.0.1#5335 +ipset=/msnbc.com/gfwlist +server=/whimn.com.au/127.0.0.1#5335 +ipset=/whimn.com.au/gfwlist +server=/volvobuses.in/127.0.0.1#5335 +ipset=/volvobuses.in/gfwlist +server=/blogebay.com/127.0.0.1#5335 +ipset=/blogebay.com/gfwlist +server=/xda-cdn.com/127.0.0.1#5335 +ipset=/xda-cdn.com/gfwlist +server=/volvotrucks.kg/127.0.0.1#5335 +ipset=/volvotrucks.kg/gfwlist +server=/r-project.org/127.0.0.1#5335 +ipset=/r-project.org/gfwlist +server=/watch-ebay.org/127.0.0.1#5335 +ipset=/watch-ebay.org/gfwlist +server=/visa.co.jp/127.0.0.1#5335 +ipset=/visa.co.jp/gfwlist +server=/ted.com/127.0.0.1#5335 +ipset=/ted.com/gfwlist +server=/swisssign.com/127.0.0.1#5335 +ipset=/swisssign.com/gfwlist +server=/swjedifallenorder.com/127.0.0.1#5335 +ipset=/swjedifallenorder.com/gfwlist +server=/itunesstore.co/127.0.0.1#5335 +ipset=/itunesstore.co/gfwlist +server=/unity3d.com/127.0.0.1#5335 +ipset=/unity3d.com/gfwlist +server=/vfsco.es/127.0.0.1#5335 +ipset=/vfsco.es/gfwlist +server=/hkheadline.com/127.0.0.1#5335 +ipset=/hkheadline.com/gfwlist +server=/uplay.com/127.0.0.1#5335 +ipset=/uplay.com/gfwlist +server=/outletnike.com/127.0.0.1#5335 +ipset=/outletnike.com/gfwlist +server=/jquery.com/127.0.0.1#5335 +ipset=/jquery.com/gfwlist +server=/beatssales.com/127.0.0.1#5335 +ipset=/beatssales.com/gfwlist +server=/mini.tn/127.0.0.1#5335 +ipset=/mini.tn/gfwlist +server=/ampproject.com/127.0.0.1#5335 +ipset=/ampproject.com/gfwlist +server=/volvotrucks.pk/127.0.0.1#5335 +ipset=/volvotrucks.pk/gfwlist +server=/nke6.com/127.0.0.1#5335 +ipset=/nke6.com/gfwlist +server=/adobeprojectm.com/127.0.0.1#5335 +ipset=/adobeprojectm.com/gfwlist +server=/amp.dev/127.0.0.1#5335 +ipset=/amp.dev/gfwlist +server=/microsoft.lu/127.0.0.1#5335 +ipset=/microsoft.lu/gfwlist +server=/pearsonassessment.no/127.0.0.1#5335 +ipset=/pearsonassessment.no/gfwlist +server=/ebayclassifieds.org/127.0.0.1#5335 +ipset=/ebayclassifieds.org/gfwlist +server=/finenike.com/127.0.0.1#5335 +ipset=/finenike.com/gfwlist +server=/sstatic.net/127.0.0.1#5335 +ipset=/sstatic.net/gfwlist +server=/mastercard.com.ge/127.0.0.1#5335 +ipset=/mastercard.com.ge/gfwlist +server=/mini.ma/127.0.0.1#5335 +ipset=/mini.ma/gfwlist +server=/fonts.com/127.0.0.1#5335 +ipset=/fonts.com/gfwlist +server=/mathoverflow.net/127.0.0.1#5335 +ipset=/mathoverflow.net/gfwlist +server=/disney.ca/127.0.0.1#5335 +ipset=/disney.ca/gfwlist +server=/remirepo.net/127.0.0.1#5335 +ipset=/remirepo.net/gfwlist +server=/redislabs.com/127.0.0.1#5335 +ipset=/redislabs.com/gfwlist +server=/playapex.com/127.0.0.1#5335 +ipset=/playapex.com/gfwlist +server=/mit.net/127.0.0.1#5335 +ipset=/mit.net/gfwlist +server=/javfull.net/127.0.0.1#5335 +ipset=/javfull.net/gfwlist +server=/pythonhosted.org/127.0.0.1#5335 +ipset=/pythonhosted.org/gfwlist +server=/huluad.com/127.0.0.1#5335 +ipset=/huluad.com/gfwlist +server=/golos-ameriki.ru/127.0.0.1#5335 +ipset=/golos-ameriki.ru/gfwlist +server=/bmwspecialoffers.ca/127.0.0.1#5335 +ipset=/bmwspecialoffers.ca/gfwlist +server=/apple.ie/127.0.0.1#5335 +ipset=/apple.ie/gfwlist +server=/abema.io/127.0.0.1#5335 +ipset=/abema.io/gfwlist +server=/metacpan.org/127.0.0.1#5335 +ipset=/metacpan.org/gfwlist +server=/pearson.fr/127.0.0.1#5335 +ipset=/pearson.fr/gfwlist +server=/yahoo.mw/127.0.0.1#5335 +ipset=/yahoo.mw/gfwlist +server=/askfacebook.org/127.0.0.1#5335 +ipset=/askfacebook.org/gfwlist +server=/bmw-fleet.net/127.0.0.1#5335 +ipset=/bmw-fleet.net/gfwlist +server=/bandcamp.com/127.0.0.1#5335 +ipset=/bandcamp.com/gfwlist +server=/dtlgalleryint.cloudapp.net/127.0.0.1#5335 +ipset=/dtlgalleryint.cloudapp.net/gfwlist +server=/hkgolden.media/127.0.0.1#5335 +ipset=/hkgolden.media/gfwlist +server=/fury.io/127.0.0.1#5335 +ipset=/fury.io/gfwlist +server=/foxla.tv/127.0.0.1#5335 +ipset=/foxla.tv/gfwlist +server=/visualstudio.eu/127.0.0.1#5335 +ipset=/visualstudio.eu/gfwlist +server=/visualstudio.co/127.0.0.1#5335 +ipset=/visualstudio.co/gfwlist +server=/sqlserveronlinux.com/127.0.0.1#5335 +ipset=/sqlserveronlinux.com/gfwlist +server=/talentlens.com/127.0.0.1#5335 +ipset=/talentlens.com/gfwlist +server=/kindleoasis.org/127.0.0.1#5335 +ipset=/kindleoasis.org/gfwlist +server=/sankie.net/127.0.0.1#5335 +ipset=/sankie.net/gfwlist +server=/nugettest.org/127.0.0.1#5335 +ipset=/nugettest.org/gfwlist +server=/appleinclegal.com/127.0.0.1#5335 +ipset=/appleinclegal.com/gfwlist +server=/nintendo.se/127.0.0.1#5335 +ipset=/nintendo.se/gfwlist +server=/apple.co.nz/127.0.0.1#5335 +ipset=/apple.co.nz/gfwlist +server=/hulupremium.com/127.0.0.1#5335 +ipset=/hulupremium.com/gfwlist +server=/nike-usa.com/127.0.0.1#5335 +ipset=/nike-usa.com/gfwlist +server=/bmw-group.net/127.0.0.1#5335 +ipset=/bmw-group.net/gfwlist +server=/leagueoflegends.info/127.0.0.1#5335 +ipset=/leagueoflegends.info/gfwlist +server=/msdn.com/127.0.0.1#5335 +ipset=/msdn.com/gfwlist +server=/microsoftreactor.org/127.0.0.1#5335 +ipset=/microsoftreactor.org/gfwlist +server=/att.net/127.0.0.1#5335 +ipset=/att.net/gfwlist +server=/bmw.lk/127.0.0.1#5335 +ipset=/bmw.lk/gfwlist +server=/epigeum.com/127.0.0.1#5335 +ipset=/epigeum.com/gfwlist +server=/nextdigital.com.hk/127.0.0.1#5335 +ipset=/nextdigital.com.hk/gfwlist +server=/appcenter.ms/127.0.0.1#5335 +ipset=/appcenter.ms/gfwlist +server=/hhvm.com/127.0.0.1#5335 +ipset=/hhvm.com/gfwlist +server=/guccitimeless.com/127.0.0.1#5335 +ipset=/guccitimeless.com/gfwlist +server=/acpica.com/127.0.0.1#5335 +ipset=/acpica.com/gfwlist +server=/snap-telemetry.io/127.0.0.1#5335 +ipset=/snap-telemetry.io/gfwlist +server=/openvinotoolkit.org/127.0.0.1#5335 +ipset=/openvinotoolkit.org/gfwlist +server=/protonmail.ch/127.0.0.1#5335 +ipset=/protonmail.ch/gfwlist +server=/intellinuxgraphics.net/127.0.0.1#5335 +ipset=/intellinuxgraphics.net/gfwlist +server=/binance.vision/127.0.0.1#5335 +ipset=/binance.vision/gfwlist +server=/epochtimes.de/127.0.0.1#5335 +ipset=/epochtimes.de/gfwlist +server=/bmw-connecteddrive.kr/127.0.0.1#5335 +ipset=/bmw-connecteddrive.kr/gfwlist +server=/golang.org/127.0.0.1#5335 +ipset=/golang.org/gfwlist +server=/go.dev/127.0.0.1#5335 +ipset=/go.dev/gfwlist +server=/go-lang.org/127.0.0.1#5335 +ipset=/go-lang.org/gfwlist +server=/scholar.google.lu/127.0.0.1#5335 +ipset=/scholar.google.lu/gfwlist +server=/gitlab-static.net/127.0.0.1#5335 +ipset=/gitlab-static.net/gfwlist +server=/findyourlimits.com/127.0.0.1#5335 +ipset=/findyourlimits.com/gfwlist +server=/eastore.com/127.0.0.1#5335 +ipset=/eastore.com/gfwlist +server=/whisolutions.com/127.0.0.1#5335 +ipset=/whisolutions.com/gfwlist +server=/expertmaker.com/127.0.0.1#5335 +ipset=/expertmaker.com/gfwlist +server=/akamah.com/127.0.0.1#5335 +ipset=/akamah.com/gfwlist +server=/mini-ksa.com/127.0.0.1#5335 +ipset=/mini-ksa.com/gfwlist +server=/github.dev/127.0.0.1#5335 +ipset=/github.dev/gfwlist +server=/page.link/127.0.0.1#5335 +ipset=/page.link/gfwlist +server=/npmjs.org/127.0.0.1#5335 +ipset=/npmjs.org/gfwlist +server=/gputechconf.com.au/127.0.0.1#5335 +ipset=/gputechconf.com.au/gfwlist +server=/oath.cloud/127.0.0.1#5335 +ipset=/oath.cloud/gfwlist +server=/youtube.pk/127.0.0.1#5335 +ipset=/youtube.pk/gfwlist +server=/paypal-apps.com/127.0.0.1#5335 +ipset=/paypal-apps.com/gfwlist +server=/terapeak.ca/127.0.0.1#5335 +ipset=/terapeak.ca/gfwlist +server=/google.tn/127.0.0.1#5335 +ipset=/google.tn/gfwlist +server=/flutter.dev/127.0.0.1#5335 +ipset=/flutter.dev/gfwlist +server=/newenergyfinance.com/127.0.0.1#5335 +ipset=/newenergyfinance.com/gfwlist +server=/pearsonvue.com/127.0.0.1#5335 +ipset=/pearsonvue.com/gfwlist +server=/fedoraproject.org/127.0.0.1#5335 +ipset=/fedoraproject.org/gfwlist +server=/simplify.com/127.0.0.1#5335 +ipset=/simplify.com/gfwlist +server=/hpconnected.us/127.0.0.1#5335 +ipset=/hpconnected.us/gfwlist +server=/identrust.com/127.0.0.1#5335 +ipset=/identrust.com/gfwlist +server=/volvobuses.com.pt/127.0.0.1#5335 +ipset=/volvobuses.com.pt/gfwlist +server=/reactjs.com/127.0.0.1#5335 +ipset=/reactjs.com/gfwlist +server=/react.com/127.0.0.1#5335 +ipset=/react.com/gfwlist +server=/airwick.es/127.0.0.1#5335 +ipset=/airwick.es/gfwlist +server=/blogspot.bg/127.0.0.1#5335 +ipset=/blogspot.bg/gfwlist +server=/nomadproject.io/127.0.0.1#5335 +ipset=/nomadproject.io/gfwlist +server=/ebayhots.com/127.0.0.1#5335 +ipset=/ebayhots.com/gfwlist +server=/partylikeits1986.org/127.0.0.1#5335 +ipset=/partylikeits1986.org/gfwlist +server=/google.ht/127.0.0.1#5335 +ipset=/google.ht/gfwlist +server=/finlitsummit.org/127.0.0.1#5335 +ipset=/finlitsummit.org/gfwlist +server=/bridgestonerapiddelivery.com/127.0.0.1#5335 +ipset=/bridgestonerapiddelivery.com/gfwlist +server=/botorch.org/127.0.0.1#5335 +ipset=/botorch.org/gfwlist +server=/bmw-powertrain.com/127.0.0.1#5335 +ipset=/bmw-powertrain.com/gfwlist +server=/atscaleconference.com/127.0.0.1#5335 +ipset=/atscaleconference.com/gfwlist +server=/yahoo.com.sa/127.0.0.1#5335 +ipset=/yahoo.com.sa/gfwlist +server=/disneyinternational.com/127.0.0.1#5335 +ipset=/disneyinternational.com/gfwlist +server=/dotdeb.org/127.0.0.1#5335 +ipset=/dotdeb.org/gfwlist +server=/masterintelligence.com/127.0.0.1#5335 +ipset=/masterintelligence.com/gfwlist +server=/wimpmusic.com/127.0.0.1#5335 +ipset=/wimpmusic.com/gfwlist +server=/xn--q41am8x.com/127.0.0.1#5335 +ipset=/xn--q41am8x.com/gfwlist +server=/eac-cdn.com/127.0.0.1#5335 +ipset=/eac-cdn.com/gfwlist +server=/deepl.com/127.0.0.1#5335 +ipset=/deepl.com/gfwlist +server=/slack-imgs.com/127.0.0.1#5335 +ipset=/slack-imgs.com/gfwlist +server=/ubuntuforums.org/127.0.0.1#5335 +ipset=/ubuntuforums.org/gfwlist +server=/paypal-team.com/127.0.0.1#5335 +ipset=/paypal-team.com/gfwlist +server=/officialbeatsbydreshop.com/127.0.0.1#5335 +ipset=/officialbeatsbydreshop.com/gfwlist +server=/instagramtakiphilesi.com/127.0.0.1#5335 +ipset=/instagramtakiphilesi.com/gfwlist +server=/ubuntu.net/127.0.0.1#5335 +ipset=/ubuntu.net/gfwlist +server=/durex.com.au/127.0.0.1#5335 +ipset=/durex.com.au/gfwlist +server=/yahoo.com.py/127.0.0.1#5335 +ipset=/yahoo.com.py/gfwlist +server=/bmw.nc/127.0.0.1#5335 +ipset=/bmw.nc/gfwlist +server=/apple.me/127.0.0.1#5335 +ipset=/apple.me/gfwlist +server=/afpforum.com/127.0.0.1#5335 +ipset=/afpforum.com/gfwlist +server=/park-now.com/127.0.0.1#5335 +ipset=/park-now.com/gfwlist +server=/appleiphone.hu/127.0.0.1#5335 +ipset=/appleiphone.hu/gfwlist +server=/macruby.net/127.0.0.1#5335 +ipset=/macruby.net/gfwlist +server=/webflow.com/127.0.0.1#5335 +ipset=/webflow.com/gfwlist +server=/swift.org/127.0.0.1#5335 +ipset=/swift.org/gfwlist +server=/fantv.hk/127.0.0.1#5335 +ipset=/fantv.hk/gfwlist +server=/singtaousa.com/127.0.0.1#5335 +ipset=/singtaousa.com/gfwlist +server=/foxsports.com.uy/127.0.0.1#5335 +ipset=/foxsports.com.uy/gfwlist +server=/mytvsuper.com/127.0.0.1#5335 +ipset=/mytvsuper.com/gfwlist +server=/zohouniversity.com/127.0.0.1#5335 +ipset=/zohouniversity.com/gfwlist +server=/scholar.google.de/127.0.0.1#5335 +ipset=/scholar.google.de/gfwlist +server=/serverfault.com/127.0.0.1#5335 +ipset=/serverfault.com/gfwlist +server=/zohostatic.com/127.0.0.1#5335 +ipset=/zohostatic.com/gfwlist +server=/tasteofpremium.jp/127.0.0.1#5335 +ipset=/tasteofpremium.jp/gfwlist +server=/disneyinternationalhd.com/127.0.0.1#5335 +ipset=/disneyinternationalhd.com/gfwlist +server=/zohomerchandise.com/127.0.0.1#5335 +ipset=/zohomerchandise.com/gfwlist +server=/epochtimes.co.uk/127.0.0.1#5335 +ipset=/epochtimes.co.uk/gfwlist +server=/shopee.sg/127.0.0.1#5335 +ipset=/shopee.sg/gfwlist +server=/minneapolisbmw.com/127.0.0.1#5335 +ipset=/minneapolisbmw.com/gfwlist +server=/cloudflareinsights.com/127.0.0.1#5335 +ipset=/cloudflareinsights.com/gfwlist +server=/pokemongoldsilver.com/127.0.0.1#5335 +ipset=/pokemongoldsilver.com/gfwlist +server=/pin.it/127.0.0.1#5335 +ipset=/pin.it/gfwlist +server=/bmw.no/127.0.0.1#5335 +ipset=/bmw.no/gfwlist +server=/wpvip.com/127.0.0.1#5335 +ipset=/wpvip.com/gfwlist +server=/hpdriver.com/127.0.0.1#5335 +ipset=/hpdriver.com/gfwlist +server=/akamai-access.com/127.0.0.1#5335 +ipset=/akamai-access.com/gfwlist +server=/webofscience.com/127.0.0.1#5335 +ipset=/webofscience.com/gfwlist +server=/huobi.com/127.0.0.1#5335 +ipset=/huobi.com/gfwlist +server=/veet.jp/127.0.0.1#5335 +ipset=/veet.jp/gfwlist +server=/hkopentv.com/127.0.0.1#5335 +ipset=/hkopentv.com/gfwlist +server=/nikebbn.com/127.0.0.1#5335 +ipset=/nikebbn.com/gfwlist +server=/valvesoftware.com/127.0.0.1#5335 +ipset=/valvesoftware.com/gfwlist +server=/rsshub.app/127.0.0.1#5335 +ipset=/rsshub.app/gfwlist +server=/softbank-robotics.com/127.0.0.1#5335 +ipset=/softbank-robotics.com/gfwlist +server=/jstor.org/127.0.0.1#5335 +ipset=/jstor.org/gfwlist +server=/realclearlife.com/127.0.0.1#5335 +ipset=/realclearlife.com/gfwlist +server=/cheapsalemonster.com/127.0.0.1#5335 +ipset=/cheapsalemonster.com/gfwlist +server=/attbusiness.net/127.0.0.1#5335 +ipset=/attbusiness.net/gfwlist +server=/shopify.dev/127.0.0.1#5335 +ipset=/shopify.dev/gfwlist +server=/xn--74q035i.xn--hxt814e/127.0.0.1#5335 +ipset=/xn--74q035i.xn--hxt814e/gfwlist +server=/calendarserver.org/127.0.0.1#5335 +ipset=/calendarserver.org/gfwlist +server=/zeit-world.net/127.0.0.1#5335 +ipset=/zeit-world.net/gfwlist +server=/scholar.google.com.sv/127.0.0.1#5335 +ipset=/scholar.google.com.sv/gfwlist +server=/getprintersupports.com/127.0.0.1#5335 +ipset=/getprintersupports.com/gfwlist +server=/tinyurl.com/127.0.0.1#5335 +ipset=/tinyurl.com/gfwlist +server=/miktex.org/127.0.0.1#5335 +ipset=/miktex.org/gfwlist +server=/github-avatars.oss-cn-hongkong.aliyuncs.com/127.0.0.1#5335 +ipset=/github-avatars.oss-cn-hongkong.aliyuncs.com/gfwlist +server=/dditscdn.com/127.0.0.1#5335 +ipset=/dditscdn.com/gfwlist +server=/pinterest.ec/127.0.0.1#5335 +ipset=/pinterest.ec/gfwlist +server=/d2anahhhmp1ffz.cloudfront.net/127.0.0.1#5335 +ipset=/d2anahhhmp1ffz.cloudfront.net/gfwlist +server=/vk-cdn.net/127.0.0.1#5335 +ipset=/vk-cdn.net/gfwlist +server=/forzarc.com/127.0.0.1#5335 +ipset=/forzarc.com/gfwlist +server=/fontexplorerx.com/127.0.0.1#5335 +ipset=/fontexplorerx.com/gfwlist +server=/discordstatus.com/127.0.0.1#5335 +ipset=/discordstatus.com/gfwlist +server=/foxsoccershop.com/127.0.0.1#5335 +ipset=/foxsoccershop.com/gfwlist +server=/bridgestone.co.id/127.0.0.1#5335 +ipset=/bridgestone.co.id/gfwlist +server=/fbhome.com/127.0.0.1#5335 +ipset=/fbhome.com/gfwlist +server=/travelex.com/127.0.0.1#5335 +ipset=/travelex.com/gfwlist +server=/nintendo.es/127.0.0.1#5335 +ipset=/nintendo.es/gfwlist +server=/terapeak.info/127.0.0.1#5335 +ipset=/terapeak.info/gfwlist +server=/rb.gy/127.0.0.1#5335 +ipset=/rb.gy/gfwlist +server=/privatemarketplaces.us/127.0.0.1#5335 +ipset=/privatemarketplaces.us/gfwlist +server=/kindle.es/127.0.0.1#5335 +ipset=/kindle.es/gfwlist +server=/egmontbooks.co.uk/127.0.0.1#5335 +ipset=/egmontbooks.co.uk/gfwlist +server=/quip.com/127.0.0.1#5335 +ipset=/quip.com/gfwlist +server=/typenetwork.com/127.0.0.1#5335 +ipset=/typenetwork.com/gfwlist +server=/sony.hu/127.0.0.1#5335 +ipset=/sony.hu/gfwlist +server=/volvotrucks.sk/127.0.0.1#5335 +ipset=/volvotrucks.sk/gfwlist +server=/pse.is/127.0.0.1#5335 +ipset=/pse.is/gfwlist +server=/foxbusinessgo.com/127.0.0.1#5335 +ipset=/foxbusinessgo.com/gfwlist +server=/mpv.io/127.0.0.1#5335 +ipset=/mpv.io/gfwlist +server=/madvrlabs.llc/127.0.0.1#5335 +ipset=/madvrlabs.llc/gfwlist +server=/secure-paypal.info/127.0.0.1#5335 +ipset=/secure-paypal.info/gfwlist +server=/freefacebook.com/127.0.0.1#5335 +ipset=/freefacebook.com/gfwlist +server=/garena.ph/127.0.0.1#5335 +ipset=/garena.ph/gfwlist +server=/visa-news.jp/127.0.0.1#5335 +ipset=/visa-news.jp/gfwlist +server=/liberapay.com/127.0.0.1#5335 +ipset=/liberapay.com/gfwlist +server=/codeish.co/127.0.0.1#5335 +ipset=/codeish.co/gfwlist +server=/swjfo.com/127.0.0.1#5335 +ipset=/swjfo.com/gfwlist +server=/mini.co.za/127.0.0.1#5335 +ipset=/mini.co.za/gfwlist +server=/mastercard.co.nz/127.0.0.1#5335 +ipset=/mastercard.co.nz/gfwlist +server=/xdty.org/127.0.0.1#5335 +ipset=/xdty.org/gfwlist +server=/ebaynow.com/127.0.0.1#5335 +ipset=/ebaynow.com/gfwlist +server=/card.io/127.0.0.1#5335 +ipset=/card.io/gfwlist +server=/bayareabmw.com/127.0.0.1#5335 +ipset=/bayareabmw.com/gfwlist +server=/mini-lebanon.com/127.0.0.1#5335 +ipset=/mini-lebanon.com/gfwlist +server=/hitun.io/127.0.0.1#5335 +ipset=/hitun.io/gfwlist +server=/guim.co.uk/127.0.0.1#5335 +ipset=/guim.co.uk/gfwlist +server=/paradisehotelquizfox.com/127.0.0.1#5335 +ipset=/paradisehotelquizfox.com/gfwlist +server=/duckgo.com/127.0.0.1#5335 +ipset=/duckgo.com/gfwlist +server=/peerj.com/127.0.0.1#5335 +ipset=/peerj.com/gfwlist +server=/universitypressscholarship.com/127.0.0.1#5335 +ipset=/universitypressscholarship.com/gfwlist +server=/duckduckgo.nl/127.0.0.1#5335 +ipset=/duckduckgo.nl/gfwlist +server=/businessinsider.jp/127.0.0.1#5335 +ipset=/businessinsider.jp/gfwlist +server=/duckduckgo.co.uk/127.0.0.1#5335 +ipset=/duckduckgo.co.uk/gfwlist +server=/vod-thumb-ww-live.akamaized.net/127.0.0.1#5335 +ipset=/vod-thumb-ww-live.akamaized.net/gfwlist +server=/internationalconnectionsacademy.com/127.0.0.1#5335 +ipset=/internationalconnectionsacademy.com/gfwlist +server=/www-paypal.info/127.0.0.1#5335 +ipset=/www-paypal.info/gfwlist +server=/joinmaidez.com/127.0.0.1#5335 +ipset=/joinmaidez.com/gfwlist +server=/braintreepayments.com/127.0.0.1#5335 +ipset=/braintreepayments.com/gfwlist +server=/cispaletter.org/127.0.0.1#5335 +ipset=/cispaletter.org/gfwlist +server=/vuvuzela.io/127.0.0.1#5335 +ipset=/vuvuzela.io/gfwlist +server=/demdex.net/127.0.0.1#5335 +ipset=/demdex.net/gfwlist +server=/softbank.tv/127.0.0.1#5335 +ipset=/softbank.tv/gfwlist +server=/contentful.com/127.0.0.1#5335 +ipset=/contentful.com/gfwlist +server=/akadns6.net/127.0.0.1#5335 +ipset=/akadns6.net/gfwlist +server=/cloudconvert.com/127.0.0.1#5335 +ipset=/cloudconvert.com/gfwlist +server=/adidas.nl/127.0.0.1#5335 +ipset=/adidas.nl/gfwlist +server=/vanish.ro/127.0.0.1#5335 +ipset=/vanish.ro/gfwlist +server=/myconstructionworld.net/127.0.0.1#5335 +ipset=/myconstructionworld.net/gfwlist +server=/epochtimes.com.br/127.0.0.1#5335 +ipset=/epochtimes.com.br/gfwlist +server=/xtube.com/127.0.0.1#5335 +ipset=/xtube.com/gfwlist +server=/bmw.co.il/127.0.0.1#5335 +ipset=/bmw.co.il/gfwlist +server=/harperapps.com/127.0.0.1#5335 +ipset=/harperapps.com/gfwlist +server=/thtmod1.com/127.0.0.1#5335 +ipset=/thtmod1.com/gfwlist +server=/customnikeshoes.com/127.0.0.1#5335 +ipset=/customnikeshoes.com/gfwlist +server=/volvotruckcenter.kr/127.0.0.1#5335 +ipset=/volvotruckcenter.kr/gfwlist +server=/wwwmacbookair.com/127.0.0.1#5335 +ipset=/wwwmacbookair.com/gfwlist +server=/monsterbeatsfactory.net/127.0.0.1#5335 +ipset=/monsterbeatsfactory.net/gfwlist +server=/clubhouseapi.com/127.0.0.1#5335 +ipset=/clubhouseapi.com/gfwlist +server=/directvrichmond.com/127.0.0.1#5335 +ipset=/directvrichmond.com/gfwlist +server=/tbr.tangbr.net/127.0.0.1#5335 +ipset=/tbr.tangbr.net/gfwlist +server=/t66y.com/127.0.0.1#5335 +ipset=/t66y.com/gfwlist +server=/babble.com/127.0.0.1#5335 +ipset=/babble.com/gfwlist +server=/mozilla.org/127.0.0.1#5335 +ipset=/mozilla.org/gfwlist +server=/bmw-motorcycle.com/127.0.0.1#5335 +ipset=/bmw-motorcycle.com/gfwlist +server=/ipodtouch.com/127.0.0.1#5335 +ipset=/ipodtouch.com/gfwlist +server=/visa.lv/127.0.0.1#5335 +ipset=/visa.lv/gfwlist +server=/verisign.name/127.0.0.1#5335 +ipset=/verisign.name/gfwlist +server=/akamai.net/127.0.0.1#5335 +ipset=/akamai.net/gfwlist +server=/prime-video.com/127.0.0.1#5335 +ipset=/prime-video.com/gfwlist +server=/foxsports-world.com/127.0.0.1#5335 +ipset=/foxsports-world.com/gfwlist +server=/oculuscasino.net/127.0.0.1#5335 +ipset=/oculuscasino.net/gfwlist +server=/adobeawards.com/127.0.0.1#5335 +ipset=/adobeawards.com/gfwlist +server=/canon.ge/127.0.0.1#5335 +ipset=/canon.ge/gfwlist +server=/osakamotion.net/127.0.0.1#5335 +ipset=/osakamotion.net/gfwlist +server=/visaluxuryhotels.com.ar/127.0.0.1#5335 +ipset=/visaluxuryhotels.com.ar/gfwlist +server=/volvotrucks.tm/127.0.0.1#5335 +ipset=/volvotrucks.tm/gfwlist +server=/readthedocs.org/127.0.0.1#5335 +ipset=/readthedocs.org/gfwlist +server=/openmaps.org/127.0.0.1#5335 +ipset=/openmaps.org/gfwlist +server=/durex.dk/127.0.0.1#5335 +ipset=/durex.dk/gfwlist +server=/javhd.com/127.0.0.1#5335 +ipset=/javhd.com/gfwlist +server=/theinitium.com/127.0.0.1#5335 +ipset=/theinitium.com/gfwlist +server=/isexomega.tw/127.0.0.1#5335 +ipset=/isexomega.tw/gfwlist +server=/iijav.com/127.0.0.1#5335 +ipset=/iijav.com/gfwlist +server=/dmm.com/127.0.0.1#5335 +ipset=/dmm.com/gfwlist +server=/gouri.xyz/127.0.0.1#5335 +ipset=/gouri.xyz/gfwlist +server=/bridgestoneamericas.com/127.0.0.1#5335 +ipset=/bridgestoneamericas.com/gfwlist +server=/fanhaodian.com/127.0.0.1#5335 +ipset=/fanhaodian.com/gfwlist +server=/verisign.tw/127.0.0.1#5335 +ipset=/verisign.tw/gfwlist +server=/zoho.com/127.0.0.1#5335 +ipset=/zoho.com/gfwlist +server=/paipal.com/127.0.0.1#5335 +ipset=/paipal.com/gfwlist +server=/cheapbeatsbydrenz.net/127.0.0.1#5335 +ipset=/cheapbeatsbydrenz.net/gfwlist +server=/520aa.tv/127.0.0.1#5335 +ipset=/520aa.tv/gfwlist +server=/ebay-sales.com/127.0.0.1#5335 +ipset=/ebay-sales.com/gfwlist +server=/pc.com/127.0.0.1#5335 +ipset=/pc.com/gfwlist +server=/dmgmediaprivacy.co.uk/127.0.0.1#5335 +ipset=/dmgmediaprivacy.co.uk/gfwlist +server=/nintendo.eu/127.0.0.1#5335 +ipset=/nintendo.eu/gfwlist +server=/gettyimages.com.br/127.0.0.1#5335 +ipset=/gettyimages.com.br/gfwlist +server=/terapeak.com/127.0.0.1#5335 +ipset=/terapeak.com/gfwlist +server=/uun92.com/127.0.0.1#5335 +ipset=/uun92.com/gfwlist +server=/paypal-here.com/127.0.0.1#5335 +ipset=/paypal-here.com/gfwlist +server=/cheapbeatsbus.com/127.0.0.1#5335 +ipset=/cheapbeatsbus.com/gfwlist +server=/uun87.com/127.0.0.1#5335 +ipset=/uun87.com/gfwlist +server=/bestbuy-jobs.com/127.0.0.1#5335 +ipset=/bestbuy-jobs.com/gfwlist +server=/imac.one/127.0.0.1#5335 +ipset=/imac.one/gfwlist +server=/pinterest.hu/127.0.0.1#5335 +ipset=/pinterest.hu/gfwlist +server=/p3.csgfnmdb.com/127.0.0.1#5335 +ipset=/p3.csgfnmdb.com/gfwlist +server=/press.vin/127.0.0.1#5335 +ipset=/press.vin/gfwlist +server=/viewpointsfromfacebook.com/127.0.0.1#5335 +ipset=/viewpointsfromfacebook.com/gfwlist +server=/dlmobilegarena-a.akamaihd.net/127.0.0.1#5335 +ipset=/dlmobilegarena-a.akamaihd.net/gfwlist +server=/achievementanalytics.com/127.0.0.1#5335 +ipset=/achievementanalytics.com/gfwlist +server=/latex-project.org/127.0.0.1#5335 +ipset=/latex-project.org/gfwlist +server=/javwide.com/127.0.0.1#5335 +ipset=/javwide.com/gfwlist +server=/pureapk.com/127.0.0.1#5335 +ipset=/pureapk.com/gfwlist +server=/ucla.edu/127.0.0.1#5335 +ipset=/ucla.edu/gfwlist +server=/fxn.ws/127.0.0.1#5335 +ipset=/fxn.ws/gfwlist +server=/verisign.com.au/127.0.0.1#5335 +ipset=/verisign.com.au/gfwlist +server=/epochtimes.com.au/127.0.0.1#5335 +ipset=/epochtimes.com.au/gfwlist +server=/yourtv.com.au/127.0.0.1#5335 +ipset=/yourtv.com.au/gfwlist +server=/alphabet.cz/127.0.0.1#5335 +ipset=/alphabet.cz/gfwlist +server=/adguard.com/127.0.0.1#5335 +ipset=/adguard.com/gfwlist +server=/facebook-pmdcenter.com/127.0.0.1#5335 +ipset=/facebook-pmdcenter.com/gfwlist +server=/visa.com.tt/127.0.0.1#5335 +ipset=/visa.com.tt/gfwlist +server=/yahoo.com.sb/127.0.0.1#5335 +ipset=/yahoo.com.sb/gfwlist +server=/airitilibrary.com/127.0.0.1#5335 +ipset=/airitilibrary.com/gfwlist +server=/atypi.org/127.0.0.1#5335 +ipset=/atypi.org/gfwlist +server=/blogspot.sg/127.0.0.1#5335 +ipset=/blogspot.sg/gfwlist +server=/osmfoundation.org/127.0.0.1#5335 +ipset=/osmfoundation.org/gfwlist +server=/postini.com/127.0.0.1#5335 +ipset=/postini.com/gfwlist +server=/hutpromos.com/127.0.0.1#5335 +ipset=/hutpromos.com/gfwlist +server=/creativecommons.engineering/127.0.0.1#5335 +ipset=/creativecommons.engineering/gfwlist +server=/ccstatic.org/127.0.0.1#5335 +ipset=/ccstatic.org/gfwlist +server=/scholar.google.bg/127.0.0.1#5335 +ipset=/scholar.google.bg/gfwlist +server=/bmw-motorrad.com.my/127.0.0.1#5335 +ipset=/bmw-motorrad.com.my/gfwlist +server=/unwire.hk/127.0.0.1#5335 +ipset=/unwire.hk/gfwlist +server=/nikeselling.com/127.0.0.1#5335 +ipset=/nikeselling.com/gfwlist +server=/ssl-lvlt.cdn.ea.com/127.0.0.1#5335 +ipset=/ssl-lvlt.cdn.ea.com/gfwlist +server=/alphera.com.hk/127.0.0.1#5335 +ipset=/alphera.com.hk/gfwlist +server=/rsf.org/127.0.0.1#5335 +ipset=/rsf.org/gfwlist +server=/ieeeusa.org/127.0.0.1#5335 +ipset=/ieeeusa.org/gfwlist +server=/mingpaomonthly.com/127.0.0.1#5335 +ipset=/mingpaomonthly.com/gfwlist +server=/foxsports.info/127.0.0.1#5335 +ipset=/foxsports.info/gfwlist +server=/embed.ly/127.0.0.1#5335 +ipset=/embed.ly/gfwlist +server=/businessinsider.nl/127.0.0.1#5335 +ipset=/businessinsider.nl/gfwlist +server=/supermario.com/127.0.0.1#5335 +ipset=/supermario.com/gfwlist +server=/starbucks.com.tr/127.0.0.1#5335 +ipset=/starbucks.com.tr/gfwlist +server=/sonypicturesmuseum.com/127.0.0.1#5335 +ipset=/sonypicturesmuseum.com/gfwlist +server=/volvospares.com/127.0.0.1#5335 +ipset=/volvospares.com/gfwlist +server=/mini.hu/127.0.0.1#5335 +ipset=/mini.hu/gfwlist +server=/cheapheadsetmall.com/127.0.0.1#5335 +ipset=/cheapheadsetmall.com/gfwlist +server=/bloombergbreakaway.com/127.0.0.1#5335 +ipset=/bloombergbreakaway.com/gfwlist +server=/chrome.com/127.0.0.1#5335 +ipset=/chrome.com/gfwlist +server=/wd.com/127.0.0.1#5335 +ipset=/wd.com/gfwlist +server=/bmw.se/127.0.0.1#5335 +ipset=/bmw.se/gfwlist +server=/iphoneunlockimei.com/127.0.0.1#5335 +ipset=/iphoneunlockimei.com/gfwlist +server=/travelex.fr/127.0.0.1#5335 +ipset=/travelex.fr/gfwlist +server=/ebayauthenticate.com.cn/127.0.0.1#5335 +ipset=/ebayauthenticate.com.cn/gfwlist +server=/scholar.google.ru/127.0.0.1#5335 +ipset=/scholar.google.ru/gfwlist +server=/dotcernpilot.info/127.0.0.1#5335 +ipset=/dotcernpilot.info/gfwlist +server=/minimotorsport.com/127.0.0.1#5335 +ipset=/minimotorsport.com/gfwlist +server=/fflnk.net/127.0.0.1#5335 +ipset=/fflnk.net/gfwlist +server=/lolesports.com/127.0.0.1#5335 +ipset=/lolesports.com/gfwlist +server=/foxcreativeuniversity.com/127.0.0.1#5335 +ipset=/foxcreativeuniversity.com/gfwlist +server=/ea.tt.omtrdc.net/127.0.0.1#5335 +ipset=/ea.tt.omtrdc.net/gfwlist +server=/indiancolleges.com/127.0.0.1#5335 +ipset=/indiancolleges.com/gfwlist +server=/mariokart7.com/127.0.0.1#5335 +ipset=/mariokart7.com/gfwlist +server=/mastercardcenter.com/127.0.0.1#5335 +ipset=/mastercardcenter.com/gfwlist +server=/bestbuyrewardzone.ca/127.0.0.1#5335 +ipset=/bestbuyrewardzone.ca/gfwlist +server=/zaobao.com.sg/127.0.0.1#5335 +ipset=/zaobao.com.sg/gfwlist +server=/theguardiandns.com/127.0.0.1#5335 +ipset=/theguardiandns.com/gfwlist +server=/managed-pki.de/127.0.0.1#5335 +ipset=/managed-pki.de/gfwlist +server=/ox.ac.uk/127.0.0.1#5335 +ipset=/ox.ac.uk/gfwlist +server=/nytstyle.com/127.0.0.1#5335 +ipset=/nytstyle.com/gfwlist +server=/vox-cdn.com/127.0.0.1#5335 +ipset=/vox-cdn.com/gfwlist +server=/visa.com.co/127.0.0.1#5335 +ipset=/visa.com.co/gfwlist +server=/bmwi.jp/127.0.0.1#5335 +ipset=/bmwi.jp/gfwlist +server=/polygon.com/127.0.0.1#5335 +ipset=/polygon.com/gfwlist +server=/foxtelevisionstations.com/127.0.0.1#5335 +ipset=/foxtelevisionstations.com/gfwlist +server=/yours-customised.mini.com/127.0.0.1#5335 +ipset=/yours-customised.mini.com/gfwlist +server=/voazimbabwe.com/127.0.0.1#5335 +ipset=/voazimbabwe.com/gfwlist +server=/runningnike.com/127.0.0.1#5335 +ipset=/runningnike.com/gfwlist +server=/voatibetan.com/127.0.0.1#5335 +ipset=/voatibetan.com/gfwlist +server=/vfsco.co.uk/127.0.0.1#5335 +ipset=/vfsco.co.uk/gfwlist +server=/voanews.eu/127.0.0.1#5335 +ipset=/voanews.eu/gfwlist +server=/0plkijj.vip/127.0.0.1#5335 +ipset=/0plkijj.vip/gfwlist +server=/shopspeedtv.com/127.0.0.1#5335 +ipset=/shopspeedtv.com/gfwlist +server=/billmelater.info/127.0.0.1#5335 +ipset=/billmelater.info/gfwlist +server=/sipriyearbook.org/127.0.0.1#5335 +ipset=/sipriyearbook.org/gfwlist +server=/addison-wesley.ch/127.0.0.1#5335 +ipset=/addison-wesley.ch/gfwlist +server=/naver.com/127.0.0.1#5335 +ipset=/naver.com/gfwlist +server=/battle.net/127.0.0.1#5335 +ipset=/battle.net/gfwlist +server=/voaafrique.com/127.0.0.1#5335 +ipset=/voaafrique.com/gfwlist +server=/amerikaninsesi.com/127.0.0.1#5335 +ipset=/amerikaninsesi.com/gfwlist +server=/intel.us/127.0.0.1#5335 +ipset=/intel.us/gfwlist +server=/livrariart.com.br/127.0.0.1#5335 +ipset=/livrariart.com.br/gfwlist +server=/psg-int-centralus.cloudapp.net/127.0.0.1#5335 +ipset=/psg-int-centralus.cloudapp.net/gfwlist +server=/mini.gp/127.0.0.1#5335 +ipset=/mini.gp/gfwlist +server=/fb.com/127.0.0.1#5335 +ipset=/fb.com/gfwlist +server=/visa.com.do/127.0.0.1#5335 +ipset=/visa.com.do/gfwlist +server=/passport.net/127.0.0.1#5335 +ipset=/passport.net/gfwlist +server=/hplaptop.com/127.0.0.1#5335 +ipset=/hplaptop.com/gfwlist +server=/skyoceanrescue.com/127.0.0.1#5335 +ipset=/skyoceanrescue.com/gfwlist +server=/easttouch.com.hk/127.0.0.1#5335 +ipset=/easttouch.com.hk/gfwlist +server=/facebooc.com/127.0.0.1#5335 +ipset=/facebooc.com/gfwlist +server=/bmw.com.tr/127.0.0.1#5335 +ipset=/bmw.com.tr/gfwlist +server=/facebolk.com/127.0.0.1#5335 +ipset=/facebolk.com/gfwlist +server=/telekom.de/127.0.0.1#5335 +ipset=/telekom.de/gfwlist +server=/bandag.cc/127.0.0.1#5335 +ipset=/bandag.cc/gfwlist +server=/realclearhistory.com/127.0.0.1#5335 +ipset=/realclearhistory.com/gfwlist +server=/realclearfoundation.org/127.0.0.1#5335 +ipset=/realclearfoundation.org/gfwlist +server=/airwick.jp/127.0.0.1#5335 +ipset=/airwick.jp/gfwlist +server=/ea.com/127.0.0.1#5335 +ipset=/ea.com/gfwlist +server=/jtvnw.net/127.0.0.1#5335 +ipset=/jtvnw.net/gfwlist +server=/voxcreative.com/127.0.0.1#5335 +ipset=/voxcreative.com/gfwlist +server=/volvopenta.it/127.0.0.1#5335 +ipset=/volvopenta.it/gfwlist +server=/youtube.com.ph/127.0.0.1#5335 +ipset=/youtube.com.ph/gfwlist +server=/andysparis.com/127.0.0.1#5335 +ipset=/andysparis.com/gfwlist +server=/zb.com/127.0.0.1#5335 +ipset=/zb.com/gfwlist +server=/harpercollins.com/127.0.0.1#5335 +ipset=/harpercollins.com/gfwlist +server=/volvopenta.com.br/127.0.0.1#5335 +ipset=/volvopenta.com.br/gfwlist +server=/9to5terminal.com/127.0.0.1#5335 +ipset=/9to5terminal.com/gfwlist +server=/nikedunksshoes.com/127.0.0.1#5335 +ipset=/nikedunksshoes.com/gfwlist +server=/placemyad.com.au/127.0.0.1#5335 +ipset=/placemyad.com.au/gfwlist +server=/mylogiclab.com/127.0.0.1#5335 +ipset=/mylogiclab.com/gfwlist +server=/microsoft.pl/127.0.0.1#5335 +ipset=/microsoft.pl/gfwlist +server=/youtube.co.in/127.0.0.1#5335 +ipset=/youtube.co.in/gfwlist +server=/newsapi.com.au/127.0.0.1#5335 +ipset=/newsapi.com.au/gfwlist +server=/farfetch.net/127.0.0.1#5335 +ipset=/farfetch.net/gfwlist +server=/thewonderful101.com/127.0.0.1#5335 +ipset=/thewonderful101.com/gfwlist +server=/llnwi.net/127.0.0.1#5335 +ipset=/llnwi.net/gfwlist +server=/newcastlenewslocal.com.au/127.0.0.1#5335 +ipset=/newcastlenewslocal.com.au/gfwlist +server=/geelongadvertiser.com.au/127.0.0.1#5335 +ipset=/geelongadvertiser.com.au/gfwlist +server=/officecdn-microsoft-com.akamaized.net/127.0.0.1#5335 +ipset=/officecdn-microsoft-com.akamaized.net/gfwlist +server=/scholar.google.be/127.0.0.1#5335 +ipset=/scholar.google.be/gfwlist +server=/lawdata.com.tw/127.0.0.1#5335 +ipset=/lawdata.com.tw/gfwlist +server=/volvobuses.be/127.0.0.1#5335 +ipset=/volvobuses.be/gfwlist +server=/bossae.com/127.0.0.1#5335 +ipset=/bossae.com/gfwlist +server=/nikeby.com/127.0.0.1#5335 +ipset=/nikeby.com/gfwlist +server=/nikeprice.com/127.0.0.1#5335 +ipset=/nikeprice.com/gfwlist +server=/nypostreprints.com/127.0.0.1#5335 +ipset=/nypostreprints.com/gfwlist +server=/nbcsports.com/127.0.0.1#5335 +ipset=/nbcsports.com/gfwlist +server=/connectedcommerce.tv/127.0.0.1#5335 +ipset=/connectedcommerce.tv/gfwlist +server=/rbdigitalab.com/127.0.0.1#5335 +ipset=/rbdigitalab.com/gfwlist +server=/bmw-yeg.ca/127.0.0.1#5335 +ipset=/bmw-yeg.ca/gfwlist +server=/minimontroyal.com/127.0.0.1#5335 +ipset=/minimontroyal.com/gfwlist +server=/akami.net/127.0.0.1#5335 +ipset=/akami.net/gfwlist +server=/paypalnetwork.org/127.0.0.1#5335 +ipset=/paypalnetwork.org/gfwlist +server=/chips.com/127.0.0.1#5335 +ipset=/chips.com/gfwlist +server=/banned.video/127.0.0.1#5335 +ipset=/banned.video/gfwlist +server=/bmw-world.tv/127.0.0.1#5335 +ipset=/bmw-world.tv/gfwlist +server=/facebookworld.com/127.0.0.1#5335 +ipset=/facebookworld.com/gfwlist +server=/adcommerce.tv/127.0.0.1#5335 +ipset=/adcommerce.tv/gfwlist +server=/my13la.com/127.0.0.1#5335 +ipset=/my13la.com/gfwlist +server=/16fhgdty.xyz/127.0.0.1#5335 +ipset=/16fhgdty.xyz/gfwlist +server=/developers.facebook.com/127.0.0.1#5335 +ipset=/developers.facebook.com/gfwlist +server=/camelotherald.com/127.0.0.1#5335 +ipset=/camelotherald.com/gfwlist +server=/yandex.ua/127.0.0.1#5335 +ipset=/yandex.ua/gfwlist +server=/hket.com/127.0.0.1#5335 +ipset=/hket.com/gfwlist +server=/wmcloud.org/127.0.0.1#5335 +ipset=/wmcloud.org/gfwlist +server=/tegrazone.co/127.0.0.1#5335 +ipset=/tegrazone.co/gfwlist +server=/gvt7.com/127.0.0.1#5335 +ipset=/gvt7.com/gfwlist +server=/hulustream.com/127.0.0.1#5335 +ipset=/hulustream.com/gfwlist +server=/whatthefox.com/127.0.0.1#5335 +ipset=/whatthefox.com/gfwlist +server=/scholar.google.sk/127.0.0.1#5335 +ipset=/scholar.google.sk/gfwlist +server=/indiaipad.com/127.0.0.1#5335 +ipset=/indiaipad.com/gfwlist +server=/bridgestonecomercial.cl/127.0.0.1#5335 +ipset=/bridgestonecomercial.cl/gfwlist +server=/discountbeatsbydre-us.com/127.0.0.1#5335 +ipset=/discountbeatsbydre-us.com/gfwlist +server=/scholar.l.google.com/127.0.0.1#5335 +ipset=/scholar.l.google.com/gfwlist +server=/historyofdota.com/127.0.0.1#5335 +ipset=/historyofdota.com/gfwlist +server=/alpherafs.ie/127.0.0.1#5335 +ipset=/alpherafs.ie/gfwlist +server=/finishkilpailu.fi/127.0.0.1#5335 +ipset=/finishkilpailu.fi/gfwlist +server=/myfoxorlando.com/127.0.0.1#5335 +ipset=/myfoxorlando.com/gfwlist +server=/ch9.ms/127.0.0.1#5335 +ipset=/ch9.ms/gfwlist +server=/my20houston.com/127.0.0.1#5335 +ipset=/my20houston.com/gfwlist +server=/google.rw/127.0.0.1#5335 +ipset=/google.rw/gfwlist +server=/bentobox.tv/127.0.0.1#5335 +ipset=/bentobox.tv/gfwlist +server=/vfsco.jp/127.0.0.1#5335 +ipset=/vfsco.jp/gfwlist +server=/fssta.com/127.0.0.1#5335 +ipset=/fssta.com/gfwlist +server=/ieeeoes.org/127.0.0.1#5335 +ipset=/ieeeoes.org/gfwlist +server=/ebaylocationsdevacances.com/127.0.0.1#5335 +ipset=/ebaylocationsdevacances.com/gfwlist +server=/alivevm.com/127.0.0.1#5335 +ipset=/alivevm.com/gfwlist +server=/aranzadi.es/127.0.0.1#5335 +ipset=/aranzadi.es/gfwlist +server=/foxsports.net.br/127.0.0.1#5335 +ipset=/foxsports.net.br/gfwlist +server=/paypal-cardcash.com/127.0.0.1#5335 +ipset=/paypal-cardcash.com/gfwlist +server=/yahoo.com/127.0.0.1#5335 +ipset=/yahoo.com/gfwlist +server=/foxcareers.com/127.0.0.1#5335 +ipset=/foxcareers.com/gfwlist +server=/nikebetterworld.org/127.0.0.1#5335 +ipset=/nikebetterworld.org/gfwlist +server=/ipod.co/127.0.0.1#5335 +ipset=/ipod.co/gfwlist +server=/me.com/127.0.0.1#5335 +ipset=/me.com/gfwlist +server=/drdrebeats-usa.com/127.0.0.1#5335 +ipset=/drdrebeats-usa.com/gfwlist +server=/mastercard.com.br/127.0.0.1#5335 +ipset=/mastercard.com.br/gfwlist +server=/privacysimplified.com/127.0.0.1#5335 +ipset=/privacysimplified.com/gfwlist +server=/javbus.com/127.0.0.1#5335 +ipset=/javbus.com/gfwlist +server=/nebay.net/127.0.0.1#5335 +ipset=/nebay.net/gfwlist +server=/paypal-business.net/127.0.0.1#5335 +ipset=/paypal-business.net/gfwlist +server=/headphonesbeatsaudio.com/127.0.0.1#5335 +ipset=/headphonesbeatsaudio.com/gfwlist +server=/blogspot.td/127.0.0.1#5335 +ipset=/blogspot.td/gfwlist +server=/volvogroup.se/127.0.0.1#5335 +ipset=/volvogroup.se/gfwlist +server=/epochtimes.nl/127.0.0.1#5335 +ipset=/epochtimes.nl/gfwlist +server=/volvotrucks.az/127.0.0.1#5335 +ipset=/volvotrucks.az/gfwlist +server=/r10s.jp/127.0.0.1#5335 +ipset=/r10s.jp/gfwlist +server=/bmw.cl/127.0.0.1#5335 +ipset=/bmw.cl/gfwlist +server=/ciscopress.ch/127.0.0.1#5335 +ipset=/ciscopress.ch/gfwlist +server=/canon.co.il/127.0.0.1#5335 +ipset=/canon.co.il/gfwlist +server=/youtube.jo/127.0.0.1#5335 +ipset=/youtube.jo/gfwlist +server=/anm.co.uk/127.0.0.1#5335 +ipset=/anm.co.uk/gfwlist +server=/kijijiraps.ca/127.0.0.1#5335 +ipset=/kijijiraps.ca/gfwlist +server=/ebayads.com/127.0.0.1#5335 +ipset=/ebayads.com/gfwlist +server=/playstation.net/127.0.0.1#5335 +ipset=/playstation.net/gfwlist +server=/geek-squad.net/127.0.0.1#5335 +ipset=/geek-squad.net/gfwlist +server=/gettyimages.pt/127.0.0.1#5335 +ipset=/gettyimages.pt/gfwlist +server=/applemagickeyboard.com/127.0.0.1#5335 +ipset=/applemagickeyboard.com/gfwlist +server=/easynike.com/127.0.0.1#5335 +ipset=/easynike.com/gfwlist +server=/slackcertified.com/127.0.0.1#5335 +ipset=/slackcertified.com/gfwlist +server=/volvogroup.com/127.0.0.1#5335 +ipset=/volvogroup.com/gfwlist +server=/neweconomyforum.com/127.0.0.1#5335 +ipset=/neweconomyforum.com/gfwlist +server=/microsoft.uz/127.0.0.1#5335 +ipset=/microsoft.uz/gfwlist +server=/pinterest.com.vn/127.0.0.1#5335 +ipset=/pinterest.com.vn/gfwlist +server=/volvotruckcenter.no/127.0.0.1#5335 +ipset=/volvotruckcenter.no/gfwlist +server=/paypal-center.net/127.0.0.1#5335 +ipset=/paypal-center.net/gfwlist +server=/paypa1.com/127.0.0.1#5335 +ipset=/paypa1.com/gfwlist +server=/diablo3.com/127.0.0.1#5335 +ipset=/diablo3.com/gfwlist +server=/visasignaturehotels.com/127.0.0.1#5335 +ipset=/visasignaturehotels.com/gfwlist +server=/gfw.report/127.0.0.1#5335 +ipset=/gfw.report/gfwlist +server=/thetread.com/127.0.0.1#5335 +ipset=/thetread.com/gfwlist +server=/texture.com/127.0.0.1#5335 +ipset=/texture.com/gfwlist +server=/swoosh.com/127.0.0.1#5335 +ipset=/swoosh.com/gfwlist +server=/next.hk/127.0.0.1#5335 +ipset=/next.hk/gfwlist +server=/creditcardsbay.com/127.0.0.1#5335 +ipset=/creditcardsbay.com/gfwlist +server=/vtsociety.org/127.0.0.1#5335 +ipset=/vtsociety.org/gfwlist +server=/thisav.com/127.0.0.1#5335 +ipset=/thisav.com/gfwlist +server=/visaeurope.lu/127.0.0.1#5335 +ipset=/visaeurope.lu/gfwlist +server=/oreilly.review/127.0.0.1#5335 +ipset=/oreilly.review/gfwlist +server=/nineentertainmentco.com.au/127.0.0.1#5335 +ipset=/nineentertainmentco.com.au/gfwlist +server=/mini.co.cr/127.0.0.1#5335 +ipset=/mini.co.cr/gfwlist +server=/paypal-learning.com/127.0.0.1#5335 +ipset=/paypal-learning.com/gfwlist +server=/minilondon.co/127.0.0.1#5335 +ipset=/minilondon.co/gfwlist +server=/makeitopen.com/127.0.0.1#5335 +ipset=/makeitopen.com/gfwlist +server=/pokemonletsgoeevee.com/127.0.0.1#5335 +ipset=/pokemonletsgoeevee.com/gfwlist +server=/mini.com.hr/127.0.0.1#5335 +ipset=/mini.com.hr/gfwlist +server=/customizedbeatbydre.com/127.0.0.1#5335 +ipset=/customizedbeatbydre.com/gfwlist +server=/weverse.io/127.0.0.1#5335 +ipset=/weverse.io/gfwlist +server=/bitmex.com/127.0.0.1#5335 +ipset=/bitmex.com/gfwlist +server=/dynacw.com/127.0.0.1#5335 +ipset=/dynacw.com/gfwlist +server=/lede-project.org/127.0.0.1#5335 +ipset=/lede-project.org/gfwlist +server=/oculuscdn.com/127.0.0.1#5335 +ipset=/oculuscdn.com/gfwlist +server=/realamericanstories.net/127.0.0.1#5335 +ipset=/realamericanstories.net/gfwlist +server=/beatsbydresonline-nz.com/127.0.0.1#5335 +ipset=/beatsbydresonline-nz.com/gfwlist +server=/wwe9.com/127.0.0.1#5335 +ipset=/wwe9.com/gfwlist +server=/volvotrucks.id/127.0.0.1#5335 +ipset=/volvotrucks.id/gfwlist +server=/pearsonclinical.fr/127.0.0.1#5335 +ipset=/pearsonclinical.fr/gfwlist +server=/cloudflareapps.com/127.0.0.1#5335 +ipset=/cloudflareapps.com/gfwlist +server=/beatsbydresalemall2013.com/127.0.0.1#5335 +ipset=/beatsbydresalemall2013.com/gfwlist +server=/disneymagicmoments.it/127.0.0.1#5335 +ipset=/disneymagicmoments.it/gfwlist +server=/paypalprepagata.net/127.0.0.1#5335 +ipset=/paypalprepagata.net/gfwlist +server=/geti2p.net/127.0.0.1#5335 +ipset=/geti2p.net/gfwlist +server=/rakuten.ca/127.0.0.1#5335 +ipset=/rakuten.ca/gfwlist +server=/scholar.google.com.mx/127.0.0.1#5335 +ipset=/scholar.google.com.mx/gfwlist +server=/graph.org/127.0.0.1#5335 +ipset=/graph.org/gfwlist +server=/bisq.io/127.0.0.1#5335 +ipset=/bisq.io/gfwlist +server=/opgg-static.akamaized.net/127.0.0.1#5335 +ipset=/opgg-static.akamaized.net/gfwlist +server=/ttvnw.net/127.0.0.1#5335 +ipset=/ttvnw.net/gfwlist +server=/desktopmovie.net/127.0.0.1#5335 +ipset=/desktopmovie.net/gfwlist +server=/ioffergift.com/127.0.0.1#5335 +ipset=/ioffergift.com/gfwlist +server=/internationalsaimoe.com/127.0.0.1#5335 +ipset=/internationalsaimoe.com/gfwlist +server=/idservice.inc/127.0.0.1#5335 +ipset=/idservice.inc/gfwlist +server=/beatsbydreblackfridaypro.com/127.0.0.1#5335 +ipset=/beatsbydreblackfridaypro.com/gfwlist +server=/squirrelgroup.net/127.0.0.1#5335 +ipset=/squirrelgroup.net/gfwlist +server=/volvotrucks.dk/127.0.0.1#5335 +ipset=/volvotrucks.dk/gfwlist +server=/blogspot.sk/127.0.0.1#5335 +ipset=/blogspot.sk/gfwlist +server=/alphabet.ch/127.0.0.1#5335 +ipset=/alphabet.ch/gfwlist +server=/paypal-pages.com/127.0.0.1#5335 +ipset=/paypal-pages.com/gfwlist +server=/microsoft.ua/127.0.0.1#5335 +ipset=/microsoft.ua/gfwlist +server=/cnn.it/127.0.0.1#5335 +ipset=/cnn.it/gfwlist +server=/bmw-motorrad.com.do/127.0.0.1#5335 +ipset=/bmw-motorrad.com.do/gfwlist +server=/ieeecss.org/127.0.0.1#5335 +ipset=/ieeecss.org/gfwlist +server=/rsg.sc/127.0.0.1#5335 +ipset=/rsg.sc/gfwlist +server=/mini-grouparchive.com/127.0.0.1#5335 +ipset=/mini-grouparchive.com/gfwlist +server=/paypal.hk/127.0.0.1#5335 +ipset=/paypal.hk/gfwlist +server=/intel.jo/127.0.0.1#5335 +ipset=/intel.jo/gfwlist +server=/takegoto.com/127.0.0.1#5335 +ipset=/takegoto.com/gfwlist +server=/sb-mobile.jp/127.0.0.1#5335 +ipset=/sb-mobile.jp/gfwlist +server=/scholar.google.ro/127.0.0.1#5335 +ipset=/scholar.google.ro/gfwlist +server=/fox10phoenix.com/127.0.0.1#5335 +ipset=/fox10phoenix.com/gfwlist +server=/socalbmw.com/127.0.0.1#5335 +ipset=/socalbmw.com/gfwlist +server=/eubluecardvisa.com/127.0.0.1#5335 +ipset=/eubluecardvisa.com/gfwlist +server=/tiendabestbuy.com/127.0.0.1#5335 +ipset=/tiendabestbuy.com/gfwlist +server=/bloomberg.com/127.0.0.1#5335 +ipset=/bloomberg.com/gfwlist +server=/moviesanywhere.com/127.0.0.1#5335 +ipset=/moviesanywhere.com/gfwlist +server=/bmwtampabay.com/127.0.0.1#5335 +ipset=/bmwtampabay.com/gfwlist +server=/mini.md/127.0.0.1#5335 +ipset=/mini.md/gfwlist +server=/appleantilles.com/127.0.0.1#5335 +ipset=/appleantilles.com/gfwlist +server=/hpprinterinstalls.com/127.0.0.1#5335 +ipset=/hpprinterinstalls.com/gfwlist +server=/disney-studio.net/127.0.0.1#5335 +ipset=/disney-studio.net/gfwlist +server=/verisign.com.hk/127.0.0.1#5335 +ipset=/verisign.com.hk/gfwlist +server=/ebayparts.com/127.0.0.1#5335 +ipset=/ebayparts.com/gfwlist +server=/visa.com.uy/127.0.0.1#5335 +ipset=/visa.com.uy/gfwlist +server=/disney.de/127.0.0.1#5335 +ipset=/disney.de/gfwlist +server=/mastercard.com.ve/127.0.0.1#5335 +ipset=/mastercard.com.ve/gfwlist +server=/intercom.com/127.0.0.1#5335 +ipset=/intercom.com/gfwlist +server=/stripe.com/127.0.0.1#5335 +ipset=/stripe.com/gfwlist +server=/paypalobjects.com/127.0.0.1#5335 +ipset=/paypalobjects.com/gfwlist +server=/alphabet.info/127.0.0.1#5335 +ipset=/alphabet.info/gfwlist +server=/bmw.ua/127.0.0.1#5335 +ipset=/bmw.ua/gfwlist +server=/nikehelp.com/127.0.0.1#5335 +ipset=/nikehelp.com/gfwlist +server=/adidas.hu/127.0.0.1#5335 +ipset=/adidas.hu/gfwlist +server=/verisign.com.sg/127.0.0.1#5335 +ipset=/verisign.com.sg/gfwlist +server=/cdn77.org/127.0.0.1#5335 +ipset=/cdn77.org/gfwlist +server=/ea-anz-press.com/127.0.0.1#5335 +ipset=/ea-anz-press.com/gfwlist +server=/xbox.co/127.0.0.1#5335 +ipset=/xbox.co/gfwlist +server=/vk.link/127.0.0.1#5335 +ipset=/vk.link/gfwlist +server=/squirrelvpn.com/127.0.0.1#5335 +ipset=/squirrelvpn.com/gfwlist +server=/molesports.com/127.0.0.1#5335 +ipset=/molesports.com/gfwlist +server=/stheadline.com/127.0.0.1#5335 +ipset=/stheadline.com/gfwlist +server=/gettyimages.be/127.0.0.1#5335 +ipset=/gettyimages.be/gfwlist +server=/irribay.com/127.0.0.1#5335 +ipset=/irribay.com/gfwlist +server=/walmart.pharmacy/127.0.0.1#5335 +ipset=/walmart.pharmacy/gfwlist +server=/bmw-connecteddrive.fi/127.0.0.1#5335 +ipset=/bmw-connecteddrive.fi/gfwlist +server=/handbagsoutletebay.com/127.0.0.1#5335 +ipset=/handbagsoutletebay.com/gfwlist +server=/terrapeak.com/127.0.0.1#5335 +ipset=/terrapeak.com/gfwlist +server=/travelexmoneycard.com/127.0.0.1#5335 +ipset=/travelexmoneycard.com/gfwlist +server=/paypal-dynamic.com/127.0.0.1#5335 +ipset=/paypal-dynamic.com/gfwlist +server=/dealtree.org/127.0.0.1#5335 +ipset=/dealtree.org/gfwlist +server=/thepaypalshop.com/127.0.0.1#5335 +ipset=/thepaypalshop.com/gfwlist +server=/dreambmw.ca/127.0.0.1#5335 +ipset=/dreambmw.ca/gfwlist +server=/bmw-connecteddrive.ca/127.0.0.1#5335 +ipset=/bmw-connecteddrive.ca/gfwlist +server=/softbankworld.com/127.0.0.1#5335 +ipset=/softbankworld.com/gfwlist +server=/bastropfirestone.com/127.0.0.1#5335 +ipset=/bastropfirestone.com/gfwlist +server=/buypass-ssl.com/127.0.0.1#5335 +ipset=/buypass-ssl.com/gfwlist +server=/geeksquad.tv/127.0.0.1#5335 +ipset=/geeksquad.tv/gfwlist +server=/disney.co.kr/127.0.0.1#5335 +ipset=/disney.co.kr/gfwlist +server=/proquest.com/127.0.0.1#5335 +ipset=/proquest.com/gfwlist +server=/mini.ua/127.0.0.1#5335 +ipset=/mini.ua/gfwlist +server=/bestbuycoffeemakers.com/127.0.0.1#5335 +ipset=/bestbuycoffeemakers.com/gfwlist +server=/bmw-m-safetycar.com/127.0.0.1#5335 +ipset=/bmw-m-safetycar.com/gfwlist +server=/apple.is/127.0.0.1#5335 +ipset=/apple.is/gfwlist +server=/pinterest.co.nz/127.0.0.1#5335 +ipset=/pinterest.co.nz/gfwlist +server=/finishbrasil.com.br/127.0.0.1#5335 +ipset=/finishbrasil.com.br/gfwlist +server=/surflite.co/127.0.0.1#5335 +ipset=/surflite.co/gfwlist +server=/mastercard.com.co/127.0.0.1#5335 +ipset=/mastercard.com.co/gfwlist +server=/paypalhere.net/127.0.0.1#5335 +ipset=/paypalhere.net/gfwlist +server=/psyccareers.com/127.0.0.1#5335 +ipset=/psyccareers.com/gfwlist +server=/microsoft.ee/127.0.0.1#5335 +ipset=/microsoft.ee/gfwlist +server=/vfsco.in/127.0.0.1#5335 +ipset=/vfsco.in/gfwlist +server=/bmw.gp/127.0.0.1#5335 +ipset=/bmw.gp/gfwlist diff --git a/luci-app-ssr-plus/root/etc/ssrplus/netflix.list b/luci-app-ssr-plus/root/etc/ssrplus/netflix.list new file mode 100644 index 000000000..f98f711b3 --- /dev/null +++ b/luci-app-ssr-plus/root/etc/ssrplus/netflix.list @@ -0,0 +1,25 @@ +amazonaws.com +aws.amazon.com +awsstatic.com +fast.com +netflix.com +netflix.net +nflxext.com +nflximg.net +nflxso.net +nflxvideo.net +netflixdnstest0.com +netflixdnstest1.com +netflixdnstest2.com +netflixdnstest3.com +netflixdnstest4.com +netflixdnstest5.com +netflixdnstest6.com +netflixdnstest7.com +netflixdnstest8.com +netflixdnstest9.com +hulu.com +huluim.com +hbonow.com +hbogo.com +hbo.com diff --git a/luci-app-ssr-plus/root/etc/ssrplus/netflixip.list b/luci-app-ssr-plus/root/etc/ssrplus/netflixip.list new file mode 100644 index 000000000..540579968 --- /dev/null +++ b/luci-app-ssr-plus/root/etc/ssrplus/netflixip.list @@ -0,0 +1,15 @@ +23.246.0.0/18 +37.77.184.0/21 +38.72.126.0/24 +45.57.0.0/17 +64.120.128.0/17 +66.197.128.0/17 +69.53.224.0/19 +103.87.204.0/22 +108.175.32.0/20 +185.2.220.0/22 +185.9.188.0/22 +192.173.64.0/18 +198.38.96.0/19 +198.45.48.0/20 +208.75.76.0/22 diff --git a/luci-app-ssr-plus/root/etc/ssrplus/oversea_list.conf b/luci-app-ssr-plus/root/etc/ssrplus/oversea_list.conf new file mode 100644 index 000000000..ae50fb90d --- /dev/null +++ b/luci-app-ssr-plus/root/etc/ssrplus/oversea_list.conf @@ -0,0 +1,192 @@ +server=/v.youku.com/127.0.0.1#5335 +server=/api.youku.com/127.0.0.1#5335 +server=/v2.tudou.com/127.0.0.1#5335 +server=/www.tudou.com/127.0.0.1#5335 +server=/s.plcloud.music.qq.com/127.0.0.1#5335 +server=/i.y.qq.com/127.0.0.1#5335 +server=/hot.vrs.sohu.com/127.0.0.1#5335 +server=/live.tv.sohu.com/127.0.0.1#5335 +server=/pad.tv.sohu.com/127.0.0.1#5335 +server=/my.tv.sohu.com/127.0.0.1#5335 +server=/hot.vrs.letv.com/127.0.0.1#5335 +server=/data.video.qiyi.com/127.0.0.1#5335 +server=/cache.video.qiyi.com/127.0.0.1#5335 +server=/cache.vip.qiyi.com/127.0.0.1#5335 +server=/vv.video.qq.com/127.0.0.1#5335 +server=/tt.video.qq.com/127.0.0.1#5335 +server=/ice.video.qq.com/127.0.0.1#5335 +server=/tjsa.video.qq.com/127.0.0.1#5335 +server=/a10.video.qq.com/127.0.0.1#5335 +server=/xyy.video.qq.com/127.0.0.1#5335 +server=/vcq.video.qq.com/127.0.0.1#5335 +server=/vsh.video.qq.com/127.0.0.1#5335 +server=/vbj.video.qq.com/127.0.0.1#5335 +server=/bobo.video.qq.com/127.0.0.1#5335 +server=/flvs.video.qq.com/127.0.0.1#5335 +server=/bkvv.video.qq.com/127.0.0.1#5335 +server=/info.zb.qq.com/127.0.0.1#5335 +server=/geo.js.kankan.xunlei.com/127.0.0.1#5335 +server=/web-play.pptv.com/127.0.0.1#5335 +server=/web-play.pplive.cn/127.0.0.1#5335 +server=/dyn.ugc.pps.tv/127.0.0.1#5335 +server=/v.pps.tv/127.0.0.1#5335 +server=/inner.kandian.com/127.0.0.1#5335 +server=/ipservice.163.com/127.0.0.1#5335 +server=/so.open.163.com/127.0.0.1#5335 +server=/zb.s.qq.com/127.0.0.1#5335 +server=/ip.kankan.xunlei.com/127.0.0.1#5335 +server=/vxml.56.com/127.0.0.1#5335 +server=/music.sina.com.cn/127.0.0.1#5335 +server=/play.baidu.com/127.0.0.1#5335 +server=/v.iask.com/127.0.0.1#5335 +server=/tv.weibo.com/127.0.0.1#5335 +server=/wtv.v.iask.com/127.0.0.1#5335 +server=/video.sina.com.cn/127.0.0.1#5335 +server=/www.yinyuetai.com/127.0.0.1#5335 +server=/api.letv.com/127.0.0.1#5335 +server=/live.gslb.letv.com/127.0.0.1#5335 +server=/static.itv.letv.com/127.0.0.1#5335 +server=/ip.apps.cntv.cn/127.0.0.1#5335 +server=/vdn.apps.cntv.cn/127.0.0.1#5335 +server=/vdn.live.cntv.cn/127.0.0.1#5335 +server=/vip.sports.cntv.cn/127.0.0.1#5335 +server=/a.play.api.3g.youku.com/127.0.0.1#5335 +server=/i.play.api.3g.youku.com/127.0.0.1#5335 +server=/api.3g.youku.com/127.0.0.1#5335 +server=/tv.api.3g.youku.com/127.0.0.1#5335 +server=/play.api.3g.youku.com/127.0.0.1#5335 +server=/play.api.3g.tudou.com/127.0.0.1#5335 +server=/tv.api.3g.tudou.com/127.0.0.1#5335 +server=/api.3g.tudou.com/127.0.0.1#5335 +server=/api.tv.sohu.com/127.0.0.1#5335 +server=/access.tv.sohu.com/127.0.0.1#5335 +server=/iface.iqiyi.com/127.0.0.1#5335 +server=/iface2.iqiyi.com/127.0.0.1#5335 +server=/cache.m.iqiyi.com/127.0.0.1#5335 +server=/dynamic.app.m.letv.com/127.0.0.1#5335 +server=/dynamic.meizi.app.m.letv.com/127.0.0.1#5335 +server=/dynamic.search.app.m.letv.com/127.0.0.1#5335 +server=/dynamic.live.app.m.letv.com/127.0.0.1#5335 +server=/listso.m.areainfo.ppstream.com/127.0.0.1#5335 +server=/epg.api.pptv.com/127.0.0.1#5335 +server=/play.api.pptv.com/127.0.0.1#5335 +server=/m.letv.com/127.0.0.1#5335 +server=/interface.bilibili.com/127.0.0.1#5335 +server=/3g.music.qq.com/127.0.0.1#5335 +server=/mqqplayer.3g.qq.com/127.0.0.1#5335 +server=/proxy.music.qq.com/127.0.0.1#5335 +server=/proxymc.qq.com/127.0.0.1#5335 +server=/ip2.kugou.com/127.0.0.1#5335 +server=/ip.kugou.com/127.0.0.1#5335 +server=/client.api.ttpod.com/127.0.0.1#5335 +server=/mobi.kuwo.cn/127.0.0.1#5335 +server=/mobilefeedback.kugou.com/127.0.0.1#5335 +server=/tingapi.ting.baidu.com/127.0.0.1#5335 +server=/music.baidu.com/127.0.0.1#5335 +server=/serviceinfo.sdk.duomi.com/127.0.0.1#5335 +server=/music.163.com/127.0.0.1#5335 +server=/www.xiami.com/127.0.0.1#5335 +server=/spark.api.xiami.com/127.0.0.1#5335 +server=/iplocation.geo.qiyi.com/127.0.0.1#5335 +server=/sns.video.qq.com/127.0.0.1#5335 +server=/v5.pc.duomi.com/127.0.0.1#5335 +server=/tms.is.ysten.com/127.0.0.1#5335 +server=/internal.check.duokanbox.com/127.0.0.1#5335 +server=/openapi.youku.com/127.0.0.1#5335 +server=/y.qq.com/127.0.0.1#5335 +ipset=/v.youku.com/oversea +ipset=/api.youku.com/oversea +ipset=/v2.tudou.com/oversea +ipset=/www.tudou.com/oversea +ipset=/s.plcloud.music.qq.com/oversea +ipset=/i.y.qq.com/oversea +ipset=/hot.vrs.sohu.com/oversea +ipset=/live.tv.sohu.com/oversea +ipset=/pad.tv.sohu.com/oversea +ipset=/my.tv.sohu.com/oversea +ipset=/hot.vrs.letv.com/oversea +ipset=/data.video.qiyi.com/oversea +ipset=/cache.video.qiyi.com/oversea +ipset=/cache.vip.qiyi.com/oversea +ipset=/vv.video.qq.com/oversea +ipset=/tt.video.qq.com/oversea +ipset=/ice.video.qq.com/oversea +ipset=/tjsa.video.qq.com/oversea +ipset=/a10.video.qq.com/oversea +ipset=/xyy.video.qq.com/oversea +ipset=/vcq.video.qq.com/oversea +ipset=/vsh.video.qq.com/oversea +ipset=/vbj.video.qq.com/oversea +ipset=/bobo.video.qq.com/oversea +ipset=/flvs.video.qq.com/oversea +ipset=/bkvv.video.qq.com/oversea +ipset=/info.zb.qq.com/oversea +ipset=/geo.js.kankan.xunlei.com/oversea +ipset=/web-play.pptv.com/oversea +ipset=/web-play.pplive.cn/oversea +ipset=/dyn.ugc.pps.tv/oversea +ipset=/v.pps.tv/oversea +ipset=/inner.kandian.com/oversea +ipset=/ipservice.163.com/oversea +ipset=/so.open.163.com/oversea +ipset=/zb.s.qq.com/oversea +ipset=/ip.kankan.xunlei.com/oversea +ipset=/vxml.56.com/oversea +ipset=/music.sina.com.cn/oversea +ipset=/play.baidu.com/oversea +ipset=/v.iask.com/oversea +ipset=/tv.weibo.com/oversea +ipset=/wtv.v.iask.com/oversea +ipset=/video.sina.com.cn/oversea +ipset=/www.yinyuetai.com/oversea +ipset=/api.letv.com/oversea +ipset=/live.gslb.letv.com/oversea +ipset=/static.itv.letv.com/oversea +ipset=/ip.apps.cntv.cn/oversea +ipset=/vdn.apps.cntv.cn/oversea +ipset=/vdn.live.cntv.cn/oversea +ipset=/vip.sports.cntv.cn/oversea +ipset=/a.play.api.3g.youku.com/oversea +ipset=/i.play.api.3g.youku.com/oversea +ipset=/api.3g.youku.com/oversea +ipset=/tv.api.3g.youku.com/oversea +ipset=/play.api.3g.youku.com/oversea +ipset=/play.api.3g.tudou.com/oversea +ipset=/tv.api.3g.tudou.com/oversea +ipset=/api.3g.tudou.com/oversea +ipset=/api.tv.sohu.com/oversea +ipset=/access.tv.sohu.com/oversea +ipset=/iface.iqiyi.com/oversea +ipset=/iface2.iqiyi.com/oversea +ipset=/cache.m.iqiyi.com/oversea +ipset=/dynamic.app.m.letv.com/oversea +ipset=/dynamic.meizi.app.m.letv.com/oversea +ipset=/dynamic.search.app.m.letv.com/oversea +ipset=/dynamic.live.app.m.letv.com/oversea +ipset=/listso.m.areainfo.ppstream.com/oversea +ipset=/epg.api.pptv.com/oversea +ipset=/play.api.pptv.com/oversea +ipset=/m.letv.com/oversea +ipset=/interface.bilibili.com/oversea +ipset=/3g.music.qq.com/oversea +ipset=/mqqplayer.3g.qq.com/oversea +ipset=/proxy.music.qq.com/oversea +ipset=/proxymc.qq.com/oversea +ipset=/ip2.kugou.com/oversea +ipset=/ip.kugou.com/oversea +ipset=/client.api.ttpod.com/oversea +ipset=/mobi.kuwo.cn/oversea +ipset=/mobilefeedback.kugou.com/oversea +ipset=/tingapi.ting.baidu.com/oversea +ipset=/music.baidu.com/oversea +ipset=/serviceinfo.sdk.duomi.com/oversea +ipset=/music.163.com/oversea +ipset=/www.xiami.com/oversea +ipset=/spark.api.xiami.com/oversea +ipset=/iplocation.geo.qiyi.com/oversea +ipset=/sns.video.qq.com/oversea +ipset=/v5.pc.duomi.com/oversea +ipset=/tms.is.ysten.com/oversea +ipset=/internal.check.duokanbox.com/oversea +ipset=/openapi.youku.com/oversea +ipset=/y.qq.com/oversea diff --git a/luci-app-ssr-plus/root/etc/ssrplus/white.list b/luci-app-ssr-plus/root/etc/ssrplus/white.list new file mode 100644 index 000000000..9055fcb91 --- /dev/null +++ b/luci-app-ssr-plus/root/etc/ssrplus/white.list @@ -0,0 +1,7 @@ +bilibili.com +bilibili.cn +bilivideo.com +bilivideo.cn +biliapi.com +biliapi.net +apple.com \ No newline at end of file diff --git a/luci-app-ssr-plus/root/etc/uci-defaults/luci-ssr-plus b/luci-app-ssr-plus/root/etc/uci-defaults/luci-ssr-plus new file mode 100755 index 000000000..3ff99ae46 --- /dev/null +++ b/luci-app-ssr-plus/root/etc/uci-defaults/luci-ssr-plus @@ -0,0 +1,37 @@ +#!/bin/sh +uci -q batch <<-EOF >/dev/null +delete ucitrack.@shadowsocksr[-1] +add ucitrack shadowsocksr +set ucitrack.@shadowsocksr[-1].init=shadowsocksr +commit ucitrack +delete firewall.shadowsocksr +set firewall.shadowsocksr=include +set firewall.shadowsocksr.type=script +set firewall.shadowsocksr.path=/var/etc/shadowsocksr.include +set firewall.shadowsocksr.reload=1 +commit firewall +EOF +rm -rf /etc/config/shadowsocksr-opkg /etc/ssrplus/*opkg +touch /etc/ssrplus/china_ssr.txt +touch /etc/ssrplus/deny.list +touch /etc/ssrplus/white.list +touch /etc/ssrplus/black.list +touch /etc/ssrplus/netflix.list +touch /etc/ssrplus/netflixip.list +touch /etc/ssrplus/gfw_base.conf +touch /etc/ssrplus/gfw_list.conf +touch /etc/ssrplus/oversea_list.conf +touch /etc/ssrplus/ad.conf +touch /etc/config/shadowsocksr +if [ ! -s "/etc/config/shadowsocksr" ]; then +/etc/init.d/shadowsocksr reset +fi +sed -i "s/option type 'vmess'"/"option type 'v2ray'\n\toption v2ray_protocol 'vmess'/g" /etc/config/shadowsocksr +sed -i "s/option type 'vless'"/"option type 'v2ray'\n\toption v2ray_protocol 'vless'/g" /etc/config/shadowsocksr +if [ -s "/etc/uwsgi/vassals/luci-webui.ini" ];then + limit=$(cat /etc/uwsgi/vassals/luci-webui.ini | grep -Eo "limit-as.*"|grep -Eo "[0-9]+") + [ $limit -lt 5000 ] && sed -i '/limit-as/c\limit-as = 5000' /etc/uwsgi/vassals/luci-webui.ini && \ + /etc/init.d/uwsgi restart +fi +rm -rf /tmp/luci-modulecache /tmp/luci-indexcache +exit 0 diff --git a/luci-app-ssr-plus/root/usr/bin/ssr-monitor b/luci-app-ssr-plus/root/usr/bin/ssr-monitor new file mode 100755 index 000000000..b84d85506 --- /dev/null +++ b/luci-app-ssr-plus/root/usr/bin/ssr-monitor @@ -0,0 +1,114 @@ +#!/bin/sh +# +# Copyright (C) 2017 openwrt-ssr +# Copyright (C) 2017 yushi studio +# +# This is free software, licensed under the GNU General Public License v3. +# See /LICENSE for more information. +# +. $IPKG_INSTROOT/etc/init.d/shadowsocksr +LOCK_FILE="/var/lock/ssr-monitor.lock" +[ -f "$LOCK_FILE" ] && exit 2 +touch "$LOCK_FILE" +server_process_count=$1 +redir_tcp_process=$2 +redir_udp_process=$3 +kcp_process=$4 +local_process=$5 +pdnsd_process=$6 +if [ -z "$pdnsd_process" ]; then + pdnsd_process=0 +fi +i=0 +GLOBAL_SERVER=$(uci_get_by_type global global_server) +server=$(uci_get_by_name $GLOBAL_SERVER server) +kcp_port=$(uci_get_by_name $GLOBAL_SERVER kcp_port) +server_port=$(uci_get_by_name $GLOBAL_SERVER server_port) +password=$(uci_get_by_name $GLOBAL_SERVER kcp_password) +kcp_param=$(uci_get_by_name $GLOBAL_SERVER kcp_param) +[ "$password" != "" ] && password="--key "${password} + +while [ "1" == "1" ]; do #死循环 + sleep 000030s + #redir tcp + if [ "$redir_tcp_process" -gt 0 ]; then + icount=$(busybox ps -w | grep ssr-retcp | grep -v grep | wc -l) + if [ "$icount" == 0 ]; then + logger -t "$NAME" "ssrplus redir tcp error.restart!" + echolog "ssrplus redir tcp error.restart!" + /etc/init.d/shadowsocksr restart + exit 0 + fi + fi + #redir udp + if [ "$redir_udp_process" -gt 0 ]; then + icount=$(busybox ps -w | grep ssr-reudp | grep -v grep | wc -l) + if [ "$icount" == 0 ]; then + logger -t "$NAME" "ssrplus redir udp error.restart!" + echolog "ssrplus redir udp error.restart!" + /etc/init.d/shadowsocksr restart + exit 0 + fi + fi + #server + if [ "$server_process_count" -gt 0 ]; then + icount=$(busybox ps -w | grep ssr-server | grep -v grep | wc -l) + if [ "$icount" -lt "$server_process_count" ]; then #如果进程挂掉就重启它 + logger -t "$NAME" "ssrplus server error.restart!" + echolog "ssrplus server error.restart!" + kill -9 $(busybox ps -w | grep ssr-server | grep -v grep | awk '{print $1}') >/dev/null 2>&1 + /etc/init.d/shadowsocksr restart + exit 0 + fi + fi + #kcptun + if [ "$kcp_process" -gt 0 ]; then + icount=$(busybox ps -w | grep kcptun-client | grep -v grep | wc -l) + if [ "$icount" -lt "$kcp_process" ]; then #如果进程挂掉就重启它 + logger -t "$NAME" "ssrplus kcptun error.restart!" + echolog "ssrplus kcptun error.restart!" + killall -q -9 kcptun-client + (/usr/bin/kcptun-client -r $server:$kcp_port -l :$server_port $password $kcp_param &) + fi + fi + #localsocks + if [ "$local_process" -gt 0 ]; then + icount=$(busybox ps -w | grep ssr-local | grep -v grep | wc -l) + if [ "$icount" -lt "$local_process" ]; then #如果进程挂掉就重启它 + logger -t "$NAME" "global socks server error.restart!" + echolog "global socks server error.restart!" + kill -9 $(busybox ps -w | grep ssr-local | grep -v grep | awk '{print $1}') >/dev/null 2>&1 + /etc/init.d/shadowsocksr restart + exit 0 + fi + fi + #pdnsd + if [ "$pdnsd_process" -eq 1 ]; then + icount=$(busybox ps -w | grep $TMP_BIN_PATH/pdnsd | grep -v grep | wc -l) + if [ "$icount" -lt "$pdnsd_process" ]; then #如果进程挂掉就重启它 + logger -t "$NAME" "pdnsd tunnel error.restart!" + echolog "pdnsd tunnel error.restart!" + if [ -f /var/run/pdnsd.pid ]; then + kill $(cat /var/run/pdnsd.pid) >/dev/null 2>&1 + else + kill -9 $(ps | grep $TMP_PATH/pdnsd.conf | grep -v grep | awk '{print $1}') >/dev/null 2>&1 + fi + ln_start_bin $(first_type pdnsd) pdnsd -c $TMP_PATH/pdnsd.conf + fi + fi + #dns2socks + if [ "$pdnsd_process" -eq 2 ]; then + icount=$(busybox ps -w | grep -e ssrplus-dns -e "dns2socks 127.0.0.1 $tmp_dns_port" | grep -v grep | wc -l) + if [ "$icount" -lt 2 ]; then #如果进程挂掉就重启它 + logger -t "$NAME" "dns2socks $dnsstr tunnel error.restart!" + echolog "dns2socks $dnsstr tunnel error.restart!" + dnsstr=$(uci_get_by_type global tunnel_forward 8.8.4.4:53) + dnsserver=$(echo "$dnsstr" | awk -F ':' '{print $1}') + dnsport=$(echo "$dnsstr" | awk -F ':' '{print $2}') + kill -9 $(busybox ps -w | grep ssrplus-dns | grep -v grep | awk '{print $1}') >/dev/null 2>&1 + kill -9 $(busybox ps -w | grep "dns2socks 127.0.0.1 $tmp_dns_port" | grep -v grep | awk '{print $1}') >/dev/null 2>&1 + ln_start_bin $(first_type microsocks) microsocks -i 127.0.0.1 -p $tmp_dns_port ssrplus-dns + ln_start_bin $(first_type dns2socks) dns2socks 127.0.0.1:$tmp_dns_port $dnsserver:$dnsport 127.0.0.1:$dns_port -q + fi + fi +done diff --git a/luci-app-ssr-plus/root/usr/bin/ssr-rules b/luci-app-ssr-plus/root/usr/bin/ssr-rules new file mode 100755 index 000000000..06aa942b5 --- /dev/null +++ b/luci-app-ssr-plus/root/usr/bin/ssr-rules @@ -0,0 +1,424 @@ +#!/bin/sh +# +# Copyright (C) 2017 openwrt-ssr +# Copyright (C) 2017 yushi studio +# +# This is free software, licensed under the GNU General Public License v3. +# See /LICENSE for more information. +# +TAG="_SS_SPEC_RULE_" # comment tag +IPT="iptables -t nat" # alias of iptables +FWI=$(uci get firewall.shadowsocksr.path 2>/dev/null) # firewall include file +usage() { + cat <<-EOF + Usage: ssr-rules [options] + + Valid options are: + + -s ip address of shadowsocksr remote server + -l port number of shadowsocksr local server + -S ip address of shadowsocksr remote UDP server + -L port number of shadowsocksr local UDP server + -i a file content is bypassed ip list + -a lan ip of access control, need a prefix to + define access control mode + -b wan ip of will be bypassed + -w wan ip of will be forwarded + -B lan ip of will be bypassed proxy + -p lan ip of will be global proxy + -G lan ip of will be game mode proxy + -D proxy ports + -F shunt mode + -N shunt server IP + -M shunt proxy mode + -m Interface name + -I a file content is bypassed shunt ip list + -e extra options for iptables + -o apply the rules to the OUTPUT chain + -O apply the global rules to the OUTPUT chain + -u enable udprelay mode, TPROXY is required + -U enable udprelay mode, using different IP + and ports for TCP and UDP + -f flush the rules + -g gfwlist mode + -r router mode + -c oversea mode + -z all mode + -h show this help message and exit + EOF + exit $1 +} + +loger() { + # 1.alert 2.crit 3.err 4.warn 5.notice 6.info 7.debug + logger -st ssr-rules[$$] -p$1 $2 +} + +flush_r() { + flush_iptables() { + local ipt="iptables -t $1" + local DAT=$(iptables-save -t $1) + eval $(echo "$DAT" | grep "$TAG" | sed -e 's/^-A/$ipt -D/' -e 's/$/;/') + for chain in $(echo "$DAT" | awk '/^:SS_SPEC/{print $1}'); do + $ipt -F ${chain:1} 2>/dev/null && $ipt -X ${chain:1} + done + } + flush_iptables nat + flush_iptables mangle + ip rule del fwmark 0x01/0x01 table 100 2>/dev/null + ip route del local 0.0.0.0/0 dev lo table 100 2>/dev/null + ipset -X ss_spec_lan_ac 2>/dev/null + ipset -X ss_spec_wan_ac 2>/dev/null + ipset -X ssr_gen_router 2>/dev/null + ipset -X fplan 2>/dev/null + ipset -X bplan 2>/dev/null + ipset -X gmlan 2>/dev/null + ipset -X oversea 2>/dev/null + ipset -X whitelist 2>/dev/null + ipset -X blacklist 2>/dev/null + ipset -X netflix 2>/dev/null + [ -n "$FWI" ] && echo '#!/bin/sh' >$FWI + return 0 +} + +ipset_r() { + [ -f "$IGNORE_LIST" ] && /usr/share/shadowsocksr/chinaipset.sh $IGNORE_LIST + $IPT -N SS_SPEC_WAN_AC + $IPT -I SS_SPEC_WAN_AC -p tcp ! --dport 53 -d $server -j RETURN + ipset -N gmlan hash:net 2>/dev/null + for ip in $LAN_GM_IP; do ipset -! add gmlan $ip; done + case "$RUNMODE" in + router) + ipset -! -R <<-EOF || return 1 + create ss_spec_wan_ac hash:net + $(gen_spec_iplist | sed -e "s/^/add ss_spec_wan_ac /") + EOF + $IPT -A SS_SPEC_WAN_AC -m set --match-set ss_spec_wan_ac dst -j RETURN + $IPT -A SS_SPEC_WAN_AC -m set --match-set china dst -j RETURN + $IPT -A SS_SPEC_WAN_AC -m set --match-set gmlan src -m set ! --match-set china dst -j SS_SPEC_WAN_FW + $IPT -A SS_SPEC_WAN_AC -j SS_SPEC_WAN_FW + ;; + gfw) + ipset -N gfwlist hash:net 2>/dev/null + $IPT -A SS_SPEC_WAN_AC -m set --match-set china dst -j RETURN + $IPT -A SS_SPEC_WAN_AC -m set --match-set gfwlist dst -j SS_SPEC_WAN_FW + $IPT -A SS_SPEC_WAN_AC -m set --match-set gmlan src -m set ! --match-set china dst -j SS_SPEC_WAN_FW + ;; + oversea) + ipset -N oversea hash:net 2>/dev/null + $IPT -I SS_SPEC_WAN_AC -m set --match-set oversea dst -j SS_SPEC_WAN_FW + $IPT -A SS_SPEC_WAN_AC -m set --match-set gmlan src -j SS_SPEC_WAN_FW + $IPT -A SS_SPEC_WAN_AC -m set --match-set china dst -j SS_SPEC_WAN_FW + ;; + all) + $IPT -A SS_SPEC_WAN_AC -j SS_SPEC_WAN_FW + ;; + esac + ipset -N fplan hash:net 2>/dev/null + for ip in $LAN_FP_IP; do ipset -! add fplan $ip; done + $IPT -I SS_SPEC_WAN_AC -m set --match-set fplan src -j SS_SPEC_WAN_FW + ipset -N bplan hash:net 2>/dev/null + for ip in $LAN_BP_IP; do ipset -! add bplan $ip; done + $IPT -I SS_SPEC_WAN_AC -m set --match-set bplan src -j RETURN + ipset -N whitelist hash:net 2>/dev/null + ipset -N blacklist hash:net 2>/dev/null + $IPT -I SS_SPEC_WAN_AC -m set --match-set blacklist dst -j SS_SPEC_WAN_FW + $IPT -I SS_SPEC_WAN_AC -m set --match-set whitelist dst -j RETURN + if [ $(ipset list music -name -quiet | grep music) ]; then + $IPT -I SS_SPEC_WAN_AC -m set --match-set music dst -j RETURN 2>/dev/null + fi + for ip in $WAN_BP_IP; do ipset -! add whitelist $ip; done + for ip in $WAN_FW_IP; do ipset -! add blacklist $ip; done + if [ "$SHUNT_PORT" != "0" ]; then + ipset -N netflix hash:net 2>/dev/null + for ip in $(cat ${SHUNT_LIST:=/dev/null} 2>/dev/null); do ipset -! add netflix $ip; done + case "$SHUNT_PORT" in + 0) ;; + 1) + $IPT -I SS_SPEC_WAN_AC -p tcp -m set --match-set netflix dst -j REDIRECT --to-ports $local_port + ;; + *) + $IPT -I SS_SPEC_WAN_AC -p tcp -m set --match-set netflix dst -j REDIRECT --to-ports $SHUNT_PORT + if [ "$SHUNT_PROXY" == "1" ]; then + $IPT -I SS_SPEC_WAN_AC -p tcp -d $SHUNT_IP -j REDIRECT --to-ports $local_port + else + ipset -! add whitelist $SHUNT_IP + fi + ;; + esac + fi + return $? +} + +fw_rule() { + $IPT -N SS_SPEC_WAN_FW + $IPT -A SS_SPEC_WAN_FW -d 0.0.0.0/8 -j RETURN + $IPT -A SS_SPEC_WAN_FW -d 10.0.0.0/8 -j RETURN + $IPT -A SS_SPEC_WAN_FW -d 127.0.0.0/8 -j RETURN + $IPT -A SS_SPEC_WAN_FW -d 169.254.0.0/16 -j RETURN + $IPT -A SS_SPEC_WAN_FW -d 172.16.0.0/12 -j RETURN + $IPT -A SS_SPEC_WAN_FW -d 192.168.0.0/16 -j RETURN + $IPT -A SS_SPEC_WAN_FW -d 224.0.0.0/4 -j RETURN + $IPT -A SS_SPEC_WAN_FW -d 240.0.0.0/4 -j RETURN + $IPT -A SS_SPEC_WAN_FW -p tcp $PROXY_PORTS -j REDIRECT --to-ports $local_port 2>/dev/null || { + loger 3 "Can't redirect, please check the iptables." + exit 1 + } + return $? +} + +ac_rule() { + if [ -n "$LAN_AC_IP" ]; then + case "${LAN_AC_IP:0:1}" in + w | W) + MATCH_SET="-m set --match-set ss_spec_lan_ac src" + ;; + b | B) + MATCH_SET="-m set ! --match-set ss_spec_lan_ac src" + ;; + *) + loger 3 "Bad argument \`-a $LAN_AC_IP\`." + return 2 + ;; + esac + fi + ipset -! -R <<-EOF || return 1 + create ss_spec_lan_ac hash:net + $(for ip in ${LAN_AC_IP:1}; do echo "add ss_spec_lan_ac $ip"; done) + EOF + if [ -z "$Interface" ]; then + $IPT -I PREROUTING 1 -p tcp $EXT_ARGS $MATCH_SET -m comment --comment "$TAG" -j SS_SPEC_WAN_AC + else + for name in $Interface; do + local IFNAME=$(uci -P /var/state get network.$name.ifname 2>/dev/null) + [ -n "$IFNAME" ] && $IPT -I PREROUTING 1 ${IFNAME:+-i $IFNAME} -p tcp $EXT_ARGS $MATCH_SET -m comment --comment "$TAG" -j SS_SPEC_WAN_AC + done + fi + + case "$OUTPUT" in + 1) + $IPT -I OUTPUT 1 -p tcp $EXT_ARGS -m comment --comment "$TAG" -j SS_SPEC_WAN_AC + ;; + 2) + ipset -! -R <<-EOF || return 1 + create ssr_gen_router hash:net + $(gen_spec_iplist | sed -e "s/^/add ssr_gen_router /") + EOF + $IPT -N SS_SPEC_ROUTER && \ + $IPT -A SS_SPEC_ROUTER -m set --match-set ssr_gen_router dst -j RETURN && \ + $IPT -A SS_SPEC_ROUTER -j SS_SPEC_WAN_FW + $IPT -I OUTPUT 1 -p tcp -m comment --comment "$TAG" -j SS_SPEC_ROUTER + ;; + esac + return $? +} + +tp_rule() { + [ -n "$TPROXY" ] || return 0 + ip rule add fwmark 0x01/0x01 table 100 + ip route add local 0.0.0.0/0 dev lo table 100 + local ipt="iptables -t mangle" + $ipt -N SS_SPEC_TPROXY + $ipt -A SS_SPEC_TPROXY -p udp --dport 53 -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp -d 0.0.0.0/8 -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp -d 10.0.0.0/8 -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp -d 127.0.0.0/8 -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp -d 169.254.0.0/16 -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp -d 172.16.0.0/12 -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp -d 192.168.0.0/16 -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp -d 224.0.0.0/4 -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp -d 240.0.0.0/4 -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp ! --dport 53 -d $SERVER -j RETURN + [ "$server" != "$SERVER" ] && ipset -! add whitelist $SERVER + $ipt -A SS_SPEC_TPROXY -p udp -m set --match-set bplan src -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp $PROXY_PORTS -m set --match-set fplan src -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 + case "$RUNMODE" in + router) + $ipt -A SS_SPEC_TPROXY -p udp -m set --match-set ss_spec_wan_ac dst -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp -m set --match-set china dst -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp --dport 443 -j DROP + $ipt -A SS_SPEC_TPROXY -p udp --dport 80 -j DROP + $ipt -A SS_SPEC_TPROXY -p udp -m set --match-set gmlan src -m set ! --match-set china dst -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 + $ipt -A SS_SPEC_TPROXY -p udp $PROXY_PORTS -m set ! --match-set ss_spec_wan_ac dst -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 + ;; + gfw) + $ipt -A SS_SPEC_TPROXY -p udp -m set --match-set china dst -j RETURN + $ipt -A SS_SPEC_TPROXY -p udp --dport 443 -j DROP + $ipt -A SS_SPEC_TPROXY -p udp --dport 80 -j DROP + $ipt -A SS_SPEC_TPROXY -p udp $PROXY_PORTS -m set --match-set gfwlist dst -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 + $ipt -A SS_SPEC_TPROXY -p udp -m set --match-set gmlan src -m set ! --match-set china dst -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 + ;; + oversea) + $ipt -A SS_SPEC_TPROXY -p udp $PROXY_PORTS -m set --match-set oversea src -m dst -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 + $ipt -A SS_SPEC_TPROXY -p udp -m set --match-set gmlan src -m set -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 + $ipt -A SS_SPEC_TPROXY -p udp $PROXY_PORTS -m set --match-set china dst -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 + ;; + all) + $ipt -A SS_SPEC_TPROXY -p udp $PROXY_PORTS -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 + ;; + esac + if [ -z "$Interface" ]; then + $ipt -I PREROUTING 1 -p udp $EXT_ARGS $MATCH_SET -m comment --comment "$TAG" -j SS_SPEC_TPROXY + else + for name in $Interface; do + local IFNAME=$(uci -P /var/state get network.$name.ifname 2>/dev/null) + [ -n "$IFNAME" ] && $ipt -I PREROUTING 1 ${IFNAME:+-i $IFNAME} -p udp $EXT_ARGS $MATCH_SET -m comment --comment "$TAG" -j SS_SPEC_TPROXY + done + fi + return $? +} + +get_wan_ip() { + cat <<-EOF | grep -E "^([0-9]{1,3}\.){3}[0-9]{1,3}" + $server + $SERVER + $WAN_BP_IP + EOF +} + +gen_spec_iplist() { + cat <<-EOF + 0.0.0.0/8 + 10.0.0.0/8 + 100.64.0.0/10 + 127.0.0.0/8 + 169.254.0.0/16 + 172.16.0.0/12 + 192.0.0.0/24 + 192.0.2.0/24 + 192.88.99.0/24 + 192.168.0.0/16 + 198.18.0.0/15 + 198.51.100.0/24 + 203.0.113.0/24 + 224.0.0.0/4 + 240.0.0.0/4 + 255.255.255.255 + $(get_wan_ip) + EOF +} + +gen_include() { + [ -n "$FWI" ] || return 0 + extract_rules() { + echo "*$1" + iptables-save -t $1 | grep SS_SPEC_ | sed -e "s/^-A \(OUTPUT\|PREROUTING\)/-I \1 1/" + echo 'COMMIT' + } + cat <<-EOF >>$FWI + iptables-save -c | grep -v "SS_SPEC" | iptables-restore -c + iptables-restore -n <<-EOT + $(extract_rules nat) + $(extract_rules mangle) + EOT + EOF + return 0 +} + +while getopts ":m:s:l:S:L:i:e:a:B:b:w:p:G:D:F:N:M:I:oOuUfgrczh" arg; do + case "$arg" in + m) + Interface=$OPTARG + ;; + s) + server=$OPTARG + ;; + l) + local_port=$OPTARG + ;; + S) + SERVER=$OPTARG + ;; + L) + LOCAL_PORT=$OPTARG + ;; + i) + IGNORE_LIST=$OPTARG + ;; + e) + EXT_ARGS=$OPTARG + ;; + a) + LAN_AC_IP=$OPTARG + ;; + B) + LAN_BP_IP=$OPTARG + ;; + b) + WAN_BP_IP=$(for ip in $OPTARG; do echo $ip; done) + ;; + w) + WAN_FW_IP=$OPTARG + ;; + p) + LAN_FP_IP=$OPTARG + ;; + G) + LAN_GM_IP=$OPTARG + ;; + D) + PROXY_PORTS=$OPTARG + ;; + F) + SHUNT_PORT=$OPTARG + ;; + N) + SHUNT_IP=$OPTARG + ;; + M) + SHUNT_PROXY=$OPTARG + ;; + I) + SHUNT_LIST=$OPTARG + ;; + o) + OUTPUT=1 + ;; + O) + OUTPUT=2 + ;; + u) + TPROXY=1 + ;; + U) + TPROXY=2 + ;; + g) + RUNMODE=gfw + ;; + r) + RUNMODE=router + ;; + c) + RUNMODE=oversea + ;; + z) + RUNMODE=all + ;; + f) + flush_r + exit 0 + ;; + h) usage 0 ;; + esac +done + +if [ -z "$server" -o -z "$local_port" ]; then + usage 2 +fi + +case "$TPROXY" in +1) + SERVER=$server + LOCAL_PORT=$local_port + ;; +2) + : ${SERVER:?"You must assign an ip for the udp relay server."} + : ${LOCAL_PORT:?"You must assign a port for the udp relay server."} + ;; +esac + +flush_r && fw_rule && ipset_r && ac_rule && tp_rule && gen_include +RET=$? +[ "$RET" = 0 ] || loger 3 "Start failed!" +exit $RET diff --git a/luci-app-ssr-plus/root/usr/bin/ssr-switch b/luci-app-ssr-plus/root/usr/bin/ssr-switch new file mode 100755 index 000000000..5a2a37090 --- /dev/null +++ b/luci-app-ssr-plus/root/usr/bin/ssr-switch @@ -0,0 +1,155 @@ +#!/bin/sh /etc/rc.common +# +# Copyright (C) 2017 openwrt-ssr +# Copyright (C) 2017 yushi studio +# +# This is free software, licensed under the GNU General Public License v3. +# See /LICENSE for more information. +# + +. $IPKG_INSTROOT/etc/init.d/shadowsocksr +LOCK_FILE="/var/lock/ssr-switch.lock" +[ -f "$LOCK_FILE" ] && exit 2 +touch "$LOCK_FILE" +LOG_FILE=/var/log/ssrplus.log + +cycle_time=60 +switch_time=3 +normal_flag=0 +server_locate=0 +server_count=0 +ENABLE_SERVER=nil +[ -n "$1" ] && cycle_time=$1 +[ -n "$2" ] && switch_time=$2 +DEFAULT_SERVER=$(uci_get_by_type global global_server) +CURRENT_SERVER=$DEFAULT_SERVER + +#判断代理是否正常 +check_proxy() { + local result=0 + local try_count=$(uci_get_by_type global switch_try_count 3) + for i in $(seq 1 $try_count); do + /usr/bin/ssr-check www.google.com 80 $switch_time 1 + if [ "$?" == "0" ]; then + # echolog "Check Google Proxy Success, count=$i" + result=0 + break + else + # echolog "Check Google Proxy Fail, count=$i" + /usr/bin/ssr-check www.baidu.com 80 $switch_time 1 + if [ "$?" == "0" ]; then + result=1 + else + result=2 + fi + fi + sleep 1 + done + return $result +} + +test_proxy() { + local servername=$(uci_get_by_name $1 server) + local serverport=$(uci_get_by_name $1 server_port) + ipset add whitelist $servername 2>/dev/null + tcping -q -c 3 -i 1 -t 2 -p $serverport $servername + if [ "$?" -gt "0" ]; then + ipset del whitelist $servername 2>/dev/null + return 1 + fi + /usr/bin/ssr-check $servername $serverport $switch_time + local ret=$? + ipset del whitelist $servername 2>/dev/null + if [ "$ret" == "0" ]; then + return 0 + else + return 1 + fi +} + +search_proxy() { + let server_count=server_count+1 + [ "$normal_flag" == "1" -a "$server_count" -le "$server_locate" ] && return 0 + [ "$(uci_get_by_name $1 switch_enable 0)" != "1" ] && return 1 + [ $ENABLE_SERVER != nil ] && return 0 + [ "$1" == "$CURRENT_SERVER" ] && return 0 + local servername=$(uci_get_by_name $1 server) + local serverport=$(uci_get_by_name $1 server_port) + ipset add whitelist $servername 2>/dev/null + /usr/bin/ssr-check $servername $serverport $switch_time + local ret=$? + ipset del whitelist $servername 2>/dev/null + if [ "$ret" == "0" ]; then + server_locate=$server_count + ENABLE_SERVER=$1 + return 0 + else + return 1 + fi +} + +#选择可用的代理 +select_proxy() { + config_load $NAME + ENABLE_SERVER=nil + mkdir -p /var/run /var/etc + server_count=0 + config_foreach search_proxy servers +} + +#切换代理 +switch_proxy() { + /etc/init.d/shadowsocksr restart $1 + return 0 +} + +start() { + #不支持kcptun启用时的切换 + [ $(uci_get_by_name $DEFAULT_SERVER kcp_enable) = "1" ] && return 1 + while [ "1" == "1" ]; do #死循环 + sleep 0000$cycle_time + LOGTIME=$(date "+%Y-%m-%d %H:%M:%S") + #判断当前代理是否为缺省服务器 + if [ "$CURRENT_SERVER" != "$DEFAULT_SERVER" ]; then + #echo "not default proxy" + echolog "Current server is not default Main server, try to switch back." + #检查缺省服务器是否正常 + if test_proxy $DEFAULT_SERVER; then + #echo "switch to default proxy" + echolog "Main server is avilable." + #缺省服务器正常,切换回来 + CURRENT_SERVER=$DEFAULT_SERVER + switch_proxy $CURRENT_SERVER + echolog "switch to default "$(uci_get_by_name $CURRENT_SERVER alias)" proxy!" + else + echolog "Main server is NOT avilable.Continue using current server." + fi + fi + #判断当前代理是否正常 + #echolog "Start checking if the current server is available." + check_proxy + current_ret=$? + if [ "$current_ret" == "1" ]; then + #当前代理错误,判断有无可用的服务器 + #echo "current error" + echolog "Current server error, try to switch another server." + select_proxy + if [ "$ENABLE_SERVER" != nil ]; then + #有其他服务器可用,进行切换 + #echo $(uci_get_by_name $new_proxy server) + echolog "Another server is avilable, now switching server." + CURRENT_SERVER=$ENABLE_SERVER + switch_proxy $CURRENT_SERVER + normal_flag=1 + echolog "Switch to "$(uci_get_by_name $CURRENT_SERVER alias)" proxy!" + else + switch_proxy $CURRENT_SERVER + normal_flag=1 + echolog "Try restart current server." + fi + else + normal_flag=0 + # echolog "ShadowsocksR No Problem." + fi + done +} diff --git a/luci-app-ssr-plus/root/usr/share/rpcd/acl.d/luci-app-ssr-plus.json b/luci-app-ssr-plus/root/usr/share/rpcd/acl.d/luci-app-ssr-plus.json new file mode 100644 index 000000000..2c3812591 --- /dev/null +++ b/luci-app-ssr-plus/root/usr/share/rpcd/acl.d/luci-app-ssr-plus.json @@ -0,0 +1,11 @@ +{ + "luci-app-ssr-plus": { + "description": "Grant UCI access for luci-app-ssr-plus", + "read": { + "uci": ["shadowsocksr"] + }, + "write": { + "uci": ["shadowsocksr"] + } + } +} \ No newline at end of file diff --git a/luci-app-ssr-plus/root/usr/share/shadowsocksr/chinaipset.sh b/luci-app-ssr-plus/root/usr/share/shadowsocksr/chinaipset.sh new file mode 100755 index 000000000..4015644f9 --- /dev/null +++ b/luci-app-ssr-plus/root/usr/share/shadowsocksr/chinaipset.sh @@ -0,0 +1,7 @@ +#!/bin/sh +[ -f "$1" ] && china_ip=$1 +ipset -! flush china 2>/dev/null +ipset -! -R <<-EOF || exit 1 + create china hash:net + $(cat ${china_ip:=/etc/ssrplus/china_ssr.txt} | sed -e "s/^/add china /") +EOF diff --git a/luci-app-ssr-plus/root/usr/share/shadowsocksr/gen_config.lua b/luci-app-ssr-plus/root/usr/share/shadowsocksr/gen_config.lua new file mode 100755 index 000000000..e7f1a0cdd --- /dev/null +++ b/luci-app-ssr-plus/root/usr/share/shadowsocksr/gen_config.lua @@ -0,0 +1,284 @@ +local ucursor = require"luci.model.uci".cursor() +local json = require "luci.jsonc" +local server_section = arg[1] +local proto = arg[2] +local local_port = arg[3] or "0" +local socks_port = arg[4] or "0" +local server = ucursor:get_all("shadowsocksr", server_section) +local outbound_settings = nil +function vmess_vless() + outbound_settings = { + vnext = { + { + address = server.server, + port = tonumber(server.server_port), + users = { + { + id = server.vmess_id, + security = (server.v2ray_protocol == "vmess" or not server.v2ray_protocol) and server.security or nil, + encryption = (server.v2ray_protocol == "vless") and server.vless_encryption or nil, + flow = (server.xtls == '1') and (server.vless_flow and server.vless_flow or "xtls-rprx-splice") or nil + } + } + } + } + } +end +function trojan_shadowsocks() + outbound_settings = { + servers = { + { + address = server.server, + port = tonumber(server.server_port), + password = server.password, + method = (server.v2ray_protocol == "shadowsocks") and server.encrypt_method_v2ray_ss or nil, + flow = (server.v2ray_protocol == "trojan") and (server.xtls == '1') and (server.vless_flow and server.vless_flow or "xtls-rprx-splice") or nil, + ivCheck = (server.v2ray_protocol == "shadowsocks") and (server.ivCheck == '1') or nil + } + } + } +end +function socks_http() + outbound_settings = { + servers = { + { + address = server.server, + port = tonumber(server.server_port), + users = (server.auth_enable == "1") and { + { + user = server.username, + pass = server.password + } + } or nil + } + } + } +end +local outbound = {} +function outbound:new(o) + o = o or {} + setmetatable(o, self) + self.__index = self + return o +end +function outbound:handleIndex(index) + local switch = { + vmess = function() + vmess_vless() + end, + vless = function() + vmess_vless() + end, + trojan = function() + trojan_shadowsocks() + end, + shadowsocks = function() + trojan_shadowsocks() + end, + socks = function() + socks_http() + end, + http = function() + socks_http() + end + } + if switch[index] then + switch[index]() + end +end +local settings = outbound:new() +settings:handleIndex(server.v2ray_protocol) +local Xray = { + log = { + -- error = "/var/ssrplus.log", + loglevel = "warning" + }, + -- 传入连接 + inbound = (local_port ~= "0") and { + -- listening + port = tonumber(local_port), + protocol = "dokodemo-door", + settings = {network = proto, followRedirect = true}, + sniffing = {enabled = true, destOverride = {"http", "tls"}} + } or nil, + -- 开启 socks 代理 + inboundDetour = (proto:find("tcp") and socks_port ~= "0") and { + { + -- socks + protocol = "socks", + port = tonumber(socks_port), + settings = {auth = "noauth", udp = true} + } + } or nil, + -- 传出连接 + outbound = { + protocol = server.v2ray_protocol, + settings = outbound_settings, + -- 底层传输配置 + streamSettings = { + network = server.transport or "tcp", + security = (server.xtls == '1') and "xtls" or (server.tls == '1') and "tls" or nil, + tlsSettings = (server.tls == '1' and (server.insecure == "1" or server.tls_host or server.fingerprint)) and { + -- tls + fingerprint = server.fingerprint, + allowInsecure = (server.insecure == "1") and true or nil, + serverName = server.tls_host + } or nil, + xtlsSettings = (server.xtls == '1' and (server.insecure == "1" or server.tls_host)) and { + -- xtls + allowInsecure = (server.insecure == "1") and true or nil, + serverName = server.tls_host + } or nil, + tcpSettings = (server.transport == "tcp" and server.tcp_guise == "http") and { + -- tcp + header = { + type = server.tcp_guise, + request = { + -- request + path = {server.http_path} or {"/"}, + headers = {Host = {server.http_host} or {}} + } + } + } or nil, + kcpSettings = (server.transport == "kcp") and { + mtu = tonumber(server.mtu), + tti = tonumber(server.tti), + uplinkCapacity = tonumber(server.uplink_capacity), + downlinkCapacity = tonumber(server.downlink_capacity), + congestion = (server.congestion == "1") and true or false, + readBufferSize = tonumber(server.read_buffer_size), + writeBufferSize = tonumber(server.write_buffer_size), + header = {type = server.kcp_guise}, + seed = server.seed or nil + } or nil, + wsSettings = (server.transport == "ws") and (server.ws_path or server.ws_host or server.tls_host) and { + -- ws + path = server.ws_path, + headers = (server.ws_host or server.tls_host) and { + -- headers + Host = server.ws_host or server.tls_host + } or nil + } or nil, + httpSettings = (server.transport == "h2") and { + -- h2 + path = server.h2_path or "", + host = {server.h2_host} or nil, + read_idle_timeout = tonumber(server.read_idle_timeout) or nil, + health_check_timeout = tonumber(server.health_check_timeout) or nil + } or nil, + quicSettings = (server.transport == "quic") and { + -- quic + security = server.quic_security, + key = server.quic_key, + header = {type = server.quic_guise} + } or nil, + grpcSettings = (server.transport == "grpc") and { + -- grpc + serviceName = server.serviceName or "", + multiMode = (server.mux == "1") and true or false, + idle_timeout = tonumber(server.idle_timeout) or nil, + health_check_timeout = tonumber(server.health_check_timeout) or nil, + permit_without_stream = (server.permit_without_stream == "1") and true or nil, + initial_windows_size = tonumber(server.initial_windows_size) or nil + } or nil + }, + mux = (server.mux == "1" and server.xtls ~= "1" and server.transport ~= "grpc") and { + -- mux + enabled = true, + concurrency = tonumber(server.concurrency) + } or nil + } or nil +} +local cipher = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-SHA:AES256-SHA:DES-CBC3-SHA" +local cipher13 = "TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384" +local trojan = { + log_level = 3, + run_type = (proto == "nat" or proto == "tcp") and "nat" or "client", + local_addr = "0.0.0.0", + local_port = tonumber(local_port), + remote_addr = server.server, + remote_port = tonumber(server.server_port), + udp_timeout = 60, + -- 传入连接 + password = {server.password}, + -- 传出连接 + ssl = { + verify = (server.insecure == "0") and true or false, + verify_hostname = (server.tls == "1") and true or false, + cert = (server.certificate) and server.certpath or nil, + cipher = cipher, + cipher_tls13 = cipher13, + sni = server.tls_host, + alpn = {"h2", "http/1.1"}, + curve = "", + reuse_session = true, + session_ticket = (server.tls_sessionTicket == "1") and true or false + }, + udp_timeout = 60, + tcp = { + -- tcp + no_delay = true, + keep_alive = true, + reuse_port = true, + fast_open = (server.fast_open == "1") and true or false, + fast_open_qlen = 20 + } +} +local naiveproxy = { + proxy = (server.username and server.password and server.server and server.server_port) and "https://" .. server.username .. ":" .. server.password .. "@" .. server.server .. ":" .. server.server_port, + listen = (proto == "redir") and "redir" .. "://0.0.0.0:" .. tonumber(local_port) or "socks" .. "://0.0.0.0:" .. tonumber(local_port), + ["insecure-concurrency"] = tonumber(server.concurrency) or 1 +} +local ss = { + server = (server.kcp_enable == "1") and "127.0.0.1" or server.server, + server_port = tonumber(server.server_port), + local_address = "0.0.0.0", + local_port = tonumber(local_port), + mode = (proto == "tcp,udp") and "tcp_and_udp" or proto .. "_only", + password = server.password, + method = server.encrypt_method_ss, + timeout = tonumber(server.timeout), + fast_open = (server.fast_open == "1") and true or false, + reuse_port = true +} +local config = {} +function config:new(o) + o = o or {} + setmetatable(o, self) + self.__index = self + return o +end +function config:handleIndex(index) + local switch = { + ss = function() + ss.protocol = socks_port + if server.plugin and server.plugin ~= "none" then + ss.plugin = server.plugin + ss.plugin_opts = server.plugin_opts or nil + end + print(json.stringify(ss, 1)) + end, + ssr = function() + ss.protocol = server.protocol + ss.protocol_param = server.protocol_param + ss.method = server.encrypt_method + ss.obfs = server.obfs + ss.obfs_param = server.obfs_param + print(json.stringify(ss, 1)) + end, + v2ray = function() + print(json.stringify(Xray, 1)) + end, + trojan = function() + print(json.stringify(trojan, 1)) + end, + naiveproxy = function() + print(json.stringify(naiveproxy, 1)) + end + } + if switch[index] then + switch[index]() + end +end +local f = config:new() +f:handleIndex(server.type) diff --git a/luci-app-ssr-plus/root/usr/share/shadowsocksr/genred2config.sh b/luci-app-ssr-plus/root/usr/share/shadowsocksr/genred2config.sh new file mode 100755 index 000000000..3750d3f9c --- /dev/null +++ b/luci-app-ssr-plus/root/usr/share/shadowsocksr/genred2config.sh @@ -0,0 +1,95 @@ +#!/bin/sh +argv1=$1 +argv2=$2 +argv3=$3 +argv4=$4 +argv5=$5 +argv6=$6 +argv7=$7 +argv8=$8 +argv9=$9 +cat <<-EOF >$argv1 + base { + log_debug = off; + log_info = off; + log = stderr; + daemon = on; + redirector = iptables; + reuseport = on; + } +EOF +tcp() { + if [ "$argv7" == "0" ]; then + cat <<-EOF >>$argv1 + redsocks { + bind = "0.0.0.0:$argv4"; + relay = "$argv5:$argv6"; + type = socks5; + autoproxy = 0; + timeout = 10; + } + EOF + else + cat <<-EOF >>$argv1 + redsocks { + bind = "0.0.0.0:$argv4"; + relay = "$argv5:$argv6"; + type = socks5; + autoproxy = 0; + timeout = 10; + login = "$argv8"; + password = "$argv9"; + } + EOF + fi +} +udp() { + if [ "$argv7" == "0" ]; then + cat <<-EOF >>$argv1 + redudp { + bind = "0.0.0.0:$argv4"; + relay = "$argv5:$argv6"; + type = socks5; + udp_timeout = 10; + } + EOF + else + cat <<-EOF >>$argv1 + redudp { + bind = "0.0.0.0:$argv4"; + relay = "$argv5:$argv6"; + type = socks5; + udp_timeout = 10; + login = "$argv8"; + password = "$argv9"; + } + EOF + fi +} +case "$argv2" in +socks5) + case "$argv3" in + tcp) + tcp + ;; + udp) + udp + ;; + *) + tcp + udp + ;; + esac + ;; +*) + cat <<-EOF >>$argv1 + redsocks { + bind = "0.0.0.0:$argv4"; + type = direct; + interface = $argv3; + autoproxy = 0; + timeout = 10; + } + EOF + ;; +esac diff --git a/luci-app-ssr-plus/root/usr/share/shadowsocksr/gfw2ipset.sh b/luci-app-ssr-plus/root/usr/share/shadowsocksr/gfw2ipset.sh new file mode 100755 index 000000000..66d2b255a --- /dev/null +++ b/luci-app-ssr-plus/root/usr/share/shadowsocksr/gfw2ipset.sh @@ -0,0 +1,47 @@ +#!/bin/sh +. $IPKG_INSTROOT/etc/init.d/shadowsocksr +netflix() { + if [ -f "$TMP_DNSMASQ_PATH/gfw_list.conf" ]; then + for line in $(cat /etc/ssrplus/netflix.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/gfw_list.conf; done + for line in $(cat /etc/ssrplus/netflix.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/gfw_base.conf; done + fi + cat /etc/ssrplus/netflix.list | sed '/^$/d' | sed '/#/d' | sed "/.*/s/.*/server=\/&\/127.0.0.1#$1\nipset=\/&\/netflix/" >$TMP_DNSMASQ_PATH/netflix_forward.conf +} +mkdir -p $TMP_DNSMASQ_PATH +if [ "$(uci_get_by_type global run_mode router)" == "oversea" ]; then + cp -rf /etc/ssrplus/oversea_list.conf $TMP_DNSMASQ_PATH/ +else + cp -rf /etc/ssrplus/gfw_list.conf $TMP_DNSMASQ_PATH/ + cp -rf /etc/ssrplus/gfw_base.conf $TMP_DNSMASQ_PATH/ +fi +case "$(uci_get_by_type global netflix_server nil)" in +nil) + rm -f $TMP_DNSMASQ_PATH/netflix_forward.conf + ;; +$(uci_get_by_type global global_server nil) | $switch_server | same) + netflix $dns_port + ;; +*) + netflix $tmp_shunt_dns_port + ;; +esac +for line in $(cat /etc/ssrplus/black.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/gfw_list.conf; done +for line in $(cat /etc/ssrplus/black.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/gfw_base.conf; done +for line in $(cat /etc/ssrplus/white.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/gfw_list.conf; done +for line in $(cat /etc/ssrplus/white.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/gfw_base.conf; done +for line in $(cat /etc/ssrplus/deny.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/gfw_list.conf; done +for line in $(cat /etc/ssrplus/deny.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/gfw_base.conf; done +cat /etc/ssrplus/black.list | sed '/^$/d' | sed '/#/d' | sed "/.*/s/.*/server=\/&\/127.0.0.1#$dns_port\nipset=\/&\/blacklist/" >$TMP_DNSMASQ_PATH/blacklist_forward.conf +cat /etc/ssrplus/white.list | sed '/^$/d' | sed '/#/d' | sed "/.*/s/.*/server=\/&\/127.0.0.1\nipset=\/&\/whitelist/" >$TMP_DNSMASQ_PATH/whitelist_forward.conf +cat /etc/ssrplus/deny.list | sed '/^$/d' | sed '/#/d' | sed "/.*/s/.*/address=\/&\//" >$TMP_DNSMASQ_PATH/denylist.conf +if [ "$(uci_get_by_type global adblock 0)" == "1" ]; then + cp -f /etc/ssrplus/ad.conf $TMP_DNSMASQ_PATH/ + if [ -f "$TMP_DNSMASQ_PATH/ad.conf" ]; then + for line in $(cat /etc/ssrplus/black.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/ad.conf; done + for line in $(cat /etc/ssrplus/white.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/ad.conf; done + for line in $(cat /etc/ssrplus/deny.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/ad.conf; done + for line in $(cat /etc/ssrplus/netflix.list); do sed -i "/$line/d" $TMP_DNSMASQ_PATH/ad.conf; done + fi +else + rm -f $TMP_DNSMASQ_PATH/ad.conf +fi diff --git a/luci-app-ssr-plus/root/usr/share/shadowsocksr/ssrplusupdate.sh b/luci-app-ssr-plus/root/usr/share/shadowsocksr/ssrplusupdate.sh new file mode 100755 index 000000000..9424cfac7 --- /dev/null +++ b/luci-app-ssr-plus/root/usr/share/shadowsocksr/ssrplusupdate.sh @@ -0,0 +1,6 @@ +#!/bin/sh +/usr/bin/lua /usr/share/shadowsocksr/update.lua +sleep 2s +/usr/share/shadowsocksr/chinaipset.sh /var/etc/ssrplus/china_ssr.txt +sleep 2s +/usr/bin/lua /usr/share/shadowsocksr/subscribe.lua diff --git a/luci-app-ssr-plus/root/usr/share/shadowsocksr/subscribe.lua b/luci-app-ssr-plus/root/usr/share/shadowsocksr/subscribe.lua new file mode 100755 index 000000000..ee0177d5f --- /dev/null +++ b/luci-app-ssr-plus/root/usr/share/shadowsocksr/subscribe.lua @@ -0,0 +1,638 @@ +#!/usr/bin/lua + +------------------------------------------------ +-- This file is part of the luci-app-ssr-plus subscribe.lua +-- @author William Chan +------------------------------------------------ +require "luci.model.uci" +require "nixio" +require "luci.util" +require "luci.sys" +require "luci.jsonc" +-- these global functions are accessed all the time by the event handler +-- so caching them is worth the effort +local tinsert = table.insert +local ssub, slen, schar, sbyte, sformat, sgsub = string.sub, string.len, string.char, string.byte, string.format, string.gsub +local jsonParse, jsonStringify = luci.jsonc.parse, luci.jsonc.stringify +local b64decode = nixio.bin.b64decode +local cache = {} +local nodeResult = setmetatable({}, {__index = cache}) -- update result +local name = 'shadowsocksr' +local uciType = 'servers' +local ucic = luci.model.uci.cursor() +local proxy = ucic:get_first(name, 'server_subscribe', 'proxy', '0') +local switch = ucic:get_first(name, 'server_subscribe', 'switch', '1') +local subscribe_url = ucic:get_first(name, 'server_subscribe', 'subscribe_url', {}) +local filter_words = ucic:get_first(name, 'server_subscribe', 'filter_words', '过期时间/剩余流量') +local save_words = ucic:get_first(name, 'server_subscribe', 'save_words', '') +local v2_ss = luci.sys.exec('type -t -p ss-redir sslocal') ~= "" and "ss" or "v2ray" +local v2_tj = luci.sys.exec('type -t -p trojan') ~= "" and "trojan" or "v2ray" +local log = function(...) + print(os.date("%Y-%m-%d %H:%M:%S ") .. table.concat({...}, " ")) +end +local encrypt_methods_ss = { + -- aead + "aes-128-gcm", + "aes-192-gcm", + "aes-256-gcm", + "chacha20-ietf-poly1305", + "xchacha20-ietf-poly1305" + --[[ stream + "table", + "rc4", + "rc4-md5", + "aes-128-cfb", + "aes-192-cfb", + "aes-256-cfb", + "aes-128-ctr", + "aes-192-ctr", + "aes-256-ctr", + "bf-cfb", + "camellia-128-cfb", + "camellia-192-cfb", + "camellia-256-cfb", + "salsa20", + "chacha20", + "chacha20-ietf" ]] +} +-- 分割字符串 +local function split(full, sep) + full = full:gsub("%z", "") -- 这里不是很清楚 有时候结尾带个\0 + local off, result = 1, {} + while true do + local nStart, nEnd = full:find(sep, off) + if not nEnd then + local res = ssub(full, off, slen(full)) + if #res > 0 then -- 过滤掉 \0 + tinsert(result, res) + end + break + else + tinsert(result, ssub(full, off, nStart - 1)) + off = nEnd + 1 + end + end + return result +end +-- urlencode +local function get_urlencode(c) + return sformat("%%%02X", sbyte(c)) +end + +local function urlEncode(szText) + local str = szText:gsub("([^0-9a-zA-Z ])", get_urlencode) + str = str:gsub(" ", "+") + return str +end + +local function get_urldecode(h) + return schar(tonumber(h, 16)) +end +local function UrlDecode(szText) + return szText:gsub("+", " "):gsub("%%(%x%x)", get_urldecode) +end + +-- trim +local function trim(text) + if not text or text == "" then + return "" + end + return (sgsub(text, "^%s*(.-)%s*$", "%1")) +end +-- md5 +local function md5(content) + local stdout = luci.sys.exec('echo \"' .. urlEncode(content) .. '\" | md5sum | cut -d \" \" -f1') + -- assert(nixio.errno() == 0) + return trim(stdout) +end +-- base64 +local function base64Decode(text) + local raw = text + if not text then + return '' + end + text = text:gsub("%z", "") + text = text:gsub("_", "/") + text = text:gsub("-", "+") + local mod4 = #text % 4 + text = text .. string.sub('====', mod4 + 1) + local result = b64decode(text) + if result then + return result:gsub("%z", "") + else + return raw + end +end +-- 检查数组(table)中是否存在某个字符值 +-- https://www.04007.cn/article/135.html +local function checkTabValue(tab) + local revtab = {} + for k,v in pairs(tab) do + revtab[v] = true + end + return revtab +end +-- 处理数据 +local function processData(szType, content) + local result = {type = szType, local_port = 1234, kcp_param = '--nocomp'} + if szType == 'ssr' then + local dat = split(content, "/%?") + local hostInfo = split(dat[1], ':') + result.server = hostInfo[1] + result.server_port = hostInfo[2] + result.protocol = hostInfo[3] + result.encrypt_method = hostInfo[4] + result.obfs = hostInfo[5] + result.password = base64Decode(hostInfo[6]) + local params = {} + for _, v in pairs(split(dat[2], '&')) do + local t = split(v, '=') + params[t[1]] = t[2] + end + result.obfs_param = base64Decode(params.obfsparam) + result.protocol_param = base64Decode(params.protoparam) + local group = base64Decode(params.group) + if group then + result.alias = "[" .. group .. "] " + end + result.alias = result.alias .. base64Decode(params.remarks) + elseif szType == 'vmess' then + local info = jsonParse(content) + result.type = 'v2ray' + result.v2ray_protocol = 'vmess' + result.server = info.add + result.server_port = info.port + result.transport = info.net + result.vmess_id = info.id + result.alias = info.ps + -- result.mux = 1 + -- result.concurrency = 8 + if info.net == 'ws' then + result.ws_host = info.host + result.ws_path = info.path + end + if info.net == 'h2' then + result.h2_host = info.host + result.h2_path = info.path + end + if info.net == 'tcp' then + if info.type and info.type ~= "http" then + info.type = "none" + end + result.tcp_guise = info.type + result.http_host = info.host + result.http_path = info.path + end + if info.net == 'kcp' then + result.kcp_guise = info.type + result.mtu = 1350 + result.tti = 50 + result.uplink_capacity = 5 + result.downlink_capacity = 20 + result.read_buffer_size = 2 + result.write_buffer_size = 2 + end + if info.net == 'quic' then + result.quic_guise = info.type + result.quic_key = info.key + result.quic_security = info.securty + end + if info.security then + result.security = info.security + end + if info.tls == "tls" or info.tls == "1" then + result.tls = "1" + result.tls_host = info.host + result.insecure = 1 + else + result.tls = "0" + end + -- https://www.v2fly.org/config/protocols/vmess.html#vmess-md5-认证信息-淘汰机制 + if info.aid and (tonumber(info.aid) > 0) then + result.server = nil + end + elseif szType == "ss" then + local idx_sp = 0 + local alias = "" + if content:find("#") then + idx_sp = content:find("#") + alias = content:sub(idx_sp + 1, -1) + end + local info = content:sub(1, idx_sp - 1) + local hostInfo = split(base64Decode(info), "@") + local host = split(hostInfo[2], ":") + local userinfo = base64Decode(hostInfo[1]) + local method = userinfo:sub(1, userinfo:find(":") - 1) + local password = userinfo:sub(userinfo:find(":") + 1, #userinfo) + result.alias = UrlDecode(alias) + result.type = v2_ss + result.password = password + result.server = host[1] + if host[2]:find("/%?") then + local query = split(host[2], "/%?") + result.server_port = query[1] + local params = {} + for _, v in pairs(split(query[2], '&')) do + local t = split(v, '=') + params[t[1]] = t[2] + end + if params.plugin then + local plugin_info = UrlDecode(params.plugin) + local idx_pn = plugin_info:find(";") + if idx_pn then + result.plugin = plugin_info:sub(1, idx_pn - 1) + result.plugin_opts = plugin_info:sub(idx_pn + 1, #plugin_info) + else + result.plugin = plugin_info + end + -- 部分机场下发的插件名为 simple-obfs,这里应该改为 obfs-local + if result.plugin == "simple-obfs" then + result.plugin = "obfs-local" + end + end + else + result.server_port = host[2]:gsub("/","") + end + if not checkTabValue(encrypt_methods_ss)[method] then + -- 1202 年了还不支持 SS AEAD 的屑机场 + result.server = nil + elseif v2_ss == "v2ray" then + result.v2ray_protocol = "shadowsocks" + result.encrypt_method_v2ray_ss = method + else + result.encrypt_method_ss = method + end + elseif szType == "sip008" then + result.type = v2_ss + result.server = content.server + result.server_port = content.server_port + result.password = content.password + result.plugin = content.plugin + result.plugin_opts = content.plugin_opts + result.alias = content.remarks + if not checkTabValue(encrypt_methods_ss)[content.method] then + result.server = nil + elseif v2_ss == "v2ray" then + result.v2ray_protocol = "shadowsocks" + result.encrypt_method_v2ray_ss = content.method + else + result.encrypt_method_ss = content.method + end + elseif szType == "ssd" then + result.type = v2_ss + result.server = content.server + result.server_port = content.port + result.password = content.password + result.plugin_opts = content.plugin_options + result.alias = "[" .. content.airport .. "] " .. content.remarks + if content.plugin == "simple-obfs" then + result.plugin = "obfs-local" + else + result.plugin = content.plugin + end + if not checkTabValue(encrypt_methods_ss)[content.encryption] then + result.server = nil + elseif v2_ss == "v2ray" then + result.v2ray_protocol = "shadowsocks" + result.encrypt_method_v2ray_ss = content.method + else + result.encrypt_method_ss = content.method + end + elseif szType == "trojan" then + local idx_sp = 0 + local alias = "" + if content:find("#") then + idx_sp = content:find("#") + alias = content:sub(idx_sp + 1, -1) + end + local info = content:sub(1, idx_sp - 1) + local hostInfo = split(info, "@") + local host = split(hostInfo[2], ":") + local userinfo = hostInfo[1] + local password = userinfo + result.alias = UrlDecode(alias) + result.type = v2_tj + result.v2ray_protocol = "trojan" + result.server = host[1] + -- 按照官方的建议 默认验证ssl证书 + result.insecure = "0" + result.tls = "1" + if host[2]:find("?") then + local query = split(host[2], "?") + result.server_port = query[1] + local params = {} + for _, v in pairs(split(query[2], '&')) do + local t = split(v, '=') + params[t[1]] = t[2] + end + if params.sni then + -- 未指定peer(sni)默认使用remote addr + result.tls_host = params.sni + end + else + result.server_port = host[2] + end + result.password = password + elseif szType == "vless" then + local idx_sp = 0 + local alias = "" + if content:find("#") then + idx_sp = content:find("#") + alias = content:sub(idx_sp + 1, -1) + end + local info = content:sub(1, idx_sp - 1) + local hostInfo = split(info, "@") + local host = split(hostInfo[2], ":") + local uuid = hostInfo[1] + if host[2]:find("?") then + local query = split(host[2], "?") + local params = {} + for _, v in pairs(split(UrlDecode(query[2]), '&')) do + local t = split(v, '=') + params[t[1]] = t[2] + end + result.alias = UrlDecode(alias) + result.type = 'v2ray' + result.v2ray_protocol = 'vless' + result.server = host[1] + result.server_port = query[1] + result.vmess_id = uuid + result.vless_encryption = params.encryption or "none" + result.transport = params.type and (params.type == 'http' and 'h2' or params.type) or "tcp" + if not params.type or params.type == "tcp" then + if params.security == "xtls" then + result.xtls = "1" + result.tls_host = params.sni + result.vless_flow = params.flow + else + result.xtls = "0" + end + end + if params.type == 'ws' then + result.ws_host = params.host + result.ws_path = params.path or "/" + end + if params.type == 'http' then + result.h2_host = params.host + result.h2_path = params.path or "/" + end + if params.type == 'kcp' then + result.kcp_guise = params.headerType or "none" + result.mtu = 1350 + result.tti = 50 + result.uplink_capacity = 5 + result.downlink_capacity = 20 + result.read_buffer_size = 2 + result.write_buffer_size = 2 + result.seed = params.seed + end + if params.type == 'quic' then + result.quic_guise = params.headerType or "none" + result.quic_key = params.key + result.quic_security = params.quicSecurity or "none" + end + if params.type == 'grpc' then + result.serviceName = params.serviceName + end + if params.security == "tls" then + result.tls = "1" + result.tls_host = params.sni + else + result.tls = "0" + end + else + result.server_port = host[2] + end + end + if not result.alias then + if result.server and result.server_port then + result.alias = result.server .. ':' .. result.server_port + else + result.alias = "NULL" + end + end + -- alias 不参与 hashkey 计算 + local alias = result.alias + result.alias = nil + local switch_enable = result.switch_enable + result.switch_enable = nil + result.hashkey = md5(jsonStringify(result)) + result.alias = alias + result.switch_enable = switch_enable + return result +end +-- wget +local function wget(url) + local stdout = luci.sys.exec('uclient-fetch -q --user-agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36" --no-check-certificate -O- "' .. url .. '"') + return trim(stdout) +end + +local function check_filer(result) + do + -- 过滤的关键词列表 + local filter_word = split(filter_words, "/") + -- 保留的关键词列表 + local check_save = false + if save_words ~= nil and save_words ~= "" and save_words ~= "NULL" then + check_save = true + end + local save_word = split(save_words, "/") + + -- 检查结果 + local filter_result = false + local save_result = true + + -- 检查是否存在过滤关键词 + for i, v in pairs(filter_word) do + if tostring(result.alias):find(v, nil, true) then + filter_result = true + end + end + + -- 检查是否打开了保留关键词检查,并且进行过滤 + if check_save == true then + for i, v in pairs(save_word) do + if tostring(result.alias):find(v, nil, true) then + save_result = false + end + end + else + save_result = false + end + + -- 不等时返回 + if filter_result == true or save_result == true then + return true + else + return false + end + end +end + +local execute = function() + -- exec + do + if proxy == '0' then -- 不使用代理更新的话先暂停 + log('服务正在暂停') + luci.sys.init.stop(name) + end + for k, url in ipairs(subscribe_url) do + local raw = wget(url) + if #raw > 0 then + local nodes, szType + local groupHash = md5(url) + cache[groupHash] = {} + tinsert(nodeResult, {}) + local index = #nodeResult + -- SSD 似乎是这种格式 ssd:// 开头的 + if raw:find('ssd://') then + szType = 'ssd' + local nEnd = select(2, raw:find('ssd://')) + nodes = base64Decode(raw:sub(nEnd + 1, #raw)) + nodes = jsonParse(nodes) + local extra = {airport = nodes.airport, port = nodes.port, encryption = nodes.encryption, password = nodes.password} + local servers = {} + -- SS里面包着 干脆直接这样 + for _, server in ipairs(nodes.servers) do + tinsert(servers, setmetatable(server, {__index = extra})) + end + nodes = servers + -- SS SIP008 直接使用 Json 格式 + elseif jsonParse(raw) then + nodes = jsonParse(raw).servers or jsonParse(raw) + if nodes[1].server and nodes[1].method then + szType = 'sip008' + end + else + -- ssd 外的格式 + nodes = split(base64Decode(raw):gsub(" ", "_"), "\n") + end + for _, v in ipairs(nodes) do + if v then + local result + if szType then + result = processData(szType, v) + elseif not szType then + local node = trim(v) + local dat = split(node, "://") + if dat and dat[1] and dat[2] then + local dat3 = "" + if dat[3] then + dat3 = "://" .. dat[3] + end + if dat[1] == 'ss' or dat[1] == 'trojan' then + result = processData(dat[1], dat[2] .. dat3) + else + result = processData(dat[1], base64Decode(dat[2])) + end + end + else + log('跳过未知类型: ' .. szType) + end + -- log(result) + if result then + -- 中文做地址的 也没有人拿中文域名搞,就算中文域也有Puny Code SB 机场 + if not result.server or not result.server_port or result.alias == "NULL" or check_filer(result) or result.server:match("[^0-9a-zA-Z%-%.%s]") or cache[groupHash][result.hashkey] then + log('丢弃无效节点: ' .. result.type .. ' 节点, ' .. result.alias) + else + -- log('成功解析: ' .. result.type ..' 节点, ' .. result.alias) + result.grouphashkey = groupHash + tinsert(nodeResult[index], result) + cache[groupHash][result.hashkey] = nodeResult[index][#nodeResult[index]] + end + end + end + end + log('成功解析节点数量: ' .. #nodes) + else + log(url .. ': 获取内容为空') + end + end + end + -- diff + do + if next(nodeResult) == nil then + log("更新失败,没有可用的节点信息") + if proxy == '0' then + luci.sys.init.start(name) + log('订阅失败, 恢复服务') + end + return + end + local add, del = 0, 0 + ucic:foreach(name, uciType, function(old) + if old.grouphashkey or old.hashkey then -- 没有 hash 的不参与删除 + if not nodeResult[old.grouphashkey] or not nodeResult[old.grouphashkey][old.hashkey] then + ucic:delete(name, old['.name']) + del = del + 1 + else + local dat = nodeResult[old.grouphashkey][old.hashkey] + ucic:tset(name, old['.name'], dat) + -- 标记一下 + setmetatable(nodeResult[old.grouphashkey][old.hashkey], {__index = {_ignore = true}}) + end + else + if not old.alias then + if old.server or old.server_port then + old.alias = old.server .. ':' .. old.server_port + log('忽略手动添加的节点: ' .. old.alias) + else + ucic:delete(name, old['.name']) + end + else + log('忽略手动添加的节点: ' .. old.alias) + end + end + end) + for k, v in ipairs(nodeResult) do + for kk, vv in ipairs(v) do + if not vv._ignore then + local section = ucic:add(name, uciType) + ucic:tset(name, section, vv) + ucic:set(name, section, "switch_enable", switch) + add = add + 1 + end + end + end + ucic:commit(name) + -- 如果原有服务器节点已经不见了就尝试换为第一个节点 + local globalServer = ucic:get_first(name, 'global', 'global_server', '') + if globalServer ~= "nil" then + local firstServer = ucic:get_first(name, uciType) + if firstServer then + if not ucic:get(name, globalServer) then + luci.sys.call("/etc/init.d/" .. name .. " stop > /dev/null 2>&1 &") + ucic:commit(name) + ucic:set(name, ucic:get_first(name, 'global'), 'global_server', ucic:get_first(name, uciType)) + ucic:commit(name) + log('当前主服务器节点已被删除,正在自动更换为第一个节点。') + luci.sys.call("/etc/init.d/" .. name .. " start > /dev/null 2>&1 &") + else + log('维持当前主服务器节点。') + luci.sys.call("/etc/init.d/" .. name .. " restart > /dev/null 2>&1 &") + end + else + log('没有服务器节点了,停止服务') + luci.sys.call("/etc/init.d/" .. name .. " stop > /dev/null 2>&1 &") + end + end + log('新增节点数量: ' .. add, '删除节点数量: ' .. del) + log('订阅更新成功') + end +end + +if subscribe_url and #subscribe_url > 0 then + xpcall(execute, function(e) + log(e) + log(debug.traceback()) + log('发生错误, 正在恢复服务') + local firstServer = ucic:get_first(name, uciType) + if firstServer then + luci.sys.call("/etc/init.d/" .. name .. " restart > /dev/null 2>&1 &") -- 不加&的话日志会出现的更早 + log('重启服务成功') + else + luci.sys.call("/etc/init.d/" .. name .. " stop > /dev/null 2>&1 &") -- 不加&的话日志会出现的更早 + log('停止服务成功') + end + end) +end diff --git a/luci-app-ssr-plus/root/usr/share/shadowsocksr/update.lua b/luci-app-ssr-plus/root/usr/share/shadowsocksr/update.lua new file mode 100755 index 000000000..3e832712f --- /dev/null +++ b/luci-app-ssr-plus/root/usr/share/shadowsocksr/update.lua @@ -0,0 +1,198 @@ +#!/usr/bin/lua + +------------------------------------------------ +-- This file is part of the luci-app-ssr-plus update.lua +-- By Mattraks +------------------------------------------------ +require "luci.sys" +require "luci.model.uci" +local icount = 0 +local args = arg[1] +local uci = luci.model.uci.cursor() +local TMP_DNSMASQ_PATH = "/tmp/dnsmasq.d/dnsmasq-ssrplus.d" +local TMP_PATH = "/var/etc/ssrplus" +-- match comments/title/whitelist/ip address/excluded_domain +local comment_pattern = "^[!\\[@]+" +local ip_pattern = "^%d+%.%d+%.%d+%.%d+" +local domain_pattern = "([%w%-%_]+%.[%w%.%-%_]+)[%/%*]*" +local excluded_domain = {"apple.com", "sina.cn", "sina.com.cn", "baidu.com", "byr.cn", "jlike.com", "weibo.com", "zhongsou.com", "youdao.com", "sogou.com", "so.com", "soso.com", "aliyun.com", "taobao.com", "jd.com", "qq.com"} +-- gfwlist parameter +local mydnsip = '127.0.0.1' +local mydnsport = '5335' +local ipsetname = 'gfwlist' +local bc = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' +-- base64decoding +local function base64_dec(data) + data = string.gsub(data, '[^' .. bc .. '=]', '') + return (data:gsub('.', function(x) + if (x == '=') then + return '' + end + local r, f = '', (bc:find(x) - 1) + for i = 6, 1, -1 do + r = r .. (f % 2 ^ i - f % 2 ^ (i - 1) > 0 and '1' or '0') + end + return r; + end):gsub('%d%d%d?%d?%d?%d?%d?%d?', function(x) + if (#x ~= 8) then + return '' + end + local c = 0 + for i = 1, 8 do + c = c + (x:sub(i, i) == '1' and 2 ^ (8 - i) or 0) + end + return string.char(c) + end)) +end +-- check excluded domain +local function check_excluded_domain(value) + for k, v in ipairs(excluded_domain) do + if value:find(v) then + return true + end + end +end +-- gfwlist转码至dnsmasq格式 +local function generate_gfwlist(type) + local domains = {} + local out = io.open("/tmp/ssr-update." .. type, "w") + for line in io.lines("/tmp/ssr-update.tmp") do + if not (string.find(line, comment_pattern) or string.find(line, ip_pattern) or check_excluded_domain(line)) then + local start, finish, match = string.find(line, domain_pattern) + if (start) then + domains[match] = true + end + end + end + for k, v in pairs(domains) do + out:write(string.format("server=/%s/%s#%s\n", k, mydnsip, mydnsport)) + out:write(string.format("ipset=/%s/%s\n", k, ipsetname)) + end + out:close() + os.remove("/tmp/ssr-update.tmp") +end + +-- adblock转码至dnsmasq格式 +local function generate_adblock(type) + local domains = {} + local out = io.open("/tmp/ssr-update." .. type, "w") + for line in io.lines("/tmp/ssr-update.tmp") do + if not (string.find(line, comment_pattern)) then + local start, finish, match = string.find(line, domain_pattern) + if (start) then + domains[match] = true + end + end + end + for k, v in pairs(domains) do + out:write(string.format("address=/%s/\n", k)) + end + out:close() + os.remove("/tmp/ssr-update.tmp") +end + +local log = function(...) + if args then + print("{ret=" .. table.concat({...}, ",retcount=") .. "}") + else + print(os.date("%Y-%m-%d %H:%M:%S ") .. table.concat({...}, " ")) + end +end + +local function update(url, file, type, file2) + local Num = 1 + local refresh_cmd = "uclient-fetch --no-check-certificate -q -O /tmp/ssr-update." .. type .. " " .. url + local sret = luci.sys.call(refresh_cmd) + if sret == 0 then + if type == "gfw_data" then + local gfwlist = io.open("/tmp/ssr-update." .. type, "r") + local decode = gfwlist:read("*a") + if not decode:find("google") then + decode = base64_dec(decode) + end + gfwlist:close() + -- 写回gfwlist + gfwlist = io.open("/tmp/ssr-update.tmp", "w") + gfwlist:write(decode) + gfwlist:close() + generate_gfwlist(type) + Num = 2 + end + if type == "ad_data" then + local adblock = io.open("/tmp/ssr-update." .. type, "r") + local decode = adblock:read("*a") + if decode:find("address=") then + adblock:close() + else + adblock:close() + -- 写回adblock + adblock = io.open("/tmp/ssr-update.tmp", "w") + adblock:write(decode) + adblock:close() + generate_adblock(type) + end + end + local new_md5 = luci.sys.exec("echo -n $([ -f '/tmp/ssr-update." .. type .. "' ] && md5sum /tmp/ssr-update." .. type .. " | awk '{print $1}')") + local old_md5 = luci.sys.exec("echo -n $([ -f '" .. file .. "' ] && md5sum " .. file .. " | awk '{print $1}')") + if new_md5 == old_md5 then + if args then + log(1) + else + log("你已经是最新数据,无需更新!") + end + else + icount = luci.sys.exec("cat /tmp/ssr-update." .. type .. " | wc -l") + luci.sys.exec("cp -f /tmp/ssr-update." .. type .. " " .. file) + if file2 then + luci.sys.exec("cp -f /tmp/ssr-update." .. type .. " " .. file2) + end + if type == "gfw_data" or type == "ad_data" then + luci.sys.call("/usr/share/shadowsocksr/gfw2ipset.sh") + else + luci.sys.call("/usr/share/shadowsocksr/chinaipset.sh " .. TMP_PATH .. "/china_ssr.txt") + end + if args then + log(0, tonumber(icount) / Num) + else + log("更新成功! 新的总纪录数:" .. tostring(tonumber(icount) / Num)) + end + end + else + if args then + log(-1) + else + log("更新失败!") + end + end + os.remove("/tmp/ssr-update." .. type) +end + +if args then + if args == "gfw_data" then + update(uci:get_first("shadowsocksr", "global", "gfwlist_url"), "/etc/ssrplus/gfw_list.conf", args, TMP_DNSMASQ_PATH .. "/gfw_list.conf") + os.exit(0) + end + if args == "ip_data" then + update(uci:get_first("shadowsocksr", "global", "chnroute_url"), "/etc/ssrplus/china_ssr.txt", args, TMP_PATH .. "/china_ssr.txt") + os.exit(0) + end + if args == "ad_data" then + update(uci:get_first("shadowsocksr", "global", "adblock_url"), "/etc/ssrplus/ad.conf", args, TMP_DNSMASQ_PATH .. "/ad.conf") + os.exit(0) + end + if args == "nfip_data" then + update(uci:get_first("shadowsocksr", "global", "nfip_url"), "/etc/ssrplus/netflixip.list", args) + os.exit(0) + end +else + log("正在更新【GFW列表】数据库") + update(uci:get_first("shadowsocksr", "global", "gfwlist_url"), "/etc/ssrplus/gfw_list.conf", "gfw_data", TMP_DNSMASQ_PATH .. "/gfw_list.conf") + log("正在更新【国内IP段】数据库") + update(uci:get_first("shadowsocksr", "global", "chnroute_url"), "/etc/ssrplus/china_ssr.txt", "ip_data", TMP_PATH .. "/china_ssr.txt") + if uci:get_first("shadowsocksr", "global", "adblock", "0") == "1" then + log("正在更新【广告屏蔽】数据库") + update(uci:get_first("shadowsocksr", "global", "adblock_url"), "/etc/ssrplus/ad.conf", "ad_data", TMP_DNSMASQ_PATH .. "/ad.conf") + end + -- log("正在更新【Netflix IP段】数据库") + -- update(uci:get_first("shadowsocksr", "global", "nfip_url"), "/etc/ssrplus/netflixip.list", "nfip_data") +end diff --git a/naiveproxy/Makefile b/naiveproxy/Makefile new file mode 100644 index 000000000..89cb7d403 --- /dev/null +++ b/naiveproxy/Makefile @@ -0,0 +1,130 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=naiveproxy +PKG_VERSION:=100.0.4896.60-1 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/klzgrad/naiveproxy/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=bcab770b15e6c5d3f50a83992d084c8f53942aa6ebd59463c21979be668a3e61 + +PKG_LICENSE:=BSD 3-Clause +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Tianling Shen + +PKG_BUILD_DEPENDS:=python3/host +ifneq ($(wildcard $(TOPDIR)/feeds/packages/devel/ninja/ninja.mk),) +PKG_BUILD_DEPENDS+= ninja/host +endif +PKG_USE_MIPS16:=0 +PKG_BUILD_PARALLEL:=1 + +ifeq ($(NINJA),) +NINJA = \ + MAKEFLAGS="$(MAKE_JOBSERVER)" \ + $(STAGING_DIR_HOSTPKG)/bin/ninja \ + $(if $(findstring c,$(OPENWRT_VERBOSE)),-v) \ + $(if $(MAKE_JOBSERVER),,-j1) +endif + +ifneq ($(CONFIG_CPU_TYPE)," ") + CPU_TYPE:=$(word 1, $(subst +," ,$(CONFIG_CPU_TYPE))) + CPU_SUBTYPE:=$(word 2, $(subst +, ",$(CONFIG_CPU_TYPE))) + ifeq ($(CPU_SUBTYPE),) + CPU_SUBTYPE:="" + endif +else + CPU_TYPE:="" + CPU_SUBTYPE:="" +endif + +include $(INCLUDE_DIR)/package.mk + +define Package/naiveproxy + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + URL:=https://github.com/klzgrad/naiveproxy + TITLE:=Make a fortune quietly + DEPENDS:=@!(arc||armeb||mips||mips64||powerpc||TARGET_gemini) +libatomic +endef + +define Package/naiveproxy/description + NaïveProxy uses Chrome's network stack to camouflage traffic with strong + censorship resistance and low detectability. Reusing Chrome's stack also + ensures best practices in performance and security. +endef + +ifneq ($(CONFIG_CCACHE),) + export CCACHE_SLOPPINESS=time_macros + export CCACHE_BASEDIR=$(PKG_BUILD_DIR)/src + export CCACHE_CPP2=yes + export naive_ccache_flags=cc_wrapper="$(CCACHE)" +endif + +CLANG_VER:=15-init-1995-g5bec1ea7-1 +CLANG_FILE:=clang-llvmorg-$(CLANG_VER).tgz +define Download/CLANG + URL:=https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64 + URL_FILE:=$(CLANG_FILE) + FILE:=$(CLANG_FILE) + HASH:=c2ccf8e5136661eb7c25bb08ae6e78f7d667b03f0c16dabf2eb1a392b244bd5f +endef + +GN_VER:=859dde4a7f34a4383179522f8e1061dcffac8691 +GN_FILE:=gn-git_revision-$(GN_VER).zip +define Download/GN_TOOL + URL:=https://chrome-infra-packages.appspot.com/dl/gn/gn/linux-amd64/+ + URL_FILE:=git_revision:$(GN_VER) + FILE:=$(GN_FILE) + HASH:=00691d4576ae52f809145ef6db5e3782e3eb63a80f04a7407168ce4b5ef83990 +endef + +PGO_VER:=4896-1648230561-717dc24b4ffc1663d1990243de5d49fac8001b06 +PGO_FILE:=chrome-linux-$(PGO_VER).profdata +define Download/PGO_PROF + URL:=https://storage.googleapis.com/chromium-optimization-profiles/pgo_profiles + URL_FILE:=$(PGO_FILE) + FILE:=$(PGO_FILE) + HASH:=66fcba3f0ca6e97713ffd72c3937230ba63116ae64e9d520c960e368df6c954e +endef + +define Build/Prepare + $(call Build/Prepare/Default) + + ( \ + cd $(PKG_BUILD_DIR)/src ; \ + mkdir -p "chrome/build/pgo_profiles" ; \ + $(CP) "$(DL_DIR)/$(PGO_FILE)" "chrome/build/pgo_profiles" ; \ + mkdir -p "third_party/llvm-build/Release+Asserts" ; \ + $(TAR) -xzf "$(DL_DIR)/$(CLANG_FILE)" -C "third_party/llvm-build/Release+Asserts" ; \ + mkdir -p "gn/out" ; \ + unzip -o "$(DL_DIR)/$(GN_FILE)" -d "gn/out" ; \ + ) +endef + +define Build/Compile + ( \ + cd "$(PKG_BUILD_DIR)/src" ; \ + . ../init_env.sh "$(ARCH)" $(CPU_TYPE) $(CPU_SUBTYPE) "$(TOOLCHAIN_DIR)" ; \ + export naive_flags+=" $$$${naive_ccache_flags}" ; \ + mkdir -p "out" ; \ + ./gn/out/gn gen "out/Release" --args="$$$${naive_flags}" --script-executable="$(PYTHON)" ; \ + $(NINJA) -C "$(PKG_BUILD_DIR)/src/out/Release" naive ; \ + ) +endef + +define Package/naiveproxy/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/out/Release/naive $(1)/usr/bin/naive +endef + +$(eval $(call Download,CLANG)) +$(eval $(call Download,GN_TOOL)) +$(eval $(call Download,PGO_PROF)) + +$(eval $(call BuildPackage,naiveproxy)) diff --git a/naiveproxy/patches/100-macros.patch b/naiveproxy/patches/100-macros.patch new file mode 100644 index 000000000..e6d9db231 --- /dev/null +++ b/naiveproxy/patches/100-macros.patch @@ -0,0 +1,38 @@ +--- a/src/base/allocator/partition_allocator/tagging.cc ++++ b/src/base/allocator/partition_allocator/tagging.cc +@@ -19,22 +19,25 @@ + #define PR_GET_TAGGED_ADDR_CTRL 56 + #define PR_TAGGED_ADDR_ENABLE (1UL << 0) + +-#if BUILDFLAG(IS_LINUX) +-#include +- +-// Linux headers already provide these since v5.10. +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 0) +-#define HAS_PR_MTE_MACROS +-#endif +-#endif +- +-#ifndef HAS_PR_MTE_MACROS ++#ifndef PR_MTE_TCF_SHIFT + #define PR_MTE_TCF_SHIFT 1 ++#endif ++#ifndef PR_MTE_TCF_NONE + #define PR_MTE_TCF_NONE (0UL << PR_MTE_TCF_SHIFT) ++#endif ++#ifndef PR_MTE_TCF_SYNC + #define PR_MTE_TCF_SYNC (1UL << PR_MTE_TCF_SHIFT) ++#endif ++#ifndef PR_MTE_TCF_ASYNC + #define PR_MTE_TCF_ASYNC (2UL << PR_MTE_TCF_SHIFT) ++#endif ++#ifndef PR_MTE_TCF_MASK + #define PR_MTE_TCF_MASK (3UL << PR_MTE_TCF_SHIFT) ++#endif ++#ifndef PR_MTE_TAG_SHIFT + #define PR_MTE_TAG_SHIFT 3 ++#endif ++#ifndef PR_MTE_TAG_MASK + #define PR_MTE_TAG_MASK (0xffffUL << PR_MTE_TAG_SHIFT) + #endif + #endif diff --git a/naiveproxy/src/init_env.sh b/naiveproxy/src/init_env.sh new file mode 100755 index 000000000..9703f2e75 --- /dev/null +++ b/naiveproxy/src/init_env.sh @@ -0,0 +1,96 @@ +#!/bin/bash +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org +# -------------------------------------------------------- +# Init build dependencies for naiveproxy + +# Read args from shell +target_arch="$1" +cpu_type="$2" +cpu_subtype="$3" +toolchain_dir="$4" + +# Set arch info +case "${target_arch}" in +"aarch64") + naive_arch="arm64" + ;; +"i386") + naive_arch="x86" + ;; +"x86_64") + naive_arch="x64" + ;; +*) + naive_arch="${target_arch}" + ;; +esac + +# OS detection +[ "$(uname)" != "Linux" -o "$(uname -m)" != "x86_64" ] && { echo -e "Support Linux AMD64 only."; exit 1; } + +# Create TMP dir +mkdir -p "$PWD/tmp" +export TMPDIR="$PWD/tmp" + +# Set ENV +export DEPOT_TOOLS_WIN_TOOLCHAIN=0 +export naive_flags=" +is_official_build=true +exclude_unwind_tables=true +enable_resource_allowlist_generation=false +symbol_level=0 +is_clang=true +use_sysroot=false + +use_allocator=\"none\" +use_allocator_shim=false +use_partition_alloc=false + +fatal_linker_warnings=false +treat_warnings_as_errors=false + +enable_base_tracing=false +use_udev=false +use_aura=false +use_ozone=false +use_gio=false +use_platform_icu_alternatives=true +use_glib=false + +disable_file_support=true +enable_websockets=false +use_kerberos=false +enable_mdns=false +enable_reporting=false +include_transport_security_state_preload_list=false +use_nss_certs=false + +target_os=\"openwrt\" +target_cpu=\"${naive_arch}\" +target_sysroot=\"${toolchain_dir}\"" + +case "${target_arch}" in +"arm") + naive_flags+=" arm_version=0 arm_cpu=\"${cpu_type}\"" + case "${cpu_type}" in "arm1176jzf-s"|"arm926ej-s"|"mpcore"|"xscale") naive_flags+=" arm_use_thumb=false" ;; esac + if [ -n "${cpu_subtype}" ]; then + if grep -q "neon" <<< "${cpu_subtype}"; then + neon_flag="arm_use_neon=true" + else + neon_flag="arm_use_neon=false" + fi + naive_flags+=" arm_fpu=\"${cpu_subtype}\" arm_float_abi=\"hard\" ${neon_flag}" + else + naive_flags+=" arm_float_abi=\"soft\" arm_use_neon=false" + fi + ;; +"arm64") + [ -n "${cpu_type}" ] && naive_flags+=" arm_cpu=\"${cpu_type}\"" + ;; +"mipsel"|"mips64el") + naive_flags+=" use_gold=false use_thin_lto=false use_lld=false chrome_pgo_phase=0 mips_arch_variant=\"r2\"" + [ "${target_arch}" == "mipsel" ] && naive_flags+=" mips_float_abi=\"soft\" mips_tune=\"${cpu_type}\"" + ;; +esac diff --git a/shadowsocks-rust/Makefile b/shadowsocks-rust/Makefile new file mode 100644 index 000000000..630c754f9 --- /dev/null +++ b/shadowsocks-rust/Makefile @@ -0,0 +1,85 @@ +# SPDX-License-Identifier: GPL-2.0-only +# +# Copyright (C) 2017-2020 Yousong Zhou +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=shadowsocks-rust +PKG_VERSION:=1.14.3 +PKG_RELEASE:=1 + +PKG_SOURCE_HEADER:=shadowsocks-v$(PKG_VERSION) +PKG_SOURCE_BODY:=unknown-linux-musl +PKG_SOURCE_FOOTER:=tar.xz +PKG_SOURCE_URL:=https://github.com/shadowsocks/shadowsocks-rust/releases/download/v$(PKG_VERSION)/ + +ifeq ($(ARCH),aarch64) + PKG_SOURCE:=$(PKG_SOURCE_HEADER).aarch64-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER) + PKG_HASH:=31968468017772e099e69741212520b15fce0ee67584d20706cc9654c7ce7e4c +else ifeq ($(ARCH),arm) + # Referred to golang/golang-values.mk + ARM_CPU_FEATURES:=$(word 2,$(subst +,$(space),$(call qstrip,$(CONFIG_CPU_TYPE)))) + ifeq ($(ARM_CPU_FEATURES),) + PKG_SOURCE:=$(PKG_SOURCE_HEADER).arm-$(PKG_SOURCE_BODY)eabi.$(PKG_SOURCE_FOOTER) + PKG_HASH:=066515d3a7ae07a44419472331866b4ad3ffb04b77a71ed8ecc8d20217abfcfb + else + PKG_SOURCE:=$(PKG_SOURCE_HEADER).arm-$(PKG_SOURCE_BODY)eabihf.$(PKG_SOURCE_FOOTER) + PKG_HASH:=f9c336f94dc081a8e0f4aa7f398ceafedc00c5f7d1981989fdb03b63c298ac57 + endif +else ifeq ($(ARCH),i386) + PKG_SOURCE:=$(PKG_SOURCE_HEADER).i686-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER) + PKG_HASH:=1734d2870f5ebdc5475f5100f78546574a99c96d37cd2cf08aad4ef0eb65ecf4 +else ifeq ($(ARCH),mips) + PKG_SOURCE:=$(PKG_SOURCE_HEADER).mips-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER) + PKG_HASH:=8aa4544abf62f2cb1d3b55bbd67d5d371463da9426479fb1dde6cf2b63e267a4 +else ifeq ($(ARCH),mipsel) + PKG_SOURCE:=$(PKG_SOURCE_HEADER).mipsel-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER) + PKG_HASH:=f89bfaf414dd4dadf5da0b909111d97c3b8194b929cdba2b781a8fd4175a48c1 +else ifeq ($(ARCH),x86_64) + PKG_SOURCE:=$(PKG_SOURCE_HEADER).x86_64-$(PKG_SOURCE_BODY).$(PKG_SOURCE_FOOTER) + PKG_HASH:=515e7e5e6bc426c7e81bff3beb42e713fd1460d4664fa47df855eb4175c9b8f4 +# Set the default value to make OpenWrt Package Checker happy +else + PKG_SOURCE:=dummy + PKG_HASH:=dummy +endif + +PKG_MAINTAINER:=Tianling Shen +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE + +include $(INCLUDE_DIR)/package.mk + +TAR_CMD:=$(HOST_TAR) -C $(PKG_BUILD_DIR) $(TAR_OPTIONS) + +define Package/shadowsocks-rust/Default + define Package/shadowsocks-rust-$(1) + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + TITLE:=shadowsocks-rust $(1) + URL:=https://github.com/shadowsocks/shadowsocks-rust + DEPENDS:=@USE_MUSL @(aarch64||arm||i386||mips||mipsel||x86_64) @!(TARGET_x86_geode||TARGET_x86_legacy) + endef + + define Package/shadowsocks-rust-$(1)/install + $$(INSTALL_DIR) $$(1)/usr/bin + $$(INSTALL_BIN) $$(PKG_BUILD_DIR)/$(1) $$(1)/usr/bin + endef +endef + +SHADOWSOCKS_COMPONENTS:=sslocal ssmanager ssserver ssurl ssservice +define shadowsocks-rust/templates + $(foreach component,$(SHADOWSOCKS_COMPONENTS), + $(call Package/shadowsocks-rust/Default,$(component)) + ) +endef +$(eval $(call shadowsocks-rust/templates)) + +define Build/Compile +endef + +$(foreach component,$(SHADOWSOCKS_COMPONENTS), \ + $(eval $(call BuildPackage,shadowsocks-rust-$(component))) \ +) diff --git a/shadowsocksr-libev/Makefile b/shadowsocksr-libev/Makefile new file mode 100644 index 000000000..53612b233 --- /dev/null +++ b/shadowsocksr-libev/Makefile @@ -0,0 +1,64 @@ +# SPDX-License-Identifier: GPL-2.0-only +# +# Copyright (C) 2017-2020 Yousong Zhou +# Copyright (C) 2018 Lean +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=shadowsocksr-libev +PKG_VERSION:=2.5.6 +PKG_RELEASE:=9 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/shadowsocksrr/shadowsocksr-libev +PKG_SOURCE_DATE:=2018-03-07 +PKG_SOURCE_VERSION:=d63ff863800a5645aca4309d5dd5962bd1e95543 +PKG_MIRROR_HASH:=34308ed827a5dd4f4e35619914102d55b00604faa44fda051d1d25fb4a319325 + +PKG_LICENSE:=GPL-3.0 +PKG_LICENSE_FILES:=LICENSE + +PKG_FIXUP:=autoreconf +PKG_USE_MIPS16:=0 +PKG_BUILD_PARALLEL:=1 +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/shadowsocksr-libev/Default + define Package/shadowsocksr-libev-ssr-$(1) + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + TITLE:=shadowsocksr-libev ssr-$(1) + URL:=https://github.com/shadowsocksrr/shadowsocksr-libev + DEPENDS:=+libev +libsodium +libopenssl +libpthread +libpcre +libudns +zlib + endef + + define Package/shadowsocksr-libev-ssr-$(1)/install + $$(INSTALL_DIR) $$(1)/usr/bin + $$(INSTALL_BIN) $$(PKG_INSTALL_DIR)/usr/bin/ss-$(1) $$(1)/usr/bin/ssr-$(1) + endef +endef + +SHADOWSOCKSR_COMPONENTS:=check local nat redir server +define shadowsocksr-libev/templates + $(foreach component,$(SHADOWSOCKSR_COMPONENTS), + $(call Package/shadowsocksr-libev/Default,$(component)) + ) +endef +$(eval $(call shadowsocksr-libev/templates)) + +CONFIGURE_ARGS += \ + --disable-documentation \ + --disable-ssp \ + --disable-assert \ + --enable-system-shared-lib + +TARGET_CFLAGS += -flto +TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed + +$(foreach component,$(SHADOWSOCKSR_COMPONENTS), \ + $(eval $(call BuildPackage,shadowsocksr-libev-ssr-$(component))) \ +) diff --git a/shadowsocksr-libev/patches/0001-Add-ss-server-and-ss-check.patch b/shadowsocksr-libev/patches/0001-Add-ss-server-and-ss-check.patch new file mode 100644 index 000000000..290ede540 --- /dev/null +++ b/shadowsocksr-libev/patches/0001-Add-ss-server-and-ss-check.patch @@ -0,0 +1,397 @@ +--- a/.gitignore ++++ b/.gitignore +@@ -2,6 +2,7 @@ build/ + .deps/ + /Makefile + src/Makefile ++server/Makefile + libev/Makefile + libudns/Makefile + libcork/Makefile +--- a/Makefile.am ++++ b/Makefile.am +@@ -1,7 +1,7 @@ + if USE_SYSTEM_SHARED_LIB +-SUBDIRS = libcork libipset src ++SUBDIRS = libcork libipset src server + else +-SUBDIRS = libsodium libcork libipset libudns libev src ++SUBDIRS = libsodium libcork libipset libudns libev src server + endif + + if ENABLE_DOCUMENTATION +--- a/Makefile.in ++++ b/Makefile.in +@@ -195,7 +195,7 @@ am__define_uniq_tagged_files = \ + ETAGS = etags + CTAGS = ctags + CSCOPE = cscope +-DIST_SUBDIRS = libsodium libcork libipset libudns libev src doc ++DIST_SUBDIRS = libsodium libcork libipset libudns libev src server doc + am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \ + $(srcdir)/shadowsocks-libev.pc.in $(top_srcdir)/auto/ar-lib \ + $(top_srcdir)/auto/compile $(top_srcdir)/auto/config.guess \ +@@ -377,8 +377,9 @@ top_build_prefix = @top_build_prefix@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + @USE_SYSTEM_SHARED_LIB_FALSE@SUBDIRS = libsodium libcork libipset \ +-@USE_SYSTEM_SHARED_LIB_FALSE@ libudns libev src $(am__append_1) +-@USE_SYSTEM_SHARED_LIB_TRUE@SUBDIRS = libcork libipset src \ ++@USE_SYSTEM_SHARED_LIB_FALSE@ libudns libev src server \ ++@USE_SYSTEM_SHARED_LIB_FALSE@ $(am__append_1) ++@USE_SYSTEM_SHARED_LIB_TRUE@SUBDIRS = libcork libipset src server \ + @USE_SYSTEM_SHARED_LIB_TRUE@ $(am__append_1) + ACLOCAL_AMFLAGS = -I m4 + pkgconfiglibdir = $(libdir)/pkgconfig +--- a/configure ++++ b/configure +@@ -649,7 +649,6 @@ PTHREAD_CC + ax_pthread_config + INET_NTOP_LIB + MV +-RM + GZIP + XMLTO + ASCIIDOC +@@ -757,6 +756,7 @@ infodir + docdir + oldincludedir + includedir ++runstatedir + localstatedir + sharedstatedir + sysconfdir +@@ -857,6 +857,7 @@ datadir='${datarootdir}' + sysconfdir='${prefix}/etc' + sharedstatedir='${prefix}/com' + localstatedir='${prefix}/var' ++runstatedir='${localstatedir}/run' + includedir='${prefix}/include' + oldincludedir='/usr/include' + docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +@@ -1109,6 +1110,15 @@ do + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + ++ -runstatedir | --runstatedir | --runstatedi | --runstated \ ++ | --runstate | --runstat | --runsta | --runst | --runs \ ++ | --run | --ru | --r) ++ ac_prev=runstatedir ;; ++ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ ++ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ ++ | --run=* | --ru=* | --r=*) ++ runstatedir=$ac_optarg ;; ++ + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ +@@ -1246,7 +1256,7 @@ fi + for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ +- libdir localedir mandir ++ libdir localedir mandir runstatedir + do + eval ac_val=\$$ac_var + # Remove trailing slashes. +@@ -1399,6 +1409,7 @@ Fine tuning of the installation director + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] ++ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] +@@ -2472,8 +2483,8 @@ ac_configure="$SHELL $ac_aux_dir/configu + + + +-# expand $ac_aux_dir to an absolute path +-am_aux_dir=`cd $ac_aux_dir && pwd` ++# Expand $ac_aux_dir to an absolute path. ++am_aux_dir=`cd "$ac_aux_dir" && pwd` + + ac_ext=c + ac_cpp='$CPP $CPPFLAGS' +@@ -3783,7 +3794,7 @@ $as_echo "$ac_cv_safe_to_define___extens + + + +-am__api_version='1.14' ++am__api_version='1.15' + + # Find a good install program. We prefer a C program (faster), + # so one script is as good as another. But avoid the broken or +@@ -3972,7 +3983,7 @@ else + $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} + fi + +-if test x"${install_sh}" != xset; then ++if test x"${install_sh+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; +@@ -4363,8 +4374,8 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}ma + # + mkdir_p='$(MKDIR_P)' + +-# We need awk for the "check" target. The system "awk" is bad on +-# some platforms. ++# We need awk for the "check" target (and possibly the TAP driver). The ++# system "awk" is bad on some platforms. + # Always define AMTAR for backward compatibility. Yes, it's still used + # in the wild :-( We should find a proper way to deprecate it ... + AMTAR='$${TAR-tar}' +@@ -4549,6 +4560,7 @@ END + as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 + fi + fi ++ + if test -n "$ac_tool_prefix"; then + for ac_prog in ar lib "link -lib" + do +@@ -12494,47 +12506,6 @@ $as_echo "no" >&6; } + fi + + +- # Extract the first word of "rm", so it can be a program name with args. +-set dummy rm; ac_word=$2 +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +-$as_echo_n "checking for $ac_word... " >&6; } +-if ${ac_cv_path_RM+:} false; then : +- $as_echo_n "(cached) " >&6 +-else +- case $RM in +- [\\/]* | ?:[\\/]*) +- ac_cv_path_RM="$RM" # Let the user override the test with a path. +- ;; +- *) +- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +-for as_dir in $PATH +-do +- IFS=$as_save_IFS +- test -z "$as_dir" && as_dir=. +- for ac_exec_ext in '' $ac_executable_extensions; do +- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then +- ac_cv_path_RM="$as_dir/$ac_word$ac_exec_ext" +- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 +- break 2 +- fi +-done +- done +-IFS=$as_save_IFS +- +- test -z "$ac_cv_path_RM" && ac_cv_path_RM="rm" +- ;; +-esac +-fi +-RM=$ac_cv_path_RM +-if test -n "$RM"; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RM" >&5 +-$as_echo "$RM" >&6; } +-else +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +-$as_echo "no" >&6; } +-fi +- +- + # Extract the first word of "mv", so it can be a program name with args. + set dummy mv; ac_word=$2 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +@@ -16204,15 +16175,162 @@ $as_echo "#define HAVE_IPv6 1" >>confdef + + + if test -z "$USE_SYSTEM_SHARED_LIB_TRUE"; then : +- else ++ ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sodium_init in -lsodium" >&5 ++$as_echo_n "checking for sodium_init in -lsodium... " >&6; } ++if ${ac_cv_lib_sodium_sodium_init+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ ac_check_lib_save_LIBS=$LIBS ++LIBS="-lsodium $LIBS" ++cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++ ++/* Override any GCC internal prototype to avoid an error. ++ Use char because int might match the return type of a GCC ++ builtin and then its argument prototype would still apply. */ ++#ifdef __cplusplus ++extern "C" ++#endif ++char sodium_init (); ++int ++main () ++{ ++return sodium_init (); ++ ; ++ return 0; ++} ++_ACEOF ++if ac_fn_c_try_link "$LINENO"; then : ++ ac_cv_lib_sodium_sodium_init=yes ++else ++ ac_cv_lib_sodium_sodium_init=no ++fi ++rm -f core conftest.err conftest.$ac_objext \ ++ conftest$ac_exeext conftest.$ac_ext ++LIBS=$ac_check_lib_save_LIBS ++fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_sodium_sodium_init" >&5 ++$as_echo "$ac_cv_lib_sodium_sodium_init" >&6; } ++if test "x$ac_cv_lib_sodium_sodium_init" = xyes; then : ++ cat >>confdefs.h <<_ACEOF ++#define HAVE_LIBSODIUM 1 ++_ACEOF ++ ++ LIBS="-lsodium $LIBS" ++ ++else ++ ++ as_fn_error $? "Couldn't find libsodium. Try installing libsodium-dev[el]." "$LINENO" 5 ++ ++fi ++ ++ ++else + subdirs="$subdirs libsodium" + + fi + +-ac_config_files="$ac_config_files shadowsocks-libev.pc Makefile libcork/Makefile libipset/Makefile src/Makefile" ++ac_config_files="$ac_config_files shadowsocks-libev.pc Makefile libcork/Makefile libipset/Makefile src/Makefile server/Makefile" + + if test -z "$USE_SYSTEM_SHARED_LIB_TRUE"; then : +- else ++ ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dns_dnlen in -ludns" >&5 ++$as_echo_n "checking for dns_dnlen in -ludns... " >&6; } ++if ${ac_cv_lib_udns_dns_dnlen+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ ac_check_lib_save_LIBS=$LIBS ++LIBS="-ludns $LIBS" ++cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++ ++/* Override any GCC internal prototype to avoid an error. ++ Use char because int might match the return type of a GCC ++ builtin and then its argument prototype would still apply. */ ++#ifdef __cplusplus ++extern "C" ++#endif ++char dns_dnlen (); ++int ++main () ++{ ++return dns_dnlen (); ++ ; ++ return 0; ++} ++_ACEOF ++if ac_fn_c_try_link "$LINENO"; then : ++ ac_cv_lib_udns_dns_dnlen=yes ++else ++ ac_cv_lib_udns_dns_dnlen=no ++fi ++rm -f core conftest.err conftest.$ac_objext \ ++ conftest$ac_exeext conftest.$ac_ext ++LIBS=$ac_check_lib_save_LIBS ++fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_udns_dns_dnlen" >&5 ++$as_echo "$ac_cv_lib_udns_dns_dnlen" >&6; } ++if test "x$ac_cv_lib_udns_dns_dnlen" = xyes; then : ++ cat >>confdefs.h <<_ACEOF ++#define HAVE_LIBUDNS 1 ++_ACEOF ++ ++ LIBS="-ludns $LIBS" ++ ++else ++ as_fn_error $? "Couldn't find libudns. Try installing libudns-dev or udns-devel." "$LINENO" 5 ++fi ++ ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ev_loop_destroy in -lev" >&5 ++$as_echo_n "checking for ev_loop_destroy in -lev... " >&6; } ++if ${ac_cv_lib_ev_ev_loop_destroy+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ ac_check_lib_save_LIBS=$LIBS ++LIBS="-lev $LIBS" ++cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++ ++/* Override any GCC internal prototype to avoid an error. ++ Use char because int might match the return type of a GCC ++ builtin and then its argument prototype would still apply. */ ++#ifdef __cplusplus ++extern "C" ++#endif ++char ev_loop_destroy (); ++int ++main () ++{ ++return ev_loop_destroy (); ++ ; ++ return 0; ++} ++_ACEOF ++if ac_fn_c_try_link "$LINENO"; then : ++ ac_cv_lib_ev_ev_loop_destroy=yes ++else ++ ac_cv_lib_ev_ev_loop_destroy=no ++fi ++rm -f core conftest.err conftest.$ac_objext \ ++ conftest$ac_exeext conftest.$ac_ext ++LIBS=$ac_check_lib_save_LIBS ++fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ev_ev_loop_destroy" >&5 ++$as_echo "$ac_cv_lib_ev_ev_loop_destroy" >&6; } ++if test "x$ac_cv_lib_ev_ev_loop_destroy" = xyes; then : ++ cat >>confdefs.h <<_ACEOF ++#define HAVE_LIBEV 1 ++_ACEOF ++ ++ LIBS="-lev $LIBS" ++ ++else ++ as_fn_error $? "Couldn't find libev. Try installing libev-dev[el]." "$LINENO" 5 ++fi ++ ++ ++else + ac_config_files="$ac_config_files libudns/Makefile libev/Makefile" + + fi +@@ -17258,6 +17376,7 @@ do + "libcork/Makefile") CONFIG_FILES="$CONFIG_FILES libcork/Makefile" ;; + "libipset/Makefile") CONFIG_FILES="$CONFIG_FILES libipset/Makefile" ;; + "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; ++ "server/Makefile") CONFIG_FILES="$CONFIG_FILES server/Makefile" ;; + "libudns/Makefile") CONFIG_FILES="$CONFIG_FILES libudns/Makefile" ;; + "libev/Makefile") CONFIG_FILES="$CONFIG_FILES libev/Makefile" ;; + "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; +@@ -17958,8 +18077,8 @@ $as_echo X"$file" | + fi + + cfgfile="${ofile}T" +- trap "$RM -f \"$cfgfile\"; exit 1" 1 2 15 +- $RM -f "$cfgfile" ++ trap "$RM \"$cfgfile\"; exit 1" 1 2 15 ++ $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" + #! $SHELL +--- a/configure.ac ++++ b/configure.ac +@@ -315,7 +315,8 @@ AC_CONFIG_FILES([ shadowsocks-libev.pc + Makefile + libcork/Makefile + libipset/Makefile +- src/Makefile]) ++ src/Makefile ++ server/Makefile]) + AM_COND_IF([USE_SYSTEM_SHARED_LIB],[ + AC_CHECK_LIB([udns], [dns_dnlen], ,[AC_MSG_ERROR([Couldn't find libudns. Try installing libudns-dev or udns-devel.])]) + AC_CHECK_LIB([ev], [ev_loop_destroy], ,[AC_MSG_ERROR([Couldn't find libev. Try installing libev-dev@<:@el@:>@.])]) diff --git a/shadowsocksr-libev/patches/0002-Revert-verify_simple-and-auth_simple.patch b/shadowsocksr-libev/patches/0002-Revert-verify_simple-and-auth_simple.patch new file mode 100644 index 000000000..0f8114656 --- /dev/null +++ b/shadowsocksr-libev/patches/0002-Revert-verify_simple-and-auth_simple.patch @@ -0,0 +1,20 @@ +--- a/src/obfs/obfs.c ++++ b/src/obfs/obfs.c +@@ -88,7 +88,7 @@ obfs_class *new_obfs_class(const char *p + plugin->client_decode = tls12_ticket_auth_client_decode; + + return plugin; +- /*} else if (strcmp(plugin_name, "verify_simple") == 0) { ++ } else if (strcmp(plugin_name, "verify_simple") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs_class)); + plugin->init_data = init_data; + plugin->new_obfs = verify_simple_new_obfs; +@@ -115,7 +115,7 @@ obfs_class *new_obfs_class(const char *p + plugin->client_udp_pre_encrypt = NULL; + plugin->client_udp_post_decrypt = NULL; + +- return plugin;*/ ++ return plugin; + } else if (strcmp(plugin_name, "auth_sha1") == 0) { + obfs_class *plugin = (obfs_class *) malloc(sizeof(obfs_class)); + plugin->init_data = auth_simple_init_data; diff --git a/shadowsocksr-libev/patches/0003-Refine-Usage.patch b/shadowsocksr-libev/patches/0003-Refine-Usage.patch new file mode 100644 index 000000000..dd44f5855 --- /dev/null +++ b/shadowsocksr-libev/patches/0003-Refine-Usage.patch @@ -0,0 +1,37 @@ +--- a/src/utils.c ++++ b/src/utils.c +@@ -258,8 +258,6 @@ usage() + { + printf("\n"); + printf("shadowsocks-libev %s with %s\n\n", VERSION, USING_CRYPTO); +- printf( +- " maintained by Max Lv and Linus Yang \n\n"); + printf(" usage:\n\n"); + #ifdef MODULE_LOCAL + printf(" ss-local\n"); +@@ -299,6 +297,25 @@ usage() + " The default cipher is rc4-md5.\n"); + printf("\n"); + printf( ++ " -o Obfs of your remote server: plain,\n"); ++ printf( ++ " http_simple, http_post and tls1.2_ticket_auth.\n"); ++ printf( ++ " -g Obfs-Param of your remote server.\n"); ++ printf( ++ " -O Protocol of your remote server: orgin,\n"); ++ printf( ++ " auth_sha1, auth_sha1_v2, auth_sha1_v4,\n"); ++ printf( ++ " auth_aes128_md5, auth_aes128_sha1,\n"); ++ printf( ++ " auth_chain_a, auth_chain_b, auth_chain_c,\n"); ++ printf( ++ " auth_chain_d, auth_chain_e and auth_chain_f.\n"); ++ printf( ++ " -G Protocol-Param of your remote server.\n"); ++ printf("\n"); ++ printf( + " [-a ] Run as another user.\n"); + printf( + " [-f ] The file path to store pid.\n"); diff --git a/shadowsocksr-libev/patches/100-fix-gcc-10.patch b/shadowsocksr-libev/patches/100-fix-gcc-10.patch new file mode 100644 index 000000000..1049fc2f8 --- /dev/null +++ b/shadowsocksr-libev/patches/100-fix-gcc-10.patch @@ -0,0 +1,20 @@ +--- a/src/http.h ++++ b/src/http.h +@@ -29,6 +29,6 @@ + #include + #include "protocol.h" + +-const protocol_t *const http_protocol; ++extern const protocol_t *const http_protocol; + + #endif +--- a/src/tls.h ++++ b/src/tls.h +@@ -28,6 +28,6 @@ + + #include "protocol.h" + +-const protocol_t *const tls_protocol; ++extern const protocol_t *const tls_protocol; + + #endif diff --git a/shadowsocksr-libev/patches/101-Fix-Werror-sizeof-pointer-memaccess.patch b/shadowsocksr-libev/patches/101-Fix-Werror-sizeof-pointer-memaccess.patch new file mode 100644 index 000000000..1db501aab --- /dev/null +++ b/shadowsocksr-libev/patches/101-Fix-Werror-sizeof-pointer-memaccess.patch @@ -0,0 +1,11 @@ +--- a/src/local.c ++++ b/src/local.c +@@ -718,7 +718,7 @@ server_recv_cb(EV_P_ ev_io *w, int reven + + ss_free(hostname); + } else { +- strncpy(host, ip, sizeof(ip)); ++ strncpy(host, ip, INET6_ADDRSTRLEN); + } + } + diff --git a/shadowsocksr-libev/patches/102-Read-listening-mode-from-config.patch b/shadowsocksr-libev/patches/102-Read-listening-mode-from-config.patch new file mode 100644 index 000000000..57f6f76dc --- /dev/null +++ b/shadowsocksr-libev/patches/102-Read-listening-mode-from-config.patch @@ -0,0 +1,34 @@ +--- a/src/jconf.c ++++ b/src/jconf.c +@@ -259,6 +259,19 @@ read_jconf(const char *file) + conf.server_legacy.obfs = to_string(value); + } else if (strcmp(name, "obfs_param") == 0) { // SSR + conf.server_legacy.obfs_param = to_string(value); ++ } else if (strcmp(name, "mode") == 0) { ++ char *mode_str = to_string(value); ++ ++ if (strcmp(mode_str, "tcp_only") == 0) ++ conf.mode = TCP_ONLY; ++ else if (strcmp(mode_str, "tcp_and_udp") == 0) ++ conf.mode = TCP_AND_UDP; ++ else if (strcmp(mode_str, "udp_only") == 0) ++ conf.mode = UDP_ONLY; ++ else ++ LOGI("ignore unknown mode: %s, use tcp_only as fallback", ++ mode_str); ++ ss_free(mode_str); + } else { + match = 0; + } +--- a/src/redir.c ++++ b/src/redir.c +@@ -1252,6 +1252,9 @@ main(int argc, char **argv) + if (user == NULL) { + user = conf->user; + } ++ if (mode == TCP_ONLY) { ++ mode = conf->mode; ++ } + if (mtu == 0) { + mtu = conf->mtu; + } diff --git a/shadowsocksr-libev/patches/103-Add-TPROXY-support-for-TCP-ssr-redir.patch b/shadowsocksr-libev/patches/103-Add-TPROXY-support-for-TCP-ssr-redir.patch new file mode 100644 index 000000000..cac967cb4 --- /dev/null +++ b/shadowsocksr-libev/patches/103-Add-TPROXY-support-for-TCP-ssr-redir.patch @@ -0,0 +1,154 @@ +--- a/completions/bash/ss-redir ++++ b/completions/bash/ss-redir +@@ -2,7 +2,7 @@ + { + local cur prev opts ciphers + ciphers='rc4-md5 table rc4 aes-128-cfb aes-192-cfb aes-256-cfb aes-128-ctr aes-192-ctr aes-256-ctr bf-cfb camellia-128-cfb camellia-192-cfb camellia-256-cfb cast5-cfb des-cfb idea-cfb rc2-cfb seed-cfb salsa20 chacha20 and chacha20-ietf' +- opts='-s -b -p -k -f -t -m -c -a -n -u -U -v -h -A --mtu --help --mptcp -l' ++ opts='-s -b -p -k -f -t -m -c -a -n -u -U -T -v -h -A --mtu --help --mptcp -l' + cur=${COMP_WORDS[COMP_CWORD]} + prev="${COMP_WORDS[COMP_CWORD-1]}" + case "$prev" in +--- a/src/jconf.c ++++ b/src/jconf.c +@@ -338,7 +338,11 @@ + check_json_value_type(value, json_boolean, + "invalid config file: option 'ipv6_first' must be a boolean"); + conf.ipv6_first = value->u.boolean; +- } ++ } else if (strcmp(name, "tcp_tproxy") == 0) { ++ check_json_value_type(value, json_boolean, ++ "invalid config file: option 'tcp_tproxy' must be a boolean"); ++ conf.tcp_tproxy = value->u.boolean; ++ } + } + } + } else { +--- a/src/jconf.h ++++ b/src/jconf.h +@@ -105,6 +105,7 @@ + int mtu; + int mptcp; + int ipv6_first; ++ int tcp_tproxy; + } jconf_t; + + jconf_t *read_jconf(const char *file); +--- a/src/redir.c ++++ b/src/redir.c +@@ -71,6 +71,14 @@ + #define IP6T_SO_ORIGINAL_DST 80 + #endif + ++#ifndef IP_TRANSPARENT ++#define IP_TRANSPARENT 19 ++#endif ++ ++#ifndef IPV6_TRANSPARENT ++#define IPV6_TRANSPARENT 75 ++#endif ++ + #include "includeobfs.h" // I don't want to modify makefile + #include "jconf.h" + +@@ -101,18 +109,28 @@ + static listen_ctx_t *current_profile; + static struct cork_dllist all_connections; + ++static int tcp_tproxy = 0; /* use tproxy instead of redirect (for tcp) */ ++ + int + getdestaddr(int fd, struct sockaddr_storage *destaddr) + { + socklen_t socklen = sizeof(*destaddr); + int error = 0; + +- error = getsockopt(fd, SOL_IPV6, IP6T_SO_ORIGINAL_DST, destaddr, &socklen); +- if (error) { // Didn't find a proper way to detect IP version. +- error = getsockopt(fd, SOL_IP, SO_ORIGINAL_DST, destaddr, &socklen); +- if (error) { +- return -1; +- } ++ if (tcp_tproxy) { ++ error = getsockname(fd, (void *)destaddr, &socklen); ++ } else { ++ error = getsockopt(fd, SOL_IPV6, IP6T_SO_ORIGINAL_DST, destaddr, &socklen); ++ if (error) { // Didn't find a proper way to detect IP version. ++ error = getsockopt(fd, SOL_IP, SO_ORIGINAL_DST, destaddr, &socklen); ++ if (error) { ++ return -1; ++ } ++ } ++ } ++ ++ if (error) { ++ return -1; + } + return 0; + } +@@ -164,6 +182,23 @@ + if (err == 0) { + LOGI("tcp port reuse enabled"); + } ++ ++ if (tcp_tproxy) { ++ int level = 0, optname = 0; ++ if (rp->ai_family == AF_INET) { ++ level = IPPROTO_IP; ++ optname = IP_TRANSPARENT; ++ } else { ++ level = IPPROTO_IPV6; ++ optname = IPV6_TRANSPARENT; ++ } ++ ++ if (setsockopt(listen_sock, level, optname, &opt, sizeof(opt)) != 0) { ++ ERROR("setsockopt IP_TRANSPARENT"); ++ exit(EXIT_FAILURE); ++ } ++ LOGI("tcp tproxy mode enabled"); ++ } + + s = bind(listen_sock, rp->ai_addr, rp->ai_addrlen); + if (s == 0) { +@@ -1094,7 +1129,7 @@ + + USE_TTY(); + +- while ((c = getopt_long(argc, argv, "f:s:p:l:k:t:m:c:b:a:n:huUvA6" ++ while ((c = getopt_long(argc, argv, "f:s:p:l:k:t:m:c:b:a:n:huUTvA6" + "O:o:G:g:", + long_options, &option_index)) != -1) { + switch (c) { +@@ -1169,6 +1204,9 @@ + case 'U': + mode = UDP_ONLY; + break; ++ case 'T': ++ tcp_tproxy = 1; ++ break; + case 'v': + verbose = 1; + break; +@@ -1255,6 +1293,9 @@ + if (mode == TCP_ONLY) { + mode = conf->mode; + } ++ if (tcp_tproxy == 0) { ++ tcp_tproxy = conf->tcp_tproxy; ++ } + if (mtu == 0) { + mtu = conf->mtu; + } +--- a/src/utils.c ++++ b/src/utils.c +@@ -342,6 +342,10 @@ + #endif + printf( + " [-U] Enable UDP relay and disable TCP relay.\n"); ++#ifdef MODULE_REDIR ++ printf( ++ " [-T] Use tproxy instead of redirect (for tcp).\n"); ++#endif + #ifdef MODULE_REMOTE + printf( + " [-6] Resovle hostname to IPv6 address first.\n"); diff --git a/shadowsocksr-libev/src/server/Makefile.am b/shadowsocksr-libev/src/server/Makefile.am new file mode 100644 index 000000000..3ae8bc27e --- /dev/null +++ b/shadowsocksr-libev/src/server/Makefile.am @@ -0,0 +1,55 @@ +VERSION_INFO = 2:0:0 + +AM_CFLAGS = -g -O2 -Wall -Werror -Wno-deprecated-declarations -fno-strict-aliasing -std=gnu99 -D_GNU_SOURCE +AM_CFLAGS += $(PTHREAD_CFLAGS) +if !USE_SYSTEM_SHARED_LIB +AM_CFLAGS += -I$(top_srcdir)/libev +AM_CFLAGS += -I$(top_srcdir)/libudns +AM_CFLAGS += -I$(top_srcdir)/libsodium/src/libsodium/include +endif +AM_CFLAGS += -I$(top_srcdir)/libipset/include +AM_CFLAGS += -I$(top_srcdir)/libcork/include +AM_CFLAGS += $(LIBPCRE_CFLAGS) + +SS_COMMON_LIBS = $(top_builddir)/libipset/libipset.la \ + $(top_builddir)/libcork/libcork.la \ + $(INET_NTOP_LIB) $(LIBPCRE_LIBS) +if USE_SYSTEM_SHARED_LIB +SS_COMMON_LIBS += -lev -lsodium -lm +else +SS_COMMON_LIBS += $(top_builddir)/libev/libev.la \ + $(top_builddir)/libsodium/src/libsodium/libsodium.la +endif + +bin_PROGRAMS = ss-server ss-check + +sni_src = http.c \ + tls.c \ + rule.c + +ss_check_SOURCES = check.c + +ss_server_SOURCES = utils.c \ + netutils.c \ + jconf.c \ + json.c \ + encrypt.c \ + udprelay.c \ + cache.c \ + acl.c \ + resolv.c \ + server.c \ + $(sni_src) + + +ss_check_LDADD = $(SS_COMMON_LIBS) +ss_server_LDADD = $(SS_COMMON_LIBS) + +if USE_SYSTEM_SHARED_LIB +ss_server_LDADD += -ludns +else +ss_server_LDADD += $(top_builddir)/libudns/libudns.la +endif + +ss_check_CFLAGS = $(AM_CFLAGS) +ss_server_CFLAGS = $(AM_CFLAGS) -DMODULE_REMOTE diff --git a/shadowsocksr-libev/src/server/Makefile.in b/shadowsocksr-libev/src/server/Makefile.in new file mode 100644 index 000000000..3bfa53eaa --- /dev/null +++ b/shadowsocksr-libev/src/server/Makefile.in @@ -0,0 +1,919 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +@USE_SYSTEM_SHARED_LIB_FALSE@am__append_1 = -I$(top_srcdir)/libev \ +@USE_SYSTEM_SHARED_LIB_FALSE@ -I$(top_srcdir)/libudns \ +@USE_SYSTEM_SHARED_LIB_FALSE@ -I$(top_srcdir)/libsodium/src/libsodium/include +@USE_SYSTEM_SHARED_LIB_TRUE@am__append_2 = -lev -lsodium -lm +@USE_SYSTEM_SHARED_LIB_FALSE@am__append_3 = $(top_builddir)/libev/libev.la \ +@USE_SYSTEM_SHARED_LIB_FALSE@ $(top_builddir)/libsodium/src/libsodium/libsodium.la + +bin_PROGRAMS = ss-server$(EXEEXT) ss-check$(EXEEXT) +@USE_SYSTEM_SHARED_LIB_TRUE@am__append_4 = -ludns +@USE_SYSTEM_SHARED_LIB_FALSE@am__append_5 = $(top_builddir)/libudns/libudns.la +subdir = server +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/m4/ax_tls.m4 $(top_srcdir)/m4/inet_ntop.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/mbedtls.m4 \ + $(top_srcdir)/m4/openssl.m4 $(top_srcdir)/m4/pcre.m4 \ + $(top_srcdir)/m4/polarssl.m4 \ + $(top_srcdir)/m4/stack-protector.m4 $(top_srcdir)/m4/zlib.m4 \ + $(top_srcdir)/libev/libev.m4 $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__installdirs = "$(DESTDIR)$(bindir)" +PROGRAMS = $(bin_PROGRAMS) +am_ss_check_OBJECTS = ss_check-check.$(OBJEXT) +ss_check_OBJECTS = $(am_ss_check_OBJECTS) +am__DEPENDENCIES_1 = +am__DEPENDENCIES_2 = $(top_builddir)/libipset/libipset.la \ + $(top_builddir)/libcork/libcork.la $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__append_3) +ss_check_DEPENDENCIES = $(am__DEPENDENCIES_2) +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = +ss_check_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(ss_check_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am__objects_1 = ss_server-http.$(OBJEXT) ss_server-tls.$(OBJEXT) \ + ss_server-rule.$(OBJEXT) +am_ss_server_OBJECTS = ss_server-utils.$(OBJEXT) \ + ss_server-netutils.$(OBJEXT) ss_server-jconf.$(OBJEXT) \ + ss_server-json.$(OBJEXT) ss_server-encrypt.$(OBJEXT) \ + ss_server-udprelay.$(OBJEXT) ss_server-cache.$(OBJEXT) \ + ss_server-acl.$(OBJEXT) ss_server-resolv.$(OBJEXT) \ + ss_server-server.$(OBJEXT) $(am__objects_1) +ss_server_OBJECTS = $(am_ss_server_OBJECTS) +ss_server_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__append_5) +ss_server_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(ss_server_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/auto/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = $(ss_check_SOURCES) $(ss_server_SOURCES) +DIST_SOURCES = $(ss_check_SOURCES) $(ss_server_SOURCES) +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/auto/depcomp +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +ASCIIDOC = @ASCIIDOC@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GREP = @GREP@ +GZIP = @GZIP@ +INET_NTOP_LIB = @INET_NTOP_LIB@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBPCRE = @LIBPCRE@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MV = @MV@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CONFIG = @PCRE_CONFIG@ +PTHREAD_CC = @PTHREAD_CC@ +PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ +PTHREAD_LIBS = @PTHREAD_LIBS@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +XMLTO = @XMLTO@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +ax_pthread_config = @ax_pthread_config@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pcre_pcreh = @pcre_pcreh@ +pcreh = @pcreh@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +runstatedir = @runstatedir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +subdirs = @subdirs@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +VERSION_INFO = 2:0:0 +AM_CFLAGS = -g -O2 -Wall -Werror -Wno-deprecated-declarations \ + -fno-strict-aliasing -std=gnu99 -D_GNU_SOURCE \ + $(PTHREAD_CFLAGS) $(am__append_1) \ + -I$(top_srcdir)/libipset/include \ + -I$(top_srcdir)/libcork/include $(LIBPCRE_CFLAGS) +SS_COMMON_LIBS = $(top_builddir)/libipset/libipset.la \ + $(top_builddir)/libcork/libcork.la $(INET_NTOP_LIB) \ + $(LIBPCRE_LIBS) $(am__append_2) $(am__append_3) +sni_src = http.c \ + tls.c \ + rule.c + +ss_check_SOURCES = check.c +ss_server_SOURCES = utils.c \ + netutils.c \ + jconf.c \ + json.c \ + encrypt.c \ + udprelay.c \ + cache.c \ + acl.c \ + resolv.c \ + server.c \ + $(sni_src) + +ss_check_LDADD = $(SS_COMMON_LIBS) +ss_server_LDADD = $(SS_COMMON_LIBS) $(am__append_4) $(am__append_5) +ss_check_CFLAGS = $(AM_CFLAGS) +ss_server_CFLAGS = $(AM_CFLAGS) -DMODULE_REMOTE +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign server/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign server/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + || test -f $$p1 \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-binPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files + +clean-binPROGRAMS: + @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list + +ss-check$(EXEEXT): $(ss_check_OBJECTS) $(ss_check_DEPENDENCIES) $(EXTRA_ss_check_DEPENDENCIES) + @rm -f ss-check$(EXEEXT) + $(AM_V_CCLD)$(ss_check_LINK) $(ss_check_OBJECTS) $(ss_check_LDADD) $(LIBS) + +ss-server$(EXEEXT): $(ss_server_OBJECTS) $(ss_server_DEPENDENCIES) $(EXTRA_ss_server_DEPENDENCIES) + @rm -f ss-server$(EXEEXT) + $(AM_V_CCLD)$(ss_server_LINK) $(ss_server_OBJECTS) $(ss_server_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_check-check.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-acl.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-cache.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-encrypt.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-http.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-jconf.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-json.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-netutils.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-resolv.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-rule.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-server.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-tls.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-udprelay.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ss_server-utils.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< + +ss_check-check.o: check.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_check_CFLAGS) $(CFLAGS) -MT ss_check-check.o -MD -MP -MF $(DEPDIR)/ss_check-check.Tpo -c -o ss_check-check.o `test -f 'check.c' || echo '$(srcdir)/'`check.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_check-check.Tpo $(DEPDIR)/ss_check-check.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='check.c' object='ss_check-check.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_check_CFLAGS) $(CFLAGS) -c -o ss_check-check.o `test -f 'check.c' || echo '$(srcdir)/'`check.c + +ss_check-check.obj: check.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_check_CFLAGS) $(CFLAGS) -MT ss_check-check.obj -MD -MP -MF $(DEPDIR)/ss_check-check.Tpo -c -o ss_check-check.obj `if test -f 'check.c'; then $(CYGPATH_W) 'check.c'; else $(CYGPATH_W) '$(srcdir)/check.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_check-check.Tpo $(DEPDIR)/ss_check-check.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='check.c' object='ss_check-check.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_check_CFLAGS) $(CFLAGS) -c -o ss_check-check.obj `if test -f 'check.c'; then $(CYGPATH_W) 'check.c'; else $(CYGPATH_W) '$(srcdir)/check.c'; fi` + +ss_server-utils.o: utils.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-utils.o -MD -MP -MF $(DEPDIR)/ss_server-utils.Tpo -c -o ss_server-utils.o `test -f 'utils.c' || echo '$(srcdir)/'`utils.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-utils.Tpo $(DEPDIR)/ss_server-utils.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils.c' object='ss_server-utils.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-utils.o `test -f 'utils.c' || echo '$(srcdir)/'`utils.c + +ss_server-utils.obj: utils.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-utils.obj -MD -MP -MF $(DEPDIR)/ss_server-utils.Tpo -c -o ss_server-utils.obj `if test -f 'utils.c'; then $(CYGPATH_W) 'utils.c'; else $(CYGPATH_W) '$(srcdir)/utils.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-utils.Tpo $(DEPDIR)/ss_server-utils.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils.c' object='ss_server-utils.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-utils.obj `if test -f 'utils.c'; then $(CYGPATH_W) 'utils.c'; else $(CYGPATH_W) '$(srcdir)/utils.c'; fi` + +ss_server-netutils.o: netutils.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-netutils.o -MD -MP -MF $(DEPDIR)/ss_server-netutils.Tpo -c -o ss_server-netutils.o `test -f 'netutils.c' || echo '$(srcdir)/'`netutils.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-netutils.Tpo $(DEPDIR)/ss_server-netutils.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='netutils.c' object='ss_server-netutils.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-netutils.o `test -f 'netutils.c' || echo '$(srcdir)/'`netutils.c + +ss_server-netutils.obj: netutils.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-netutils.obj -MD -MP -MF $(DEPDIR)/ss_server-netutils.Tpo -c -o ss_server-netutils.obj `if test -f 'netutils.c'; then $(CYGPATH_W) 'netutils.c'; else $(CYGPATH_W) '$(srcdir)/netutils.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-netutils.Tpo $(DEPDIR)/ss_server-netutils.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='netutils.c' object='ss_server-netutils.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-netutils.obj `if test -f 'netutils.c'; then $(CYGPATH_W) 'netutils.c'; else $(CYGPATH_W) '$(srcdir)/netutils.c'; fi` + +ss_server-jconf.o: jconf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-jconf.o -MD -MP -MF $(DEPDIR)/ss_server-jconf.Tpo -c -o ss_server-jconf.o `test -f 'jconf.c' || echo '$(srcdir)/'`jconf.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-jconf.Tpo $(DEPDIR)/ss_server-jconf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='jconf.c' object='ss_server-jconf.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-jconf.o `test -f 'jconf.c' || echo '$(srcdir)/'`jconf.c + +ss_server-jconf.obj: jconf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-jconf.obj -MD -MP -MF $(DEPDIR)/ss_server-jconf.Tpo -c -o ss_server-jconf.obj `if test -f 'jconf.c'; then $(CYGPATH_W) 'jconf.c'; else $(CYGPATH_W) '$(srcdir)/jconf.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-jconf.Tpo $(DEPDIR)/ss_server-jconf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='jconf.c' object='ss_server-jconf.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-jconf.obj `if test -f 'jconf.c'; then $(CYGPATH_W) 'jconf.c'; else $(CYGPATH_W) '$(srcdir)/jconf.c'; fi` + +ss_server-json.o: json.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-json.o -MD -MP -MF $(DEPDIR)/ss_server-json.Tpo -c -o ss_server-json.o `test -f 'json.c' || echo '$(srcdir)/'`json.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-json.Tpo $(DEPDIR)/ss_server-json.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='json.c' object='ss_server-json.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-json.o `test -f 'json.c' || echo '$(srcdir)/'`json.c + +ss_server-json.obj: json.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-json.obj -MD -MP -MF $(DEPDIR)/ss_server-json.Tpo -c -o ss_server-json.obj `if test -f 'json.c'; then $(CYGPATH_W) 'json.c'; else $(CYGPATH_W) '$(srcdir)/json.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-json.Tpo $(DEPDIR)/ss_server-json.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='json.c' object='ss_server-json.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-json.obj `if test -f 'json.c'; then $(CYGPATH_W) 'json.c'; else $(CYGPATH_W) '$(srcdir)/json.c'; fi` + +ss_server-encrypt.o: encrypt.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-encrypt.o -MD -MP -MF $(DEPDIR)/ss_server-encrypt.Tpo -c -o ss_server-encrypt.o `test -f 'encrypt.c' || echo '$(srcdir)/'`encrypt.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-encrypt.Tpo $(DEPDIR)/ss_server-encrypt.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='encrypt.c' object='ss_server-encrypt.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-encrypt.o `test -f 'encrypt.c' || echo '$(srcdir)/'`encrypt.c + +ss_server-encrypt.obj: encrypt.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-encrypt.obj -MD -MP -MF $(DEPDIR)/ss_server-encrypt.Tpo -c -o ss_server-encrypt.obj `if test -f 'encrypt.c'; then $(CYGPATH_W) 'encrypt.c'; else $(CYGPATH_W) '$(srcdir)/encrypt.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-encrypt.Tpo $(DEPDIR)/ss_server-encrypt.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='encrypt.c' object='ss_server-encrypt.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-encrypt.obj `if test -f 'encrypt.c'; then $(CYGPATH_W) 'encrypt.c'; else $(CYGPATH_W) '$(srcdir)/encrypt.c'; fi` + +ss_server-udprelay.o: udprelay.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-udprelay.o -MD -MP -MF $(DEPDIR)/ss_server-udprelay.Tpo -c -o ss_server-udprelay.o `test -f 'udprelay.c' || echo '$(srcdir)/'`udprelay.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-udprelay.Tpo $(DEPDIR)/ss_server-udprelay.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='udprelay.c' object='ss_server-udprelay.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-udprelay.o `test -f 'udprelay.c' || echo '$(srcdir)/'`udprelay.c + +ss_server-udprelay.obj: udprelay.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-udprelay.obj -MD -MP -MF $(DEPDIR)/ss_server-udprelay.Tpo -c -o ss_server-udprelay.obj `if test -f 'udprelay.c'; then $(CYGPATH_W) 'udprelay.c'; else $(CYGPATH_W) '$(srcdir)/udprelay.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-udprelay.Tpo $(DEPDIR)/ss_server-udprelay.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='udprelay.c' object='ss_server-udprelay.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-udprelay.obj `if test -f 'udprelay.c'; then $(CYGPATH_W) 'udprelay.c'; else $(CYGPATH_W) '$(srcdir)/udprelay.c'; fi` + +ss_server-cache.o: cache.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-cache.o -MD -MP -MF $(DEPDIR)/ss_server-cache.Tpo -c -o ss_server-cache.o `test -f 'cache.c' || echo '$(srcdir)/'`cache.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-cache.Tpo $(DEPDIR)/ss_server-cache.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cache.c' object='ss_server-cache.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-cache.o `test -f 'cache.c' || echo '$(srcdir)/'`cache.c + +ss_server-cache.obj: cache.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-cache.obj -MD -MP -MF $(DEPDIR)/ss_server-cache.Tpo -c -o ss_server-cache.obj `if test -f 'cache.c'; then $(CYGPATH_W) 'cache.c'; else $(CYGPATH_W) '$(srcdir)/cache.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-cache.Tpo $(DEPDIR)/ss_server-cache.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cache.c' object='ss_server-cache.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-cache.obj `if test -f 'cache.c'; then $(CYGPATH_W) 'cache.c'; else $(CYGPATH_W) '$(srcdir)/cache.c'; fi` + +ss_server-acl.o: acl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-acl.o -MD -MP -MF $(DEPDIR)/ss_server-acl.Tpo -c -o ss_server-acl.o `test -f 'acl.c' || echo '$(srcdir)/'`acl.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-acl.Tpo $(DEPDIR)/ss_server-acl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='acl.c' object='ss_server-acl.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-acl.o `test -f 'acl.c' || echo '$(srcdir)/'`acl.c + +ss_server-acl.obj: acl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-acl.obj -MD -MP -MF $(DEPDIR)/ss_server-acl.Tpo -c -o ss_server-acl.obj `if test -f 'acl.c'; then $(CYGPATH_W) 'acl.c'; else $(CYGPATH_W) '$(srcdir)/acl.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-acl.Tpo $(DEPDIR)/ss_server-acl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='acl.c' object='ss_server-acl.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-acl.obj `if test -f 'acl.c'; then $(CYGPATH_W) 'acl.c'; else $(CYGPATH_W) '$(srcdir)/acl.c'; fi` + +ss_server-resolv.o: resolv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-resolv.o -MD -MP -MF $(DEPDIR)/ss_server-resolv.Tpo -c -o ss_server-resolv.o `test -f 'resolv.c' || echo '$(srcdir)/'`resolv.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-resolv.Tpo $(DEPDIR)/ss_server-resolv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='resolv.c' object='ss_server-resolv.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-resolv.o `test -f 'resolv.c' || echo '$(srcdir)/'`resolv.c + +ss_server-resolv.obj: resolv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-resolv.obj -MD -MP -MF $(DEPDIR)/ss_server-resolv.Tpo -c -o ss_server-resolv.obj `if test -f 'resolv.c'; then $(CYGPATH_W) 'resolv.c'; else $(CYGPATH_W) '$(srcdir)/resolv.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-resolv.Tpo $(DEPDIR)/ss_server-resolv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='resolv.c' object='ss_server-resolv.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-resolv.obj `if test -f 'resolv.c'; then $(CYGPATH_W) 'resolv.c'; else $(CYGPATH_W) '$(srcdir)/resolv.c'; fi` + +ss_server-server.o: server.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-server.o -MD -MP -MF $(DEPDIR)/ss_server-server.Tpo -c -o ss_server-server.o `test -f 'server.c' || echo '$(srcdir)/'`server.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-server.Tpo $(DEPDIR)/ss_server-server.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='server.c' object='ss_server-server.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-server.o `test -f 'server.c' || echo '$(srcdir)/'`server.c + +ss_server-server.obj: server.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-server.obj -MD -MP -MF $(DEPDIR)/ss_server-server.Tpo -c -o ss_server-server.obj `if test -f 'server.c'; then $(CYGPATH_W) 'server.c'; else $(CYGPATH_W) '$(srcdir)/server.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-server.Tpo $(DEPDIR)/ss_server-server.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='server.c' object='ss_server-server.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-server.obj `if test -f 'server.c'; then $(CYGPATH_W) 'server.c'; else $(CYGPATH_W) '$(srcdir)/server.c'; fi` + +ss_server-http.o: http.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-http.o -MD -MP -MF $(DEPDIR)/ss_server-http.Tpo -c -o ss_server-http.o `test -f 'http.c' || echo '$(srcdir)/'`http.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-http.Tpo $(DEPDIR)/ss_server-http.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='http.c' object='ss_server-http.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-http.o `test -f 'http.c' || echo '$(srcdir)/'`http.c + +ss_server-http.obj: http.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-http.obj -MD -MP -MF $(DEPDIR)/ss_server-http.Tpo -c -o ss_server-http.obj `if test -f 'http.c'; then $(CYGPATH_W) 'http.c'; else $(CYGPATH_W) '$(srcdir)/http.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-http.Tpo $(DEPDIR)/ss_server-http.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='http.c' object='ss_server-http.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-http.obj `if test -f 'http.c'; then $(CYGPATH_W) 'http.c'; else $(CYGPATH_W) '$(srcdir)/http.c'; fi` + +ss_server-tls.o: tls.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-tls.o -MD -MP -MF $(DEPDIR)/ss_server-tls.Tpo -c -o ss_server-tls.o `test -f 'tls.c' || echo '$(srcdir)/'`tls.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-tls.Tpo $(DEPDIR)/ss_server-tls.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tls.c' object='ss_server-tls.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-tls.o `test -f 'tls.c' || echo '$(srcdir)/'`tls.c + +ss_server-tls.obj: tls.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-tls.obj -MD -MP -MF $(DEPDIR)/ss_server-tls.Tpo -c -o ss_server-tls.obj `if test -f 'tls.c'; then $(CYGPATH_W) 'tls.c'; else $(CYGPATH_W) '$(srcdir)/tls.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-tls.Tpo $(DEPDIR)/ss_server-tls.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tls.c' object='ss_server-tls.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-tls.obj `if test -f 'tls.c'; then $(CYGPATH_W) 'tls.c'; else $(CYGPATH_W) '$(srcdir)/tls.c'; fi` + +ss_server-rule.o: rule.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-rule.o -MD -MP -MF $(DEPDIR)/ss_server-rule.Tpo -c -o ss_server-rule.o `test -f 'rule.c' || echo '$(srcdir)/'`rule.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-rule.Tpo $(DEPDIR)/ss_server-rule.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rule.c' object='ss_server-rule.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-rule.o `test -f 'rule.c' || echo '$(srcdir)/'`rule.c + +ss_server-rule.obj: rule.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -MT ss_server-rule.obj -MD -MP -MF $(DEPDIR)/ss_server-rule.Tpo -c -o ss_server-rule.obj `if test -f 'rule.c'; then $(CYGPATH_W) 'rule.c'; else $(CYGPATH_W) '$(srcdir)/rule.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ss_server-rule.Tpo $(DEPDIR)/ss_server-rule.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rule.c' object='ss_server-rule.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ss_server_CFLAGS) $(CFLAGS) -c -o ss_server-rule.obj `if test -f 'rule.c'; then $(CYGPATH_W) 'rule.c'; else $(CYGPATH_W) '$(srcdir)/rule.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(PROGRAMS) +installdirs: + for dir in "$(DESTDIR)$(bindir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-binPROGRAMS + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-binPROGRAMS + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ + clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \ + ctags ctags-am distclean distclean-compile distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-binPROGRAMS \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags tags-am uninstall uninstall-am uninstall-binPROGRAMS + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/shadowsocksr-libev/src/server/README.md b/shadowsocksr-libev/src/server/README.md new file mode 100644 index 000000000..ef6a20e39 --- /dev/null +++ b/shadowsocksr-libev/src/server/README.md @@ -0,0 +1,3 @@ +# server + +`ss-server` and `ss-check` from https://github.com/ywb94/shadowsocks-libev diff --git a/shadowsocksr-libev/src/server/acl.c b/shadowsocksr-libev/src/server/acl.c new file mode 100644 index 000000000..60d4b7274 --- /dev/null +++ b/shadowsocksr-libev/src/server/acl.c @@ -0,0 +1,597 @@ +/* + * acl.c - Manage the ACL (Access Control List) + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#include +#include + +#include "rule.h" +#include "utils.h" +#include "cache.h" +#include "acl.h" + +static struct ip_set white_list_ipv4; +static struct ip_set white_list_ipv6; + +static struct ip_set black_list_ipv4; +static struct ip_set black_list_ipv6; + +static struct cork_dllist black_list_rules; +static struct cork_dllist white_list_rules; + +static int acl_mode = BLACK_LIST; + +static struct cache *block_list; + +static struct ip_set outbound_block_list_ipv4; +static struct ip_set outbound_block_list_ipv6; +static struct cork_dllist outbound_block_list_rules; + +#ifdef __linux__ + +#include +#include + +#define NO_FIREWALL_MODE 0 +#define IPTABLES_MODE 1 +#define FIREWALLD_MODE 2 + +static FILE *shell_stdin; +static int mode = NO_FIREWALL_MODE; + +static char chain_name[64]; +static char *iptables_init_chain = + "iptables -N %s; iptables -F %s; iptables -A OUTPUT -p tcp --tcp-flags RST RST -j %s"; +static char *iptables_remove_chain = + "iptables -D OUTPUT -p tcp --tcp-flags RST RST -j %s; iptables -F %s; iptables -X %s"; +static char *iptables_add_rule = "iptables -A %s -d %s -j DROP"; +static char *iptables_remove_rule = "iptables -D %s -d %s -j DROP"; + +static char *ip6tables_init_chain = + "ip6tables -N %s; ip6tables -F %s; ip6tables -A OUTPUT -p tcp --tcp-flags RST RST -j %s"; +static char *ip6tables_remove_chain = + "ip6tables -D OUTPUT -p tcp --tcp-flags RST RST -j %s; ip6tables -F %s; ip6tables -X %s"; +static char *ip6tables_add_rule = "ip6tables -A %s -d %s -j DROP"; +static char *ip6tables_remove_rule = "ip6tables -D %s -d %s -j DROP"; + +static char *firewalld_init_chain = + "firewall-cmd --direct --add-chain ipv4 filter %s; \ + firewall-cmd --direct --passthrough ipv4 -F %s; \ + firewall-cmd --direct --passthrough ipv4 -A OUTPUT -p tcp --tcp-flags RST RST -j %s"; +static char *firewalld_remove_chain = + "firewall-cmd --direct --passthrough ipv4 -D OUTPUT -p tcp --tcp-flags RST RST -j %s; \ + firewall-cmd --direct --passthrough ipv4 -F %s; \ + firewall-cmd --direct --remove-chain ipv4 filter %s"; +static char *firewalld_add_rule = "firewall-cmd --direct --passthrough ipv4 -A %s -d %s -j DROP"; +static char *firewalld_remove_rule = "firewall-cmd --direct --passthrough ipv4 -D %s -d %s -j DROP"; + +static char *firewalld6_init_chain = + "firewall-cmd --direct --add-chain ipv6 filter %s; \ + firewall-cmd --direct --passthrough ipv6 -F %s; \ + firewall-cmd --direct --passthrough ipv6 -A OUTPUT -p tcp --tcp-flags RST RST -j %s"; +static char *firewalld6_remove_chain = + "firewall-cmd --direct --passthrough ipv6 -D OUTPUT -p tcp --tcp-flags RST RST -j %s; \ + firewall-cmd --direct --passthrough ipv6 -F %s; \ + firewall-cmd --direct --remove-chain ipv6 filter %s"; +static char *firewalld6_add_rule = "firewall-cmd --direct --passthrough ipv6 -A %s -d %s -j DROP"; +static char *firewalld6_remove_rule = "firewall-cmd --direct --passthrough ipv6 -D %s -d %s -j DROP"; + +static int +run_cmd(const char *cmd) +{ + int ret = 0; + char cmdstring[256]; + + sprintf(cmdstring, "%s\n", cmd); + size_t len = strlen(cmdstring); + + if (shell_stdin != NULL) { + ret = fwrite(cmdstring, 1, len, shell_stdin); + fflush(shell_stdin); + } + + return ret == len; +} + +static int +init_firewall() +{ + int ret = 0; + char cli[256]; + FILE *fp; + + if (getuid() != 0) + return -1; + + sprintf(cli, "firewall-cmd --version 2>&1"); + fp = popen(cli, "r"); + + if (fp == NULL) + return -1; + + if (pclose(fp) == 0) { + mode = FIREWALLD_MODE; + } else { + /* Check whether we have permission to operate iptables. + * Note that checking `iptables --version` is insufficient: + * eg, running within a child user namespace. + */ + sprintf(cli, "iptables -L 2>&1"); + fp = popen(cli, "r"); + if (fp == NULL) + return -1; + if (pclose(fp) == 0) + mode = IPTABLES_MODE; + } + + sprintf(chain_name, "SHADOWSOCKS_LIBEV_%d", getpid()); + + if (mode == FIREWALLD_MODE) { + sprintf(cli, firewalld6_init_chain, chain_name, chain_name, chain_name); + ret |= system(cli); + sprintf(cli, firewalld_init_chain, chain_name, chain_name, chain_name); + ret |= system(cli); + } else if (mode == IPTABLES_MODE) { + sprintf(cli, ip6tables_init_chain, chain_name, chain_name, chain_name); + ret |= system(cli); + sprintf(cli, iptables_init_chain, chain_name, chain_name, chain_name); + ret |= system(cli); + } + + shell_stdin = popen("/bin/sh", "w"); + + return ret; +} + +static int +reset_firewall() +{ + int ret = 0; + char cli[256]; + + if (getuid() != 0) + return -1; + + if (mode == IPTABLES_MODE) { + sprintf(cli, ip6tables_remove_chain, chain_name, chain_name, chain_name); + ret |= system(cli); + sprintf(cli, iptables_remove_chain, chain_name, chain_name, chain_name); + ret |= system(cli); + } else if (mode == FIREWALLD_MODE) { + sprintf(cli, firewalld6_remove_chain, chain_name, chain_name, chain_name); + ret |= system(cli); + sprintf(cli, firewalld_remove_chain, chain_name, chain_name, chain_name); + ret |= system(cli); + } + + if (shell_stdin != NULL) { + run_cmd("exit 0"); + pclose(shell_stdin); + } + + return ret; +} + +static int +set_firewall_rule(char *addr, int add) +{ + char cli[256]; + struct cork_ip ip; + + if (getuid() != 0) + return -1; + + if (cork_ip_init(&ip, addr)) + return -1; + + if (add) { + if (mode == IPTABLES_MODE) + sprintf(cli, ip.version == 4 ? iptables_add_rule : ip6tables_add_rule, + chain_name, addr); + else if (mode == FIREWALLD_MODE) + sprintf(cli, ip.version == 4 ? firewalld_add_rule : firewalld6_add_rule, + chain_name, addr); + return run_cmd(cli); + } else { + if (mode == IPTABLES_MODE) + sprintf(cli, ip.version == 4 ? iptables_remove_rule : ip6tables_remove_rule, + chain_name, addr); + else if (mode == FIREWALLD_MODE) + sprintf(cli, ip.version == 4 ? firewalld_remove_rule : firewalld6_remove_rule, + chain_name, addr); + return run_cmd(cli); + } + + return 0; +} + +static void +free_firewall_rule(void *key, void *element) +{ + if (key == NULL) + return; + char *addr = (char *)key; + set_firewall_rule(addr, 0); + ss_free(element); +} + +#endif + +void +init_block_list(int firewall) +{ + // Initialize cache +#ifdef __linux__ + if (firewall) + init_firewall(); + else + mode = NO_FIREWALL_MODE; + cache_create(&block_list, 256, free_firewall_rule); +#else + cache_create(&block_list, 256, NULL); +#endif +} + +void +free_block_list() +{ +#ifdef __linux__ + if (mode != NO_FIREWALL_MODE) + reset_firewall(); +#endif + cache_clear(block_list, 0); // Remove all items +} + +int +remove_from_block_list(char *addr) +{ + size_t addr_len = strlen(addr); + return cache_remove(block_list, addr, addr_len); +} + +void +clear_block_list() +{ + cache_clear(block_list, 3600); // Clear items older than 1 hour +} + +int +check_block_list(char *addr) +{ + size_t addr_len = strlen(addr); + + if (cache_key_exist(block_list, addr, addr_len)) { + int *count = NULL; + cache_lookup(block_list, addr, addr_len, &count); + + if (count != NULL && *count > MAX_TRIES) + return 1; + } + + return 0; +} + +int +update_block_list(char *addr, int err_level) +{ + size_t addr_len = strlen(addr); + + if (cache_key_exist(block_list, addr, addr_len)) { + int *count = NULL; + cache_lookup(block_list, addr, addr_len, &count); + if (count != NULL) { + if (*count > MAX_TRIES) + return 1; + (*count) += err_level; + } + } else if (err_level > 0) { + int *count = (int *)ss_malloc(sizeof(int)); + *count = 1; + cache_insert(block_list, addr, addr_len, count); +#ifdef __linux__ + if (mode != NO_FIREWALL_MODE) + set_firewall_rule(addr, 1); +#endif + } + + return 0; +} + +static void +parse_addr_cidr(const char *str, char *host, int *cidr) +{ + int ret = -1, n = 0; + char *pch; + + pch = strchr(str, '/'); + while (pch != NULL) { + n++; + ret = pch - str; + pch = strchr(pch + 1, '/'); + } + if (ret == -1) { + strcpy(host, str); + *cidr = -1; + } else { + memcpy(host, str, ret); + host[ret] = '\0'; + *cidr = atoi(str + ret + 1); + } +} + +char * +trimwhitespace(char *str) +{ + char *end; + + // Trim leading space + while (isspace(*str)) + str++; + + if (*str == 0) // All spaces? + return str; + + // Trim trailing space + end = str + strlen(str) - 1; + while (end > str && isspace(*end)) + end--; + + // Write new null terminator + *(end + 1) = 0; + + return str; +} + +int +init_acl(const char *path) +{ + // initialize ipset + ipset_init_library(); + + ipset_init(&white_list_ipv4); + ipset_init(&white_list_ipv6); + ipset_init(&black_list_ipv4); + ipset_init(&black_list_ipv6); + ipset_init(&outbound_block_list_ipv4); + ipset_init(&outbound_block_list_ipv6); + + cork_dllist_init(&black_list_rules); + cork_dllist_init(&white_list_rules); + cork_dllist_init(&outbound_block_list_rules); + + struct ip_set *list_ipv4 = &black_list_ipv4; + struct ip_set *list_ipv6 = &black_list_ipv6; + struct cork_dllist *rules = &black_list_rules; + + FILE *f = fopen(path, "r"); + if (f == NULL) { + LOGE("Invalid acl path."); + return -1; + } + + char buf[257]; + while (!feof(f)) + if (fgets(buf, 256, f)) { + // Trim the newline + int len = strlen(buf); + if (len > 0 && buf[len - 1] == '\n') { + buf[len - 1] = '\0'; + } + + char *line = trimwhitespace(buf); + + // Skip comments + if (line[0] == '#') { + continue; + } + + if (strlen(line) == 0) { + continue; + } + + if (strcmp(line, "[outbound_block_list]") == 0) { + list_ipv4 = &outbound_block_list_ipv4; + list_ipv6 = &outbound_block_list_ipv6; + rules = &outbound_block_list_rules; + continue; + } else if (strcmp(line, "[black_list]") == 0 + || strcmp(line, "[bypass_list]") == 0) { + list_ipv4 = &black_list_ipv4; + list_ipv6 = &black_list_ipv6; + rules = &black_list_rules; + continue; + } else if (strcmp(line, "[white_list]") == 0 + || strcmp(line, "[proxy_list]") == 0) { + list_ipv4 = &white_list_ipv4; + list_ipv6 = &white_list_ipv6; + rules = &white_list_rules; + continue; + } else if (strcmp(line, "[reject_all]") == 0 + || strcmp(line, "[bypass_all]") == 0) { + acl_mode = WHITE_LIST; + continue; + } else if (strcmp(line, "[accept_all]") == 0 + || strcmp(line, "[proxy_all]") == 0) { + acl_mode = BLACK_LIST; + continue; + } + + char host[257]; + int cidr; + parse_addr_cidr(line, host, &cidr); + + struct cork_ip addr; + int err = cork_ip_init(&addr, host); + if (!err) { + if (addr.version == 4) { + if (cidr >= 0) { + ipset_ipv4_add_network(list_ipv4, &(addr.ip.v4), cidr); + } else { + ipset_ipv4_add(list_ipv4, &(addr.ip.v4)); + } + } else if (addr.version == 6) { + if (cidr >= 0) { + ipset_ipv6_add_network(list_ipv6, &(addr.ip.v6), cidr); + } else { + ipset_ipv6_add(list_ipv6, &(addr.ip.v6)); + } + } + } else { + rule_t *rule = new_rule(); + accept_rule_arg(rule, line); + init_rule(rule); + add_rule(rules, rule); + } + } + + fclose(f); + + return 0; +} + +void +free_rules(struct cork_dllist *rules) +{ + struct cork_dllist_item *iter; + while ((iter = cork_dllist_head(rules)) != NULL) { + rule_t *rule = cork_container_of(iter, rule_t, entries); + remove_rule(rule); + } +} + +void +free_acl(void) +{ + ipset_done(&black_list_ipv4); + ipset_done(&black_list_ipv6); + ipset_done(&white_list_ipv4); + ipset_done(&white_list_ipv6); + + free_rules(&black_list_rules); + free_rules(&white_list_rules); +} + +int +get_acl_mode(void) +{ + return acl_mode; +} + +/* + * Return 0, if not match. + * Return 1, if match black list. + * Return -1, if match white list. + */ +int +acl_match_host(const char *host) +{ + struct cork_ip addr; + int ret = 0; + int err = cork_ip_init(&addr, host); + + if (err) { + int host_len = strlen(host); + if (lookup_rule(&black_list_rules, host, host_len) != NULL) + ret = 1; + else if (lookup_rule(&white_list_rules, host, host_len) != NULL) + ret = -1; + return ret; + } + + if (addr.version == 4) { + if (ipset_contains_ipv4(&black_list_ipv4, &(addr.ip.v4))) + ret = 1; + else if (ipset_contains_ipv4(&white_list_ipv4, &(addr.ip.v4))) + ret = -1; + } else if (addr.version == 6) { + if (ipset_contains_ipv6(&black_list_ipv6, &(addr.ip.v6))) + ret = 1; + else if (ipset_contains_ipv6(&white_list_ipv6, &(addr.ip.v6))) + ret = -1; + } + + return ret; +} + +int +acl_add_ip(const char *ip) +{ + struct cork_ip addr; + int err = cork_ip_init(&addr, ip); + if (err) { + return -1; + } + + if (addr.version == 4) { + ipset_ipv4_add(&black_list_ipv4, &(addr.ip.v4)); + } else if (addr.version == 6) { + ipset_ipv6_add(&black_list_ipv6, &(addr.ip.v6)); + } + + return 0; +} + +int +acl_remove_ip(const char *ip) +{ + struct cork_ip addr; + int err = cork_ip_init(&addr, ip); + if (err) { + return -1; + } + + if (addr.version == 4) { + ipset_ipv4_remove(&black_list_ipv4, &(addr.ip.v4)); + } else if (addr.version == 6) { + ipset_ipv6_remove(&black_list_ipv6, &(addr.ip.v6)); + } + + return 0; +} + +/* + * Return 0, if not match. + * Return 1, if match black list. + */ +int +outbound_block_match_host(const char *host) +{ + struct cork_ip addr; + int ret = 0; + int err = cork_ip_init(&addr, host); + + if (err) { + int host_len = strlen(host); + if (lookup_rule(&outbound_block_list_rules, host, host_len) != NULL) + ret = 1; + return ret; + } + + if (addr.version == 4) { + if (ipset_contains_ipv4(&outbound_block_list_ipv4, &(addr.ip.v4))) + ret = 1; + } else if (addr.version == 6) { + if (ipset_contains_ipv6(&outbound_block_list_ipv6, &(addr.ip.v6))) + ret = 1; + } + + return ret; +} diff --git a/shadowsocksr-libev/src/server/acl.h b/shadowsocksr-libev/src/server/acl.h new file mode 100644 index 000000000..d6f18b807 --- /dev/null +++ b/shadowsocksr-libev/src/server/acl.h @@ -0,0 +1,53 @@ +/* + * acl.h - Define the ACL interface + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#ifndef _ACL_H +#define _ACL_H + +#define BLACK_LIST 0 +#define WHITE_LIST 1 + +#define MAX_TRIES 64 +#define MALICIOUS 8 +#define SUSPICIOUS 4 +#define BAD 2 +#define MALFORMED 1 + +int init_acl(const char *path); +void free_acl(void); +void clear_block_list(void); + +int acl_match_host(const char *ip); +int acl_add_ip(const char *ip); +int acl_remove_ip(const char *ip); + +int get_acl_mode(void); + +void init_block_list(int firewall); +void free_block_list(); +int check_block_list(char *addr); +int update_block_list(char *addr, int err_level); +int remove_from_block_list(char *addr); + +int outbound_block_match_host(const char *host); + +#endif // _ACL_H diff --git a/shadowsocksr-libev/src/server/auth.c b/shadowsocksr-libev/src/server/auth.c new file mode 100644 index 000000000..a36257a9e --- /dev/null +++ b/shadowsocksr-libev/src/server/auth.c @@ -0,0 +1,993 @@ + +#include "auth.h" + +static int auth_simple_pack_unit_size = 2000; +typedef int (*hmac_with_key_func)(char *auth, char *msg, int msg_len, uint8_t *auth_key, int key_len); +typedef int (*hash_func)(char *auth, char *msg, int msg_len); + +typedef struct auth_simple_global_data { + uint8_t local_client_id[8]; + uint32_t connection_id; +}auth_simple_global_data; + +typedef struct auth_simple_local_data { + int has_sent_header; + char * recv_buffer; + int recv_buffer_size; + uint32_t recv_id; + uint32_t pack_id; + char * salt; + uint8_t * user_key; + char uid[4]; + int user_key_len; + hmac_with_key_func hmac; + hash_func hash; + int hash_len; +}auth_simple_local_data; + +void auth_simple_local_data_init(auth_simple_local_data* local) { + local->has_sent_header = 0; + local->recv_buffer = (char*)malloc(16384); + local->recv_buffer_size = 0; + local->recv_id = 1; + local->pack_id = 1; + local->salt = ""; + local->user_key = 0; + local->user_key_len = 0; + local->hmac = 0; + local->hash = 0; + local->hash_len = 0; + local->salt = ""; +} + +void * auth_simple_init_data() { + auth_simple_global_data *global = (auth_simple_global_data*)malloc(sizeof(auth_simple_global_data)); + rand_bytes(global->local_client_id, 8); + rand_bytes((uint8_t*)&global->connection_id, 4); + global->connection_id &= 0xFFFFFF; + return global; +} + +obfs * auth_simple_new_obfs() { + obfs * self = new_obfs(); + self->l_data = malloc(sizeof(auth_simple_local_data)); + auth_simple_local_data_init((auth_simple_local_data*)self->l_data); + return self; +} + +obfs * auth_aes128_md5_new_obfs() { + obfs * self = new_obfs(); + self->l_data = malloc(sizeof(auth_simple_local_data)); + auth_simple_local_data_init((auth_simple_local_data*)self->l_data); + ((auth_simple_local_data*)self->l_data)->hmac = ss_md5_hmac_with_key; + ((auth_simple_local_data*)self->l_data)->hash = ss_md5_hash_func; + ((auth_simple_local_data*)self->l_data)->hash_len = 16; + ((auth_simple_local_data*)self->l_data)->salt = "auth_aes128_md5"; + return self; +} + +obfs * auth_aes128_sha1_new_obfs() { + obfs * self = new_obfs(); + self->l_data = malloc(sizeof(auth_simple_local_data)); + auth_simple_local_data_init((auth_simple_local_data*)self->l_data); + ((auth_simple_local_data*)self->l_data)->hmac = ss_sha1_hmac_with_key; + ((auth_simple_local_data*)self->l_data)->hash = ss_sha1_hash_func; + ((auth_simple_local_data*)self->l_data)->hash_len = 20; + ((auth_simple_local_data*)self->l_data)->salt = "auth_aes128_sha1"; + return self; +} + +void auth_simple_dispose(obfs *self) { + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + if (local->recv_buffer != NULL) { + free(local->recv_buffer); + local->recv_buffer = NULL; + } + if (local->user_key != NULL) { + free(local->user_key); + local->user_key = NULL; + } + free(local); + self->l_data = NULL; + dispose_obfs(self); +} + +int auth_simple_pack_data(char *data, int datalength, char *outdata) { + unsigned char rand_len = (xorshift128plus() & 0xF) + 1; + int out_size = rand_len + datalength + 6; + outdata[0] = out_size >> 8; + outdata[1] = out_size; + outdata[2] = rand_len; + memmove(outdata + rand_len + 2, data, datalength); + fillcrc32((unsigned char *)outdata, out_size); + return out_size; +} + +void memintcopy_lt(void *mem, uint32_t val) { + ((uint8_t *)mem)[0] = val; + ((uint8_t *)mem)[1] = val >> 8; + ((uint8_t *)mem)[2] = val >> 16; + ((uint8_t *)mem)[3] = val >> 24; +} + +int auth_simple_pack_auth_data(auth_simple_global_data *global, char *data, int datalength, char *outdata) { + unsigned char rand_len = (xorshift128plus() & 0xF) + 1; + int out_size = rand_len + datalength + 6 + 12; + outdata[0] = out_size >> 8; + outdata[1] = out_size; + outdata[2] = rand_len; + ++global->connection_id; + if (global->connection_id > 0xFF000000) { + rand_bytes(global->local_client_id, 8); + rand_bytes((uint8_t*)&global->connection_id, 4); + global->connection_id &= 0xFFFFFF; + } + time_t t = time(NULL); + memintcopy_lt(outdata + rand_len + 2, t); + memmove(outdata + rand_len + 2 + 4, global->local_client_id, 4); + memintcopy_lt(outdata + rand_len + 2 + 8, global->connection_id); + memmove(outdata + rand_len + 2 + 12, data, datalength); + fillcrc32((unsigned char *)outdata, out_size); + return out_size; +} + +int auth_simple_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + char * out_buffer = (char*)malloc(datalength * 2 + 64); + char * buffer = out_buffer; + char * data = plaindata; + int len = datalength; + int pack_len; + if (len > 0 && local->has_sent_header == 0) { + int head_size = get_head_size(plaindata, datalength, 30); + if (head_size > datalength) + head_size = datalength; + pack_len = auth_simple_pack_auth_data((auth_simple_global_data *)self->server.g_data, data, head_size, buffer); + buffer += pack_len; + data += head_size; + len -= head_size; + local->has_sent_header = 1; + } + while ( len > auth_simple_pack_unit_size ) { + pack_len = auth_simple_pack_data(data, auth_simple_pack_unit_size, buffer); + buffer += pack_len; + data += auth_simple_pack_unit_size; + len -= auth_simple_pack_unit_size; + } + if (len > 0) { + pack_len = auth_simple_pack_data(data, len, buffer); + buffer += pack_len; + } + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + +int auth_simple_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + uint8_t * recv_buffer = (uint8_t *)local->recv_buffer; + if (local->recv_buffer_size + datalength > 16384) + return -1; + memmove(recv_buffer + local->recv_buffer_size, plaindata, datalength); + local->recv_buffer_size += datalength; + + char * out_buffer = (char*)malloc(local->recv_buffer_size); + char * buffer = out_buffer; + while (local->recv_buffer_size > 2) { + int length = ((int)recv_buffer[0] << 8) | recv_buffer[1]; + if (length >= 8192 || length < 7) { + free(out_buffer); + local->recv_buffer_size = 0; + return -1; + } + if (length > local->recv_buffer_size) + break; + + int crc = crc32((unsigned char*)recv_buffer, length); + if (crc != -1) { + free(out_buffer); + local->recv_buffer_size = 0; + return -1; + } + int data_size = length - recv_buffer[2] - 6; + memmove(buffer, recv_buffer + 2 + recv_buffer[2], data_size); + buffer += data_size; + memmove(recv_buffer, recv_buffer + length, local->recv_buffer_size -= length); + } + int len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + + +int auth_sha1_pack_data(char *data, int datalength, char *outdata) { + unsigned char rand_len = (xorshift128plus() & 0xF) + 1; + int out_size = rand_len + datalength + 6; + outdata[0] = out_size >> 8; + outdata[1] = out_size; + outdata[2] = rand_len; + memmove(outdata + rand_len + 2, data, datalength); + filladler32((unsigned char *)outdata, out_size); + return out_size; +} + +int auth_sha1_pack_auth_data(auth_simple_global_data *global, server_info *server, char *data, int datalength, char *outdata) { + unsigned char rand_len = (xorshift128plus() & 0x7F) + 1; + int data_offset = rand_len + 4 + 2; + int out_size = data_offset + datalength + 12 + OBFS_HMAC_SHA1_LEN; + fillcrc32to((unsigned char *)server->key, server->key_len, (unsigned char *)outdata); + outdata[4] = out_size >> 8; + outdata[5] = out_size; + outdata[6] = rand_len; + ++global->connection_id; + if (global->connection_id > 0xFF000000) { + rand_bytes(global->local_client_id, 8); + rand_bytes((uint8_t*)&global->connection_id, 4); + global->connection_id &= 0xFFFFFF; + } + time_t t = time(NULL); + memintcopy_lt(outdata + data_offset, t); + memmove(outdata + data_offset + 4, global->local_client_id, 4); + memintcopy_lt(outdata + data_offset + 8, global->connection_id); + memmove(outdata + data_offset + 12, data, datalength); + char hash[ONETIMEAUTH_BYTES * 2]; + ss_sha1_hmac(hash, outdata, out_size - OBFS_HMAC_SHA1_LEN, server->iv); + memcpy(outdata + out_size - OBFS_HMAC_SHA1_LEN, hash, OBFS_HMAC_SHA1_LEN); + return out_size; +} + +int auth_sha1_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + char * out_buffer = (char*)malloc(datalength * 2 + 256); + char * buffer = out_buffer; + char * data = plaindata; + int len = datalength; + int pack_len; + if (len > 0 && local->has_sent_header == 0) { + int head_size = get_head_size(plaindata, datalength, 30); + if (head_size > datalength) + head_size = datalength; + pack_len = auth_sha1_pack_auth_data((auth_simple_global_data *)self->server.g_data, &self->server, data, head_size, buffer); + buffer += pack_len; + data += head_size; + len -= head_size; + local->has_sent_header = 1; + } + while ( len > auth_simple_pack_unit_size ) { + pack_len = auth_sha1_pack_data(data, auth_simple_pack_unit_size, buffer); + buffer += pack_len; + data += auth_simple_pack_unit_size; + len -= auth_simple_pack_unit_size; + } + if (len > 0) { + pack_len = auth_sha1_pack_data(data, len, buffer); + buffer += pack_len; + } + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + +int auth_sha1_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + uint8_t * recv_buffer = (uint8_t *)local->recv_buffer; + if (local->recv_buffer_size + datalength > 16384) + return -1; + memmove(recv_buffer + local->recv_buffer_size, plaindata, datalength); + local->recv_buffer_size += datalength; + + char * out_buffer = (char*)malloc(local->recv_buffer_size); + char * buffer = out_buffer; + while (local->recv_buffer_size > 2) { + int length = ((int)recv_buffer[0] << 8) | recv_buffer[1]; + if (length >= 8192 || length < 7) { + free(out_buffer); + local->recv_buffer_size = 0; + return -1; + } + if (length > local->recv_buffer_size) + break; + + if (checkadler32((unsigned char*)recv_buffer, length) == 0) { + free(out_buffer); + local->recv_buffer_size = 0; + return -1; + } + int pos = recv_buffer[2] + 2; + int data_size = length - pos - 4; + memmove(buffer, recv_buffer + pos, data_size); + buffer += data_size; + memmove(recv_buffer, recv_buffer + length, local->recv_buffer_size -= length); + } + int len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + +int auth_sha1_v2_pack_data(char *data, int datalength, char *outdata) { + unsigned int rand_len = (datalength > 1300 ? 0 : datalength > 400 ? (xorshift128plus() & 0x7F) : (xorshift128plus() & 0x3FF)) + 1; + int out_size = rand_len + datalength + 6; + outdata[0] = out_size >> 8; + outdata[1] = out_size; + if (rand_len < 128) + { + outdata[2] = rand_len; + } + else + { + outdata[2] = 0xFF; + outdata[3] = rand_len >> 8; + outdata[4] = rand_len; + } + memmove(outdata + rand_len + 2, data, datalength); + filladler32((unsigned char *)outdata, out_size); + return out_size; +} + +int auth_sha1_v2_pack_auth_data(auth_simple_global_data *global, server_info *server, char *data, int datalength, char *outdata) { + unsigned int rand_len = (datalength > 1300 ? 0 : datalength > 400 ? (xorshift128plus() & 0x7F) : (xorshift128plus() & 0x3FF)) + 1; + int data_offset = rand_len + 4 + 2; + int out_size = data_offset + datalength + 12 + OBFS_HMAC_SHA1_LEN; + const char* salt = "auth_sha1_v2"; + int salt_len = strlen(salt); + unsigned char *crc_salt = (unsigned char*)malloc(salt_len + server->key_len); + memcpy(crc_salt, salt, salt_len); + memcpy(crc_salt + salt_len, server->key, server->key_len); + fillcrc32to(crc_salt, salt_len + server->key_len, (unsigned char *)outdata); + free(crc_salt); + outdata[4] = out_size >> 8; + outdata[5] = out_size; + if (rand_len < 128) + { + outdata[6] = rand_len; + } + else + { + outdata[6] = 0xFF; + outdata[7] = rand_len >> 8; + outdata[8] = rand_len; + } + ++global->connection_id; + if (global->connection_id > 0xFF000000) { + rand_bytes(global->local_client_id, 8); + rand_bytes((uint8_t*)&global->connection_id, 4); + global->connection_id &= 0xFFFFFF; + } + memmove(outdata + data_offset, global->local_client_id, 8); + memintcopy_lt(outdata + data_offset + 8, global->connection_id); + memmove(outdata + data_offset + 12, data, datalength); + char hash[ONETIMEAUTH_BYTES * 2]; + ss_sha1_hmac(hash, outdata, out_size - OBFS_HMAC_SHA1_LEN, server->iv); + memcpy(outdata + out_size - OBFS_HMAC_SHA1_LEN, hash, OBFS_HMAC_SHA1_LEN); + return out_size; +} + +int auth_sha1_v2_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + char * out_buffer = (char*)malloc(datalength * 2 + 4096); + char * buffer = out_buffer; + char * data = plaindata; + int len = datalength; + int pack_len; + if (len > 0 && local->has_sent_header == 0) { + int head_size = get_head_size(plaindata, datalength, 30); + if (head_size > datalength) + head_size = datalength; + pack_len = auth_sha1_v2_pack_auth_data((auth_simple_global_data *)self->server.g_data, &self->server, data, head_size, buffer); + buffer += pack_len; + data += head_size; + len -= head_size; + local->has_sent_header = 1; + } + while ( len > auth_simple_pack_unit_size ) { + pack_len = auth_sha1_v2_pack_data(data, auth_simple_pack_unit_size, buffer); + buffer += pack_len; + data += auth_simple_pack_unit_size; + len -= auth_simple_pack_unit_size; + } + if (len > 0) { + pack_len = auth_sha1_v2_pack_data(data, len, buffer); + buffer += pack_len; + } + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + +int auth_sha1_v2_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + uint8_t * recv_buffer = (uint8_t *)local->recv_buffer; + if (local->recv_buffer_size + datalength > 16384) + return -1; + memmove(recv_buffer + local->recv_buffer_size, plaindata, datalength); + local->recv_buffer_size += datalength; + + char * out_buffer = (char*)malloc(local->recv_buffer_size); + char * buffer = out_buffer; + char error = 0; + while (local->recv_buffer_size > 2) { + int length = ((int)recv_buffer[0] << 8) | recv_buffer[1]; + if (length >= 8192 || length < 7) { + local->recv_buffer_size = 0; + error = 1; + break; + } + if (length > local->recv_buffer_size) + break; + + if (checkadler32((unsigned char*)recv_buffer, length) == 0) { + local->recv_buffer_size = 0; + error = 1; + break; + } + int pos = recv_buffer[2]; + if (pos < 255) + { + pos += 2; + } + else + { + pos = ((recv_buffer[3] << 8) | recv_buffer[4]) + 2; + } + int data_size = length - pos - 4; + memmove(buffer, recv_buffer + pos, data_size); + buffer += data_size; + memmove(recv_buffer, recv_buffer + length, local->recv_buffer_size -= length); + } + int len; + if (error == 0) { + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + } else { + len = -1; + } + free(out_buffer); + return len; +} + +int auth_sha1_v4_pack_data(char *data, int datalength, char *outdata) { + unsigned int rand_len = (datalength > 1300 ? 0 : datalength > 400 ? (xorshift128plus() & 0x7F) : (xorshift128plus() & 0x3FF)) + 1; + int out_size = rand_len + datalength + 8; + outdata[0] = out_size >> 8; + outdata[1] = out_size; + uint32_t crc_val = crc32((unsigned char*)outdata, 2); + outdata[2] = crc_val; + outdata[3] = crc_val >> 8; + if (rand_len < 128) + { + outdata[4] = rand_len; + } + else + { + outdata[4] = 0xFF; + outdata[5] = rand_len >> 8; + outdata[6] = rand_len; + } + memmove(outdata + rand_len + 4, data, datalength); + filladler32((unsigned char *)outdata, out_size); + return out_size; +} + +int auth_sha1_v4_pack_auth_data(auth_simple_global_data *global, server_info *server, char *data, int datalength, char *outdata) { + unsigned int rand_len = (datalength > 1300 ? 0 : datalength > 400 ? (xorshift128plus() & 0x7F) : (xorshift128plus() & 0x3FF)) + 1; + int data_offset = rand_len + 4 + 2; + int out_size = data_offset + datalength + 12 + OBFS_HMAC_SHA1_LEN; + const char* salt = "auth_sha1_v4"; + int salt_len = strlen(salt); + unsigned char *crc_salt = (unsigned char*)malloc(salt_len + server->key_len + 2); + crc_salt[0] = outdata[0] = out_size >> 8; + crc_salt[1] = outdata[1] = out_size; + + memcpy(crc_salt + 2, salt, salt_len); + memcpy(crc_salt + salt_len + 2, server->key, server->key_len); + fillcrc32to(crc_salt, salt_len + server->key_len + 2, (unsigned char *)outdata + 2); + free(crc_salt); + if (rand_len < 128) + { + outdata[6] = rand_len; + } + else + { + outdata[6] = 0xFF; + outdata[7] = rand_len >> 8; + outdata[8] = rand_len; + } + ++global->connection_id; + if (global->connection_id > 0xFF000000) { + rand_bytes(global->local_client_id, 8); + rand_bytes((uint8_t*)&global->connection_id, 4); + global->connection_id &= 0xFFFFFF; + } + time_t t = time(NULL); + memintcopy_lt(outdata + data_offset, t); + memmove(outdata + data_offset + 4, global->local_client_id, 4); + memintcopy_lt(outdata + data_offset + 8, global->connection_id); + memmove(outdata + data_offset + 12, data, datalength); + char hash[ONETIMEAUTH_BYTES * 2]; + ss_sha1_hmac(hash, outdata, out_size - OBFS_HMAC_SHA1_LEN, server->iv); + memcpy(outdata + out_size - OBFS_HMAC_SHA1_LEN, hash, OBFS_HMAC_SHA1_LEN); + return out_size; +} + +int auth_sha1_v4_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + char * out_buffer = (char*)malloc(datalength * 2 + 4096); + char * buffer = out_buffer; + char * data = plaindata; + int len = datalength; + int pack_len; + if (len > 0 && local->has_sent_header == 0) { + int head_size = get_head_size(plaindata, datalength, 30); + if (head_size > datalength) + head_size = datalength; + pack_len = auth_sha1_v4_pack_auth_data((auth_simple_global_data *)self->server.g_data, &self->server, data, head_size, buffer); + buffer += pack_len; + data += head_size; + len -= head_size; + local->has_sent_header = 1; + } + while ( len > auth_simple_pack_unit_size ) { + pack_len = auth_sha1_v4_pack_data(data, auth_simple_pack_unit_size, buffer); + buffer += pack_len; + data += auth_simple_pack_unit_size; + len -= auth_simple_pack_unit_size; + } + if (len > 0) { + pack_len = auth_sha1_v4_pack_data(data, len, buffer); + buffer += pack_len; + } + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + +int auth_sha1_v4_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + uint8_t * recv_buffer = (uint8_t *)local->recv_buffer; + if (local->recv_buffer_size + datalength > 16384) + return -1; + memmove(recv_buffer + local->recv_buffer_size, plaindata, datalength); + local->recv_buffer_size += datalength; + + char * out_buffer = (char*)malloc(local->recv_buffer_size); + char * buffer = out_buffer; + char error = 0; + while (local->recv_buffer_size > 4) { + uint32_t crc_val = crc32((unsigned char*)recv_buffer, 2); + if ((((uint32_t)recv_buffer[3] << 8) | recv_buffer[2]) != (crc_val & 0xffff)) { + local->recv_buffer_size = 0; + error = 1; + break; + } + int length = ((int)recv_buffer[0] << 8) | recv_buffer[1]; + if (length >= 8192 || length < 7) { + local->recv_buffer_size = 0; + error = 1; + break; + } + if (length > local->recv_buffer_size) + break; + + if (checkadler32((unsigned char*)recv_buffer, length) == 0) { + local->recv_buffer_size = 0; + error = 1; + break; + } + int pos = recv_buffer[4]; + if (pos < 255) + { + pos += 4; + } + else + { + pos = (((int)recv_buffer[5] << 8) | recv_buffer[6]) + 4; + } + int data_size = length - pos - 4; + memmove(buffer, recv_buffer + pos, data_size); + buffer += data_size; + memmove(recv_buffer, recv_buffer + length, local->recv_buffer_size -= length); + } + int len; + if (error == 0) { + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + } else { + len = -1; + } + free(out_buffer); + return len; +} + + +int auth_aes128_sha1_pack_data(char *data, int datalength, char *outdata, auth_simple_local_data *local, server_info *server) { + unsigned int rand_len = (datalength > 1200 ? 0 : local->pack_id > 4 ? (xorshift128plus() & 0x20) : datalength > 900 ? (xorshift128plus() & 0x80) : (xorshift128plus() & 0x200)) + 1; + int out_size = rand_len + datalength + 8; + memcpy(outdata + rand_len + 4, data, datalength); + outdata[0] = out_size; + outdata[1] = out_size >> 8; + uint8_t key_len = local->user_key_len + 4; + uint8_t *key = (uint8_t*)malloc(key_len); + memcpy(key, local->user_key, local->user_key_len); + memintcopy_lt(key + key_len - 4, local->pack_id); + + { + uint8_t rnd_data[rand_len]; + rand_bytes(rnd_data, rand_len); + memcpy(outdata + 4, rnd_data, rand_len); + } + + { + char hash[20]; + local->hmac(hash, outdata, 2, key, key_len); + memcpy(outdata + 2, hash, 2); + } + + if (rand_len < 128) + { + outdata[4] = rand_len; + } + else + { + outdata[4] = 0xFF; + outdata[5] = rand_len; + outdata[6] = rand_len >> 8; + } + ++local->pack_id; + + { + char hash[20]; + local->hmac(hash, outdata, out_size - 4, key, key_len); + memcpy(outdata + out_size - 4, hash, 4); + } + free(key); + + return out_size; +} + +int auth_aes128_sha1_pack_auth_data(auth_simple_global_data *global, server_info *server, auth_simple_local_data *local, char *data, int datalength, char *outdata) { + unsigned int rand_len = (datalength > 400 ? (xorshift128plus() & 0x200) : (xorshift128plus() & 0x400)); + int data_offset = rand_len + 16 + 4 + 4 + 7; + int out_size = data_offset + datalength + 4; + + char encrypt[24]; + char encrypt_data[16]; + + uint8_t *key = (uint8_t*)malloc(server->iv_len + server->key_len); + uint8_t key_len = server->iv_len + server->key_len; + memcpy(key, server->iv, server->iv_len); + memcpy(key + server->iv_len, server->key, server->key_len); + + { + uint8_t rnd_data[rand_len]; + rand_bytes(rnd_data, rand_len); + memcpy(outdata + data_offset - rand_len, rnd_data, rand_len); + } + + ++global->connection_id; + if (global->connection_id > 0xFF000000) { + rand_bytes(global->local_client_id, 8); + rand_bytes((uint8_t*)&global->connection_id, 4); + global->connection_id &= 0xFFFFFF; + } + time_t t = time(NULL); + memintcopy_lt(encrypt, t); + memcpy(encrypt + 4, global->local_client_id, 4); + memintcopy_lt(encrypt + 8, global->connection_id); + encrypt[12] = out_size; + encrypt[13] = out_size >> 8; + encrypt[14] = rand_len; + encrypt[15] = rand_len >> 8; + + { + + if (local->user_key == NULL) { + if(server->param != NULL && server->param[0] != 0) { + char *param = server->param; + char *delim = strchr(param, ':'); + if(delim != NULL) { + char uid_str[16] = {}; + strncpy(uid_str, param, delim - param); + char key_str[128]; + strcpy(key_str, delim + 1); + long uid_long = strtol(uid_str, NULL, 10); + memintcopy_lt(local->uid, uid_long); + + char hash[21] = {0}; + local->hash(hash, key_str, strlen(key_str)); + + local->user_key_len = local->hash_len; + local->user_key = (uint8_t*)malloc(local->user_key_len); + memcpy(local->user_key, hash, local->hash_len); + } + } + if (local->user_key == NULL) { + rand_bytes((uint8_t *)local->uid, 4); + + local->user_key_len = server->key_len; + local->user_key = (uint8_t*)malloc(local->user_key_len); + memcpy(local->user_key, server->key, local->user_key_len); + } + } + + char encrypt_key_base64[256] = {0}; + unsigned char encrypt_key[local->user_key_len]; + memcpy(encrypt_key, local->user_key, local->user_key_len); + base64_encode(encrypt_key, local->user_key_len, encrypt_key_base64); + + int base64_len; + base64_len = (local->user_key_len + 2) / 3 * 4; + memcpy(encrypt_key_base64 + base64_len, local->salt, strlen(local->salt)); + + char enc_key[16]; + int enc_key_len = base64_len + strlen(local->salt); + bytes_to_key_with_size(encrypt_key_base64, enc_key_len, (uint8_t*)enc_key, 16); + ss_aes_128_cbc(encrypt, encrypt_data, enc_key); + memcpy(encrypt + 4, encrypt_data, 16); + memcpy(encrypt, local->uid, 4); + } + + { + char hash[20]; + local->hmac(hash, encrypt, 20, key, key_len); + memcpy(encrypt + 20, hash, 4); + } + + { + uint8_t rnd[1]; + rand_bytes(rnd, 1); + memcpy(outdata, rnd, 1); + char hash[20]; + local->hmac(hash, (char *)rnd, 1, key, key_len); + memcpy(outdata + 1, hash, 6); + } + + memcpy(outdata + 7, encrypt, 24); + memcpy(outdata + data_offset, data, datalength); + + { + char hash[20]; + local->hmac(hash, outdata, out_size - 4, local->user_key, local->user_key_len); + memmove(outdata + out_size - 4, hash, 4); + } + free(key); + + return out_size; +} + +int auth_aes128_sha1_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + char * out_buffer = (char*)malloc(datalength * 2 + 4096); + char * buffer = out_buffer; + char * data = plaindata; + int len = datalength; + int pack_len; + if (len > 0 && local->has_sent_header == 0) { + int head_size = 1200; + if (head_size > datalength) + head_size = datalength; + pack_len = auth_aes128_sha1_pack_auth_data((auth_simple_global_data *)self->server.g_data, &self->server, local, data, head_size, buffer); + buffer += pack_len; + data += head_size; + len -= head_size; + local->has_sent_header = 1; + } + while ( len > auth_simple_pack_unit_size ) { + pack_len = auth_aes128_sha1_pack_data(data, auth_simple_pack_unit_size, buffer, local, &self->server); + buffer += pack_len; + data += auth_simple_pack_unit_size; + len -= auth_simple_pack_unit_size; + } + if (len > 0) { + pack_len = auth_aes128_sha1_pack_data(data, len, buffer, local, &self->server); + buffer += pack_len; + } + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + +int auth_aes128_sha1_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + //server_info *server = (server_info*)&self->server; + uint8_t * recv_buffer = (uint8_t *)local->recv_buffer; + if (local->recv_buffer_size + datalength > 16384) + return -1; + memmove(recv_buffer + local->recv_buffer_size, plaindata, datalength); + local->recv_buffer_size += datalength; + + int key_len = local->user_key_len + 4; + uint8_t *key = (uint8_t*)malloc(key_len); + memcpy(key, local->user_key, local->user_key_len); + + char * out_buffer = (char*)malloc(local->recv_buffer_size); + char * buffer = out_buffer; + char error = 0; + while (local->recv_buffer_size > 4) { + memintcopy_lt(key + key_len - 4, local->recv_id); + + { + char hash[20]; + local->hmac(hash, (char*)recv_buffer, 2, key, key_len); + + if (memcmp(hash, recv_buffer + 2, 2)) { + local->recv_buffer_size = 0; + error = 1; + break; + } + } + + int length = ((int)recv_buffer[1] << 8) + recv_buffer[0]; + if (length >= 8192 || length < 8) { + local->recv_buffer_size = 0; + error = 1; + break; + } + if (length > local->recv_buffer_size) + break; + + { + char hash[20]; + local->hmac(hash, (char *)recv_buffer, length - 4, key, key_len); + if (memcmp(hash, recv_buffer + length - 4, 4)) + { + local->recv_buffer_size = 0; + error = 1; + break; + } + } + + ++local->recv_id; + int pos = recv_buffer[4]; + if (pos < 255) + { + pos += 4; + } + else + { + pos = (((int)recv_buffer[6] << 8) | recv_buffer[5]) + 4; + } + int data_size = length - pos - 4; + memmove(buffer, recv_buffer + pos, data_size); + buffer += data_size; + memmove(recv_buffer, recv_buffer + length, local->recv_buffer_size -= length); + } + int len; + if (error == 0) { + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + } else { + len = -1; + } + free(out_buffer); + free(key); + return len; +} + +int auth_aes128_sha1_client_udp_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + char * out_buffer = (char*)malloc(datalength + 8); + + if (local->user_key == NULL) { + if(self->server.param != NULL && self->server.param[0] != 0) { + char *param = self->server.param; + char *delim = strchr(param, ':'); + if(delim != NULL) { + char uid_str[16] = {}; + strncpy(uid_str, param, delim - param); + char key_str[128]; + strcpy(key_str, delim + 1); + long uid_long = strtol(uid_str, NULL, 10); + memintcopy_lt(local->uid, uid_long); + + char hash[21] = {0}; + local->hash(hash, key_str, strlen(key_str)); + + local->user_key_len = local->hash_len; + local->user_key = (uint8_t*)malloc(local->user_key_len); + memcpy(local->user_key, hash, local->hash_len); + } + } + if (local->user_key == NULL) { + rand_bytes((uint8_t *)local->uid, 4); + + local->user_key_len = self->server.key_len; + local->user_key = (uint8_t*)malloc(local->user_key_len); + memcpy(local->user_key, self->server.key, local->user_key_len); + } + } + + int outlength = datalength + 8; + memmove(out_buffer, plaindata, datalength); + memmove(out_buffer + datalength, local->uid, 4); + + { + char hash[20]; + local->hmac(hash, out_buffer, outlength - 4, local->user_key, local->user_key_len); + memmove(out_buffer + outlength - 4, hash, 4); + } + + if (*capacity < outlength) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = outlength * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, outlength); + + free(out_buffer); + return outlength; +} + +int auth_aes128_sha1_client_udp_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity) { + if (datalength <= 4) + return 0; + + char *plaindata = *pplaindata; + auth_simple_local_data *local = (auth_simple_local_data*)self->l_data; + + char hash[20]; + local->hmac(hash, plaindata, datalength - 4, self->server.key, self->server.key_len); + + if (memcmp(hash, plaindata + datalength - 4, 4)) + { + return 0; + } + + return datalength - 4; +} diff --git a/shadowsocksr-libev/src/server/auth.h b/shadowsocksr-libev/src/server/auth.h new file mode 100644 index 000000000..f7730df5d --- /dev/null +++ b/shadowsocksr-libev/src/server/auth.h @@ -0,0 +1,30 @@ +/* + * auth.h - Define shadowsocksR server's buffers and callbacks + * + * Copyright (C) 2015 - 2016, Break Wa11 + */ + +#ifndef _AUTH_H +#define _AUTH_H + +void * auth_simple_init_data(); +obfs * auth_simple_new_obfs(); +void auth_simple_dispose(obfs *self); + +int auth_simple_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); +int auth_simple_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); + + +int auth_sha1_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); +int auth_sha1_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); + +int auth_sha1_v2_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); +int auth_sha1_v2_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); + +int auth_sha1_v4_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); +int auth_sha1_v4_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); + +int auth_aes128_sha1_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); +int auth_aes128_sha1_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); + +#endif // _AUTH_H diff --git a/shadowsocksr-libev/src/server/base64.c b/shadowsocksr-libev/src/server/base64.c new file mode 100644 index 000000000..7cf9552fe --- /dev/null +++ b/shadowsocksr-libev/src/server/base64.c @@ -0,0 +1,119 @@ +#include "base64.h" + +/* BASE 64 encode table */ +static const char base64en[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + +#define BASE64_PAD '=' + +#define BASE64DE_FIRST '+' +#define BASE64DE_LAST 'z' + +/* ASCII order for BASE 64 decode, -1 in unused character */ +static const signed char base64de[] = { + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + /* '+', ',', '-', '.', '/', */ + -1, -1, -1, 62, -1, -1, -1, 63, + /* '0', '1', '2', '3', '4', '5', '6', '7', */ + 52, 53, 54, 55, 56, 57, 58, 59, + /* '8', '9', ':', ';', '<', '=', '>', '?', */ + 60, 61, -1, -1, -1, -1, -1, -1, + /* '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', */ + -1, 0, 1, 2, 3, 4, 5, 6, + /* 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', */ + 7, 8, 9, 10, 11, 12, 13, 14, + /* 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', */ + 15, 16, 17, 18, 19, 20, 21, 22, + /* 'X', 'Y', 'Z', '[', '\', ']', '^', '_', */ + 23, 24, 25, -1, -1, -1, -1, -1, + /* '`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', */ + -1, 26, 27, 28, 29, 30, 31, 32, + /* 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', */ + 33, 34, 35, 36, 37, 38, 39, 40, + /* 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', */ + 41, 42, 43, 44, 45, 46, 47, 48, + /* 'x', 'y', 'z', */ + 49, 50, 51, +}; + +int +base64_encode(const unsigned char *in, unsigned int inlen, char *out) +{ + unsigned int i, j; + + for (i = j = 0; i < inlen; i++) { + int s = i % 3; /* from 6/gcd(6, 8) */ + + switch (s) { + case 0: + out[j++] = base64en[(in[i] >> 2) & 0x3F]; + continue; + case 1: + out[j++] = base64en[((in[i-1] & 0x3) << 4) + ((in[i] >> 4) & 0xF)]; + continue; + case 2: + out[j++] = base64en[((in[i-1] & 0xF) << 2) + ((in[i] >> 6) & 0x3)]; + out[j++] = base64en[in[i] & 0x3F]; + } + } + + /* move back */ + i -= 1; + + /* check the last and add padding */ + if ((i % 3) == 0) { + out[j++] = base64en[(in[i] & 0x3) << 4]; + out[j++] = BASE64_PAD; + out[j++] = BASE64_PAD; + } else if ((i % 3) == 1) { + out[j++] = base64en[(in[i] & 0xF) << 2]; + out[j++] = BASE64_PAD; + } + + return BASE64_OK; +} + +int +base64_decode(const char *in, unsigned int inlen, unsigned char *out) +{ + unsigned int i, j; + + for (i = j = 0; i < inlen; i++) { + int c; + int s = i % 4; /* from 8/gcd(6, 8) */ + + if (in[i] == '=') + return BASE64_OK; + + if (in[i] < BASE64DE_FIRST || in[i] > BASE64DE_LAST || + (c = base64de[(int)in[i]]) == -1) + return BASE64_INVALID; + + switch (s) { + case 0: + out[j] = ((unsigned int)c << 2) & 0xFF; + continue; + case 1: + out[j++] += ((unsigned int)c >> 4) & 0x3; + + /* if not last char with padding */ + if (i < (inlen - 3) || in[inlen - 2] != '=') + out[j] = ((unsigned int)c & 0xF) << 4; + continue; + case 2: + out[j++] += ((unsigned int)c >> 2) & 0xF; + + /* if not last char with padding */ + if (i < (inlen - 2) || in[inlen - 1] != '=') + out[j] = ((unsigned int)c & 0x3) << 6; + continue; + case 3: + out[j++] += (unsigned char)c; + } + } + + return BASE64_OK; +} diff --git a/shadowsocksr-libev/src/server/base64.h b/shadowsocksr-libev/src/server/base64.h new file mode 100644 index 000000000..6432ba37c --- /dev/null +++ b/shadowsocksr-libev/src/server/base64.h @@ -0,0 +1,16 @@ +#ifndef __BASE64_H__ +#define __BASE64_H__ + +enum {BASE64_OK = 0, BASE64_INVALID}; + +#define BASE64_ENCODE_OUT_SIZE(s) (((s) + 2) / 3 * 4) +#define BASE64_DECODE_OUT_SIZE(s) (((s)) / 4 * 3) + +int +base64_encode(const unsigned char *in, unsigned int inlen, char *out); + +int +base64_decode(const char *in, unsigned int inlen, unsigned char *out); + + +#endif /* __BASE64_H__ */ diff --git a/shadowsocksr-libev/src/server/cache.c b/shadowsocksr-libev/src/server/cache.c new file mode 100644 index 000000000..c1a2995b7 --- /dev/null +++ b/shadowsocksr-libev/src/server/cache.c @@ -0,0 +1,308 @@ +/* + * cache.c - Manage the connection cache for UDPRELAY + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +/* + * Original Author: Oliver Lorenz (ol), olli@olorenz.org, https://olorenz.org + * License: This is licensed under the same terms as uthash itself + */ + +#include +#include + +#include "cache.h" +#include "utils.h" + +#ifdef __MINGW32__ +#include "win32.h" +#endif + +/** Creates a new cache object + * + * @param dst + * Where the newly allocated cache object will be stored in + * + * @param capacity + * The maximum number of elements this cache object can hold + * + * @return EINVAL if dst is NULL, ENOMEM if malloc fails, 0 otherwise + */ +int +cache_create(struct cache **dst, const size_t capacity, + void (*free_cb)(void *key, void *element)) +{ + struct cache *new = NULL; + + if (!dst) { + return EINVAL; + } + + if ((new = malloc(sizeof(*new))) == NULL) { + return ENOMEM; + } + + new->max_entries = capacity; + new->entries = NULL; + new->free_cb = free_cb; + *dst = new; + return 0; +} + +/** Frees an allocated cache object + * + * @param cache + * The cache object to free + * + * @param keep_data + * Whether to free contained data or just delete references to it + * + * @return EINVAL if cache is NULL, 0 otherwise + */ +int +cache_delete(struct cache *cache, int keep_data) +{ + struct cache_entry *entry, *tmp; + + if (!cache) { + return EINVAL; + } + + if (keep_data) { + HASH_CLEAR(hh, cache->entries); + } else { + HASH_ITER(hh, cache->entries, entry, tmp){ + HASH_DEL(cache->entries, entry); + if (entry->data != NULL) { + if (cache->free_cb) { + cache->free_cb(entry->key, entry->data); + } else { + ss_free(entry->data); + } + } + ss_free(entry->key); + ss_free(entry); + } + } + + ss_free(cache); + return 0; +} + +/** Clear old cache object + * + * @param cache + * The cache object to clear + * + * @param age + * Clear only objects older than the age (sec) + * + * @return EINVAL if cache is NULL, 0 otherwise + */ +int +cache_clear(struct cache *cache, ev_tstamp age) +{ + struct cache_entry *entry, *tmp; + + if (!cache) { + return EINVAL; + } + + ev_tstamp now = ev_time(); + + HASH_ITER(hh, cache->entries, entry, tmp){ + if (now - entry->ts > age) { + HASH_DEL(cache->entries, entry); + if (entry->data != NULL) { + if (cache->free_cb) { + cache->free_cb(entry->key, entry->data); + } else { + ss_free(entry->data); + } + } + ss_free(entry->key); + ss_free(entry); + } + } + + return 0; +} + +/** Removes a cache entry + * + * @param cache + * The cache object + * + * @param key + * The key of the entry to remove + * + * @param key_len + * The length of key + * + * @return EINVAL if cache is NULL, 0 otherwise + */ +int +cache_remove(struct cache *cache, char *key, size_t key_len) +{ + struct cache_entry *tmp; + + if (!cache || !key) { + return EINVAL; + } + + HASH_FIND(hh, cache->entries, key, key_len, tmp); + + if (tmp) { + HASH_DEL(cache->entries, tmp); + if (tmp->data != NULL) { + if (cache->free_cb) { + cache->free_cb(tmp->key, tmp->data); + } else { + ss_free(tmp->data); + } + } + ss_free(tmp->key); + ss_free(tmp); + } + + return 0; +} + +/** Checks if a given key is in the cache + * + * @param cache + * The cache object + * + * @param key + * The key to look-up + * + * @param key_len + * The length of key + * + * @param result + * Where to store the result if key is found. + * + * A warning: Even though result is just a pointer, + * you have to call this function with a **ptr, + * otherwise this will blow up in your face. + * + * @return EINVAL if cache is NULL, 0 otherwise + */ +int +cache_lookup(struct cache *cache, char *key, size_t key_len, void *result) +{ + struct cache_entry *tmp = NULL; + char **dirty_hack = result; + + if (!cache || !key || !result) { + return EINVAL; + } + + HASH_FIND(hh, cache->entries, key, key_len, tmp); + if (tmp) { + HASH_DELETE(hh, cache->entries, tmp); + tmp->ts = ev_time(); + HASH_ADD_KEYPTR(hh, cache->entries, tmp->key, key_len, tmp); + *dirty_hack = tmp->data; + } else { + *dirty_hack = result = NULL; + } + + return 0; +} + +int +cache_key_exist(struct cache *cache, char *key, size_t key_len) +{ + struct cache_entry *tmp = NULL; + + if (!cache || !key) { + return 0; + } + + HASH_FIND(hh, cache->entries, key, key_len, tmp); + if (tmp) { + HASH_DELETE(hh, cache->entries, tmp); + tmp->ts = ev_time(); + HASH_ADD_KEYPTR(hh, cache->entries, tmp->key, key_len, tmp); + return 1; + } else { + return 0; + } + + return 0; +} + +/** Inserts a given pair into the cache + * + * @param cache + * The cache object + * + * @param key + * The key that identifies + * + * @param key_len + * The length of key + * + * @param data + * Data associated with + * + * @return EINVAL if cache is NULL, ENOMEM if malloc fails, 0 otherwise + */ +int +cache_insert(struct cache *cache, char *key, size_t key_len, void *data) +{ + struct cache_entry *entry = NULL; + struct cache_entry *tmp_entry = NULL; + + if (!cache) { + return EINVAL; + } + + if ((entry = malloc(sizeof(*entry))) == NULL) { + return ENOMEM; + } + + entry->key = ss_malloc(key_len + 1); + memcpy(entry->key, key, key_len); + entry->key[key_len] = 0; + + entry->data = data; + entry->ts = ev_time(); + HASH_ADD_KEYPTR(hh, cache->entries, entry->key, key_len, entry); + + if (HASH_COUNT(cache->entries) >= cache->max_entries) { + HASH_ITER(hh, cache->entries, entry, tmp_entry){ + HASH_DELETE(hh, cache->entries, entry); + if (entry->data != NULL) { + if (cache->free_cb) { + cache->free_cb(entry->key, entry->data); + } else { + ss_free(entry->data); + } + } + ss_free(entry->key); + ss_free(entry); + break; + } + } + + return 0; +} diff --git a/shadowsocksr-libev/src/server/cache.h b/shadowsocksr-libev/src/server/cache.h new file mode 100644 index 000000000..0ec98f55a --- /dev/null +++ b/shadowsocksr-libev/src/server/cache.h @@ -0,0 +1,62 @@ +/* + * cache.h - Define the cache manager interface + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +/* + * Original Author: Oliver Lorenz (ol), olli@olorenz.org, https://olorenz.org + * License: This is licensed under the same terms as uthash itself + */ + +#ifndef _CACHE_ +#define _CACHE_ + +#include "uthash.h" +#include "ev.h" + +/** + * A cache entry + */ +struct cache_entry { + char *key; /** +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//#define __DEBUG__ +#ifdef __DEBUG__ +#define DEBUG(format,...) printf("File: "__FILE__", Line: %05d: "format"/n", __LINE__, ##__VA_ARGS__) +#else +#define DEBUG(format,...) +#endif + +static sigjmp_buf jmpbuf; +static void alarm_func() +{ + siglongjmp(jmpbuf, 1); +} + +static struct hostent *timeGethostbyname(const char *domain, int timeout) +{ + struct hostent *ipHostent = NULL; + signal(SIGALRM, alarm_func); + if(sigsetjmp(jmpbuf, 1) != 0) + { + alarm(0);//timout + signal(SIGALRM, SIG_IGN); + return NULL; + } + alarm(timeout);//setting alarm + ipHostent = gethostbyname(domain); + signal(SIGALRM, SIG_IGN); + return ipHostent; +} + + +#define MY_HTTP_DEFAULT_PORT 80 +#define BUFFER_SIZE 1024 +#define HTTP_POST "POST /%s HTTP/1.1\r\nHOST: %s:%d\r\nAccept: */*\r\n"\ + "Content-Type:application/x-www-form-urlencoded\r\nContent-Length: %d\r\n\r\n%s" +#define HTTP_GET "GET /%s HTTP/1.1\r\nHOST: %s:%d\r\nAccept: */*\r\n\r\n" + +static int http_parse_url(const char *url,char *host,char *file,int *port) +{ + char *ptr1,*ptr2; + int len = 0; + if(!url || !host || !file || !port){ + return 1; + } + + ptr1 = (char *)url; + + if(!strncmp(ptr1,"http://",strlen("http://"))){ + ptr1 += strlen("http://"); + }else{ + return 1; + } + + ptr2 = strchr(ptr1,'/'); + if(ptr2){ + len = strlen(ptr1) - strlen(ptr2); + memcpy(host,ptr1,len); + host[len] = '\0'; + if(*(ptr2 + 1)){ + memcpy(file,ptr2 + 1,strlen(ptr2) - 1 ); + file[strlen(ptr2) - 1] = '\0'; + } + }else{ + memcpy(host,ptr1,strlen(ptr1)); + host[strlen(ptr1)] = '\0'; + } + //get host and ip + ptr1 = strchr(host,':'); + if(ptr1){ + *ptr1++ = '\0'; + *port = atoi(ptr1); + }else{ + *port = MY_HTTP_DEFAULT_PORT; + } + + return 0; +} + + +static int http_tcpclient_recv(int socket,char *lpbuff){ + int recvnum = 0; + + recvnum = recv(socket, lpbuff,BUFFER_SIZE*4,0); + + return recvnum; +} + +static int http_tcpclient_send(int socket,char *buff,int size){ + int sent=0,tmpres=0; + + while(sent < size){ + tmpres = send(socket,buff+sent,size-sent,0); + if(tmpres == -1){ + return 1; + } + sent += tmpres; + } + return sent; +} + + + + + +int http_get(const char *url,int socket_fd) +{ + char lpbuf[BUFFER_SIZE*4] = {'\0'}; + + char host_addr[BUFFER_SIZE] = {'\0'}; + char file[BUFFER_SIZE] = {'\0'}; + int port = 0; + + + if(!url){ + DEBUG(" failed!\n"); + return 1; + } + + if(http_parse_url(url,host_addr,file,&port)){ + DEBUG("http_parse_url failed!\n"); + return 1; + } + DEBUG("url: %s\thost_addr : %s\tfile:%s\t,%d\n",url,host_addr,file,port); + + + if(socket_fd < 0){ + DEBUG("http_tcpclient_create failed\n"); + return 1; + } + + sprintf(lpbuf,HTTP_GET,file,host_addr,port); + + if(http_tcpclient_send(socket_fd,lpbuf,strlen(lpbuf)) < 0){ + DEBUG("http_tcpclient_send failed..\n"); + return 1; + } + DEBUG("request:\n%s\n",lpbuf); + + if(http_tcpclient_recv(socket_fd,lpbuf) <= 0){ + DEBUG("http_tcpclient_recv failed\n"); + close(socket_fd); + return 1; + } + DEBUG("rec:\n%s\n",lpbuf); + close(socket_fd); + + //return http_parse_result(lpbuf); +return 0; +} + + + +int main(int argc, char *argv[]) +{ + int fd,http_flag=0,http_ret=1; + struct sockaddr_in addr; + struct hostent *host; + struct timeval timeo = {3, 0}; + socklen_t len = sizeof(timeo); + + char http_url[100]="http://"; + + + + fd = socket(AF_INET, SOCK_STREAM, 0); + if (argc >= 4) + timeo.tv_sec = atoi(argv[3]); + if (argc>=5) + http_flag=1; + + if((host=timeGethostbyname(argv[1],timeo.tv_sec)) == NULL) { + DEBUG("gethostbyname err\n"); + return 1; + } + if (setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &timeo, len) == -1) + { + + DEBUG("setsockopt send err\n"); + return 1; + } + + if (setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, &timeo, len) == -1) + { + + DEBUG("setsockopt recv err\n"); + return 1; + } + + addr.sin_family = AF_INET; + addr.sin_addr = *((struct in_addr *)host->h_addr); + //addr.sin_addr.s_addr = inet_addr(argv[1]); + addr.sin_port = htons(atoi(argv[2])); +if (connect(fd, (struct sockaddr *)&addr, sizeof(addr)) == -1) + { + if (errno == EINPROGRESS) + { + DEBUG("timeout err\n"); + return 1; + } + DEBUG("connect err\n"); + return 1; + } +if(http_flag==0) +{ + close(fd); + return 0; +} +strcat(http_url,argv[1]); +http_ret=http_get(http_url,fd); +if(http_ret==1) +{ +DEBUG("recv err"); + return 1; +} +else +{ +DEBUG("recv ok"); + + return 0; +} + +} \ No newline at end of file diff --git a/shadowsocksr-libev/src/server/common.h b/shadowsocksr-libev/src/server/common.h new file mode 100644 index 000000000..000f084ec --- /dev/null +++ b/shadowsocksr-libev/src/server/common.h @@ -0,0 +1,58 @@ +/* + * common.h - Provide global definitions + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#ifndef _COMMON_H +#define _COMMON_H + +#define DEFAULT_CONF_PATH "/etc/shadowsocks-libev/config.json" + +#ifndef SOL_TCP +#define SOL_TCP IPPROTO_TCP +#endif + +#if defined(MODULE_TUNNEL) || defined(MODULE_REDIR) +#define MODULE_LOCAL +#endif + +int init_udprelay(const char *server_host, const char *server_port, +#ifdef MODULE_LOCAL + const struct sockaddr *remote_addr, const int remote_addr_len, +#ifdef MODULE_TUNNEL + const ss_addr_t tunnel_addr, +#endif +#endif + int mtu, int method, int auth, int timeout, const char *iface, const char *protocol, const char *protocol_param); + +void free_udprelay(void); + +#ifdef ANDROID +int protect_socket(int fd); +int send_traffic_stat(uint64_t tx, uint64_t rx); +#endif + +#define STAGE_ERROR -1 /* Error detected */ +#define STAGE_INIT 0 /* Initial stage */ +#define STAGE_HANDSHAKE 1 /* Handshake with client */ +#define STAGE_PARSE 2 /* Parse the header */ +#define STAGE_RESOLVE 4 /* Resolve the hostname */ +#define STAGE_STREAM 5 /* Stream between client and server */ + +#endif // _COMMON_H diff --git a/shadowsocksr-libev/src/server/crc32.c b/shadowsocksr-libev/src/server/crc32.c new file mode 100644 index 000000000..6d328d231 --- /dev/null +++ b/shadowsocksr-libev/src/server/crc32.c @@ -0,0 +1,97 @@ +static uint32_t crc32_table[256] = {0}; + +void init_crc32_table(void) { + uint32_t c, i, j; + if (crc32_table[0] == 0) { + for (i = 0; i < 256; i++) { + c = i; + for (j = 0; j < 8; j++) { + if (c & 1) + c = 0xedb88320L ^ (c >> 1); + else + c = c >> 1; + } + crc32_table[i] = c; + } + } +} + +uint32_t crc32(unsigned char *buffer, unsigned int size) { + uint32_t crc = 0xFFFFFFFF; + unsigned int i; + for (i = 0; i < size; i++) { + crc = crc32_table[(crc ^ buffer[i]) & 0xFF] ^ (crc >> 8); + } + return crc ^ 0xFFFFFFFF; +} + +void fillcrc32to(unsigned char *buffer, unsigned int size, unsigned char *outbuffer) { + uint32_t crc = 0xFFFFFFFF; + unsigned int i; + for (i = 0; i < size; i++) { + crc = crc32_table[(crc ^ buffer[i]) & 0xff] ^ (crc >> 8); + } + crc ^= 0xFFFFFFFF; + outbuffer[0] = crc; + outbuffer[1] = crc >> 8; + outbuffer[2] = crc >> 16; + outbuffer[3] = crc >> 24; +} + +void fillcrc32(unsigned char *buffer, unsigned int size) { + uint32_t crc = 0xFFFFFFFF; + unsigned int i; + size -= 4; + for (i = 0; i < size; i++) { + crc = crc32_table[(crc ^ buffer[i]) & 0xff] ^ (crc >> 8); + } + buffer += size; + buffer[0] = crc; + buffer[1] = crc >> 8; + buffer[2] = crc >> 16; + buffer[3] = crc >> 24; +} + +void adler32_short(unsigned char *buffer, unsigned int size, uint32_t *a, uint32_t *b) { + for (int i = 0; i < size; i++) { + *a += buffer[i]; + *b += *a; + } + *a %= 65521; + *b %= 65521; +} + +#define NMAX 5552 +uint32_t adler32(unsigned char *buffer, unsigned int size) { + uint32_t a = 1; + uint32_t b = 0; + while ( size >= NMAX ) { + adler32_short(buffer, NMAX, &a, &b); + buffer += NMAX; + size -= NMAX; + } + adler32_short(buffer, size, &a, &b); + return (b << 16) + a; +} +#undef NMAX + +void filladler32(unsigned char *buffer, unsigned int size) { + size -= 4; + uint32_t checksum = adler32(buffer, size); + buffer += size; + buffer[0] = checksum; + buffer[1] = checksum >> 8; + buffer[2] = checksum >> 16; + buffer[3] = checksum >> 24; +} + +int checkadler32(unsigned char *buffer, unsigned int size) { + size -= 4; + uint32_t checksum = adler32(buffer, size); + buffer += size; + return checksum == (((uint32_t)buffer[3] << 24) + | ((uint32_t)buffer[2] << 16) + | ((uint32_t)buffer[1] << 8) + | (uint32_t)buffer[0]); +} + diff --git a/shadowsocksr-libev/src/server/encrypt.c b/shadowsocksr-libev/src/server/encrypt.c new file mode 100644 index 000000000..37dd5cdf0 --- /dev/null +++ b/shadowsocksr-libev/src/server/encrypt.c @@ -0,0 +1,1645 @@ +/* + * encrypt.c - Manage the global encryptor + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#include + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#if defined(USE_CRYPTO_OPENSSL) + +#include +#include +#include +#include + +#elif defined(USE_CRYPTO_POLARSSL) + +#include +#include +#include +#include +#include +#include +#define CIPHER_UNSUPPORTED "unsupported" + +#include +#ifdef _WIN32 +#include +#include +#else +#include +#endif + +#elif defined(USE_CRYPTO_MBEDTLS) + +#include +#include +#include +#include +#include +#define CIPHER_UNSUPPORTED "unsupported" + +#include +#ifdef _WIN32 +#include +#include +#else +#include +#endif + +#endif + +#include + +#ifndef __MINGW32__ +#include +#endif + +#include "cache.h" +#include "encrypt.h" +#include "utils.h" + +#define OFFSET_ROL(p, o) ((uint64_t)(*(p + o)) << (8 * o)) + +static uint8_t *enc_table; +static uint8_t *dec_table; +static uint8_t enc_key[MAX_KEY_LENGTH]; +static int enc_key_len; +static int enc_iv_len; +static int enc_method; + +static struct cache *iv_cache; + +#ifdef DEBUG +static void +dump(char *tag, char *text, int len) +{ + int i; + printf("%s: ", tag); + for (i = 0; i < len; i++) + printf("0x%02x ", (uint8_t)text[i]); + printf("\n"); +} + +#endif + +static const char *supported_ciphers[CIPHER_NUM] = { + "table", + "rc4", + "rc4-md5-6", + "rc4-md5", + "aes-128-cfb", + "aes-192-cfb", + "aes-256-cfb", + "aes-128-ctr", + "aes-192-ctr", + "aes-256-ctr", + "bf-cfb", + "camellia-128-cfb", + "camellia-192-cfb", + "camellia-256-cfb", + "cast5-cfb", + "des-cfb", + "idea-cfb", + "rc2-cfb", + "seed-cfb", + "salsa20", + "chacha20", + "chacha20-ietf" +}; + +#ifdef USE_CRYPTO_POLARSSL +static const char *supported_ciphers_polarssl[CIPHER_NUM] = { + "table", + "ARC4-128", + "ARC4-128", + "ARC4-128", + "AES-128-CFB128", + "AES-192-CFB128", + "AES-256-CFB128", + "AES-128-CTR", + "AES-192-CTR", + "AES-256-CTR", + "BLOWFISH-CFB64", + "CAMELLIA-128-CFB128", + "CAMELLIA-192-CFB128", + "CAMELLIA-256-CFB128", + CIPHER_UNSUPPORTED, + CIPHER_UNSUPPORTED, + CIPHER_UNSUPPORTED, + CIPHER_UNSUPPORTED, + CIPHER_UNSUPPORTED, + "salsa20", + "chacha20", + "chacha20-ietf" +}; +#endif + +#ifdef USE_CRYPTO_MBEDTLS +static const char *supported_ciphers_mbedtls[CIPHER_NUM] = { + "table", + "ARC4-128", + "ARC4-128", + "ARC4-128", + "AES-128-CFB128", + "AES-192-CFB128", + "AES-256-CFB128", + "AES-128-CTR", + "AES-192-CTR", + "AES-256-CTR", + "BLOWFISH-CFB64", + "CAMELLIA-128-CFB128", + "CAMELLIA-192-CFB128", + "CAMELLIA-256-CFB128", + CIPHER_UNSUPPORTED, + CIPHER_UNSUPPORTED, + CIPHER_UNSUPPORTED, + CIPHER_UNSUPPORTED, + CIPHER_UNSUPPORTED, + "salsa20", + "chacha20", + "chacha20-ietf" +}; +#endif + +#ifdef USE_CRYPTO_APPLECC +static const CCAlgorithm supported_ciphers_applecc[CIPHER_NUM] = { + kCCAlgorithmInvalid, + kCCAlgorithmRC4, + kCCAlgorithmRC4, + kCCAlgorithmRC4, + kCCAlgorithmAES, + kCCAlgorithmAES, + kCCAlgorithmAES, + kCCAlgorithmAES, + kCCAlgorithmAES, + kCCAlgorithmAES, + kCCAlgorithmBlowfish, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid, + kCCAlgorithmCAST, + kCCAlgorithmDES, + kCCAlgorithmInvalid, + kCCAlgorithmRC2, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid +}; + +static const CCMode supported_modes_applecc[CIPHER_NUM] = { + kCCAlgorithmInvalid, + kCCAlgorithmInvalid, + kCCModeRC4, + kCCModeRC4, + kCCModeCFB, + kCCModeCFB, + kCCModeCFB, + kCCModeCTR, + kCCModeCTR, + kCCModeCTR, + kCCModeCFB, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid, + kCCModeCFB, + kCCModeCFB, + kCCModeCFB, + kCCModeCFB, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid, + kCCAlgorithmInvalid +}; +#endif + +static const int supported_ciphers_iv_size[CIPHER_NUM] = { + 0, 0, 6, 16, 16, 16, 16, 16, 16, 16, 8, 16, 16, 16, 8, 8, 8, 8, 16, 8, 8, 12 +}; + +static const int supported_ciphers_key_size[CIPHER_NUM] = { + 0, 16, 16, 16, 16, 24, 32, 16, 24, 32, 16, 16, 24, 32, 16, 8, 16, 16, 16, 32, 32, 32 +}; + +static int +safe_memcmp(const void *s1, const void *s2, size_t n) +{ + const unsigned char *_s1 = (const unsigned char *)s1; + const unsigned char *_s2 = (const unsigned char *)s2; + int ret = 0; + size_t i; + for (i = 0; i < n; i++) + ret |= _s1[i] ^ _s2[i]; + return !!ret; +} + +int +balloc(buffer_t *ptr, size_t capacity) +{ + sodium_memzero(ptr, sizeof(buffer_t)); + ptr->array = ss_malloc(capacity); + ptr->capacity = capacity; + return capacity; +} + +int +brealloc(buffer_t *ptr, size_t len, size_t capacity) +{ + if (ptr == NULL) + return -1; + size_t real_capacity = max(len, capacity); + if (ptr->capacity < real_capacity) { + ptr->array = ss_realloc(ptr->array, real_capacity); + ptr->capacity = real_capacity; + } + return real_capacity; +} + +void +bfree(buffer_t *ptr) +{ + if (ptr == NULL) + return; + ptr->idx = 0; + ptr->len = 0; + ptr->capacity = 0; + if (ptr->array != NULL) { + ss_free(ptr->array); + } +} + +static int +crypto_stream_xor_ic(uint8_t *c, const uint8_t *m, uint64_t mlen, + const uint8_t *n, uint64_t ic, const uint8_t *k, + int method) +{ + switch (method) { + case SALSA20: + return crypto_stream_salsa20_xor_ic(c, m, mlen, n, ic, k); + case CHACHA20: + return crypto_stream_chacha20_xor_ic(c, m, mlen, n, ic, k); + case CHACHA20IETF: + return crypto_stream_chacha20_ietf_xor_ic(c, m, mlen, n, (uint32_t)ic, k); + } + // always return 0 + return 0; +} + +static int +random_compare(const void *_x, const void *_y, uint32_t i, + uint64_t a) +{ + uint8_t x = *((uint8_t *)_x); + uint8_t y = *((uint8_t *)_y); + return a % (x + i) - a % (y + i); +} + +static void +merge(uint8_t *left, int llength, uint8_t *right, + int rlength, uint32_t salt, uint64_t key) +{ + uint8_t *ltmp = (uint8_t *)malloc(llength * sizeof(uint8_t)); + uint8_t *rtmp = (uint8_t *)malloc(rlength * sizeof(uint8_t)); + + uint8_t *ll = ltmp; + uint8_t *rr = rtmp; + + uint8_t *result = left; + + memcpy(ltmp, left, llength * sizeof(uint8_t)); + memcpy(rtmp, right, rlength * sizeof(uint8_t)); + + while (llength > 0 && rlength > 0) { + if (random_compare(ll, rr, salt, key) <= 0) { + *result = *ll; + ++ll; + --llength; + } else { + *result = *rr; + ++rr; + --rlength; + } + ++result; + } + + if (llength > 0) { + while (llength > 0) { + *result = *ll; + ++result; + ++ll; + --llength; + } + } else { + while (rlength > 0) { + *result = *rr; + ++result; + ++rr; + --rlength; + } + } + + ss_free(ltmp); + ss_free(rtmp); +} + +static void +merge_sort(uint8_t array[], int length, + uint32_t salt, uint64_t key) +{ + uint8_t middle; + uint8_t *left, *right; + int llength; + + if (length <= 1) { + return; + } + + middle = length / 2; + + llength = length - middle; + + left = array; + right = array + llength; + + merge_sort(left, llength, salt, key); + merge_sort(right, middle, salt, key); + merge(left, llength, right, middle, salt, key); +} + +int +enc_get_iv_len() +{ + return enc_iv_len; +} + +uint8_t* enc_get_key() +{ + return enc_key; +} + +int enc_get_key_len() +{ + return enc_key_len; +} + +unsigned char *enc_md5(const unsigned char *d, size_t n, unsigned char *md) +{ +#if defined(USE_CRYPTO_OPENSSL) + return MD5(d, n, md); +#elif defined(USE_CRYPTO_POLARSSL) + static unsigned char m[16]; + if (md == NULL) { + md = m; + } + md5(d, n, md); + return md; +#elif defined(USE_CRYPTO_MBEDTLS) + static unsigned char m[16]; + if (md == NULL) { + md = m; + } + mbedtls_md5(d, n, md); + return md; +#endif +} + +void +enc_table_init(const char *pass) +{ + uint32_t i; + uint64_t key = 0; + uint8_t *digest; + + enc_table = ss_malloc(256); + dec_table = ss_malloc(256); + + digest = enc_md5((const uint8_t *)pass, strlen(pass), NULL); + + for (i = 0; i < 8; i++) + key += OFFSET_ROL(digest, i); + + for (i = 0; i < 256; ++i) + enc_table[i] = i; + for (i = 1; i < 1024; ++i) + merge_sort(enc_table, 256, i, key); + for (i = 0; i < 256; ++i) + // gen decrypt table from encrypt table + dec_table[enc_table[i]] = i; +} + +int +cipher_iv_size(const cipher_t *cipher) +{ +#if defined(USE_CRYPTO_OPENSSL) + if (cipher->info == NULL) + return cipher->iv_len; + else + return EVP_CIPHER_iv_length(cipher->info); +#elif defined(USE_CRYPTO_POLARSSL) || defined(USE_CRYPTO_MBEDTLS) + if (cipher == NULL) { + return 0; + } + return cipher->info->iv_size; +#endif +} + +int +cipher_key_size(const cipher_t *cipher) +{ +#if defined(USE_CRYPTO_OPENSSL) + if (cipher->info == NULL) + return cipher->key_len; + else + return EVP_CIPHER_key_length(cipher->info); +#elif defined(USE_CRYPTO_POLARSSL) + if (cipher == NULL) { + return 0; + } + /* Override PolarSSL 32 bit default key size with sane 128 bit default */ + if (cipher->info->base != NULL && POLARSSL_CIPHER_ID_BLOWFISH == + cipher->info->base->cipher) { + return 128 / 8; + } + return cipher->info->key_length / 8; +#elif defined(USE_CRYPTO_MBEDTLS) + /* + * Semi-API changes (technically public, morally private) + * Renamed a few headers to include _internal in the name. Those headers are + * not supposed to be included by users. + * Changed md_info_t into an opaque structure (use md_get_xxx() accessors). + * Changed pk_info_t into an opaque structure. + * Changed cipher_base_t into an opaque structure. + */ + if (cipher == NULL) { + return 0; + } + /* From Version 1.2.7 released 2013-04-13 Default Blowfish keysize is now 128-bits */ + return cipher->info->key_bitlen / 8; +#endif +} + +void +bytes_to_key_with_size(const char *pass, size_t len, uint8_t *md, size_t md_size) +{ + uint8_t result[128]; + enc_md5((const unsigned char *)pass, len, result); + memcpy(md, result, 16); + int i = 16; + for (; i < md_size; i += 16) { + memcpy(result + 16, pass, len); + enc_md5(result, 16 + len, result); + memcpy(md + i, result, 16); + } +} + +int +bytes_to_key(const cipher_t *cipher, const digest_type_t *md, + const uint8_t *pass, uint8_t *key) +{ + size_t datal; + datal = strlen((const char *)pass); + +#if defined(USE_CRYPTO_OPENSSL) + + MD5_CTX c; + unsigned char md_buf[MAX_MD_SIZE]; + int nkey; + int addmd; + unsigned int i, j, mds; + + mds = 16; + nkey = cipher_key_size(cipher); + if (pass == NULL) + return nkey; + memset(&c, 0, sizeof(MD5_CTX)); + + for (j = 0, addmd = 0; j < nkey; addmd++) { + MD5_Init(&c); + if (addmd) { + MD5_Update(&c, md_buf, mds); + } + MD5_Update(&c, pass, datal); + MD5_Final(md_buf, &c); + + for (i = 0; i < mds; i++, j++) { + if (j >= nkey) + break; + key[j] = md_buf[i]; + } + } + + return nkey; + +#elif defined(USE_CRYPTO_POLARSSL) + md_context_t c; + unsigned char md_buf[MAX_MD_SIZE]; + int nkey; + int addmd; + unsigned int i, j, mds; + + nkey = cipher_key_size(cipher); + mds = md_get_size(md); + memset(&c, 0, sizeof(md_context_t)); + + if (pass == NULL) + return nkey; + if (md_init_ctx(&c, md)) + return 0; + + for (j = 0, addmd = 0; j < nkey; addmd++) { + md_starts(&c); + if (addmd) { + md_update(&c, md_buf, mds); + } + md_update(&c, pass, datal); + md_finish(&c, md_buf); + + for (i = 0; i < mds; i++, j++) { + if (j >= nkey) + break; + key[j] = md_buf[i]; + } + } + + md_free_ctx(&c); + return nkey; + +#elif defined(USE_CRYPTO_MBEDTLS) + + mbedtls_md_context_t c; + unsigned char md_buf[MAX_MD_SIZE]; + int nkey; + int addmd; + unsigned int i, j, mds; + + nkey = cipher_key_size(cipher); + mds = mbedtls_md_get_size(md); + memset(&c, 0, sizeof(mbedtls_md_context_t)); + + if (pass == NULL) + return nkey; + if (mbedtls_md_setup(&c, md, 1)) + return 0; + + for (j = 0, addmd = 0; j < nkey; addmd++) { + mbedtls_md_starts(&c); + if (addmd) { + mbedtls_md_update(&c, md_buf, mds); + } + mbedtls_md_update(&c, pass, datal); + mbedtls_md_finish(&c, &(md_buf[0])); + + for (i = 0; i < mds; i++, j++) { + if (j >= nkey) + break; + key[j] = md_buf[i]; + } + } + + mbedtls_md_free(&c); + return nkey; +#endif +} + +int +rand_bytes(uint8_t *output, int len) +{ + randombytes_buf(output, len); + // always return success + return 0; +} + +const cipher_kt_t * +get_cipher_type(int method) +{ + if (method <= TABLE || method >= CIPHER_NUM) { + LOGE("get_cipher_type(): Illegal method"); + return NULL; + } + + if (method == RC4_MD5 || method == RC4_MD5_6) { + method = RC4; + } + + if (method >= SALSA20) { + return NULL; + } + + const char *ciphername = supported_ciphers[method]; +#if defined(USE_CRYPTO_OPENSSL) + return EVP_get_cipherbyname(ciphername); +#elif defined(USE_CRYPTO_POLARSSL) + const char *polarname = supported_ciphers_polarssl[method]; + if (strcmp(polarname, CIPHER_UNSUPPORTED) == 0) { + LOGE("Cipher %s currently is not supported by PolarSSL library", + ciphername); + return NULL; + } + return cipher_info_from_string(polarname); +#elif defined(USE_CRYPTO_MBEDTLS) + const char *mbedtlsname = supported_ciphers_mbedtls[method]; + if (strcmp(mbedtlsname, CIPHER_UNSUPPORTED) == 0) { + LOGE("Cipher %s currently is not supported by mbed TLS library", + ciphername); + return NULL; + } + return mbedtls_cipher_info_from_string(mbedtlsname); +#endif +} + +const digest_type_t * +get_digest_type(const char *digest) +{ + if (digest == NULL) { + LOGE("get_digest_type(): Digest name is null"); + return NULL; + } + +#if defined(USE_CRYPTO_OPENSSL) + return EVP_get_digestbyname(digest); +#elif defined(USE_CRYPTO_POLARSSL) + return md_info_from_string(digest); +#elif defined(USE_CRYPTO_MBEDTLS) + return mbedtls_md_info_from_string(digest); +#endif +} + +void +cipher_context_init(cipher_ctx_t *ctx, int method, int enc) +{ + if (method <= TABLE || method >= CIPHER_NUM) { + LOGE("cipher_context_init(): Illegal method"); + return; + } + + if (method >= SALSA20) { + enc_iv_len = supported_ciphers_iv_size[method]; + return; + } + + const char *ciphername = supported_ciphers[method]; +#if defined(USE_CRYPTO_APPLECC) + cipher_cc_t *cc = &ctx->cc; + cc->cryptor = NULL; + cc->cipher = supported_ciphers_applecc[method]; + if (cc->cipher == kCCAlgorithmInvalid) { + cc->valid = kCCContextInvalid; + } else { + cc->valid = kCCContextValid; + if (cc->cipher == kCCAlgorithmRC4) { + cc->mode = supported_modes_applecc[method]; + cc->padding = ccNoPadding; + } else { + cc->mode = supported_modes_applecc[method]; + if (cc->mode == kCCModeCTR) { + cc->padding = ccNoPadding; + } else { + cc->padding = ccPKCS7Padding; + } + } + return; + } +#endif + + const cipher_kt_t *cipher = get_cipher_type(method); + +#if defined(USE_CRYPTO_OPENSSL) + ctx->evp = EVP_CIPHER_CTX_new(); + cipher_evp_t *evp = ctx->evp; + + if (cipher == NULL) { + LOGE("Cipher %s not found in OpenSSL library", ciphername); + FATAL("Cannot initialize cipher"); + } + if (!EVP_CipherInit_ex(evp, cipher, NULL, NULL, NULL, enc)) { + LOGE("Cannot initialize cipher %s", ciphername); + exit(EXIT_FAILURE); + } + if (!EVP_CIPHER_CTX_set_key_length(evp, enc_key_len)) { + EVP_CIPHER_CTX_cleanup(evp); + LOGE("Invalid key length: %d", enc_key_len); + exit(EXIT_FAILURE); + } + if (method > RC4_MD5) { + EVP_CIPHER_CTX_set_padding(evp, 1); + } +#elif defined(USE_CRYPTO_POLARSSL) + ctx->evp = (cipher_evp_t *)ss_malloc(sizeof(cipher_evp_t)); + cipher_evp_t *evp = ctx->evp; + + if (cipher == NULL) { + LOGE("Cipher %s not found in PolarSSL library", ciphername); + FATAL("Cannot initialize PolarSSL cipher"); + } + if (cipher_init_ctx(evp, cipher) != 0) { + FATAL("Cannot initialize PolarSSL cipher context"); + } +#elif defined(USE_CRYPTO_MBEDTLS) + ctx->evp = (cipher_evp_t *)ss_malloc(sizeof(cipher_evp_t)); + cipher_evp_t *evp = ctx->evp; + + if (cipher == NULL) { + LOGE("Cipher %s not found in mbed TLS library", ciphername); + FATAL("Cannot initialize mbed TLS cipher"); + } + mbedtls_cipher_init(evp); + if (mbedtls_cipher_setup(evp, cipher) != 0) { + FATAL("Cannot initialize mbed TLS cipher context"); + } +#endif +} + +void +cipher_context_set_iv(cipher_ctx_t *ctx, uint8_t *iv, size_t iv_len, + int enc) +{ + const unsigned char *true_key; + + if (iv == NULL) { + LOGE("cipher_context_set_iv(): IV is null"); + return; + } + + if (!enc) { + memcpy(ctx->iv, iv, iv_len); + } + + if (enc_method >= SALSA20) { + return; + } + + if (enc_method == RC4_MD5 || enc_method == RC4_MD5_6) { + unsigned char key_iv[32]; + memcpy(key_iv, enc_key, 16); + memcpy(key_iv + 16, iv, iv_len); + true_key = enc_md5(key_iv, 16 + iv_len, NULL); + iv_len = 0; + } else { + true_key = enc_key; + } + +#ifdef USE_CRYPTO_APPLECC + cipher_cc_t *cc = &ctx->cc; + if (cc->valid == kCCContextValid) { + memcpy(cc->iv, iv, iv_len); + memcpy(cc->key, true_key, enc_key_len); + cc->iv_len = iv_len; + cc->key_len = enc_key_len; + cc->encrypt = enc ? kCCEncrypt : kCCDecrypt; + if (cc->cryptor != NULL) { + CCCryptorRelease(cc->cryptor); + cc->cryptor = NULL; + } + + CCCryptorStatus ret; + ret = CCCryptorCreateWithMode( + cc->encrypt, + cc->mode, + cc->cipher, + cc->padding, + cc->iv, cc->key, cc->key_len, + NULL, 0, 0, kCCModeOptionCTR_BE, + &cc->cryptor); + if (ret != kCCSuccess) { + if (cc->cryptor != NULL) { + CCCryptorRelease(cc->cryptor); + cc->cryptor = NULL; + } + FATAL("Cannot set CommonCrypto key and IV"); + } + return; + } +#endif + + cipher_evp_t *evp = ctx->evp; + if (evp == NULL) { + LOGE("cipher_context_set_iv(): Cipher context is null"); + return; + } +#if defined(USE_CRYPTO_OPENSSL) + if (!EVP_CipherInit_ex(evp, NULL, NULL, true_key, iv, enc)) { + EVP_CIPHER_CTX_cleanup(evp); + FATAL("Cannot set key and IV"); + } +#elif defined(USE_CRYPTO_POLARSSL) + // XXX: PolarSSL 1.3.11: cipher_free_ctx deprecated, Use cipher_free() instead. + if (cipher_setkey(evp, true_key, enc_key_len * 8, enc) != 0) { + cipher_free_ctx(evp); + FATAL("Cannot set PolarSSL cipher key"); + } +#if POLARSSL_VERSION_NUMBER >= 0x01030000 + if (cipher_set_iv(evp, iv, iv_len) != 0) { + cipher_free_ctx(evp); + FATAL("Cannot set PolarSSL cipher IV"); + } + if (cipher_reset(evp) != 0) { + cipher_free_ctx(evp); + FATAL("Cannot finalize PolarSSL cipher context"); + } +#else + if (cipher_reset(evp, iv) != 0) { + cipher_free_ctx(evp); + FATAL("Cannot set PolarSSL cipher IV"); + } +#endif +#elif defined(USE_CRYPTO_MBEDTLS) + if (mbedtls_cipher_setkey(evp, true_key, enc_key_len * 8, enc) != 0) { + mbedtls_cipher_free(evp); + FATAL("Cannot set mbed TLS cipher key"); + } + + if (mbedtls_cipher_set_iv(evp, iv, iv_len) != 0) { + mbedtls_cipher_free(evp); + FATAL("Cannot set mbed TLS cipher IV"); + } + if (mbedtls_cipher_reset(evp) != 0) { + mbedtls_cipher_free(evp); + FATAL("Cannot finalize mbed TLS cipher context"); + } +#endif + +#ifdef DEBUG + dump("IV", (char *)iv, iv_len); +#endif +} + +void +cipher_context_release(cipher_ctx_t *ctx) +{ + if (enc_method >= SALSA20) { + return; + } + +#ifdef USE_CRYPTO_APPLECC + cipher_cc_t *cc = &ctx->cc; + if (cc->cryptor != NULL) { + CCCryptorRelease(cc->cryptor); + cc->cryptor = NULL; + } + if (cc->valid == kCCContextValid) { + return; + } +#endif + +#if defined(USE_CRYPTO_OPENSSL) + EVP_CIPHER_CTX_free(ctx->evp); +#elif defined(USE_CRYPTO_POLARSSL) +// NOTE: cipher_free_ctx deprecated in PolarSSL 1.3.11 + cipher_free_ctx(ctx->evp); + ss_free(ctx->evp); +#elif defined(USE_CRYPTO_MBEDTLS) +// NOTE: cipher_free_ctx deprecated + mbedtls_cipher_free(ctx->evp); + ss_free(ctx->evp); +#endif +} + +static int +cipher_context_update(cipher_ctx_t *ctx, uint8_t *output, size_t *olen, + const uint8_t *input, size_t ilen) +{ +#ifdef USE_CRYPTO_APPLECC + cipher_cc_t *cc = &ctx->cc; + if (cc->valid == kCCContextValid) { + CCCryptorStatus ret; + ret = CCCryptorUpdate(cc->cryptor, input, ilen, output, + ilen, olen); + return (ret == kCCSuccess) ? 1 : 0; + } +#endif + cipher_evp_t *evp = ctx->evp; +#if defined(USE_CRYPTO_OPENSSL) + int err = 0, tlen = *olen; + err = EVP_CipherUpdate(evp, (uint8_t *)output, &tlen, + (const uint8_t *)input, ilen); + *olen = tlen; + return err; +#elif defined(USE_CRYPTO_POLARSSL) + return !cipher_update(evp, (const uint8_t *)input, ilen, + (uint8_t *)output, olen); +#elif defined(USE_CRYPTO_MBEDTLS) + return !mbedtls_cipher_update(evp, (const uint8_t *)input, ilen, + (uint8_t *)output, olen); +#endif +} +int ss_md5_hmac(char *auth, char *msg, int msg_len, uint8_t *iv) +{ + uint8_t hash[MD5_BYTES]; + uint8_t auth_key[MAX_IV_LENGTH + MAX_KEY_LENGTH]; + memcpy(auth_key, iv, enc_iv_len); + memcpy(auth_key + enc_iv_len, enc_key, enc_key_len); + +#if defined(USE_CRYPTO_OPENSSL) + HMAC(EVP_md5(), auth_key, enc_iv_len + enc_key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash, NULL); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md_hmac(mbedtls_md_info_from_type(MBEDTLS_MD_MD5), auth_key, enc_iv_len + enc_key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash); +#else + md5_hmac(auth_key, enc_iv_len + enc_key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash); +#endif + + memcpy(auth, hash, MD5_BYTES); + + return 0; +} + +int ss_md5_hmac_with_key(char *auth, char *msg, int msg_len, uint8_t *auth_key, int key_len) +{ + uint8_t hash[MD5_BYTES]; + +#if defined(USE_CRYPTO_OPENSSL) + HMAC(EVP_md5(), auth_key, key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash, NULL); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md_hmac(mbedtls_md_info_from_type(MBEDTLS_MD_MD5), auth_key, key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash); +#else + md5_hmac(auth_key, key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash); +#endif + + memcpy(auth, hash, MD5_BYTES); + + return 0; +} + +int ss_md5_hash_func(char *auth, char *msg, int msg_len) +{ + uint8_t hash[MD5_BYTES]; + +#if defined(USE_CRYPTO_OPENSSL) + MD5((uint8_t *)msg, msg_len, (uint8_t *)hash); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md(mbedtls_md_info_from_type(MBEDTLS_MD_MD5), (uint8_t *)msg, msg_len, (uint8_t *)hash); +#else + md5((uint8_t *)msg, msg_len, (uint8_t *)hash); +#endif + + memcpy(auth, hash, MD5_BYTES); + + return 0; +} + +int ss_sha1_hmac(char *auth, char *msg, int msg_len, uint8_t *iv) +{ + uint8_t hash[SHA1_BYTES]; + uint8_t auth_key[MAX_IV_LENGTH + MAX_KEY_LENGTH]; + memcpy(auth_key, iv, enc_iv_len); + memcpy(auth_key + enc_iv_len, enc_key, enc_key_len); + +#if defined(USE_CRYPTO_OPENSSL) + HMAC(EVP_sha1(), auth_key, enc_iv_len + enc_key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash, NULL); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md_hmac(mbedtls_md_info_from_type(MBEDTLS_MD_SHA1), auth_key, enc_iv_len + enc_key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash); +#else + sha1_hmac(auth_key, enc_iv_len + enc_key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash); +#endif + + memcpy(auth, hash, SHA1_BYTES); + + return 0; +} + +int ss_sha1_hmac_with_key(char *auth, char *msg, int msg_len, uint8_t *auth_key, int key_len) +{ + uint8_t hash[SHA1_BYTES]; + +#if defined(USE_CRYPTO_OPENSSL) + HMAC(EVP_sha1(), auth_key, key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash, NULL); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md_hmac(mbedtls_md_info_from_type(MBEDTLS_MD_SHA1), auth_key, key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash); +#else + sha1_hmac(auth_key, key_len, (uint8_t *)msg, msg_len, (uint8_t *)hash); +#endif + + memcpy(auth, hash, SHA1_BYTES); + + return 0; +} + +int ss_sha1_hash_func(char *auth, char *msg, int msg_len) +{ + uint8_t hash[SHA1_BYTES]; +#if defined(USE_CRYPTO_OPENSSL) + SHA1((uint8_t *)msg, msg_len, (uint8_t *)hash); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md(mbedtls_md_info_from_type(MBEDTLS_MD_SHA1), (uint8_t *)msg, msg_len, (uint8_t *)hash); +#else + sha1((uint8_t *)msg, msg_len, (uint8_t *)hash); +#endif + + memcpy(auth, hash, SHA1_BYTES); + + return 0; +} + +int ss_aes_128_cbc(char *encrypt, char *out_data, char *key) +{ + unsigned char iv[16] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; + +#if defined(USE_CRYPTO_OPENSSL) + AES_KEY aes; + AES_set_encrypt_key((unsigned char*)key, 128, &aes); + AES_cbc_encrypt((const unsigned char *)encrypt, (unsigned char *)out_data, 16, &aes, iv, AES_ENCRYPT); + +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_aes_context aes; + + unsigned char output[16]; + + mbedtls_aes_setkey_enc( &aes, (unsigned char *)key, 128 ); + mbedtls_aes_crypt_cbc( &aes, MBEDTLS_AES_ENCRYPT, 16, iv, (unsigned char *)encrypt, output ); + + memcpy(out_data, output, 16); +#else + + aes_context aes; + + unsigned char output[16]; + + aes_setkey_enc( &aes, (unsigned char *)key, 128 ); + aes_crypt_cbc( &aes, AES_ENCRYPT, 16, iv, (unsigned char *)encrypt, output ); + + memcpy(out_data, output, 16); +#endif + + return 0; +} + +int ss_onetimeauth(buffer_t *buf, uint8_t *iv, size_t capacity) +{ + uint8_t hash[ONETIMEAUTH_BYTES * 2]; + uint8_t auth_key[MAX_IV_LENGTH + MAX_KEY_LENGTH]; + memcpy(auth_key, iv, enc_iv_len); + memcpy(auth_key + enc_iv_len, enc_key, enc_key_len); + + brealloc(buf, ONETIMEAUTH_BYTES + buf->len, capacity); + +#if defined(USE_CRYPTO_OPENSSL) + HMAC(EVP_sha1(), auth_key, enc_iv_len + enc_key_len, (uint8_t *)buf->array, buf->len, (uint8_t *)hash, NULL); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md_hmac(mbedtls_md_info_from_type( + MBEDTLS_MD_SHA1), auth_key, enc_iv_len + enc_key_len, (uint8_t *)buf->array, buf->len, + (uint8_t *)hash); +#else + sha1_hmac(auth_key, enc_iv_len + enc_key_len, (uint8_t *)buf->array, buf->len, (uint8_t *)hash); +#endif + + memcpy(buf->array + buf->len, hash, ONETIMEAUTH_BYTES); + buf->len += ONETIMEAUTH_BYTES; + + return 0; +} + +int +ss_onetimeauth_verify(buffer_t *buf, uint8_t *iv) +{ + uint8_t hash[ONETIMEAUTH_BYTES * 2]; + uint8_t auth_key[MAX_IV_LENGTH + MAX_KEY_LENGTH]; + memcpy(auth_key, iv, enc_iv_len); + memcpy(auth_key + enc_iv_len, enc_key, enc_key_len); + size_t len = buf->len - ONETIMEAUTH_BYTES; + +#if defined(USE_CRYPTO_OPENSSL) + HMAC(EVP_sha1(), auth_key, enc_iv_len + enc_key_len, (uint8_t *)buf->array, len, hash, NULL); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md_hmac(mbedtls_md_info_from_type( + MBEDTLS_MD_SHA1), auth_key, enc_iv_len + enc_key_len, (uint8_t *)buf->array, len, hash); +#else + sha1_hmac(auth_key, enc_iv_len + enc_key_len, (uint8_t *)buf->array, len, hash); +#endif + + return safe_memcmp(buf->array + len, hash, ONETIMEAUTH_BYTES); +} + +int +ss_encrypt_all(buffer_t *plain, int method, int auth, size_t capacity) +{ + if (method > TABLE) { + cipher_ctx_t evp; + cipher_context_init(&evp, method, 1); + + size_t iv_len = enc_iv_len; + int err = 1; + + static buffer_t tmp = { 0, 0, 0, NULL }; + brealloc(&tmp, iv_len + plain->len, capacity); + buffer_t *cipher = &tmp; + cipher->len = plain->len; + + uint8_t iv[MAX_IV_LENGTH]; + + rand_bytes(iv, iv_len); + cipher_context_set_iv(&evp, iv, iv_len, 1); + memcpy(cipher->array, iv, iv_len); + + if (auth) { + ss_onetimeauth(plain, iv, capacity); + cipher->len = plain->len; + } + + if (method >= SALSA20) { + crypto_stream_xor_ic((uint8_t *)(cipher->array + iv_len), + (const uint8_t *)plain->array, (uint64_t)(plain->len), + (const uint8_t *)iv, + 0, enc_key, method); + } else { + err = cipher_context_update(&evp, (uint8_t *)(cipher->array + iv_len), + &cipher->len, (const uint8_t *)plain->array, + plain->len); + } + + if (!err) { + bfree(plain); + cipher_context_release(&evp); + return -1; + } + +#ifdef DEBUG + dump("PLAIN", plain->array, plain->len); + dump("CIPHER", cipher->array + iv_len, cipher->len); +#endif + + cipher_context_release(&evp); + + brealloc(plain, iv_len + cipher->len, capacity); + memcpy(plain->array, cipher->array, iv_len + cipher->len); + plain->len = iv_len + cipher->len; + + return 0; + } else { + char *begin = plain->array; + char *ptr = plain->array; + while (ptr < begin + plain->len) { + *ptr = (char)enc_table[(uint8_t)*ptr]; + ptr++; + } + return 0; + } +} + +int +ss_encrypt(buffer_t *plain, enc_ctx_t *ctx, size_t capacity) +{ + if (ctx != NULL) { + static buffer_t tmp = { 0, 0, 0, NULL }; + + int err = 1; + size_t iv_len = 0; + if (!ctx->init) { + iv_len = enc_iv_len; + } + + brealloc(&tmp, iv_len + plain->len, capacity); + buffer_t *cipher = &tmp; + cipher->len = plain->len; + + if (!ctx->init) { + cipher_context_set_iv(&ctx->evp, ctx->evp.iv, iv_len, 1); + memcpy(cipher->array, ctx->evp.iv, iv_len); + ctx->counter = 0; + ctx->init = 1; + } + + if (enc_method >= SALSA20) { + int padding = ctx->counter % SODIUM_BLOCK_SIZE; + brealloc(cipher, iv_len + (padding + cipher->len) * 2, capacity); + if (padding) { + brealloc(plain, plain->len + padding, capacity); + memmove(plain->array + padding, plain->array, plain->len); + sodium_memzero(plain->array, padding); + } + crypto_stream_xor_ic((uint8_t *)(cipher->array + iv_len), + (const uint8_t *)plain->array, + (uint64_t)(plain->len + padding), + (const uint8_t *)ctx->evp.iv, + ctx->counter / SODIUM_BLOCK_SIZE, enc_key, + enc_method); + ctx->counter += plain->len; + if (padding) { + memmove(cipher->array + iv_len, + cipher->array + iv_len + padding, cipher->len); + } + } else { + err = + cipher_context_update(&ctx->evp, + (uint8_t *)(cipher->array + iv_len), + &cipher->len, (const uint8_t *)plain->array, + plain->len); + if (!err) { + return -1; + } + } + +#ifdef DEBUG + dump("PLAIN", plain->array, plain->len); + dump("CIPHER", cipher->array + iv_len, cipher->len); +#endif + + brealloc(plain, iv_len + cipher->len, capacity); + memcpy(plain->array, cipher->array, iv_len + cipher->len); + plain->len = iv_len + cipher->len; + + return 0; + } else { + char *begin = plain->array; + char *ptr = plain->array; + while (ptr < begin + plain->len) { + *ptr = (char)enc_table[(uint8_t)*ptr]; + ptr++; + } + return 0; + } +} + +int +ss_decrypt_all(buffer_t *cipher, int method, int auth, size_t capacity) +{ + if (method > TABLE) { + size_t iv_len = enc_iv_len; + int ret = 1; + + if (cipher->len <= iv_len) { + return -1; + } + + cipher_ctx_t evp; + cipher_context_init(&evp, method, 0); + + static buffer_t tmp = { 0, 0, 0, NULL }; + brealloc(&tmp, cipher->len, capacity); + buffer_t *plain = &tmp; + plain->len = cipher->len - iv_len; + + uint8_t iv[MAX_IV_LENGTH]; + memcpy(iv, cipher->array, iv_len); + cipher_context_set_iv(&evp, iv, iv_len, 0); + + if (method >= SALSA20) { + crypto_stream_xor_ic((uint8_t *)plain->array, + (const uint8_t *)(cipher->array + iv_len), + (uint64_t)(cipher->len - iv_len), + (const uint8_t *)iv, 0, enc_key, method); + } else { + ret = cipher_context_update(&evp, (uint8_t *)plain->array, &plain->len, + (const uint8_t *)(cipher->array + iv_len), + cipher->len - iv_len); + } + + if (auth || (plain->array[0] & ONETIMEAUTH_FLAG)) { + if (plain->len > ONETIMEAUTH_BYTES) { + ret = !ss_onetimeauth_verify(plain, iv); + if (ret) { + plain->len -= ONETIMEAUTH_BYTES; + } + } else { + ret = 0; + } + } + + if (!ret) { + bfree(cipher); + cipher_context_release(&evp); + return -1; + } + +#ifdef DEBUG + dump("PLAIN", plain->array, plain->len); + dump("CIPHER", cipher->array + iv_len, cipher->len - iv_len); +#endif + + cipher_context_release(&evp); + + brealloc(cipher, plain->len, capacity); + memcpy(cipher->array, plain->array, plain->len); + cipher->len = plain->len; + + return 0; + } else { + char *begin = cipher->array; + char *ptr = cipher->array; + while (ptr < begin + cipher->len) { + *ptr = (char)dec_table[(uint8_t)*ptr]; + ptr++; + } + return 0; + } +} + +int +ss_decrypt(buffer_t *cipher, enc_ctx_t *ctx, size_t capacity) +{ + if (ctx != NULL) { + static buffer_t tmp = { 0, 0, 0, NULL }; + + size_t iv_len = 0; + int err = 1; + + brealloc(&tmp, cipher->len, capacity); + buffer_t *plain = &tmp; + plain->len = cipher->len; + + if (!ctx->init) { + uint8_t iv[MAX_IV_LENGTH]; + iv_len = enc_iv_len; + plain->len -= iv_len; + + memcpy(iv, cipher->array, iv_len); + cipher_context_set_iv(&ctx->evp, iv, iv_len, 0); + ctx->counter = 0; + ctx->init = 1; + + if (enc_method > RC4) { + if (cache_key_exist(iv_cache, (char *)iv, iv_len)) { + bfree(cipher); + return -1; + } else { + cache_insert(iv_cache, (char *)iv, iv_len, NULL); + } + } + } + + if (enc_method >= SALSA20) { + int padding = ctx->counter % SODIUM_BLOCK_SIZE; + brealloc(plain, (plain->len + padding) * 2, capacity); + + if (padding) { + brealloc(cipher, cipher->len + padding, capacity); + memmove(cipher->array + iv_len + padding, cipher->array + iv_len, + cipher->len - iv_len); + sodium_memzero(cipher->array + iv_len, padding); + } + crypto_stream_xor_ic((uint8_t *)plain->array, + (const uint8_t *)(cipher->array + iv_len), + (uint64_t)(cipher->len - iv_len + padding), + (const uint8_t *)ctx->evp.iv, + ctx->counter / SODIUM_BLOCK_SIZE, enc_key, + enc_method); + ctx->counter += cipher->len - iv_len; + if (padding) { + memmove(plain->array, plain->array + padding, plain->len); + } + } else { + err = cipher_context_update(&ctx->evp, (uint8_t *)plain->array, &plain->len, + (const uint8_t *)(cipher->array + iv_len), + cipher->len - iv_len); + } + + if (!err) { + bfree(cipher); + return -1; + } + +#ifdef DEBUG + dump("PLAIN", plain->array, plain->len); + dump("CIPHER", cipher->array + iv_len, cipher->len - iv_len); +#endif + + brealloc(cipher, plain->len, capacity); + memcpy(cipher->array, plain->array, plain->len); + cipher->len = plain->len; + + return 0; + } else { + char *begin = cipher->array; + char *ptr = cipher->array; + while (ptr < begin + cipher->len) { + *ptr = (char)dec_table[(uint8_t)*ptr]; + ptr++; + } + return 0; + } +} + +void +enc_ctx_init(int method, enc_ctx_t *ctx, int enc) +{ + sodium_memzero(ctx, sizeof(enc_ctx_t)); + cipher_context_init(&ctx->evp, method, enc); + + if (enc) { + rand_bytes(ctx->evp.iv, enc_iv_len); + } +} + +void +enc_key_init(int method, const char *pass) +{ + if (method <= TABLE || method >= CIPHER_NUM) { + LOGE("enc_key_init(): Illegal method"); + return; + } + + // Initialize cache + cache_create(&iv_cache, 256, NULL); + +#if defined(USE_CRYPTO_OPENSSL) + OpenSSL_add_all_algorithms(); +#else + cipher_kt_t cipher_info; +#endif + + cipher_t cipher; + memset(&cipher, 0, sizeof(cipher_t)); + + // Initialize sodium for random generator + if (sodium_init() == -1) { + FATAL("Failed to initialize sodium"); + } + + if (method == SALSA20 || method == CHACHA20 || method == CHACHA20IETF) { +#if defined(USE_CRYPTO_OPENSSL) + cipher.info = NULL; + cipher.key_len = supported_ciphers_key_size[method]; + cipher.iv_len = supported_ciphers_iv_size[method]; +#endif +#if defined(USE_CRYPTO_POLARSSL) + cipher.info = &cipher_info; + cipher.info->base = NULL; + cipher.info->key_length = supported_ciphers_key_size[method] * 8; + cipher.info->iv_size = supported_ciphers_iv_size[method]; +#endif +#if defined(USE_CRYPTO_MBEDTLS) + // XXX: key_length changed to key_bitlen in mbed TLS 2.0.0 + cipher.info = &cipher_info; + cipher.info->base = NULL; + cipher.info->key_bitlen = supported_ciphers_key_size[method] * 8; + cipher.info->iv_size = supported_ciphers_iv_size[method]; +#endif + } else { + cipher.info = (cipher_kt_t *)get_cipher_type(method); + } + + if (cipher.info == NULL && cipher.key_len == 0) { + do { +#if defined(USE_CRYPTO_POLARSSL) && defined(USE_CRYPTO_APPLECC) + if (supported_ciphers_applecc[method] != kCCAlgorithmInvalid) { + cipher_info.base = NULL; + cipher_info.key_length = supported_ciphers_key_size[method] * 8; + cipher_info.iv_size = supported_ciphers_iv_size[method]; + cipher.info = (cipher_kt_t *)&cipher_info; + break; + } +#endif +#if defined(USE_CRYPTO_MBEDTLS) && defined(USE_CRYPTO_APPLECC) + // XXX: key_length changed to key_bitlen in mbed TLS 2.0.0 + if (supported_ciphers_applecc[method] != kCCAlgorithmInvalid) { + cipher_info.base = NULL; + cipher_info.key_bitlen = supported_ciphers_key_size[method] * 8; + cipher_info.iv_size = supported_ciphers_iv_size[method]; + cipher.info = (cipher_kt_t *)&cipher_info; + break; + } +#endif + LOGE("Cipher %s not found in crypto library", supported_ciphers[method]); + FATAL("Cannot initialize cipher"); + } while (0); + } + + const digest_type_t *md = get_digest_type("MD5"); + if (md == NULL) { + FATAL("MD5 Digest not found in crypto library"); + } + + enc_key_len = bytes_to_key(&cipher, md, (const uint8_t *)pass, enc_key); + + if (enc_key_len == 0) { + FATAL("Cannot generate key and IV"); + } + if (method == RC4_MD5 || method == RC4_MD5_6) { + enc_iv_len = supported_ciphers_iv_size[method]; + } else { + enc_iv_len = cipher_iv_size(&cipher); + } + enc_method = method; +} + +int +enc_init(const char *pass, const char *method) +{ + int m = TABLE; + if (method != NULL) { + for (m = TABLE; m < CIPHER_NUM; m++) + if (strcmp(method, supported_ciphers[m]) == 0) { + break; + } + if (m >= CIPHER_NUM) { + LOGE("Invalid cipher name: %s, use rc4-md5 instead", method); + m = RC4_MD5; + } + } + if (m == TABLE) { + enc_table_init(pass); + } else { + enc_key_init(m, pass); + } + return m; +} + +int +ss_check_hash(buffer_t *buf, chunk_t *chunk, enc_ctx_t *ctx, size_t capacity) +{ + int i, j, k; + ssize_t blen = buf->len; + uint32_t cidx = chunk->idx; + + brealloc(chunk->buf, chunk->len + blen, capacity); + brealloc(buf, chunk->len + blen, capacity); + + for (i = 0, j = 0, k = 0; i < blen; i++) { + chunk->buf->array[cidx++] = buf->array[k++]; + + if (cidx == CLEN_BYTES) { + uint16_t clen = ntohs(*((uint16_t *)chunk->buf->array)); + brealloc(chunk->buf, clen + AUTH_BYTES, capacity); + chunk->len = clen; + } + + if (cidx == chunk->len + AUTH_BYTES) { + // Compare hash + uint8_t hash[ONETIMEAUTH_BYTES * 2]; + uint8_t key[MAX_IV_LENGTH + sizeof(uint32_t)]; + + uint32_t c = htonl(chunk->counter); + memcpy(key, ctx->evp.iv, enc_iv_len); + memcpy(key + enc_iv_len, &c, sizeof(uint32_t)); +#if defined(USE_CRYPTO_OPENSSL) + HMAC(EVP_sha1(), key, enc_iv_len + sizeof(uint32_t), + (uint8_t *)chunk->buf->array + AUTH_BYTES, chunk->len, hash, NULL); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md_hmac(mbedtls_md_info_from_type(MBEDTLS_MD_SHA1), key, enc_iv_len + sizeof(uint32_t), + (uint8_t *)chunk->buf->array + AUTH_BYTES, chunk->len, hash); +#else + sha1_hmac(key, enc_iv_len + sizeof(uint32_t), + (uint8_t *)chunk->buf->array + AUTH_BYTES, chunk->len, hash); +#endif + + if (safe_memcmp(hash, chunk->buf->array + CLEN_BYTES, ONETIMEAUTH_BYTES) != 0) { + return 0; + } + + // Copy chunk back to buffer + memmove(buf->array + j + chunk->len, buf->array + k, blen - i - 1); + memcpy(buf->array + j, chunk->buf->array + AUTH_BYTES, chunk->len); + + // Reset the base offset + j += chunk->len; + k = j; + cidx = 0; + chunk->counter++; + } + } + + buf->len = j; + chunk->idx = cidx; + return 1; +} + +int +ss_gen_hash(buffer_t *buf, uint32_t *counter, enc_ctx_t *ctx, size_t capacity) +{ + ssize_t blen = buf->len; + uint16_t chunk_len = htons((uint16_t)blen); + uint8_t hash[ONETIMEAUTH_BYTES * 2]; + uint8_t key[MAX_IV_LENGTH + sizeof(uint32_t)]; + uint32_t c = htonl(*counter); + + brealloc(buf, AUTH_BYTES + blen, capacity); + memcpy(key, ctx->evp.iv, enc_iv_len); + memcpy(key + enc_iv_len, &c, sizeof(uint32_t)); +#if defined(USE_CRYPTO_OPENSSL) + HMAC(EVP_sha1(), key, enc_iv_len + sizeof(uint32_t), (uint8_t *)buf->array, blen, hash, NULL); +#elif defined(USE_CRYPTO_MBEDTLS) + mbedtls_md_hmac(mbedtls_md_info_from_type( + MBEDTLS_MD_SHA1), key, enc_iv_len + sizeof(uint32_t), (uint8_t *)buf->array, blen, hash); +#else + sha1_hmac(key, enc_iv_len + sizeof(uint32_t), (uint8_t *)buf->array, blen, hash); +#endif + + memmove(buf->array + AUTH_BYTES, buf->array, blen); + memcpy(buf->array + CLEN_BYTES, hash, ONETIMEAUTH_BYTES); + memcpy(buf->array, &chunk_len, CLEN_BYTES); + + *counter = *counter + 1; + buf->len = blen + AUTH_BYTES; + + return 0; +} diff --git a/shadowsocksr-libev/src/server/encrypt.h b/shadowsocksr-libev/src/server/encrypt.h new file mode 100644 index 000000000..3bb7940aa --- /dev/null +++ b/shadowsocksr-libev/src/server/encrypt.h @@ -0,0 +1,222 @@ +/* + * encrypt.h - Define the enryptor's interface + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#ifndef _ENCRYPT_H +#define _ENCRYPT_H + +#ifndef __MINGW32__ +#include +#else + +#ifdef max +#undef max +#endif + +#ifdef min +#undef min +#endif + +#endif + +#include +#include +#include +#include + +#if defined(USE_CRYPTO_OPENSSL) + +#include +#include +#include +typedef EVP_CIPHER cipher_kt_t; +typedef EVP_CIPHER_CTX cipher_evp_t; +typedef EVP_MD digest_type_t; +#define MAX_KEY_LENGTH EVP_MAX_KEY_LENGTH +#define MAX_IV_LENGTH EVP_MAX_IV_LENGTH +#define MAX_MD_SIZE EVP_MAX_MD_SIZE + +#elif defined(USE_CRYPTO_POLARSSL) + +#include +#include +typedef cipher_info_t cipher_kt_t; +typedef cipher_context_t cipher_evp_t; +typedef md_info_t digest_type_t; +#define MAX_KEY_LENGTH 64 +#define MAX_IV_LENGTH POLARSSL_MAX_IV_LENGTH +#define MAX_MD_SIZE POLARSSL_MD_MAX_SIZE + +#elif defined(USE_CRYPTO_MBEDTLS) + +#include +#include +typedef mbedtls_cipher_info_t cipher_kt_t; +typedef mbedtls_cipher_context_t cipher_evp_t; +typedef mbedtls_md_info_t digest_type_t; +#define MAX_KEY_LENGTH 64 +#define MAX_IV_LENGTH MBEDTLS_MAX_IV_LENGTH +#define MAX_MD_SIZE MBEDTLS_MD_MAX_SIZE + +/* we must have MBEDTLS_CIPHER_MODE_CFB defined */ +#if !defined(MBEDTLS_CIPHER_MODE_CFB) +#error Cipher Feedback mode a.k.a CFB not supported by your mbed TLS. +#endif + +#endif + +#ifdef USE_CRYPTO_APPLECC + +#include + +#define kCCAlgorithmInvalid UINT32_MAX +#define kCCContextValid 0 +#define kCCContextInvalid -1 + +typedef struct { + CCCryptorRef cryptor; + int valid; + CCOperation encrypt; + CCAlgorithm cipher; + CCMode mode; + CCPadding padding; + uint8_t iv[MAX_IV_LENGTH]; + uint8_t key[MAX_KEY_LENGTH]; + size_t iv_len; + size_t key_len; +} cipher_cc_t; + +#endif + +typedef struct { + cipher_evp_t *evp; +#ifdef USE_CRYPTO_APPLECC + cipher_cc_t cc; +#endif + uint8_t iv[MAX_IV_LENGTH]; +} cipher_ctx_t; + +typedef struct { + cipher_kt_t *info; + size_t iv_len; + size_t key_len; +} cipher_t; + +#ifdef HAVE_STDINT_H +#include +#elif HAVE_INTTYPES_H +#include +#endif + +#define SODIUM_BLOCK_SIZE 64 + +enum crpher_index { + NONE = -1, + TABLE = 0, + RC4, + RC4_MD5_6, + RC4_MD5, + AES_128_CFB, + AES_192_CFB, + AES_256_CFB, + AES_128_CTR, + AES_192_CTR, + AES_256_CTR, + BF_CFB, + CAMELLIA_128_CFB, + CAMELLIA_192_CFB, + CAMELLIA_256_CFB, + CAST5_CFB, + DES_CFB, + IDEA_CFB, + RC2_CFB, + SEED_CFB, + SALSA20, + CHACHA20, + CHACHA20IETF, + CIPHER_NUM, +}; + +#define ONETIMEAUTH_FLAG 0x10 +#define ADDRTYPE_MASK 0xEF + +#define ONETIMEAUTH_BYTES 10U +#define MD5_BYTES 16U +#define SHA1_BYTES 20U +#define CLEN_BYTES 2U +#define AUTH_BYTES (ONETIMEAUTH_BYTES + CLEN_BYTES) + +#define min(a, b) (((a) < (b)) ? (a) : (b)) +#define max(a, b) (((a) > (b)) ? (a) : (b)) + +typedef struct buffer { + size_t idx; + size_t len; + size_t capacity; + char *array; +} buffer_t; + +typedef struct chunk { + uint32_t idx; + uint32_t len; + uint32_t counter; + buffer_t *buf; +} chunk_t; + +typedef struct enc_ctx { + uint8_t init; + uint64_t counter; + cipher_ctx_t evp; +} enc_ctx_t; + +void bytes_to_key_with_size(const char *pass, size_t len, uint8_t *md, size_t md_size); + +int ss_encrypt_all(buffer_t *plaintext, int method, int auth, size_t capacity); +int ss_decrypt_all(buffer_t *ciphertext, int method, int auth, size_t capacity); +int ss_encrypt(buffer_t *plaintext, enc_ctx_t *ctx, size_t capacity); +int ss_decrypt(buffer_t *ciphertext, enc_ctx_t *ctx, size_t capacity); + +void enc_ctx_init(int method, enc_ctx_t *ctx, int enc); +int enc_init(const char *pass, const char *method); +int enc_get_iv_len(void); +uint8_t* enc_get_key(void); +int enc_get_key_len(void); +void cipher_context_release(cipher_ctx_t *evp); +unsigned char *enc_md5(const unsigned char *d, size_t n, unsigned char *md); + +int ss_md5_hmac(char *auth, char *msg, int msg_len, uint8_t *iv); +int ss_md5_hmac_with_key(char *auth, char *msg, int msg_len, uint8_t *auth_key, int key_len); +int ss_md5_hash_func(char *auth, char *msg, int msg_len); +int ss_sha1_hmac(char *auth, char *msg, int msg_len, uint8_t *iv); +int ss_sha1_hmac_with_key(char *auth, char *msg, int msg_len, uint8_t *auth_key, int key_len); +int ss_sha1_hash_func(char *auth, char *msg, int msg_len); +int ss_aes_128_cbc(char *encrypt, char *out_data, char *key); +int ss_onetimeauth(buffer_t *buf, uint8_t *iv, size_t capacity); +int ss_onetimeauth_verify(buffer_t *buf, uint8_t *iv); + +int ss_check_hash(buffer_t *buf, chunk_t *chunk, enc_ctx_t *ctx, size_t capacity); +int ss_gen_hash(buffer_t *buf, uint32_t *counter, enc_ctx_t *ctx, size_t capacity); + +int balloc(buffer_t *ptr, size_t capacity); +int brealloc(buffer_t *ptr, size_t len, size_t capacity); +void bfree(buffer_t *ptr); + +#endif // _ENCRYPT_H diff --git a/shadowsocksr-libev/src/server/http.c b/shadowsocksr-libev/src/server/http.c new file mode 100644 index 000000000..3bd4a3227 --- /dev/null +++ b/shadowsocksr-libev/src/server/http.c @@ -0,0 +1,152 @@ +/* + * Copyright (c) 2011 and 2012, Dustin Lundquist + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include /* malloc() */ +#include /* strncpy() */ +#include /* strncasecmp() */ +#include /* isblank() */ + +#include "http.h" +#include "protocol.h" + +#define SERVER_NAME_LEN 256 + +static int parse_http_header(const char *, size_t, char **); +static int get_header(const char *, const char *, int, char **); +static int next_header(const char **, int *); + +static const protocol_t http_protocol_st = { + .default_port = 80, + .parse_packet = &parse_http_header, +}; +const protocol_t *const http_protocol = &http_protocol_st; + +/* + * Parses a HTTP request for the Host: header + * + * Returns: + * >=0 - length of the hostname and updates *hostname + * caller is responsible for freeing *hostname + * -1 - Incomplete request + * -2 - No Host header included in this request + * -3 - Invalid hostname pointer + * -4 - malloc failure + * < -4 - Invalid HTTP request + * + */ +static int +parse_http_header(const char *data, size_t data_len, char **hostname) +{ + int result, i; + + if (hostname == NULL) + return -3; + + if (data_len == 0) + return -1; + + result = get_header("Host:", data, data_len, hostname); + if (result < 0) + return result; + + /* + * if the user specifies the port in the request, it is included here. + * Host: example.com:80 + * so we trim off port portion + */ + for (i = result - 1; i >= 0; i--) + if ((*hostname)[i] == ':') { + (*hostname)[i] = '\0'; + result = i; + break; + } + + return result; +} + +static int +get_header(const char *header, const char *data, int data_len, char **value) +{ + int len, header_len; + + header_len = strlen(header); + + /* loop through headers stopping at first blank line */ + while ((len = next_header(&data, &data_len)) != 0) + if (len > header_len && strncasecmp(header, data, header_len) == 0) { + /* Eat leading whitespace */ + while (header_len < len && isblank(data[header_len])) + header_len++; + + *value = malloc(len - header_len + 1); + if (*value == NULL) + return -4; + + strncpy(*value, data + header_len, len - header_len); + (*value)[len - header_len] = '\0'; + + return len - header_len; + } + + /* If there is no data left after reading all the headers then we do not + * have a complete HTTP request, there must be a blank line */ + if (data_len == 0) + return -1; + + return -2; +} + +static int +next_header(const char **data, int *len) +{ + int header_len; + + /* perhaps we can optimize this to reuse the value of header_len, rather + * than scanning twice. + * Walk our data stream until the end of the header */ + while (*len > 2 && (*data)[0] != '\r' && (*data)[1] != '\n') { + (*len)--; + (*data)++; + } + + /* advanced past the pair */ + *data += 2; + *len -= 2; + + /* Find the length of the next header */ + header_len = 0; + while (*len > header_len + 1 + && (*data)[header_len] != '\r' + && (*data)[header_len + 1] != '\n') + header_len++; + + return header_len; +} diff --git a/shadowsocksr-libev/src/server/http.h b/shadowsocksr-libev/src/server/http.h new file mode 100644 index 000000000..914815ae9 --- /dev/null +++ b/shadowsocksr-libev/src/server/http.h @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2011 and 2012, Dustin Lundquist + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +#ifndef HTTP_H +#define HTTP_H + +#include +#include "protocol.h" + +const protocol_t *const http_protocol; + +#endif diff --git a/shadowsocksr-libev/src/server/http_simple.c b/shadowsocksr-libev/src/server/http_simple.c new file mode 100644 index 000000000..c1e34eee4 --- /dev/null +++ b/shadowsocksr-libev/src/server/http_simple.c @@ -0,0 +1,625 @@ + +#include "http_simple.h" + +static char* g_useragent[] = { + "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:40.0) Gecko/20100101 Firefox/40.0", + "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:40.0) Gecko/20100101 Firefox/44.0", + "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36", + "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.11 (KHTML, like Gecko) Ubuntu/11.10 Chromium/27.0.1453.93 Chrome/27.0.1453.93 Safari/537.36", + "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0", + "Mozilla/5.0 (compatible; WOW64; MSIE 10.0; Windows NT 6.2)", + "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27", + "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.3; Trident/7.0; .NET4.0E; .NET4.0C)", + "Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko", + "Mozilla/5.0 (Linux; Android 4.4; Nexus 5 Build/BuildID) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36", + "Mozilla/5.0 (iPad; CPU OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3", + "Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3", +}; + +static int g_useragent_index = -1; + +typedef struct http_simple_local_data { + int has_sent_header; + int has_recv_header; + char *encode_buffer; + int host_matched; + char *recv_buffer; + int recv_buffer_size; +}http_simple_local_data; + +void http_simple_local_data_init(http_simple_local_data* local) { + local->has_sent_header = 0; + local->has_recv_header = 0; + local->encode_buffer = NULL; + + local->recv_buffer = malloc(0); + local->recv_buffer_size = 0; + + local->host_matched = 0; + + if (g_useragent_index == -1) { + g_useragent_index = xorshift128plus() % (sizeof(g_useragent) / sizeof(*g_useragent)); + } +} + +obfs * http_simple_new_obfs() { + obfs * self = new_obfs(); + self->l_data = malloc(sizeof(http_simple_local_data)); + http_simple_local_data_init((http_simple_local_data*)self->l_data); + return self; +} + +void http_simple_dispose(obfs *self) { + http_simple_local_data *local = (http_simple_local_data*)self->l_data; + if (local->encode_buffer != NULL) { + free(local->encode_buffer); + local->encode_buffer = NULL; + } + free(local); + dispose_obfs(self); +} + +char http_simple_hex(char c) { + if (c < 10) return c + '0'; + return c - 10 + 'a'; +} + +int get_data_from_http_header(char *data, char **outdata) { + char *delim = "\r\n"; + char *delim_hex = "%"; + int outlength = 0; + + char *buf = *outdata; + char *p_line; + p_line = strtok(data, delim); + + //while(p_line) + { + char *p_hex; + + p_hex = strtok(p_line, delim_hex); + + while((p_hex = strtok(NULL, delim_hex))) + { + char hex = 0; + + if(strlen(p_hex) <= 0) + { + continue; + } + + if(strlen(p_hex) > 2) + { + char *c_hex = (char*)malloc(2); + memcpy(c_hex, p_hex, 2); + hex = (char)strtol(c_hex, NULL, 16); + free(c_hex); + } + else + { + hex = (char)strtol(p_hex, NULL, 16); + } + + outlength += 1; + buf = (char*)realloc(buf, outlength); + buf[outlength - 1] = hex; + } + + //p_line = strtok(p_line, delim); + } + return outlength; +} + +void get_host_from_http_header(char *data, char **host) { + char* data_begin = strstr(data, "Host: "); + + if(data_begin == NULL) + { + return; + } + + data_begin += 6; + char* data_end = strstr(data_begin, "\r\n"); + char* data_end_port = strstr(data_begin, ":"); + + int host_length = 0; + + if(data_end_port != NULL) + { + host_length = data_end_port - data_begin; + } + else + { + host_length = data_end - data_begin; + } + + if(host_length <= 0) + { + return; + } + + memset(*host, 0x00, 1024); + memcpy(*host, data_begin, host_length); +} + +void http_simple_encode_head(http_simple_local_data *local, char *data, int datalength) { + if (local->encode_buffer == NULL) { + local->encode_buffer = (char*)malloc(datalength * 3 + 1); + } + int pos = 0; + for (; pos < datalength; ++pos) { + local->encode_buffer[pos * 3] = '%'; + local->encode_buffer[pos * 3 + 1] = http_simple_hex(((unsigned char)data[pos] >> 4)); + local->encode_buffer[pos * 3 + 2] = http_simple_hex(data[pos] & 0xF); + } + local->encode_buffer[pos * 3] = 0; +} + +int http_simple_client_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity) { + char *encryptdata = *pencryptdata; + http_simple_local_data *local = (http_simple_local_data*)self->l_data; + if (local->has_sent_header) { + return datalength; + } + char hosts[1024]; + char * phost[128]; + int host_num = 0; + int pos; + char hostport[128]; + int head_size = self->server.head_len + (xorshift128plus() & 0x3F); + int outlength; + char * out_buffer = (char*)malloc(datalength + 2048); + char * body_buffer = NULL; + if (head_size > datalength) + head_size = datalength; + http_simple_encode_head(local, encryptdata, head_size); + if (self->server.param && strlen(self->server.param) == 0) + self->server.param = NULL; + strncpy(hosts, self->server.param ? self->server.param : self->server.host, sizeof hosts); + phost[host_num++] = hosts; + for (pos = 0; hosts[pos]; ++pos) { + if (hosts[pos] == ',') { + phost[host_num++] = &hosts[pos + 1]; + hosts[pos] = 0; + } else if (hosts[pos] == '#') { + char * body_pointer = &hosts[pos + 1]; + char * p; + int trans_char = 0; + p = body_buffer = (char*)malloc(2048); + for ( ; *body_pointer; ++body_pointer) { + if (*body_pointer == '\\') { + trans_char = 1; + continue; + } else if (*body_pointer == '\n') { + *p = '\r'; + *++p = '\n'; + continue; + } + if (trans_char) { + if (*body_pointer == '\\' ) { + *p = '\\'; + } else if (*body_pointer == 'n' ) { + *p = '\r'; + *++p = '\n'; + } else { + *p = '\\'; + *p = *body_pointer; + } + trans_char = 0; + } else { + *p = *body_pointer; + } + ++p; + } + *p = 0; + hosts[pos] = 0; + break; + } + } + host_num = xorshift128plus() % host_num; + if (self->server.port == 80) + sprintf(hostport, "%s", phost[host_num]); + else + sprintf(hostport, "%s:%d", phost[host_num], self->server.port); + if (body_buffer) { + sprintf(out_buffer, + "GET /%s HTTP/1.1\r\n" + "Host: %s\r\n" + "%s\r\n\r\n", + local->encode_buffer, + hostport, + body_buffer); + } else { + sprintf(out_buffer, + "GET /%s HTTP/1.1\r\n" + "Host: %s\r\n" + "User-Agent: %s\r\n" + "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n" + "Accept-Language: en-US,en;q=0.8\r\n" + "Accept-Encoding: gzip, deflate\r\n" + "DNT: 1\r\n" + "Connection: keep-alive\r\n" + "\r\n", + local->encode_buffer, + hostport, + g_useragent[g_useragent_index] + ); + } + //LOGI("http header: %s", out_buffer); + outlength = strlen(out_buffer); + memmove(out_buffer + outlength, encryptdata + head_size, datalength - head_size); + outlength += datalength - head_size; + local->has_sent_header = 1; + if (*capacity < outlength) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = outlength * 2); + encryptdata = *pencryptdata; + } + memmove(encryptdata, out_buffer, outlength); + free(out_buffer); + if (body_buffer != NULL) + free(body_buffer); + if (local->encode_buffer != NULL) { + free(local->encode_buffer); + local->encode_buffer = NULL; + } + return outlength; +} + +int http_simple_server_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity) { + char *encryptdata = *pencryptdata; + http_simple_local_data *local = (http_simple_local_data*)self->l_data; + if (local->has_sent_header) { + return datalength; + } + int outlength; + char * out_buffer = (char*)malloc(datalength + 2048); + + time_t now; + struct tm *tm_now; + char datetime[200]; + + time(&now); + tm_now = localtime(&now); + strftime(datetime, 200, "%a, %d %b %Y %H:%M:%S GMT", tm_now); + + sprintf(out_buffer, + "HTTP/1.1 200 OK\r\nConnection: keep-alive\r\nContent-Encoding: gzip\r\nContent-Type: text/html\r\nDate: " + "%s" + "\r\nServer: nginx\r\nVary: Accept-Encoding\r\n\r\n", + datetime); + + outlength = strlen(out_buffer); + memmove(out_buffer + outlength, encryptdata, datalength); + outlength += datalength; + + local->has_sent_header = 1; + if (*capacity < outlength) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = outlength * 2); + encryptdata = *pencryptdata; + } + memmove(encryptdata, out_buffer, outlength); + free(out_buffer); + return outlength; +} + +int http_simple_client_decode(obfs *self, char **pencryptdata, int datalength, size_t* capacity, int *needsendback) { + char *encryptdata = *pencryptdata; + http_simple_local_data *local = (http_simple_local_data*)self->l_data; + *needsendback = 0; + if (local->has_recv_header) { + return datalength; + } + char* data_begin = strstr(encryptdata, "\r\n\r\n"); + if (data_begin) { + int outlength; + data_begin += 4; + local->has_recv_header = 1; + outlength = datalength - (data_begin - encryptdata); + memmove(encryptdata, data_begin, outlength); + return outlength; + } else { + return 0; + } +} + +int http_simple_server_decode(obfs *self, char **pencryptdata, int datalength, size_t* capacity, int *needsendback) { + char *encryptdata = *pencryptdata; + http_simple_local_data *local = (http_simple_local_data*)self->l_data; + *needsendback = 0; + if (local->has_recv_header) { + return datalength; + } + + if(datalength != 0) + { + local->recv_buffer = (char*)realloc(local->recv_buffer, local->recv_buffer_size + datalength); + memmove(local->recv_buffer + local->recv_buffer_size, encryptdata, datalength); + local->recv_buffer_size += datalength; + + int outlength = local->recv_buffer_size; + if (*capacity < outlength) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = outlength * 2); + encryptdata = *pencryptdata; + } + memcpy(encryptdata, local->recv_buffer, local->recv_buffer_size); + } + + if(local->recv_buffer_size > 10) + { + if(strstr(local->recv_buffer, "GET /") == local->recv_buffer || strstr(local->recv_buffer, "POST /") == local->recv_buffer) + { + if(local->recv_buffer_size > 65536) + { + free(local->recv_buffer); + local->recv_buffer = malloc(0); + local->recv_buffer_size = 0; + local->has_sent_header = 1; + local->has_recv_header = 1; + LOGE("http_simple: over size"); + return -1; + } + } + else + { + free(local->recv_buffer); + local->recv_buffer = malloc(0); + local->recv_buffer_size = 0; + local->has_sent_header = 1; + local->has_recv_header = 1; + LOGE("http_simple: not match begin"); + return -1; + } + } + else + { + LOGE("http_simple: too short"); + local->has_sent_header = 1; + local->has_recv_header = 1; + return -1; + } + + char* data_begin = strstr(encryptdata, "\r\n\r\n"); + if (data_begin) { + int outlength; + char *ret_buf = (char*)malloc(*capacity); + memset(ret_buf, 0x00, *capacity); + int ret_buf_len = 0; + ret_buf_len = get_data_from_http_header(encryptdata, &ret_buf); + + if (self->server.param && strlen(self->server.param) == 0) + { + self->server.param = NULL; + } + else + { + if(local->host_matched == 0) + { + char *host = (char*)malloc(1024); + get_host_from_http_header(local->recv_buffer, &host); + char hosts[1024]; + char * phost[128]; + int host_num = 0; + int pos = 0; + int is_match = 0; + char * body_buffer = NULL; + strncpy(hosts, self->server.param, sizeof hosts); + phost[host_num++] = hosts; + + for (pos = 0; hosts[pos]; ++pos) { + if (hosts[pos] == ',') { + phost[host_num++] = &hosts[pos + 1]; + hosts[pos] = 0; + } else if (hosts[pos] == '#') { + char * body_pointer = &hosts[pos + 1]; + char * p; + int trans_char = 0; + p = body_buffer = (char*)malloc(2048); + for ( ; *body_pointer; ++body_pointer) { + if (*body_pointer == '\\') { + trans_char = 1; + continue; + } else if (*body_pointer == '\n') { + *p = '\r'; + *++p = '\n'; + continue; + } + if (trans_char) { + if (*body_pointer == '\\' ) { + *p = '\\'; + } else if (*body_pointer == 'n' ) { + *p = '\r'; + *++p = '\n'; + } else { + *p = '\\'; + *p = *body_pointer; + } + trans_char = 0; + } else { + *p = *body_pointer; + } + ++p; + } + *p = 0; + hosts[pos] = 0; + break; + } + } + + + for(pos = 0; pos < host_num; pos++) + { + if(strcmp(phost[pos], host) == 0) + { + is_match = 1; + local->host_matched = 1; + } + } + + if(is_match == 0) + { + free(local->recv_buffer); + local->recv_buffer = malloc(0); + local->recv_buffer_size = 0; + local->has_sent_header = 1; + local->has_recv_header = 1; + LOGE("http_simple: not match host, host: %s", host); + return -1; + } + + free(host); + } + } + + if(ret_buf_len <= 0) + { + return -1; + } + + data_begin += 4; + local->has_recv_header = 1; + + ret_buf = (char*)realloc(ret_buf, ret_buf_len + datalength - (data_begin - encryptdata)); + outlength = ret_buf_len + datalength - (data_begin - encryptdata); + + memcpy(ret_buf + ret_buf_len, data_begin, datalength - (data_begin - encryptdata)); + + if (*capacity < outlength) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = outlength * 2); + encryptdata = *pencryptdata; + } + + memcpy(encryptdata, ret_buf, outlength); + free(ret_buf); + return outlength; + } else { + return 0; + } +} + +void boundary(char result[]) +{ + char *str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; + int i,lstr; + char ss[3] = {0}; + lstr = strlen(str); + srand((unsigned int)time((time_t *)NULL)); + for(i = 0; i < 32; ++i) + { + sprintf(ss, "%c", str[(rand()%lstr)]); + strcat(result, ss); + } +} + +int http_post_client_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity) { + char *encryptdata = *pencryptdata; + http_simple_local_data *local = (http_simple_local_data*)self->l_data; + if (local->has_sent_header) { + return datalength; + } + char hosts[1024]; + char * phost[128]; + int host_num = 0; + int pos; + char hostport[128]; + int head_size = self->server.head_len + (xorshift128plus() & 0x3F); + int outlength; + char * out_buffer = (char*)malloc(datalength + 2048); + char * body_buffer = NULL; + if (head_size > datalength) + head_size = datalength; + http_simple_encode_head(local, encryptdata, head_size); + if (self->server.param && strlen(self->server.param) == 0) + self->server.param = NULL; + strncpy(hosts, self->server.param ? self->server.param : self->server.host, sizeof hosts); + phost[host_num++] = hosts; + for (pos = 0; hosts[pos]; ++pos) { + if (hosts[pos] == ',') { + phost[host_num++] = &hosts[pos + 1]; + hosts[pos] = 0; + } else if (hosts[pos] == '#') { + char * body_pointer = &hosts[pos + 1]; + char * p; + int trans_char = 0; + p = body_buffer = (char*)malloc(2048); + for ( ; *body_pointer; ++body_pointer) { + if (*body_pointer == '\\') { + trans_char = 1; + continue; + } else if (*body_pointer == '\n') { + *p = '\r'; + *++p = '\n'; + continue; + } + if (trans_char) { + if (*body_pointer == '\\' ) { + *p = '\\'; + } else if (*body_pointer == 'n' ) { + *p = '\r'; + *++p = '\n'; + } else { + *p = '\\'; + *p = *body_pointer; + } + trans_char = 0; + } else { + *p = *body_pointer; + } + ++p; + } + *p = 0; + hosts[pos] = 0; + break; + } + } + host_num = xorshift128plus() % host_num; + if (self->server.port == 80) + sprintf(hostport, "%s", phost[host_num]); + else + sprintf(hostport, "%s:%d", phost[host_num], self->server.port); + if (body_buffer) { + sprintf(out_buffer, + "POST /%s HTTP/1.1\r\n" + "Host: %s\r\n" + "%s\r\n\r\n", + local->encode_buffer, + hostport, + body_buffer); + } else { + char result[33] = {0}; + boundary(result); + sprintf(out_buffer, + "POST /%s HTTP/1.1\r\n" + "Host: %s\r\n" + "User-Agent: %s\r\n" + "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n" + "Accept-Language: en-US,en;q=0.8\r\n" + "Accept-Encoding: gzip, deflate\r\n" + "Content-Type: multipart/form-data; boundary=%s\r\n" + "DNT: 1\r\n" + "Connection: keep-alive\r\n" + "\r\n", + local->encode_buffer, + hostport, + g_useragent[g_useragent_index], + result + ); + } + //LOGI("http header: %s", out_buffer); + outlength = strlen(out_buffer); + memmove(out_buffer + outlength, encryptdata + head_size, datalength - head_size); + outlength += datalength - head_size; + local->has_sent_header = 1; + if (*capacity < outlength) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = outlength * 2); + encryptdata = *pencryptdata; + } + memmove(encryptdata, out_buffer, outlength); + free(out_buffer); + if (body_buffer != NULL) + free(body_buffer); + if (local->encode_buffer != NULL) { + free(local->encode_buffer); + local->encode_buffer = NULL; + } + return outlength; +} diff --git a/shadowsocksr-libev/src/server/http_simple.h b/shadowsocksr-libev/src/server/http_simple.h new file mode 100644 index 000000000..cce24cc17 --- /dev/null +++ b/shadowsocksr-libev/src/server/http_simple.h @@ -0,0 +1,21 @@ +/* + * http_simple.h - Define shadowsocksR server's buffers and callbacks + * + * Copyright (C) 2015 - 2016, Break Wa11 + */ + +#ifndef _HTTP_SIMPLE_H +#define _HTTP_SIMPLE_H + +obfs * http_simple_new_obfs(); +void http_simple_dispose(obfs *self); + +int http_simple_client_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity); +int http_simple_client_decode(obfs *self, char **pencryptdata, int datalength, size_t* capacity, int *needsendback); + +int http_post_client_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity); + +int http_simple_server_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity); +int http_simple_server_decode(obfs *self, char **pencryptdata, int datalength, size_t* capacity, int *needsendback); + +#endif // _HTTP_SIMPLE_H diff --git a/shadowsocksr-libev/src/server/jconf.c b/shadowsocksr-libev/src/server/jconf.c new file mode 100644 index 000000000..494aa5f4e --- /dev/null +++ b/shadowsocksr-libev/src/server/jconf.c @@ -0,0 +1,260 @@ +/* + * jconf.c - Parse the JSON format config file + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#include +#include +#include +#include +#include + +#include "utils.h" +#include "jconf.h" +#include "json.h" +#include "string.h" + +#include + +#define check_json_value_type(value, expected_type, message) \ + do { \ + if ((value)->type != (expected_type)) \ + FATAL((message)); \ + } while(0) + +static char * +to_string(const json_value *value) +{ + if (value->type == json_string) { + return ss_strndup(value->u.string.ptr, value->u.string.length); + } else if (value->type == json_integer) { + return strdup(ss_itoa(value->u.integer)); + } else if (value->type == json_null) { + return "null"; + } else { + LOGE("%d", value->type); + FATAL("Invalid config format."); + } + return 0; +} + +void +free_addr(ss_addr_t *addr) +{ + ss_free(addr->host); + ss_free(addr->port); +} + +void +parse_addr(const char *str, ss_addr_t *addr) +{ + int ipv6 = 0, ret = -1, n = 0; + char *pch; + + struct cork_ip ip; + if (cork_ip_init(&ip, str) != -1) { + addr->host = strdup(str); + addr->port = NULL; + return; + } + + pch = strchr(str, ':'); + while (pch != NULL) { + n++; + ret = pch - str; + pch = strchr(pch + 1, ':'); + } + if (n > 1) { + ipv6 = 1; + if (str[ret - 1] != ']') { + ret = -1; + } + } + + if (ret == -1) { + if (ipv6) { + addr->host = ss_strndup(str + 1, strlen(str) - 2); + } else { + addr->host = strdup(str); + } + addr->port = NULL; + } else { + if (ipv6) { + addr->host = ss_strndup(str + 1, ret - 2); + } else { + addr->host = ss_strndup(str, ret); + } + addr->port = strdup(str + ret + 1); + } +} + +jconf_t * +read_jconf(const char *file) +{ + static jconf_t conf; + + memset(&conf, 0, sizeof(jconf_t)); + + char *buf; + json_value *obj; + + FILE *f = fopen(file, "rb"); + if (f == NULL) { + FATAL("Invalid config path."); + } + + fseek(f, 0, SEEK_END); + long pos = ftell(f); + fseek(f, 0, SEEK_SET); + + if (pos >= MAX_CONF_SIZE) { + FATAL("Too large config file."); + } + + buf = ss_malloc(pos + 1); + if (buf == NULL) { + FATAL("No enough memory."); + } + + int nread = fread(buf, pos, 1, f); + if (!nread) { + FATAL("Failed to read the config file."); + } + fclose(f); + + buf[pos] = '\0'; // end of string + + json_settings settings = { 0UL, 0, NULL, NULL, NULL }; + char error_buf[512]; + obj = json_parse_ex(&settings, buf, pos, error_buf); + + if (obj == NULL) { + FATAL(error_buf); + } + + if (obj->type == json_object) { + unsigned int i, j; + for (i = 0; i < obj->u.object.length; i++) { + char *name = obj->u.object.values[i].name; + json_value *value = obj->u.object.values[i].value; + if (strcmp(name, "server") == 0) { + if (value->type == json_array) { + for (j = 0; j < value->u.array.length; j++) { + if (j >= MAX_REMOTE_NUM) { + break; + } + json_value *v = value->u.array.values[j]; + char *addr_str = to_string(v); + parse_addr(addr_str, conf.remote_addr + j); + ss_free(addr_str); + conf.remote_num = j + 1; + } + } else if (value->type == json_string) { + conf.remote_addr[0].host = to_string(value); + conf.remote_addr[0].port = NULL; + conf.remote_num = 1; + } + } else if (strcmp(name, "port_password") == 0) { + if (value->type == json_object) { + for (j = 0; j < value->u.object.length; j++) { + if (j >= MAX_PORT_NUM) { + break; + } + json_value *v = value->u.object.values[j].value; + if (v->type == json_string) { + conf.port_password[j].port = ss_strndup(value->u.object.values[j].name, + value->u.object.values[j].name_length); + conf.port_password[j].password = to_string(v); + conf.port_password_num = j + 1; + } + } + } + } else if (strcmp(name, "server_port") == 0) { + conf.remote_port = to_string(value); + } else if (strcmp(name, "local_address") == 0) { + conf.local_addr = to_string(value); + } else if (strcmp(name, "local_port") == 0) { + conf.local_port = to_string(value); + } else if (strcmp(name, "password") == 0) { + conf.password = to_string(value); + } else if (strcmp(name, "protocol") == 0) { // SSR + conf.protocol = to_string(value); + } else if (strcmp(name, "protocol_param") == 0) { // SSR + conf.protocol_param = to_string(value); + } else if (strcmp(name, "method") == 0) { + conf.method = to_string(value); + } else if (strcmp(name, "obfs") == 0) { // SSR + conf.obfs = to_string(value); + } else if (strcmp(name, "obfs_param") == 0) { // SSR + conf.obfs_param = to_string(value); + } else if (strcmp(name, "timeout") == 0) { + conf.timeout = to_string(value); + } else if (strcmp(name, "user") == 0) { + conf.user = to_string(value); + } else if (strcmp(name, "fast_open") == 0) { + check_json_value_type(value, json_boolean, + "invalid config file: option 'fast_open' must be a boolean"); + conf.fast_open = value->u.boolean; + } else if (strcmp(name, "auth") == 0) { + check_json_value_type(value, json_boolean, + "invalid config file: option 'auth' must be a boolean"); + conf.auth = value->u.boolean; + } else if (strcmp(name, "nofile") == 0) { + check_json_value_type(value, json_integer, + "invalid config file: option 'nofile' must be an integer"); + conf.nofile = value->u.integer; + } else if (strcmp(name, "nameserver") == 0) { + conf.nameserver = to_string(value); + } else if (strcmp(name, "tunnel_address") == 0) { + conf.tunnel_address = to_string(value); + } else if (strcmp(name, "mode") == 0) { + char *mode_str = to_string(value); + + if (strcmp(mode_str, "tcp_only") == 0) + conf.mode = TCP_ONLY; + else if (strcmp(mode_str, "tcp_and_udp") == 0) + conf.mode = TCP_AND_UDP; + else if (strcmp(mode_str, "udp_only") == 0) + conf.mode = UDP_ONLY; + else + LOGI("ignore unknown mode: %s, use tcp_only as fallback", + mode_str); + ss_free(mode_str); + } else if (strcmp(name, "mtu") == 0) { + check_json_value_type(value, json_integer, + "invalid config file: option 'mtu' must be an integer"); + conf.mtu = value->u.integer; + } else if (strcmp(name, "mptcp") == 0) { + check_json_value_type(value, json_boolean, + "invalid config file: option 'mptcp' must be a boolean"); + conf.mptcp = value->u.boolean; + } else if (strcmp(name, "ipv6_first") == 0) { + check_json_value_type(value, json_boolean, + "invalid config file: option 'ipv6_first' must be a boolean"); + conf.ipv6_first = value->u.boolean; + } + } + } else { + FATAL("Invalid config file"); + } + + ss_free(buf); + json_value_free(obj); + return &conf; +} diff --git a/shadowsocksr-libev/src/server/jconf.h b/shadowsocksr-libev/src/server/jconf.h new file mode 100644 index 000000000..9a7e5e331 --- /dev/null +++ b/shadowsocksr-libev/src/server/jconf.h @@ -0,0 +1,78 @@ +/* + * jconf.h - Define the config data structure + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#ifndef _JCONF_H +#define _JCONF_H + +#define MAX_PORT_NUM 1024 +#define MAX_REMOTE_NUM 10 +#define MAX_CONF_SIZE 128 * 1024 +#define MAX_DNS_NUM 4 +#define MAX_CONNECT_TIMEOUT 10 +#define MAX_REQUEST_TIMEOUT 60 +#define MIN_UDP_TIMEOUT 10 + +#define TCP_ONLY 0 +#define TCP_AND_UDP 1 +#define UDP_ONLY 3 + +typedef struct { + char *host; + char *port; +} ss_addr_t; + +typedef struct { + char *port; + char *password; +} ss_port_password_t; + +typedef struct { + int remote_num; + ss_addr_t remote_addr[MAX_REMOTE_NUM]; + int port_password_num; + ss_port_password_t port_password[MAX_PORT_NUM]; + char *remote_port; + char *local_addr; + char *local_port; + char *password; + char *protocol; // SSR + char *protocol_param; // SSR + char *method; + char *obfs; // SSR + char *obfs_param; // SSR + char *timeout; + char *user; + int auth; + int fast_open; + int nofile; + char *nameserver; + char *tunnel_address; + int mode; + int mtu; + int mptcp; + int ipv6_first; +} jconf_t; + +jconf_t *read_jconf(const char *file); +void parse_addr(const char *str, ss_addr_t *addr); +void free_addr(ss_addr_t *addr); + +#endif // _JCONF_H diff --git a/shadowsocksr-libev/src/server/json.c b/shadowsocksr-libev/src/server/json.c new file mode 100644 index 000000000..18e95ef7e --- /dev/null +++ b/shadowsocksr-libev/src/server/json.c @@ -0,0 +1,1002 @@ +/* vim: set et ts=3 sw=3 sts=3 ft=c: + * + * Copyright (C) 2012, 2013, 2014 James McLaughlin et al. All rights reserved. + * https://github.com/udp/json-parser + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include "json.h" +#include "utils.h" + +#ifdef _MSC_VER +#ifndef _CRT_SECURE_NO_WARNINGS +#define _CRT_SECURE_NO_WARNINGS +#endif +#endif + +#ifdef __cplusplus +const struct _json_value json_value_none; /* zero-d by ctor */ +#else +const struct _json_value json_value_none = { NULL, 0, { 0 }, { NULL } }; +#endif + +#include +#include +#include +#include + +typedef unsigned short json_uchar; + +static unsigned char +hex_value(json_char c) +{ + if (isdigit((uint8_t)c)) { + return c - '0'; + } + + switch (c) { + case 'a': + case 'A': + return 0x0A; + case 'b': + case 'B': + return 0x0B; + case 'c': + case 'C': + return 0x0C; + case 'd': + case 'D': + return 0x0D; + case 'e': + case 'E': + return 0x0E; + case 'f': + case 'F': + return 0x0F; + default: + return 0xFF; + } +} + +typedef struct { + unsigned long used_memory; + + unsigned int uint_max; + unsigned long ulong_max; + + json_settings settings; + int first_pass; +} json_state; + +static void * +default_alloc(size_t size, int zero, void *user_data) +{ + return zero ? calloc(1, size) : ss_malloc(size); +} + +static void +default_free(void *ptr, void *user_data) +{ + ss_free(ptr); +} + +static void * +json_alloc(json_state *state, unsigned long size, int zero) +{ + if ((state->ulong_max - state->used_memory) < size) { + return 0; + } + + if (state->settings.max_memory + && (state->used_memory += size) > state->settings.max_memory) { + return 0; + } + + return state->settings.mem_alloc(size, zero, state->settings.user_data); +} + +static int +new_value(json_state *state, json_value **top, json_value **root, + json_value **alloc, json_type type) +{ + json_value *value; + int values_size; + + if (!state->first_pass) { + value = *top = *alloc; + *alloc = (*alloc)->_reserved.next_alloc; + + if (!*root) { + *root = value; + } + + switch (value->type) { + case json_array: + + if (!(value->u.array.values = (json_value **)json_alloc + (state, value->u.array.length * + sizeof(json_value *), 0))) { + return 0; + } + + value->u.array.length = 0; + break; + + case json_object: + + values_size = sizeof(*value->u.object.values) * + value->u.object.length; + + if (!((*(void **)&value->u.object.values) = json_alloc + (state, + values_size + + ((size_t)value->u. + object.values), + 0))) { + return 0; + } + + value->_reserved.object_mem = (*(char **)&value->u.object.values) + + values_size; + + value->u.object.length = 0; + break; + + case json_string: + + if (!(value->u.string.ptr = (json_char *)json_alloc + (state, + (value->u.string.length + + 1) * sizeof(json_char), 0))) { + return 0; + } + + value->u.string.length = 0; + break; + + default: + break; + } + + return 1; + } + + value = (json_value *)json_alloc(state, sizeof(json_value), 1); + + if (!value) { + return 0; + } + + if (!*root) { + *root = value; + } + + value->type = type; + value->parent = *top; + + if (*alloc) { + (*alloc)->_reserved.next_alloc = value; + } + + *alloc = *top = value; + + return 1; +} + +#define e_off \ + ((int)(i - cur_line_begin)) + +#define whitespace \ +case '\n': \ + ++cur_line; cur_line_begin = i; \ +case ' ': \ +case '\t': \ +case '\r' + +#define string_add(b) \ + do { if (!state.first_pass) { string[string_length] = b; \ + } ++string_length; } while (0) + +static const long + flag_next = 1 << 0, + flag_reproc = 1 << 1, + flag_need_comma = 1 << 2, + flag_seek_value = 1 << 3, + flag_escaped = 1 << 4, + flag_string = 1 << 5, + flag_need_colon = 1 << 6, + flag_done = 1 << 7, + flag_num_negative = 1 << 8, + flag_num_zero = 1 << 9, + flag_num_e = 1 << 10, + flag_num_e_got_sign = 1 << 11, + flag_num_e_negative = 1 << 12, + flag_line_comment = 1 << 13, + flag_block_comment = 1 << 14; + +json_value * +json_parse_ex(json_settings *settings, + const json_char *json, + size_t length, + char *error_buf) +{ + json_char error[json_error_max]; + int cur_line; + const json_char *cur_line_begin, *i, *end; + json_value *top, *root, *alloc = 0; + json_state state = { 0UL, 0U, 0UL, { 0UL, 0, NULL, NULL, NULL }, 0 }; + long flags; + long num_digits = 0, num_e = 0; + json_int_t num_fraction = 0; + + /* Skip UTF-8 BOM + */ + if (length >= 3 && ((unsigned char)json[0]) == 0xEF + && ((unsigned char)json[1]) == 0xBB + && ((unsigned char)json[2]) == 0xBF) { + json += 3; + length -= 3; + } + + error[0] = '\0'; + end = (json + length); + + memcpy(&state.settings, settings, sizeof(json_settings)); + + if (!state.settings.mem_alloc) { + state.settings.mem_alloc = default_alloc; + } + + if (!state.settings.mem_free) { + state.settings.mem_free = default_free; + } + + memset(&state.uint_max, 0xFF, sizeof(state.uint_max)); + memset(&state.ulong_max, 0xFF, sizeof(state.ulong_max)); + + state.uint_max -= 8; /* limit of how much can be added before next check */ + state.ulong_max -= 8; + + for (state.first_pass = 1; state.first_pass >= 0; --state.first_pass) { + json_uchar uchar; + unsigned char uc_b1, uc_b2, uc_b3, uc_b4; + json_char *string = 0; + unsigned int string_length = 0; + + top = root = 0; + flags = flag_seek_value; + + cur_line = 1; + cur_line_begin = json; + + for (i = json;; ++i) { + json_char b = (i == end ? 0 : *i); + + if (flags & flag_string) { + if (!b) { + sprintf(error, "Unexpected EOF in string (at %d:%d)", + cur_line, e_off); + goto e_failed; + } + + if (string_length > state.uint_max) { + goto e_overflow; + } + + if (flags & flag_escaped) { + flags &= ~flag_escaped; + + switch (b) { + case 'b': + string_add('\b'); + break; + case 'f': + string_add('\f'); + break; + case 'n': + string_add('\n'); + break; + case 'r': + string_add('\r'); + break; + case 't': + string_add('\t'); + break; + case 'u': + + if (end - i < 4 || + (uc_b1 = hex_value(*++i)) == 0xFF || + (uc_b2 = hex_value(*++i)) == 0xFF + || (uc_b3 = hex_value(*++i)) == 0xFF || + (uc_b4 = hex_value(*++i)) == 0xFF) { + sprintf(error, + "Invalid character value `%c` (at %d:%d)", + b, cur_line, e_off); + goto e_failed; + } + + uc_b1 = uc_b1 * 16 + uc_b2; + uc_b2 = uc_b3 * 16 + uc_b4; + + uchar = ((json_char)uc_b1) * 256 + uc_b2; + + if (sizeof(json_char) >= sizeof(json_uchar) || + (uc_b1 == 0 && uc_b2 <= 0x7F)) { + string_add((json_char)uchar); + break; + } + + if (uchar <= 0x7FF) { + if (state.first_pass) { + string_length += 2; + } else { + string[string_length++] = 0xC0 | + ((uc_b2 & + 0xC0) >> + 6) | + ((uc_b1 & 0x7) << 2); + string[string_length++] = 0x80 | + (uc_b2 & 0x3F); + } + + break; + } + + if (state.first_pass) { + string_length += 3; + } else { + string[string_length++] = 0xE0 | + ((uc_b1 & 0xF0) >> 4); + string[string_length++] = 0x80 | + ((uc_b1 & + 0xF) << + 2) | + ((uc_b2 & 0xC0) >> 6); + string[string_length++] = 0x80 | (uc_b2 & 0x3F); + } + + break; + + default: + string_add(b); + } + + continue; + } + + if (b == '\\') { + flags |= flag_escaped; + continue; + } + + if (b == '"') { + if (!state.first_pass) { + string[string_length] = 0; + } + + flags &= ~flag_string; + string = 0; + + switch (top->type) { + case json_string: + + top->u.string.length = string_length; + flags |= flag_next; + + break; + + case json_object: + + if (state.first_pass) { + (*(json_char **)&top->u.object.values) += + string_length + 1; + } else { + top->u.object.values[top->u.object.length].name + = (json_char *)top->_reserved.object_mem; + + top->u.object.values[top->u.object.length]. + name_length + = string_length; + + (*(json_char **)&top->_reserved.object_mem) += + string_length + 1; + } + + flags |= flag_seek_value | flag_need_colon; + continue; + + default: + break; + } + } else { + string_add(b); + continue; + } + } + + if (state.settings.settings & json_enable_comments) { + if (flags & (flag_line_comment | flag_block_comment)) { + if (flags & flag_line_comment) { + if (b == '\r' || b == '\n' || !b) { + flags &= ~flag_line_comment; + --i; /* so null can be reproc'd */ + } + + continue; + } + + if (flags & flag_block_comment) { + if (!b) { + sprintf(error, + "%d:%d: Unexpected EOF in block comment", + cur_line, e_off); + goto e_failed; + } + + if (b == '*' && i < (end - 1) && i[1] == '/') { + flags &= ~flag_block_comment; + ++i; /* skip closing sequence */ + } + + continue; + } + } else if (b == '/') { + if (!(flags & (flag_seek_value | flag_done)) && top->type != + json_object) { + sprintf(error, "%d:%d: Comment not allowed here", + cur_line, e_off); + goto e_failed; + } + + if (++i == end) { + sprintf(error, "%d:%d: EOF unexpected", cur_line, + e_off); + goto e_failed; + } + + switch (b = *i) { + case '/': + flags |= flag_line_comment; + continue; + + case '*': + flags |= flag_block_comment; + continue; + + default: + sprintf(error, + "%d:%d: Unexpected `%c` in comment opening sequence", cur_line, e_off, + b); + goto e_failed; + } + } + } + + if (flags & flag_done) { + if (!b) { + break; + } + + switch (b) { +whitespace: + continue; + + default: + sprintf(error, "%d:%d: Trailing garbage: `%c`", cur_line, + e_off, b); + goto e_failed; + } + } + + if (flags & flag_seek_value) { + switch (b) { +whitespace: + continue; + + case ']': + + if (top->type == json_array) { + flags = + (flags & + ~(flag_need_comma | flag_seek_value)) | flag_next; + } else { + sprintf(error, "%d:%d: Unexpected ]", cur_line, e_off); + goto e_failed; + } + + break; + + default: + + if (flags & flag_need_comma) { + if (b == ',') { + flags &= ~flag_need_comma; + continue; + } else { + sprintf(error, "%d:%d: Expected , before %c", + cur_line, e_off, b); + goto e_failed; + } + } + + if (flags & flag_need_colon) { + if (b == ':') { + flags &= ~flag_need_colon; + continue; + } else { + sprintf(error, "%d:%d: Expected : before %c", + cur_line, e_off, b); + goto e_failed; + } + } + + flags &= ~flag_seek_value; + + switch (b) { + case '{': + + if (!new_value(&state, &top, &root, &alloc, + json_object)) { + goto e_alloc_failure; + } + + continue; + + case '[': + + if (!new_value(&state, &top, &root, &alloc, + json_array)) { + goto e_alloc_failure; + } + + flags |= flag_seek_value; + continue; + + case '"': + + if (!new_value(&state, &top, &root, &alloc, + json_string)) { + goto e_alloc_failure; + } + + flags |= flag_string; + + string = top->u.string.ptr; + string_length = 0; + + continue; + + case 't': + + if ((end - i) < 3 || *(++i) != 'r' || *(++i) != 'u' || + *(++i) != 'e') { + goto e_unknown_value; + } + + if (!new_value(&state, &top, &root, &alloc, + json_boolean)) { + goto e_alloc_failure; + } + + top->u.boolean = 1; + + flags |= flag_next; + break; + + case 'f': + + if ((end - i) < 4 || *(++i) != 'a' || *(++i) != 'l' || + *(++i) != 's' || *(++i) != 'e') { + goto e_unknown_value; + } + + if (!new_value(&state, &top, &root, &alloc, + json_boolean)) { + goto e_alloc_failure; + } + + flags |= flag_next; + break; + + case 'n': + + if ((end - i) < 3 || *(++i) != 'u' || *(++i) != 'l' || + *(++i) != 'l') { + goto e_unknown_value; + } + + if (!new_value(&state, &top, &root, &alloc, + json_null)) { + goto e_alloc_failure; + } + + flags |= flag_next; + break; + + default: + + if (isdigit((uint8_t)b) || b == '-') { + if (!new_value(&state, &top, &root, &alloc, + json_integer)) { + goto e_alloc_failure; + } + + if (!state.first_pass) { + while (isdigit((uint8_t)b) || b == '+' || b == + '-' + || b == 'e' || b == 'E' || b == '.') { + if ((++i) == end) { + b = 0; + break; + } + + b = *i; + } + + flags |= flag_next | flag_reproc; + break; + } + + flags &= ~(flag_num_negative | flag_num_e | + flag_num_e_got_sign | + flag_num_e_negative | + flag_num_zero); + + num_digits = 0; + num_fraction = 0; + num_e = 0; + + if (b != '-') { + flags |= flag_reproc; + break; + } + + flags |= flag_num_negative; + continue; + } else { + sprintf(error, + "%d:%d: Unexpected %c when seeking value", + cur_line, e_off, b); + goto e_failed; + } + } + } + } else { + switch (top->type) { + case json_object: + + switch (b) { +whitespace: + continue; + + case '"': + + if (flags & flag_need_comma) { + sprintf(error, "%d:%d: Expected , before \"", + cur_line, e_off); + goto e_failed; + } + + flags |= flag_string; + + string = (json_char *)top->_reserved.object_mem; + string_length = 0; + + break; + + case '}': + + flags = (flags & ~flag_need_comma) | flag_next; + break; + + case ',': + + if (flags & flag_need_comma) { + flags &= ~flag_need_comma; + break; + } + + default: + + sprintf(error, "%d:%d: Unexpected `%c` in object", + cur_line, e_off, b); + goto e_failed; + } + + break; + + case json_integer: + case json_double: + + if (isdigit((uint8_t)b)) { + ++num_digits; + + if (top->type == json_integer || flags & flag_num_e) { + if (!(flags & flag_num_e)) { + if (flags & flag_num_zero) { + sprintf(error, + "%d:%d: Unexpected `0` before `%c`", + cur_line, e_off, b); + goto e_failed; + } + + if (num_digits == 1 && b == '0') { + flags |= flag_num_zero; + } + } else { + flags |= flag_num_e_got_sign; + num_e = (num_e * 10) + (b - '0'); + continue; + } + + top->u.integer = (top->u.integer * 10) + (b - '0'); + continue; + } + + num_fraction = (num_fraction * 10) + (b - '0'); + continue; + } + + if (b == '+' || b == '-') { + if ((flags & flag_num_e) && + !(flags & flag_num_e_got_sign)) { + flags |= flag_num_e_got_sign; + + if (b == '-') { + flags |= flag_num_e_negative; + } + + continue; + } + } else if (b == '.' && top->type == json_integer) { + if (!num_digits) { + sprintf(error, "%d:%d: Expected digit before `.`", + cur_line, e_off); + goto e_failed; + } + + top->type = json_double; + top->u.dbl = (double)top->u.integer; + + num_digits = 0; + continue; + } + + if (!(flags & flag_num_e)) { + if (top->type == json_double) { + if (!num_digits) { + sprintf(error, + "%d:%d: Expected digit after `.`", + cur_line, e_off); + goto e_failed; + } + + top->u.dbl += ((double)num_fraction) / + (pow(10, (double)num_digits)); + } + + if (b == 'e' || b == 'E') { + flags |= flag_num_e; + + if (top->type == json_integer) { + top->type = json_double; + top->u.dbl = (double)top->u.integer; + } + + num_digits = 0; + flags &= ~flag_num_zero; + + continue; + } + } else { + if (!num_digits) { + sprintf(error, "%d:%d: Expected digit after `e`", + cur_line, e_off); + goto e_failed; + } + + top->u.dbl *= + pow(10, + (double)((flags & + flag_num_e_negative) ? -num_e : num_e)); + } + + if (flags & flag_num_negative) { + if (top->type == json_integer) { + top->u.integer = -top->u.integer; + } else { + top->u.dbl = -top->u.dbl; + } + } + + flags |= flag_next | flag_reproc; + break; + + default: + break; + } + } + + if (flags & flag_reproc) { + flags &= ~flag_reproc; + --i; + } + + if (flags & flag_next) { + flags = (flags & ~flag_next) | flag_need_comma; + + if (!top->parent) { + /* root value done */ + + flags |= flag_done; + continue; + } + + if (top->parent->type == json_array) { + flags |= flag_seek_value; + } + + if (!state.first_pass) { + json_value *parent = top->parent; + + switch (parent->type) { + case json_object: + + parent->u.object.values + [parent->u.object.length].value = top; + + break; + + case json_array: + + parent->u.array.values + [parent->u.array.length] = top; + + break; + + default: + break; + } + } + + if ((++top->parent->u.array.length) > state.uint_max) { + goto e_overflow; + } + + top = top->parent; + + continue; + } + } + + alloc = root; + } + + return root; + +e_unknown_value: + + sprintf(error, "%d:%d: Unknown value", cur_line, e_off); + goto e_failed; + +e_alloc_failure: + + strcpy(error, "Memory allocation failure"); + goto e_failed; + +e_overflow: + + sprintf(error, "%d:%d: Too long (caught overflow)", cur_line, e_off); + goto e_failed; + +e_failed: + + if (error_buf) { + if (*error) { + strcpy(error_buf, error); + } else { + strcpy(error_buf, "Unknown error"); + } + } + + if (state.first_pass) { + alloc = root; + } + + while (alloc) { + top = alloc->_reserved.next_alloc; + state.settings.mem_free(alloc, state.settings.user_data); + alloc = top; + } + + if (!state.first_pass) { + json_value_free_ex(&state.settings, root); + } + + return 0; +} + +json_value * +json_parse(const json_char *json, size_t length) +{ + json_settings settings = { 0UL, 0, NULL, NULL, NULL }; + return json_parse_ex(&settings, json, length, 0); +} + +void +json_value_free_ex(json_settings *settings, json_value *value) +{ + json_value *cur_value; + + if (!value) { + return; + } + + value->parent = 0; + + while (value) { + switch (value->type) { + case json_array: + + if (!value->u.array.length) { + settings->mem_free(value->u.array.values, settings->user_data); + break; + } + + value = value->u.array.values[--value->u.array.length]; + continue; + + case json_object: + + if (!value->u.object.length) { + settings->mem_free(value->u.object.values, settings->user_data); + break; + } + + value = value->u.object.values[--value->u.object.length].value; + continue; + + case json_string: + + settings->mem_free(value->u.string.ptr, settings->user_data); + break; + + default: + break; + } + + cur_value = value; + value = value->parent; + settings->mem_free(cur_value, settings->user_data); + } +} + +void +json_value_free(json_value *value) +{ + json_settings settings = { 0UL, 0, NULL, NULL, NULL }; + settings.mem_free = default_free; + json_value_free_ex(&settings, value); +} diff --git a/shadowsocksr-libev/src/server/json.h b/shadowsocksr-libev/src/server/json.h new file mode 100644 index 000000000..016fc5a77 --- /dev/null +++ b/shadowsocksr-libev/src/server/json.h @@ -0,0 +1,249 @@ +/* vim: set et ts=3 sw=3 sts=3 ft=c: + * + * Copyright (C) 2012, 2013, 2014 James McLaughlin et al. All rights reserved. + * https://github.com/udp/json-parser + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _JSON_H +#define _JSON_H + +#ifndef json_char +#define json_char char +#endif + +#ifndef json_int_t +#ifndef _MSC_VER +#include +#define json_int_t int64_t +#else +#define json_int_t __int64 +#endif +#endif + +#include + +#ifdef __cplusplus + +#include + +extern "C" +{ +#endif + +typedef struct { + unsigned long max_memory; + int settings; + + /* Custom allocator support (leave null to use malloc/free) + */ + + void * (*mem_alloc)(size_t, int zero, void *user_data); + void (*mem_free)(void *, void *user_data); + + void *user_data; /* will be passed to mem_alloc and mem_free */ +} json_settings; + +#define json_enable_comments 0x01 + +typedef enum { + json_none, + json_object, + json_array, + json_integer, + json_double, + json_string, + json_boolean, + json_null +} json_type; + +extern const struct _json_value json_value_none; + +typedef struct _json_value { + struct _json_value *parent; + + json_type type; + + union { + int boolean; + json_int_t integer; + double dbl; + + struct { + unsigned int length; + json_char *ptr; /* null terminated */ + } string; + + struct { + unsigned int length; + + struct { + json_char *name; + unsigned int name_length; + + struct _json_value *value; + } *values; + +#if defined(__cplusplus) && __cplusplus >= 201103L + decltype(values) begin() const + { + return values; + } + decltype(values) end() const + { + return values + length; + } +#endif + } object; + + struct { + unsigned int length; + struct _json_value **values; + +#if defined(__cplusplus) && __cplusplus >= 201103L + decltype(values) begin() const + { + return values; + } + decltype(values) end() const + { + return values + length; + } +#endif + } array; + } u; + + union { + struct _json_value *next_alloc; + void *object_mem; + } _reserved; + + /* Some C++ operator sugar */ + +#ifdef __cplusplus + +public: + + inline _json_value(){ + memset(this, 0, sizeof(_json_value)); + } + + inline const struct _json_value &operator [] (int index) const { + if (type != json_array || index < 0 + || ((unsigned int)index) >= u.array.length) { + return json_value_none; + } + + return *u.array.values[index]; + } + + inline const struct _json_value &operator [] (const char *index) const { + if (type != json_object) { + return json_value_none; + } + + for (unsigned int i = 0; i < u.object.length; ++i) + if (!strcmp(u.object.values[i].name, index)) { + return *u.object.values[i].value; + } + + return json_value_none; + } + + inline operator const char * () const + { + switch (type) { + case json_string: + return u.string.ptr; + + default: + return ""; + } + } + + inline operator + json_int_t() const + { + switch (type) { + case json_integer: + return u.integer; + + case json_double: + return (json_int_t)u.dbl; + + default: + return 0; + } + } + + inline operator + bool() const + { + if (type != json_boolean) { + return false; + } + + return u.boolean != 0; + } + + inline operator double () const + { + switch (type) { + case json_integer: + return (double)u.integer; + + case json_double: + return u.dbl; + + default: + return 0; + } + } + +#endif +} json_value; + +json_value *json_parse(const json_char *json, + size_t length); + +#define json_error_max 128 +json_value *json_parse_ex(json_settings *settings, + const json_char *json, + size_t length, + char *error); + +void json_value_free(json_value *); + +/* Not usually necessary, unless you used a custom mem_alloc and now want to + * use a custom mem_free. + */ +void json_value_free_ex(json_settings *settings, + json_value *); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif diff --git a/shadowsocksr-libev/src/server/list.c b/shadowsocksr-libev/src/server/list.c new file mode 100644 index 000000000..dde085d84 --- /dev/null +++ b/shadowsocksr-libev/src/server/list.c @@ -0,0 +1,370 @@ +#include "list.h" + +/// 文件:list_impl.c +/// 功能:实现链表的基本操作 +/// 作者:bluewind +/// 完成时间:2011.5.29 +/// 修改时间:2011.5.31, 2011.7.2 +/// 修改备注:在头节点处添加一个空节点,可以优化添加、删除节点代码 +/// 再次修改,链表增加节点数据data_size,限制数据大小,修改了 +/// 添加复制数据代码,修正重复添加节点后释放节点的Bug,添加了前 +/// 插、排序和遍历功能,7.3 添加tail尾指针,改进后插法性能,并改名 +/// -------------------------------------------------------------- + +void swap_data(Node n1, Node n2); + +/// -------------------------------------------------------------- +// 函数名:list_init +// 功能: 链表初始化 +// 参数: 无 +// 返回值:已初始化链表指针 +// 备注: 链表本身动态分配,由list_destroy函数管理释放 +/// -------------------------------------------------------------- +List list_init(unsigned int data_size) +{ + List list = (List) malloc(sizeof(struct clist)); + if(list != NULL) //内存分配成功 + { + list->head = (Node) malloc(sizeof(node)); //为头节点分配内存 + if(list->head) //内存分配成功 + { + list->head->data = NULL; //初始化头节点 + list->head->next = NULL; + list->data_size = data_size; + list->tail = list->head; + list->size = 0; + + list->add_back = list_add_back; //初始化成员函数 + list->add_front = list_add_front; + list->delete_node = list_delete_node; + list->delete_at = list_delete_at; + list->modify_at = list_modify_at; + list->have_same = list_have_same; + list->have_same_cmp = list_have_same_cmp; + list->foreach = list_foreach; + list->clear = list_clear; + list->sort = list_sort; + list->destroy = list_destroy; + } + } + return list; +} + +/// -------------------------------------------------------------- +// 函数名:list_add_back +// 功能: 添加链表结点 (后插法) +// 参数: l--链表指针,data--链表数据指针,可为任意类型 +// 返回值:int型,为1表示添加成功,为0表示添加失败 +// 备注: 如果链表本身为空或是分配节点内存失败,将返回0 +/// -------------------------------------------------------------- +int list_add_back(List l, void *data) +{ + Node new_node = (Node) malloc(sizeof(node)); + + if(l != NULL && new_node != NULL) //链表本身不为空,且内存申请成功 + { + new_node->data = malloc(l->data_size); + memcpy(new_node->data, data, l->data_size); + new_node->next = NULL; + + l->tail->next = new_node; //添加节点 + l->tail = new_node; //记录尾节点位置 + l->size ++; //链表元素总数加1 + + return 1; + } + + return 0; +} + +/// -------------------------------------------------------------- +// 函数名:list_add_front +// 功能: 添加链表结点 (前插法) +// 参数: l--链表指针,data--链表数据指针,可为任意类型 +// 返回值:int型,为1表示添加成功,为0表示添加失败 +// 备注: 如果链表本身为空或是分配节点内存失败,将返回0 +/// -------------------------------------------------------------- +int list_add_front(List l, void *data) +{ + Node new_node = (Node) malloc(sizeof(node)); + + if(l != NULL && new_node != NULL) + { + new_node->data = malloc(l->data_size); + memcpy(new_node->data, data, l->data_size); + new_node->next = l->head->next; + + l->head->next = new_node; + if(!l->size) //记录尾指针位置 + l->tail = new_node; + l->size ++; + + return 1; + } + + return 0; +} + +/// -------------------------------------------------------------- +// 函数名:list_delete_node +// 功能:删除链表结点 +// 参数:l--链表指针,data--链表数据指针,可为任意类型 +// *pfunc为指向一个数据类型比较的函数指针 +// 返回值:int型,为1表示删除成功,为0表示没有找到匹配数据 +// 备注:*pfunc函数接口参数ndata为节点数据,data为比较数据,返回为真表示匹配数据 +/// -------------------------------------------------------------- +int list_delete_node(List l, void *data, int (*pfunc)(void *ndata, void *data)) +{ + if(l != NULL) + { + Node prev = l->head; //前一个节点 + Node curr = l->head->next; //当前节点 + + while(curr != NULL) + { + if(pfunc(curr->data, data)) //如果找到匹配数据 + { + if(curr == l->tail) //如果是删除尾节点 + l->tail = prev; + + prev->next = prev->next->next; //修改前节点next指针指向下下个节点 + + free(curr->data); //释放节点数据 + free(curr); //释放节点 + + l->size--; //链表元素总数减1 + return 1; //返回真值 + } + prev = prev->next; //没有找到匹配时移动前节点和当前节点 + curr = curr->next; + } + } + + return 0; //没有找到匹配数据 +} + +/// -------------------------------------------------------------- +// 函数名:list_delete_at +// 功能: 修改链表节点元素值 +// 参数: l--链表指针,index--索引值, 范围(0 -- size-1) +// 返回值:int型,为1表示删除成功,为0表示删除失败 +// 备注: 如果链表本身为空或是index为非法值,将返回0 +/// -------------------------------------------------------------- +int list_delete_at(List l, unsigned int index) +{ + unsigned int cindex = 0; + + if(l != NULL && index >= 0 && index < l->size) + { + Node prev = l->head; //前一个节点 + Node curr = l->head->next; //当前节点 + + while(cindex != index) + { + prev = prev->next; + curr = curr->next; + cindex ++; + } + + if(index == (l->size) - 1) + l->tail = prev; + + prev->next = prev->next->next; + free(curr->data); + free(curr); + l->size --; + + return 1; + } + + return 0; +} + +/// -------------------------------------------------------------- +// 函数名:list_modify_at +// 功能: 修改链表节点元素值 +// 参数: l--链表指针,index--索引值, 范围(0 -- size-1) +// data--链表数据指针 +// 返回值:int型,为1表示修改成功,为0表示修改失败 +// 备注: 如果链表本身为空或是index为非法值,将返回0 +/// -------------------------------------------------------------- +int list_modify_at(List l, unsigned int index, void *new_data) +{ + unsigned int cindex = 0; + + if(l != NULL && index >= 0 && index < l->size ) //非空链表,并且index值合法 + { + Node curr = l->head->next; + while(cindex != index) + { + curr = curr->next; + cindex ++; + } + memcpy(curr->data, new_data, l->data_size); + return 1; + } + + return 0; +} + +/// -------------------------------------------------------------- +// 函数名:list_sort +// 功能: 链表排序 +// 参数: l--链表指针,*pfunc为指向一个数据类型比较的函数指针 +// 返回值:无 +// 备注: 使用简单选择排序法,相比冒泡法每次交换,效率高一点 +/// -------------------------------------------------------------- +void list_sort(List l, compare pfunc) +{ + if(l != NULL) + { + Node min, icurr, jcurr; + + icurr = l->head->next; + while(icurr) + { + min = icurr; //记录最小值 + jcurr = icurr->next; //内循环指向下一个节点 + while(jcurr) + { + if(pfunc(min->data, jcurr->data)) //如果找到n+1到最后一个元素最小值 + min = jcurr; //记录下最小值的位置 + + jcurr = jcurr->next; + } + + if(min != icurr) //当最小值位置和n+1元素位置不相同时 + { + swap_data(min, icurr); //才进行交换,减少交换次数 + } + + icurr = icurr->next; + } + } +} + +void swap_data(Node n1, Node n2) +{ + void *temp; + + temp = n2->data; + n2->data = n1->data; + n1->data = temp; +} + + +int list_have_same(List l, void *data, int (*pfunc)(void *ndata, void *data)) +{ + if(l != NULL) + { + Node curr; + + for(curr = l->head->next; curr != NULL; curr = curr->next) + { + if(pfunc(curr->data, data)) + { + return 1; + } + } + } + + return 0; +} + +int list_have_same_cmp(List l, void *data) +{ + if(l != NULL) + { + Node curr; + + for(curr = l->head->next; curr != NULL; curr = curr->next) + { + if(memcmp(curr->data, data, l->data_size)) + { + return 1; + } + } + } + + return 0; +} + +/// -------------------------------------------------------------- +// 函数名:list_foreach +// 功能: 遍历链表元素 +// 参数: l--链表指针,doit为指向一个处理数据的函数指针 +// 返回值:无 +// 备注: doit申明为void (*dofunc)(void *ndata)原型 +/// -------------------------------------------------------------- +void list_foreach(List l, dofunc doit) +{ + if(l != NULL) + { + Node curr; + + for(curr = l->head->next; curr != NULL; curr = curr->next) + { + doit(curr->data); + } + } +} + +/// -------------------------------------------------------------- +// 函数名:list_clear +// 功能: 清空链表元素 +// 参数: l--链表指针 +// 返回值:无 +// 备注: 没有使用先Destroy再Init链表的办法,直接实现 +/// -------------------------------------------------------------- +void list_clear(List l) +{ + if(l != NULL) + { + Node temp; + Node curr = l->head->next; + + while(curr != NULL) + { + temp = curr->next; + + free(curr->data); //释放节点和数据 + free(curr); + + curr = temp; + } + + l->size = 0; //重置链表数据 + l->head->next = NULL; + l->tail = l->head; + } +} + +/// -------------------------------------------------------------- +// 函数名:list_destroy +// 功能: 释放链表 +// 参数: l--链表指针 +// 返回值:空链表指针 +/// -------------------------------------------------------------- +List list_destroy(List l) +{ + if(l != NULL) + { + Node temp; + + while(l->head) + { + temp = l->head->next; + + if(l->head->data != NULL) //如果是头节点就不释放数据空间 + free(l->head->data); //先释放节点数据(但是节点数据里也有指针?) + free(l->head); //再释放节点 + + l->head = temp; + } + + free(l); //释放链表本身占用空间 + l = NULL; + } + + return l; +} diff --git a/shadowsocksr-libev/src/server/list.h b/shadowsocksr-libev/src/server/list.h new file mode 100644 index 000000000..ab49720a2 --- /dev/null +++ b/shadowsocksr-libev/src/server/list.h @@ -0,0 +1,61 @@ +#ifndef LIST_H_H +#define LIST_H_H + +#include +#include +#include + +typedef struct clist *List; + +typedef int (*compare)(void *ndata, void *data); +typedef void (*dofunc)(void *ndata); + +typedef int (*lpf0)(List l, void *data); +typedef int (*lpf1)(List l, void *data, compare pfunc); +typedef List (*lpf2)(List l); +typedef void (*lpf3)(List l); +typedef void (*lpf4)(List l, dofunc pfunc); +typedef int (*lpf5)(List l, unsigned int index, void *new_data); +typedef void (*lpf6)(List l, compare pfunc); +typedef int (*lpf7)(List l, unsigned int index); + +typedef struct cnode +{ + void *data; + struct cnode *next; +}node, *Node; + +typedef struct clist +{ + Node head; + Node tail; + unsigned int size; + unsigned int data_size; + lpf0 add_back; + lpf0 add_front; + lpf1 delete_node; + lpf1 have_same; + lpf0 have_same_cmp; + lpf4 foreach; + lpf3 clear; + lpf2 destroy; + lpf5 modify_at; + lpf6 sort; + lpf7 delete_at; +}list; + +//初始化链表 +List list_init(unsigned int data_size); +int list_add_back(List l, void *data); +int list_add_front(List l, void *data); +int list_delete_node(List l, void *data, compare pfunc); +int list_delete_at(List l, unsigned int index); +int list_modify_at(List l, unsigned int index, void *new_data); +int list_have_same(List l, void *data, compare pfunc); +int list_have_same_cmp(List l, void *data); +void list_foreach(List l, dofunc doit); +void list_sort(List l, compare pfunc); +void list_clear(List l); +//释放链表 +List list_destroy(List l); +#endif diff --git a/shadowsocksr-libev/src/server/netutils.c b/shadowsocksr-libev/src/server/netutils.c new file mode 100644 index 000000000..3a32b4d0d --- /dev/null +++ b/shadowsocksr-libev/src/server/netutils.c @@ -0,0 +1,297 @@ +/* + * netutils.c - Network utilities + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#include + +#include +#include + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifdef __MINGW32__ +#include "win32.h" +#define sleep(n) Sleep(1000 * (n)) +#else +#include +#include +#include +#include +#endif + +#if defined(HAVE_SYS_IOCTL_H) && defined(HAVE_NET_IF_H) && defined(__linux__) +#include +#include +#define SET_INTERFACE +#endif + +#include "netutils.h" +#include "utils.h" + +#ifndef SO_REUSEPORT +#define SO_REUSEPORT 15 +#endif + +extern int verbose; + +static const char valid_label_bytes[] = + "-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"; + +#if defined(MODULE_LOCAL) +extern int keep_resolving; +#endif + +int +set_reuseport(int socket) +{ + int opt = 1; + return setsockopt(socket, SOL_SOCKET, SO_REUSEPORT, &opt, sizeof(opt)); +} + +size_t +get_sockaddr_len(struct sockaddr *addr) +{ + if (addr->sa_family == AF_INET) { + return sizeof(struct sockaddr_in); + } else if (addr->sa_family == AF_INET6) { + return sizeof(struct sockaddr_in6); + } + return 0; +} + +#ifdef SET_INTERFACE +int +setinterface(int socket_fd, const char *interface_name) +{ + struct ifreq interface; + memset(&interface, 0, sizeof(struct ifreq)); + strncpy(interface.ifr_name, interface_name, IFNAMSIZ); + int res = setsockopt(socket_fd, SOL_SOCKET, SO_BINDTODEVICE, &interface, + sizeof(struct ifreq)); + return res; +} + +#endif + +int +bind_to_address(int socket_fd, const char *host) +{ + if (host != NULL) { + struct cork_ip ip; + struct sockaddr_storage storage; + memset(&storage, 0, sizeof(struct sockaddr_storage)); + if (cork_ip_init(&ip, host) != -1) { + if (ip.version == 4) { + struct sockaddr_in *addr = (struct sockaddr_in *)&storage; + dns_pton(AF_INET, host, &addr->sin_addr); + addr->sin_family = AF_INET; + return bind(socket_fd, (struct sockaddr *)addr, sizeof(struct sockaddr_in)); + } else if (ip.version == 6) { + struct sockaddr_in6 *addr = (struct sockaddr_in6 *)&storage; + dns_pton(AF_INET6, host, &addr->sin6_addr); + addr->sin6_family = AF_INET6; + return bind(socket_fd, (struct sockaddr *)addr, sizeof(struct sockaddr_in6)); + } + } + } + return -1; +} + +ssize_t +get_sockaddr(char *host, char *port, + struct sockaddr_storage *storage, int block, + int ipv6first) +{ + struct cork_ip ip; + if (cork_ip_init(&ip, host) != -1) { + if (ip.version == 4) { + struct sockaddr_in *addr = (struct sockaddr_in *)storage; + addr->sin_family = AF_INET; + dns_pton(AF_INET, host, &(addr->sin_addr)); + if (port != NULL) { + addr->sin_port = htons(atoi(port)); + } + } else if (ip.version == 6) { + struct sockaddr_in6 *addr = (struct sockaddr_in6 *)storage; + addr->sin6_family = AF_INET6; + dns_pton(AF_INET6, host, &(addr->sin6_addr)); + if (port != NULL) { + addr->sin6_port = htons(atoi(port)); + } + } + return 0; + } else { + struct addrinfo hints; + struct addrinfo *result, *rp; + + memset(&hints, 0, sizeof(struct addrinfo)); + hints.ai_family = AF_UNSPEC; /* Return IPv4 and IPv6 choices */ + hints.ai_socktype = SOCK_STREAM; /* We want a TCP socket */ + + int err, i; + + for (i = 1; i < 8; i++) { + err = getaddrinfo(host, port, &hints, &result); +#if defined(MODULE_LOCAL) + if (!keep_resolving) + break; +#endif + if ((!block || !err)) { + break; + } else { + sleep(pow(2, i)); + LOGE("failed to resolve server name, wait %.0f seconds", pow(2, i)); + } + } + + if (err != 0) { + LOGE("getaddrinfo: %s", gai_strerror(err)); + return -1; + } + + int prefer_af = ipv6first ? AF_INET6 : AF_INET; + for (rp = result; rp != NULL; rp = rp->ai_next) + if (rp->ai_family == prefer_af) { + if (rp->ai_family == AF_INET) + memcpy(storage, rp->ai_addr, sizeof(struct sockaddr_in)); + else if (rp->ai_family == AF_INET6) + memcpy(storage, rp->ai_addr, sizeof(struct sockaddr_in6)); + break; + } + + if (rp == NULL) { + for (rp = result; rp != NULL; rp = rp->ai_next) { + if (rp->ai_family == AF_INET) + memcpy(storage, rp->ai_addr, sizeof(struct sockaddr_in)); + else if (rp->ai_family == AF_INET6) + memcpy(storage, rp->ai_addr, sizeof(struct sockaddr_in6)); + break; + } + } + + if (rp == NULL) { + LOGE("failed to resolve remote addr"); + return -1; + } + + freeaddrinfo(result); + return 0; + } + + return -1; +} + +int +sockaddr_cmp(struct sockaddr_storage *addr1, + struct sockaddr_storage *addr2, socklen_t len) +{ + struct sockaddr_in *p1_in = (struct sockaddr_in *)addr1; + struct sockaddr_in *p2_in = (struct sockaddr_in *)addr2; + struct sockaddr_in6 *p1_in6 = (struct sockaddr_in6 *)addr1; + struct sockaddr_in6 *p2_in6 = (struct sockaddr_in6 *)addr2; + if (p1_in->sin_family < p2_in->sin_family) + return -1; + if (p1_in->sin_family > p2_in->sin_family) + return 1; + /* compare ip4 */ + if (p1_in->sin_family == AF_INET) { + /* just order it, ntohs not required */ + if (p1_in->sin_port < p2_in->sin_port) + return -1; + if (p1_in->sin_port > p2_in->sin_port) + return 1; + return memcmp(&p1_in->sin_addr, &p2_in->sin_addr, INET_SIZE); + } else if (p1_in6->sin6_family == AF_INET6) { + /* just order it, ntohs not required */ + if (p1_in6->sin6_port < p2_in6->sin6_port) + return -1; + if (p1_in6->sin6_port > p2_in6->sin6_port) + return 1; + return memcmp(&p1_in6->sin6_addr, &p2_in6->sin6_addr, + INET6_SIZE); + } else { + /* eek unknown type, perform this comparison for sanity. */ + return memcmp(addr1, addr2, len); + } +} + +int +sockaddr_cmp_addr(struct sockaddr_storage *addr1, + struct sockaddr_storage *addr2, socklen_t len) +{ + struct sockaddr_in *p1_in = (struct sockaddr_in *)addr1; + struct sockaddr_in *p2_in = (struct sockaddr_in *)addr2; + struct sockaddr_in6 *p1_in6 = (struct sockaddr_in6 *)addr1; + struct sockaddr_in6 *p2_in6 = (struct sockaddr_in6 *)addr2; + if (p1_in->sin_family < p2_in->sin_family) + return -1; + if (p1_in->sin_family > p2_in->sin_family) + return 1; + /* compare ip4 */ + if (p1_in->sin_family == AF_INET) { + return memcmp(&p1_in->sin_addr, &p2_in->sin_addr, INET_SIZE); + } else if (p1_in6->sin6_family == AF_INET6) { + return memcmp(&p1_in6->sin6_addr, &p2_in6->sin6_addr, + INET6_SIZE); + } else { + /* eek unknown type, perform this comparison for sanity. */ + return memcmp(addr1, addr2, len); + } +} + +int +validate_hostname(const char *hostname, const int hostname_len) +{ + if (hostname == NULL) + return 0; + + if (hostname_len < 1 || hostname_len > 255) + return 0; + + if (hostname[0] == '.') + return 0; + + const char *label = hostname; + while (label < hostname + hostname_len) { + size_t label_len = hostname_len - (label - hostname); + char *next_dot = strchr(label, '.'); + if (next_dot != NULL) + label_len = next_dot - label; + + if (label + label_len > hostname + hostname_len) + return 0; + + if (label_len > 63 || label_len < 1) + return 0; + + if (label[0] == '-' || label[label_len - 1] == '-') + return 0; + + if (strspn(label, valid_label_bytes) < label_len) + return 0; + + label += label_len + 1; + } + + return 1; +} diff --git a/shadowsocksr-libev/src/server/netutils.h b/shadowsocksr-libev/src/server/netutils.h new file mode 100644 index 000000000..07255923e --- /dev/null +++ b/shadowsocksr-libev/src/server/netutils.h @@ -0,0 +1,98 @@ +/* + * netutils.h - Network utilities + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#ifndef _NETUTILS_H +#define _NETUTILS_H + +#if defined(__linux__) +#include +#elif !defined(__MINGW32__) +#include +#endif + +// only enable TCP_FASTOPEN on linux +#if defined(__linux__) +#include +/* conditional define for TCP_FASTOPEN */ +#ifndef TCP_FASTOPEN +#define TCP_FASTOPEN 23 +#endif +/* conditional define for MSG_FASTOPEN */ +#ifndef MSG_FASTOPEN +#define MSG_FASTOPEN 0x20000000 +#endif +#elif !defined(__APPLE__) +#ifdef TCP_FASTOPEN +#undef TCP_FASTOPEN +#endif +#endif + +/* Backward compatibility for MPTCP_ENABLED between kernel 3 & 4 */ +#ifndef MPTCP_ENABLED +#ifdef TCP_CC_INFO +#define MPTCP_ENABLED 42 +#else +#define MPTCP_ENABLED 26 +#endif +#endif + +/** byte size of ip4 address */ +#define INET_SIZE 4 +/** byte size of ip6 address */ +#define INET6_SIZE 16 + +size_t get_sockaddr_len(struct sockaddr *addr); +ssize_t get_sockaddr(char *host, char *port, + struct sockaddr_storage *storage, int block, + int ipv6first); +int set_reuseport(int socket); + +#ifdef SET_INTERFACE +int setinterface(int socket_fd, const char *interface_name); +#endif + +int bind_to_address(int socket_fd, const char *address); + +/** + * Compare two sockaddrs. Imposes an ordering on the addresses. + * Compares address and port. + * @param addr1: address 1. + * @param addr2: address 2. + * @param len: lengths of addr. + * @return: 0 if addr1 == addr2. -1 if addr1 is smaller, +1 if larger. + */ +int sockaddr_cmp(struct sockaddr_storage *addr1, + struct sockaddr_storage *addr2, socklen_t len); + +/** + * Compare two sockaddrs. Compares address, not the port. + * @param addr1: address 1. + * @param addr2: address 2. + * @param len: lengths of addr. + * @return: 0 if addr1 == addr2. -1 if addr1 is smaller, +1 if larger. + */ +int sockaddr_cmp_addr(struct sockaddr_storage *addr1, + struct sockaddr_storage *addr2, socklen_t len); + +int validate_hostname(const char *hostname, const int hostname_len); + +#endif diff --git a/shadowsocksr-libev/src/server/obfs.c b/shadowsocksr-libev/src/server/obfs.c new file mode 100644 index 000000000..5c885bfef --- /dev/null +++ b/shadowsocksr-libev/src/server/obfs.c @@ -0,0 +1,205 @@ +#include +#include + +#include "utils.h" +#include "obfs.h" + +int rand_bytes(uint8_t *output, int len); +#define OBFS_HMAC_SHA1_LEN 10 + +#include "obfsutil.c" +#include "crc32.c" +#include "base64.c" +#include "http_simple.c" +#include "tls1.2_ticket.c" +#include "verify.c" +#include "auth.c" + +void * init_data() { + return malloc(1); +} + +obfs * new_obfs() { + obfs * self = (obfs*)malloc(sizeof(obfs)); + self->l_data = NULL; + return self; +} + +void set_server_info(obfs *self, server_info *server) { + memmove(&self->server, server, sizeof(server_info)); +} + +void get_server_info(obfs *self, server_info *server) { + memmove(server, &self->server, sizeof(server_info)); +} + +void dispose_obfs(obfs *self) { + free(self); +} + +obfs_class * new_obfs_class(char *plugin_name) +{ + if (plugin_name == NULL) + return NULL; + if (strcmp(plugin_name, "origin") == 0) + return NULL; + if (strcmp(plugin_name, "plain") == 0) + return NULL; + init_crc32_table(); + init_shift128plus(); + if (strcmp(plugin_name, "http_simple") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = init_data; + plugin->new_obfs = http_simple_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = http_simple_dispose; + + plugin->client_encode = http_simple_client_encode; + plugin->client_decode = http_simple_client_decode; + + plugin->server_encode = http_simple_server_encode; + plugin->server_decode = http_simple_server_decode; + + return plugin; + } else if (strcmp(plugin_name, "http_post") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = init_data; + plugin->new_obfs = http_simple_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = http_simple_dispose; + + plugin->client_encode = http_post_client_encode; + plugin->client_decode = http_simple_client_decode; + + plugin->server_encode = http_simple_server_encode; + plugin->server_decode = http_simple_server_decode; + + return plugin; + } else if (strcmp(plugin_name, "tls1.2_ticket_auth") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = tls12_ticket_auth_init_data; + plugin->new_obfs = tls12_ticket_auth_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = tls12_ticket_auth_dispose; + + plugin->client_encode = tls12_ticket_auth_client_encode; + plugin->client_decode = tls12_ticket_auth_client_decode; + + plugin->server_encode = tls12_ticket_auth_server_encode; + plugin->server_decode = tls12_ticket_auth_server_decode; + + return plugin; + } else if (strcmp(plugin_name, "verify_simple") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = init_data; + plugin->new_obfs = verify_simple_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = verify_simple_dispose; + + plugin->client_pre_encrypt = verify_simple_client_pre_encrypt; + plugin->client_post_decrypt = verify_simple_client_post_decrypt; + plugin->client_udp_pre_encrypt = NULL; + plugin->client_udp_post_decrypt = NULL; + + plugin->server_pre_encrypt = verify_simple_server_pre_encrypt; + plugin->server_post_decrypt = verify_simple_server_post_decrypt; + plugin->server_udp_pre_encrypt = NULL; + plugin->server_udp_post_decrypt = NULL; + + return plugin; + } else if (strcmp(plugin_name, "auth_simple") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = auth_simple_init_data; + plugin->new_obfs = auth_simple_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = auth_simple_dispose; + + plugin->client_pre_encrypt = auth_simple_client_pre_encrypt; + plugin->client_post_decrypt = auth_simple_client_post_decrypt; + plugin->client_udp_pre_encrypt = NULL; + plugin->client_udp_post_decrypt = NULL; + + return plugin; + } else if (strcmp(plugin_name, "auth_sha1") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = auth_simple_init_data; + plugin->new_obfs = auth_simple_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = auth_simple_dispose; + + plugin->client_pre_encrypt = auth_sha1_client_pre_encrypt; + plugin->client_post_decrypt = auth_sha1_client_post_decrypt; + plugin->client_udp_pre_encrypt = NULL; + plugin->client_udp_post_decrypt = NULL; + + return plugin; + } else if (strcmp(plugin_name, "auth_sha1_v2") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = auth_simple_init_data; + plugin->new_obfs = auth_simple_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = auth_simple_dispose; + + plugin->client_pre_encrypt = auth_sha1_v2_client_pre_encrypt; + plugin->client_post_decrypt = auth_sha1_v2_client_post_decrypt; + plugin->client_udp_pre_encrypt = NULL; + plugin->client_udp_post_decrypt = NULL; + + return plugin; + } else if (strcmp(plugin_name, "auth_sha1_v4") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = auth_simple_init_data; + plugin->new_obfs = auth_simple_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = auth_simple_dispose; + + plugin->client_pre_encrypt = auth_sha1_v4_client_pre_encrypt; + plugin->client_post_decrypt = auth_sha1_v4_client_post_decrypt; + plugin->client_udp_pre_encrypt = NULL; + plugin->client_udp_post_decrypt = NULL; + + return plugin; + } else if (strcmp(plugin_name, "auth_aes128_md5") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = auth_simple_init_data; + plugin->new_obfs = auth_aes128_md5_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = auth_simple_dispose; + + plugin->client_pre_encrypt = auth_aes128_sha1_client_pre_encrypt; + plugin->client_post_decrypt = auth_aes128_sha1_client_post_decrypt; + plugin->client_udp_pre_encrypt = auth_aes128_sha1_client_udp_pre_encrypt; + plugin->client_udp_post_decrypt = auth_aes128_sha1_client_udp_post_decrypt; + + return plugin; + } else if (strcmp(plugin_name, "auth_aes128_sha1") == 0) { + obfs_class * plugin = (obfs_class*)malloc(sizeof(obfs)); + plugin->init_data = auth_simple_init_data; + plugin->new_obfs = auth_aes128_sha1_new_obfs; + plugin->get_server_info = get_server_info; + plugin->set_server_info = set_server_info; + plugin->dispose = auth_simple_dispose; + + plugin->client_pre_encrypt = auth_aes128_sha1_client_pre_encrypt; + plugin->client_post_decrypt = auth_aes128_sha1_client_post_decrypt; + plugin->client_udp_pre_encrypt = auth_aes128_sha1_client_udp_pre_encrypt; + plugin->client_udp_post_decrypt = auth_aes128_sha1_client_udp_post_decrypt; + + return plugin; + } + LOGE("Load obfs '%s' failed", plugin_name); + return NULL; +} + +void free_obfs_class(obfs_class *plugin) { + free(plugin); +} diff --git a/shadowsocksr-libev/src/server/obfs.h b/shadowsocksr-libev/src/server/obfs.h new file mode 100644 index 000000000..74c60c9a2 --- /dev/null +++ b/shadowsocksr-libev/src/server/obfs.h @@ -0,0 +1,100 @@ +/* + * obfs.h - Define shadowsocksR server's buffers and callbacks + * + * Copyright (C) 2015 - 2016, Break Wa11 + */ + +#ifndef _OBFS_H +#define _OBFS_H + +#include +#include + +typedef struct server_info { + char host[64]; + uint16_t port; + char *param; + void *g_data; + uint8_t *iv; + size_t iv_len; + uint8_t *recv_iv; + size_t recv_iv_len; + uint8_t *key; + size_t key_len; + int head_len; + size_t tcp_mss; +}server_info; + +typedef struct obfs { + server_info server; + void *l_data; +}obfs; + +typedef struct obfs_class { + void * (*init_data)(); + obfs * (*new_obfs)(); + void (*get_server_info)(obfs *self, server_info *server); + void (*set_server_info)(obfs *self, server_info *server); + void (*dispose)(obfs *self); + + int (*client_pre_encrypt)(obfs *self, + char **pplaindata, + int datalength, + size_t* capacity); + int (*client_encode)(obfs *self, + char **pencryptdata, + int datalength, + size_t* capacity); + int (*client_decode)(obfs *self, + char **pencryptdata, + int datalength, + size_t* capacity, + int *needsendback); + int (*client_post_decrypt)(obfs *self, + char **pplaindata, + int datalength, + size_t* capacity); + int (*client_udp_pre_encrypt)(obfs *self, + char **pplaindata, + int datalength, + size_t* capacity); + int (*client_udp_post_decrypt)(obfs *self, + char **pplaindata, + int datalength, + size_t* capacity); + int (*server_pre_encrypt)(obfs *self, + char **pplaindata, + int datalength, + size_t* capacity); + int (*server_post_decrypt)(obfs *self, + char **pplaindata, + int datalength, + size_t* capacity); + int (*server_udp_pre_encrypt)(obfs *self, + char **pplaindata, + int datalength, + size_t* capacity); + int (*server_udp_post_decrypt)(obfs *self, + char **pplaindata, + int datalength, + size_t* capacity); + int (*server_encode)(obfs *self, + char **pencryptdata, + int datalength, + size_t* capacity); + int (*server_decode)(obfs *self, + char **pencryptdata, + int datalength, + size_t* capacity, + int *needsendback); +}obfs_class; + +obfs_class * new_obfs_class(char *plugin_name); +void free_obfs_class(obfs_class *plugin); + +void set_server_info(obfs *self, server_info *server); +void get_server_info(obfs *self, server_info *server); +obfs * new_obfs(); +void dispose_obfs(obfs *self); + +#endif // _OBFS_H diff --git a/shadowsocksr-libev/src/server/obfsutil.c b/shadowsocksr-libev/src/server/obfsutil.c new file mode 100644 index 000000000..d00959b9c --- /dev/null +++ b/shadowsocksr-libev/src/server/obfsutil.c @@ -0,0 +1,36 @@ +int get_head_size(char *plaindata, int size, int def_size) { + if (plaindata == NULL || size < 2) + return def_size; + int head_type = plaindata[0] & 0x7; + if (head_type == 1) + return 7; + if (head_type == 4) + return 19; + if (head_type == 3) + return 4 + plaindata[1]; + return def_size; +} + +static int shift128plus_init_flag = 0; +static uint64_t shift128plus_s[2] = {0x10000000, 0xFFFFFFFF}; + +void init_shift128plus(void) { + if (shift128plus_init_flag == 0) { + shift128plus_init_flag = 1; + uint32_t seed = time(NULL); + shift128plus_s[0] = seed | 0x100000000L; + shift128plus_s[1] = ((uint64_t)seed << 32) | 0x1; + } +} + +uint64_t xorshift128plus(void) { + uint64_t x = shift128plus_s[0]; + uint64_t const y = shift128plus_s[1]; + shift128plus_s[0] = y; + x ^= x << 23; // a + x ^= x >> 17; // b + x ^= y ^ (y >> 26); // c + shift128plus_s[1] = x; + return x + y; +} + diff --git a/shadowsocksr-libev/src/server/protocol.h b/shadowsocksr-libev/src/server/protocol.h new file mode 100644 index 000000000..eaa866e70 --- /dev/null +++ b/shadowsocksr-libev/src/server/protocol.h @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2014, Dustin Lundquist + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +#ifndef PROTOCOL_H +#define PROTOCOL_H + +typedef struct protocol { + const int default_port; + int(*const parse_packet)(const char *, size_t, char **); +} protocol_t; + +#endif diff --git a/shadowsocksr-libev/src/server/resolv.c b/shadowsocksr-libev/src/server/resolv.c new file mode 100644 index 000000000..f580d06da --- /dev/null +++ b/shadowsocksr-libev/src/server/resolv.c @@ -0,0 +1,444 @@ +/* + * Copyright (c) 2014, Dustin Lundquist + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#ifdef __MINGW32__ +#include "win32.h" +#else +#include +#include +#include +#include +#endif + +#include "resolv.h" +#include "utils.h" +#include "netutils.h" + +/* + * Implement DNS resolution interface using libudns + */ + +struct ResolvQuery { + void (*client_cb)(struct sockaddr *, void *); + void (*client_free_cb)(void *); + void *client_cb_data; + struct dns_query *queries[2]; + size_t response_count; + struct sockaddr **responses; + uint16_t port; +}; + +extern int verbose; + +static struct ev_io resolv_io_watcher; +static struct ev_timer resolv_timeout_watcher; +static const int MODE_IPV4_ONLY = 0; +static const int MODE_IPV6_ONLY = 1; +static const int MODE_IPV4_FIRST = 2; +static const int MODE_IPV6_FIRST = 3; +static int resolv_mode = 0; + +static void resolv_sock_cb(struct ev_loop *, struct ev_io *, int); +static void resolv_timeout_cb(struct ev_loop *, struct ev_timer *, int); +static void dns_query_v4_cb(struct dns_ctx *, struct dns_rr_a4 *, void *); +static void dns_query_v6_cb(struct dns_ctx *, struct dns_rr_a6 *, void *); +static void dns_timer_setup_cb(struct dns_ctx *, int, void *); +static void process_client_callback(struct ResolvQuery *); +static inline int all_queries_are_null(struct ResolvQuery *); +static struct sockaddr *choose_ipv4_first(struct ResolvQuery *); +static struct sockaddr *choose_ipv6_first(struct ResolvQuery *); +static struct sockaddr *choose_any(struct ResolvQuery *); + +int +resolv_init(struct ev_loop *loop, char **nameservers, int nameserver_num, int ipv6first) +{ + if (ipv6first) + resolv_mode = MODE_IPV6_FIRST; + else + resolv_mode = MODE_IPV4_FIRST; + + struct dns_ctx *ctx = &dns_defctx; + if (nameservers == NULL) { + /* Nameservers not specified, use system resolver config */ + dns_init(ctx, 0); + } else { + dns_reset(ctx); + + for (int i = 0; i < nameserver_num; i++) { + char *server = nameservers[i]; + dns_add_serv(ctx, server); + } + } + + int sockfd = dns_open(ctx); + if (sockfd < 0) { + FATAL("Failed to open DNS resolver socket"); + } + + if (nameserver_num == 1 && nameservers != NULL) { + if (strncmp("127.0.0.1", nameservers[0], 9) == 0 + || strncmp("::1", nameservers[0], 3) == 0) { + if (verbose) { + LOGI("bind UDP resolver to %s", nameservers[0]); + } + if (bind_to_address(sockfd, nameservers[0]) == -1) + ERROR("bind_to_address"); + } + } + +#ifdef __MINGW32__ + setnonblocking(sockfd); +#else + int flags = fcntl(sockfd, F_GETFL, 0); + fcntl(sockfd, F_SETFL, flags | O_NONBLOCK); +#endif + + ev_io_init(&resolv_io_watcher, resolv_sock_cb, sockfd, EV_READ); + resolv_io_watcher.data = ctx; + + ev_io_start(loop, &resolv_io_watcher); + + ev_timer_init(&resolv_timeout_watcher, resolv_timeout_cb, 0.0, 0.0); + resolv_timeout_watcher.data = ctx; + + dns_set_tmcbck(ctx, dns_timer_setup_cb, loop); + + return sockfd; +} + +void +resolv_shutdown(struct ev_loop *loop) +{ + struct dns_ctx *ctx = (struct dns_ctx *)resolv_io_watcher.data; + + ev_io_stop(loop, &resolv_io_watcher); + + if (ev_is_active(&resolv_timeout_watcher)) { + ev_timer_stop(loop, &resolv_timeout_watcher); + } + + dns_close(ctx); +} + +struct ResolvQuery * +resolv_query(const char *hostname, void (*client_cb)(struct sockaddr *, void *), + void (*client_free_cb)(void *), void *client_cb_data, + uint16_t port) +{ + struct dns_ctx *ctx = (struct dns_ctx *)resolv_io_watcher.data; + + /* + * Wrap udns's call back in our own + */ + struct ResolvQuery *cb_data = ss_malloc(sizeof(struct ResolvQuery)); + if (cb_data == NULL) { + LOGE("Failed to allocate memory for DNS query callback data."); + return NULL; + } + memset(cb_data, 0, sizeof(struct ResolvQuery)); + + cb_data->client_cb = client_cb; + cb_data->client_free_cb = client_free_cb; + cb_data->client_cb_data = client_cb_data; + memset(cb_data->queries, 0, sizeof(cb_data->queries)); + cb_data->response_count = 0; + cb_data->responses = NULL; + cb_data->port = port; + + /* Submit A and AAAA queries */ + if (resolv_mode != MODE_IPV6_ONLY) { + cb_data->queries[0] = dns_submit_a4(ctx, + hostname, 0, + dns_query_v4_cb, cb_data); + if (cb_data->queries[0] == NULL) { + LOGE("Failed to submit DNS query: %s", + dns_strerror(dns_status(ctx))); + } + } + + if (resolv_mode != MODE_IPV4_ONLY) { + cb_data->queries[1] = dns_submit_a6(ctx, + hostname, 0, + dns_query_v6_cb, cb_data); + if (cb_data->queries[1] == NULL) { + LOGE("Failed to submit DNS query: %s", + dns_strerror(dns_status(ctx))); + } + } + + if (all_queries_are_null(cb_data)) { + if (cb_data->client_free_cb != NULL) { + cb_data->client_free_cb(cb_data->client_cb_data); + } + ss_free(cb_data); + } + + return cb_data; +} + +void +resolv_cancel(struct ResolvQuery *query_handle) +{ + struct ResolvQuery *cb_data = (struct ResolvQuery *)query_handle; + struct dns_ctx *ctx = (struct dns_ctx *)resolv_io_watcher.data; + + for (int i = 0; i < sizeof(cb_data->queries) / sizeof(cb_data->queries[0]); + i++) + if (cb_data->queries[i] != NULL) { + dns_cancel(ctx, cb_data->queries[i]); + ss_free(cb_data->queries[i]); + } + + if (cb_data->client_free_cb != NULL) { + cb_data->client_free_cb(cb_data->client_cb_data); + } + + ss_free(cb_data); +} + +/* + * DNS UDP socket activity callback + */ +static void +resolv_sock_cb(struct ev_loop *loop, struct ev_io *w, int revents) +{ + struct dns_ctx *ctx = (struct dns_ctx *)w->data; + + if (revents & EV_READ) { + dns_ioevent(ctx, ev_now(loop)); + } +} + +/* + * Wrapper for client callback we provide to udns + */ +static void +dns_query_v4_cb(struct dns_ctx *ctx, struct dns_rr_a4 *result, void *data) +{ + struct ResolvQuery *cb_data = (struct ResolvQuery *)data; + + if (result == NULL) { + if (verbose) { + LOGI("IPv4 resolv: %s", dns_strerror(dns_status(ctx))); + } + } else if (result->dnsa4_nrr > 0) { + struct sockaddr **new_responses = ss_realloc(cb_data->responses, + (cb_data->response_count + + result->dnsa4_nrr) * + sizeof(struct sockaddr *)); + if (new_responses == NULL) { + LOGE("Failed to allocate memory for additional DNS responses"); + } else { + cb_data->responses = new_responses; + + for (int i = 0; i < result->dnsa4_nrr; i++) { + struct sockaddr_in *sa = + (struct sockaddr_in *)ss_malloc(sizeof(struct sockaddr_in)); + sa->sin_family = AF_INET; + sa->sin_port = cb_data->port; + sa->sin_addr = result->dnsa4_addr[i]; + + cb_data->responses[cb_data->response_count] = + (struct sockaddr *)sa; + if (cb_data->responses[cb_data->response_count] == NULL) { + LOGE( + "Failed to allocate memory for DNS query result address"); + } else { + cb_data->response_count++; + } + } + } + } + + ss_free(result); + cb_data->queries[0] = NULL; /* mark A query as being completed */ + + /* Once all queries have completed, call client callback */ + if (all_queries_are_null(cb_data)) { + return process_client_callback(cb_data); + } +} + +static void +dns_query_v6_cb(struct dns_ctx *ctx, struct dns_rr_a6 *result, void *data) +{ + struct ResolvQuery *cb_data = (struct ResolvQuery *)data; + + if (result == NULL) { + if (verbose) { + LOGI("IPv6 resolv: %s", dns_strerror(dns_status(ctx))); + } + } else if (result->dnsa6_nrr > 0) { + struct sockaddr **new_responses = ss_realloc(cb_data->responses, + (cb_data->response_count + + result->dnsa6_nrr) * + sizeof(struct sockaddr *)); + if (new_responses == NULL) { + LOGE("Failed to allocate memory for additional DNS responses"); + } else { + cb_data->responses = new_responses; + + for (int i = 0; i < result->dnsa6_nrr; i++) { + struct sockaddr_in6 *sa = + (struct sockaddr_in6 *)ss_malloc(sizeof(struct sockaddr_in6)); + sa->sin6_family = AF_INET6; + sa->sin6_port = cb_data->port; + sa->sin6_addr = result->dnsa6_addr[i]; + + cb_data->responses[cb_data->response_count] = + (struct sockaddr *)sa; + if (cb_data->responses[cb_data->response_count] == NULL) { + LOGE( + "Failed to allocate memory for DNS query result address"); + } else { + cb_data->response_count++; + } + } + } + } + + ss_free(result); + cb_data->queries[1] = NULL; /* mark AAAA query as being completed */ + + /* Once all queries have completed, call client callback */ + if (all_queries_are_null(cb_data)) { + return process_client_callback(cb_data); + } +} + +/* + * Called once all queries have been completed + */ +static void +process_client_callback(struct ResolvQuery *cb_data) +{ + struct sockaddr *best_address = NULL; + + if (resolv_mode == MODE_IPV4_FIRST) { + best_address = choose_ipv4_first(cb_data); + } else if (resolv_mode == MODE_IPV6_FIRST) { + best_address = choose_ipv6_first(cb_data); + } else { + best_address = choose_any(cb_data); + } + + cb_data->client_cb(best_address, cb_data->client_cb_data); + + for (int i = 0; i < cb_data->response_count; i++) + ss_free(cb_data->responses[i]); + + ss_free(cb_data->responses); + if (cb_data->client_free_cb != NULL) { + cb_data->client_free_cb(cb_data->client_cb_data); + } + ss_free(cb_data); +} + +static struct sockaddr * +choose_ipv4_first(struct ResolvQuery *cb_data) +{ + for (int i = 0; i < cb_data->response_count; i++) + if (cb_data->responses[i]->sa_family == AF_INET) { + return cb_data->responses[i]; + } + + return choose_any(cb_data); +} + +static struct sockaddr * +choose_ipv6_first(struct ResolvQuery *cb_data) +{ + for (int i = 0; i < cb_data->response_count; i++) + if (cb_data->responses[i]->sa_family == AF_INET6) { + return cb_data->responses[i]; + } + + return choose_any(cb_data); +} + +static struct sockaddr * +choose_any(struct ResolvQuery *cb_data) +{ + if (cb_data->response_count >= 1) { + return cb_data->responses[0]; + } + + return NULL; +} + +/* + * DNS timeout callback + */ +static void +resolv_timeout_cb(struct ev_loop *loop, struct ev_timer *w, int revents) +{ + struct dns_ctx *ctx = (struct dns_ctx *)w->data; + + if (revents & EV_TIMER) { + dns_timeouts(ctx, 30, ev_now(loop)); + } +} + +/* + * Callback to setup DNS timeout callback + */ +static void +dns_timer_setup_cb(struct dns_ctx *ctx, int timeout, void *data) +{ + struct ev_loop *loop = (struct ev_loop *)data; + + if (ev_is_active(&resolv_timeout_watcher)) { + ev_timer_stop(loop, &resolv_timeout_watcher); + } + + if (ctx != NULL && timeout >= 0) { + ev_timer_set(&resolv_timeout_watcher, timeout, 0.0); + ev_timer_start(loop, &resolv_timeout_watcher); + } +} + +static inline int +all_queries_are_null(struct ResolvQuery *cb_data) +{ + int result = 1; + + for (int i = 0; i < sizeof(cb_data->queries) / sizeof(cb_data->queries[0]); + i++) + result = result && cb_data->queries[i] == NULL; + + return result; +} diff --git a/shadowsocksr-libev/src/server/resolv.h b/shadowsocksr-libev/src/server/resolv.h new file mode 100644 index 000000000..055292233 --- /dev/null +++ b/shadowsocksr-libev/src/server/resolv.h @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2014, Dustin Lundquist + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +#ifndef RESOLV_H +#define RESOLV_H + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include + +#ifdef __MINGW32__ +#include "win32.h" +#else +#include +#endif + +struct ResolvQuery; + +int resolv_init(struct ev_loop *, char **, int, int); +struct ResolvQuery *resolv_query(const char *, void (*)(struct sockaddr *, + void *), void (*)( + void *), void *, uint16_t); +void resolv_cancel(struct ResolvQuery *); +void resolv_shutdown(struct ev_loop *); + +#endif diff --git a/shadowsocksr-libev/src/server/rule.c b/shadowsocksr-libev/src/server/rule.c new file mode 100644 index 000000000..8aae04ea7 --- /dev/null +++ b/shadowsocksr-libev/src/server/rule.c @@ -0,0 +1,137 @@ +/* + * Copyright (c) 2011 and 2012, Dustin Lundquist + * Copyright (c) 2011 Manuel Kasper + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include + +#ifdef __MINGW32__ +extern void ss_error(const char *s); +#endif + +#include "rule.h" +#include "utils.h" + +static void free_rule(rule_t *); + +rule_t * +new_rule() +{ + rule_t *rule; + + rule = calloc(1, sizeof(rule_t)); + if (rule == NULL) { + ERROR("malloc"); + return NULL; + } + + return rule; +} + +int +accept_rule_arg(rule_t *rule, const char *arg) +{ + if (rule->pattern == NULL) { + rule->pattern = strdup(arg); + if (rule->pattern == NULL) { + ERROR("strdup failed"); + return -1; + } + } else { + LOGE("Unexpected table rule argument: %s", arg); + return -1; + } + + return 1; +} + +void +add_rule(struct cork_dllist *rules, rule_t *rule) +{ + cork_dllist_add(rules, &rule->entries); +} + +int +init_rule(rule_t *rule) +{ + if (rule->pattern_re == NULL) { + const char *reerr; + int reerroffset; + + rule->pattern_re = + pcre_compile(rule->pattern, 0, &reerr, &reerroffset, NULL); + if (rule->pattern_re == NULL) { + LOGE("Regex compilation of \"%s\" failed: %s, offset %d", + rule->pattern, reerr, reerroffset); + return 0; + } + } + + return 1; +} + +rule_t * +lookup_rule(const struct cork_dllist *rules, const char *name, size_t name_len) +{ + struct cork_dllist_item *curr, *next; + + if (name == NULL) { + name = ""; + name_len = 0; + } + + cork_dllist_foreach_void(rules, curr, next) { + rule_t *rule = cork_container_of(curr, rule_t, entries); + if (pcre_exec(rule->pattern_re, NULL, + name, name_len, 0, 0, NULL, 0) >= 0) + return rule; + } + + return NULL; +} + +void +remove_rule(rule_t *rule) +{ + cork_dllist_remove(&rule->entries); + free_rule(rule); +} + +static void +free_rule(rule_t *rule) +{ + if (rule == NULL) + return; + + ss_free(rule->pattern); + if (rule->pattern_re != NULL) + pcre_free(rule->pattern_re); + ss_free(rule); +} diff --git a/shadowsocksr-libev/src/server/rule.h b/shadowsocksr-libev/src/server/rule.h new file mode 100644 index 000000000..015bc42b5 --- /dev/null +++ b/shadowsocksr-libev/src/server/rule.h @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2011 and 2012, Dustin Lundquist + * Copyright (c) 2011 Manuel Kasper + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +#ifndef RULE_H +#define RULE_H + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include + +#ifdef HAVE_PCRE_H +#include +#elif HAVE_PCRE_PCRE_H +#include +#endif + +typedef struct rule { + char *pattern; + + /* Runtime fields */ + pcre *pattern_re; + + struct cork_dllist_item entries; +} rule_t; + +void add_rule(struct cork_dllist *, rule_t *); +int init_rule(rule_t *); +rule_t *lookup_rule(const struct cork_dllist *, const char *, size_t); +void remove_rule(rule_t *); +rule_t *new_rule(); +int accept_rule_arg(rule_t *, const char *); + +#endif diff --git a/shadowsocksr-libev/src/server/server.c b/shadowsocksr-libev/src/server/server.c new file mode 100644 index 000000000..65b0e42a8 --- /dev/null +++ b/shadowsocksr-libev/src/server/server.c @@ -0,0 +1,2209 @@ +/* + * server.c - Provide shadowsocks service + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifndef __MINGW32__ +#include +#include +#include +#include +#include +#include +#endif + +#include +#include + +#ifdef __MINGW32__ +#include "win32.h" +#endif + +#if defined(HAVE_SYS_IOCTL_H) && defined(HAVE_NET_IF_H) && defined(__linux__) +#include +#include +#define SET_INTERFACE +#endif + +#include "netutils.h" +#include "utils.h" +#include "acl.h" +#include "server.h" + +#include "obfs.c" // I don't want to modify makefile + +#ifndef EAGAIN +#define EAGAIN EWOULDBLOCK +#endif + +#ifndef EWOULDBLOCK +#define EWOULDBLOCK EAGAIN +#endif + +#ifndef BUF_SIZE +#define BUF_SIZE 2048 +#endif + +#ifndef SSMAXCONN +#define SSMAXCONN 1024 +#endif + +#ifndef UPDATE_INTERVAL +#define UPDATE_INTERVAL 30 +#endif + +static void signal_cb(EV_P_ ev_signal *w, int revents); +static void accept_cb(EV_P_ ev_io *w, int revents); +static void server_send_cb(EV_P_ ev_io *w, int revents); +static void server_recv_cb(EV_P_ ev_io *w, int revents); +static void remote_recv_cb(EV_P_ ev_io *w, int revents); +static void remote_send_cb(EV_P_ ev_io *w, int revents); +static void server_timeout_cb(EV_P_ ev_timer *watcher, int revents); +static void block_list_clear_cb(EV_P_ ev_timer *watcher, int revents); + +static remote_t *new_remote(int fd); +static server_t *new_server(int fd, listen_ctx_t *listener); +static remote_t *connect_to_remote(EV_P_ struct addrinfo *res, + server_t *server); + +static void free_remote(remote_t *remote); +static void close_and_free_remote(EV_P_ remote_t *remote); +static void free_server(server_t *server); +static void close_and_free_server(EV_P_ server_t *server); +static void server_resolve_cb(struct sockaddr *addr, void *data); +static void query_free_cb(void *data); + +static size_t parse_header_len(const char atyp, const char *data, size_t offset); +static int is_header_complete(const buffer_t *buf); + +int verbose = 0; + +static int acl = 0; +static int mode = TCP_ONLY; +static int auth = 0; +static int ipv6first = 0; + +static int protocol_compatible = 0;//SSR +static int obfs_compatible = 0;//SSR + +static int fast_open = 0; +#ifdef HAVE_SETRLIMIT +static int nofile = 0; +#endif +static int remote_conn = 0; +static int server_conn = 0; + +static char *bind_address = NULL; +static char *server_port = NULL; +static char *manager_address = NULL; +uint64_t tx = 0; +uint64_t rx = 0; +ev_timer stat_update_watcher; +ev_timer block_list_watcher; + +static struct cork_dllist connections; + +static void +stat_update_cb(EV_P_ ev_timer *watcher, int revents) +{ + struct sockaddr_un svaddr, claddr; + int sfd = -1; + size_t msgLen; + char resp[BUF_SIZE]; + + if (verbose) { + LOGI("update traffic stat: tx: %" PRIu64 " rx: %" PRIu64 "", tx, rx); + } + + snprintf(resp, BUF_SIZE, "stat: {\"%s\":%" PRIu64 "}", server_port, tx + rx); + msgLen = strlen(resp) + 1; + + ss_addr_t ip_addr = { .host = NULL, .port = NULL }; + parse_addr(manager_address, &ip_addr); + + if (ip_addr.host == NULL || ip_addr.port == NULL) { + sfd = socket(AF_UNIX, SOCK_DGRAM, 0); + if (sfd == -1) { + ERROR("stat_socket"); + return; + } + + memset(&claddr, 0, sizeof(struct sockaddr_un)); + claddr.sun_family = AF_UNIX; + snprintf(claddr.sun_path, sizeof(claddr.sun_path), "/tmp/shadowsocks.%s", server_port); + + unlink(claddr.sun_path); + + if (bind(sfd, (struct sockaddr *)&claddr, sizeof(struct sockaddr_un)) == -1) { + ERROR("stat_bind"); + close(sfd); + return; + } + + memset(&svaddr, 0, sizeof(struct sockaddr_un)); + svaddr.sun_family = AF_UNIX; + strncpy(svaddr.sun_path, manager_address, sizeof(svaddr.sun_path) - 1); + + if (sendto(sfd, resp, strlen(resp) + 1, 0, (struct sockaddr *)&svaddr, + sizeof(struct sockaddr_un)) != msgLen) { + ERROR("stat_sendto"); + close(sfd); + return; + } + + unlink(claddr.sun_path); + } else { + struct sockaddr_storage storage; + memset(&storage, 0, sizeof(struct sockaddr_storage)); + if (get_sockaddr(ip_addr.host, ip_addr.port, &storage, 0, ipv6first) == -1) { + ERROR("failed to parse the manager addr"); + return; + } + + sfd = socket(storage.ss_family, SOCK_DGRAM, 0); + + if (sfd == -1) { + ERROR("stat_socket"); + return; + } + + size_t addr_len = get_sockaddr_len((struct sockaddr *)&storage); + if (sendto(sfd, resp, strlen(resp) + 1, 0, (struct sockaddr *)&storage, + addr_len) != msgLen) { + ERROR("stat_sendto"); + close(sfd); + return; + } + } + + close(sfd); +} + +static void +free_connections(struct ev_loop *loop) +{ + struct cork_dllist_item *curr, *next; + cork_dllist_foreach_void(&connections, curr, next) { + server_t *server = cork_container_of(curr, server_t, entries); + remote_t *remote = server->remote; + close_and_free_server(loop, server); + close_and_free_remote(loop, remote); + } +} + +static size_t +parse_header_len(const char atyp, const char *data, size_t offset) +{ + size_t len = 0; + if ((atyp & ADDRTYPE_MASK) == 1) { + // IP V4 + len += sizeof(struct in_addr); + } else if ((atyp & ADDRTYPE_MASK) == 3) { + // Domain name + uint8_t name_len = *(uint8_t *)(data + offset); + len += name_len + 1; + } else if ((atyp & ADDRTYPE_MASK) == 4) { + // IP V6 + len += sizeof(struct in6_addr); + } else { + return 0; + } + len += 2; + return len; +} + +static int +is_header_complete(const buffer_t *buf) +{ + size_t header_len = 0; + size_t buf_len = buf->len; + + char atyp = buf->array[header_len]; + + // 1 byte for atyp + header_len++; + + if ((atyp & ADDRTYPE_MASK) == 1) { + // IP V4 + header_len += sizeof(struct in_addr); + } else if ((atyp & ADDRTYPE_MASK) == 3) { + // Domain name + // domain len + len of domain + if (buf_len < header_len + 1) + return 0; + uint8_t name_len = *(uint8_t *)(buf->array + header_len); + header_len += name_len + 1; + } else if ((atyp & ADDRTYPE_MASK) == 4) { + // IP V6 + header_len += sizeof(struct in6_addr); + } else { + return -1; + } + + // len of port + header_len += 2; + + // size of ONETIMEAUTH_BYTES + if (auth || (atyp & ONETIMEAUTH_FLAG)) { + header_len += ONETIMEAUTH_BYTES; + } + + return buf_len >= header_len ? 1 : 0; +} + +static char * +get_peer_name(int fd) +{ + static char peer_name[INET6_ADDRSTRLEN] = { 0 }; + struct sockaddr_storage addr; + socklen_t len = sizeof(struct sockaddr_storage); + memset(&addr, 0, len); + memset(peer_name, 0, INET6_ADDRSTRLEN); + int err = getpeername(fd, (struct sockaddr *)&addr, &len); + if (err == 0) { + if (addr.ss_family == AF_INET) { + struct sockaddr_in *s = (struct sockaddr_in *)&addr; + dns_ntop(AF_INET, &s->sin_addr, peer_name, INET_ADDRSTRLEN); + } else if (addr.ss_family == AF_INET6) { + struct sockaddr_in6 *s = (struct sockaddr_in6 *)&addr; + dns_ntop(AF_INET6, &s->sin6_addr, peer_name, INET6_ADDRSTRLEN); + } + } else { + return NULL; + } + return peer_name; +} + +#ifdef __linux__ +static void +set_linger(int fd) +{ + struct linger so_linger; + memset(&so_linger, 0, sizeof(struct linger)); + so_linger.l_onoff = 1; + so_linger.l_linger = 0; + setsockopt(fd, SOL_SOCKET, SO_LINGER, &so_linger, sizeof so_linger); +} +#endif + +static void +reset_addr(int fd) +{ + char *peer_name; + peer_name = get_peer_name(fd); + if (peer_name != NULL) { + remove_from_block_list(peer_name); + } +} + +static void +report_addr(int fd, int err_level) +{ +#ifdef __linux__ + set_linger(fd); +#endif + + char *peer_name; + peer_name = get_peer_name(fd); + if (peer_name != NULL) { + LOGE("failed to handshake with %s", peer_name); + update_block_list(peer_name, err_level); + } +} + +int +setfastopen(int fd) +{ + int s = 0; +#ifdef TCP_FASTOPEN + if (fast_open) { +#ifdef __APPLE__ + int opt = 1; +#else + int opt = 5; +#endif + s = setsockopt(fd, IPPROTO_TCP, TCP_FASTOPEN, &opt, sizeof(opt)); + + if (s == -1) { + if (errno == EPROTONOSUPPORT || errno == ENOPROTOOPT) { + LOGE("fast open is not supported on this platform"); + fast_open = 0; + } else { + ERROR("setsockopt"); + } + } + } +#endif + return s; +} + +#ifndef __MINGW32__ +int +setnonblocking(int fd) +{ + int flags; + if (-1 == (flags = fcntl(fd, F_GETFL, 0))) { + flags = 0; + } + return fcntl(fd, F_SETFL, flags | O_NONBLOCK); +} + +#endif + +int +create_and_bind(const char *host, const char *port, int mptcp) +{ + struct addrinfo hints; + struct addrinfo *result, *rp, *ipv4v6bindall; + int s, listen_sock; + + memset(&hints, 0, sizeof(struct addrinfo)); + hints.ai_family = AF_UNSPEC; /* Return IPv4 and IPv6 choices */ + hints.ai_socktype = SOCK_STREAM; /* We want a TCP socket */ + hints.ai_flags = AI_PASSIVE | AI_ADDRCONFIG; /* For wildcard IP address */ + hints.ai_protocol = IPPROTO_TCP; + + for (int i = 1; i < 8; i++) { + s = getaddrinfo(host, port, &hints, &result); + if (s == 0) { + break; + } else { + sleep(pow(2, i)); + LOGE("failed to resolve server name, wait %.0f seconds", pow(2, i)); + } + } + + if (s != 0) { + LOGE("getaddrinfo: %s", gai_strerror(s)); + return -1; + } + + rp = result; + + /* + * On Linux, with net.ipv6.bindv6only = 0 (the default), getaddrinfo(NULL) with + * AI_PASSIVE returns 0.0.0.0 and :: (in this order). AI_PASSIVE was meant to + * return a list of addresses to listen on, but it is impossible to listen on + * 0.0.0.0 and :: at the same time, if :: implies dualstack mode. + */ + if (!host) { + ipv4v6bindall = result; + + /* Loop over all address infos found until a IPV6 address is found. */ + while (ipv4v6bindall) { + if (ipv4v6bindall->ai_family == AF_INET6) { + rp = ipv4v6bindall; /* Take first IPV6 address available */ + break; + } + ipv4v6bindall = ipv4v6bindall->ai_next; /* Get next address info, if any */ + } + } + + for (/*rp = result*/; rp != NULL; rp = rp->ai_next) { + listen_sock = socket(rp->ai_family, rp->ai_socktype, rp->ai_protocol); + if (listen_sock == -1) { + continue; + } + + if (rp->ai_family == AF_INET6) { + int ipv6only = host ? 1 : 0; + setsockopt(listen_sock, IPPROTO_IPV6, IPV6_V6ONLY, &ipv6only, sizeof(ipv6only)); + } + + int opt = 1; + setsockopt(listen_sock, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)); +#ifdef SO_NOSIGPIPE + setsockopt(listen_sock, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)); +#endif + int err = set_reuseport(listen_sock); + if (err == 0) { + LOGI("tcp port reuse enabled"); + } + + if (mptcp == 1) { + int err = setsockopt(listen_sock, SOL_TCP, MPTCP_ENABLED, &opt, sizeof(opt)); + if (err == -1) { + ERROR("failed to enable multipath TCP"); + } + } + + s = bind(listen_sock, rp->ai_addr, rp->ai_addrlen); + if (s == 0) { + /* We managed to bind successfully! */ + break; + } else { + ERROR("bind"); + } + + close(listen_sock); + } + + if (rp == NULL) { + LOGE("Could not bind"); + return -1; + } + + freeaddrinfo(result); + + return listen_sock; +} + +static remote_t * +connect_to_remote(EV_P_ struct addrinfo *res, + server_t *server) +{ + int sockfd; +#ifdef SET_INTERFACE + const char *iface = server->listen_ctx->iface; +#endif + + if (acl) { + char ipstr[INET6_ADDRSTRLEN]; + memset(ipstr, 0, INET6_ADDRSTRLEN); + + if (res->ai_addr->sa_family == AF_INET) { + struct sockaddr_in *s = (struct sockaddr_in *)res->ai_addr; + dns_ntop(AF_INET, &s->sin_addr, ipstr, INET_ADDRSTRLEN); + } else if (res->ai_addr->sa_family == AF_INET6) { + struct sockaddr_in6 *s = (struct sockaddr_in6 *)res->ai_addr; + dns_ntop(AF_INET6, &s->sin6_addr, ipstr, INET6_ADDRSTRLEN); + } + + if (outbound_block_match_host(ipstr) == 1) { + if (verbose) + LOGI("outbound blocked %s", ipstr); + return NULL; + } + } + + // initialize remote socks + sockfd = socket(res->ai_family, res->ai_socktype, res->ai_protocol); + if (sockfd == -1) { + ERROR("socket"); + close(sockfd); + return NULL; + } + + int opt = 1; + setsockopt(sockfd, SOL_TCP, TCP_NODELAY, &opt, sizeof(opt)); +#ifdef SO_NOSIGPIPE + setsockopt(sockfd, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)); +#endif + setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)); + + // setup remote socks + + if (setnonblocking(sockfd) == -1) + ERROR("setnonblocking"); + + if (bind_address != NULL) + if (bind_to_address(sockfd, bind_address) == -1) { + ERROR("bind_to_address"); + close(sockfd); + return NULL; + } + +#ifdef SET_INTERFACE + if (iface) { + if (setinterface(sockfd, iface) == -1) { + ERROR("setinterface"); + close(sockfd); + return NULL; + } + } +#endif + + remote_t *remote = new_remote(sockfd); + +#ifdef TCP_FASTOPEN + if (fast_open) { +#ifdef __APPLE__ + ((struct sockaddr_in *)(res->ai_addr))->sin_len = sizeof(struct sockaddr_in); + sa_endpoints_t endpoints; + memset((char *)&endpoints, 0, sizeof(endpoints)); + endpoints.sae_dstaddr = res->ai_addr; + endpoints.sae_dstaddrlen = res->ai_addrlen; + + struct iovec iov; + iov.iov_base = server->buf->array + server->buf->idx; + iov.iov_len = server->buf->len; + size_t len; + int s = connectx(sockfd, &endpoints, SAE_ASSOCID_ANY, CONNECT_DATA_IDEMPOTENT, + &iov, 1, &len, NULL); + if (s == 0) { + s = len; + } +#else + ssize_t s = sendto(sockfd, server->buf->array + server->buf->idx, + server->buf->len, MSG_FASTOPEN, res->ai_addr, + res->ai_addrlen); +#endif + if (s == -1) { + if (errno == CONNECT_IN_PROGRESS || errno == EAGAIN + || errno == EWOULDBLOCK) { + // The remote server doesn't support tfo or it's the first connection to the server. + // It will automatically fall back to conventional TCP. + } else if (errno == EOPNOTSUPP || errno == EPROTONOSUPPORT || + errno == ENOPROTOOPT) { + // Disable fast open as it's not supported + fast_open = 0; + LOGE("fast open is not supported on this platform"); + } else { + ERROR("sendto"); + } + } else if (s <= server->buf->len) { + server->buf->idx += s; + server->buf->len -= s; + } else { + server->buf->idx = 0; + server->buf->len = 0; + } + } +#endif + + if (!fast_open) { + int r = connect(sockfd, res->ai_addr, res->ai_addrlen); + + if (r == -1 && errno != CONNECT_IN_PROGRESS) { + ERROR("connect"); + close_and_free_remote(EV_A_ remote); + return NULL; + } + } + + return remote; +} + +static void +server_recv_cb(EV_P_ ev_io *w, int revents) +{ + server_ctx_t *server_recv_ctx = (server_ctx_t *)w; + server_t *server = server_recv_ctx->server; + remote_t *remote = NULL; + + int len = server->buf->len; + buffer_t *buf = server->buf; + + if (server->stage > STAGE_PARSE) { + remote = server->remote; + buf = remote->buf; + len = 0; + + ev_timer_again(EV_A_ & server->recv_ctx->watcher); + } + + if (len > BUF_SIZE) { + ERROR("out of recv buffer"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + + ssize_t r = recv(server->fd, buf->array + len, BUF_SIZE - len, 0); + + if (r == 0) { + // connection closed + if (verbose) { + LOGI("server_recv close the connection"); + } + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } else if (r == -1) { + if (errno == EAGAIN || errno == EWOULDBLOCK) { + // no data + // continue to wait for recv + return; + } else { + ERROR("server recv"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + } + + tx += r; + + if (server->stage == STAGE_ERROR) { + server->buf->len = 0; + server->buf->idx = 0; + return; + } + + // handle incomplete header part 1 + if (server->stage == STAGE_INIT) { + buf->len += r; + if (buf->len <= enc_get_iv_len() + 1) { + // wait for more + return; + } + } else { + buf->len = r; + } + + // SSR beg + + if (server->obfs_plugin) { + obfs_class *obfs_plugin = server->obfs_plugin; + if (obfs_plugin->server_decode) { + int needsendback = 0; + + if(obfs_compatible == 1) + { + char *back_buf = (char*)malloc(sizeof(buffer_t)); + memcpy(back_buf, buf, sizeof(buffer_t)); + buf->len = obfs_plugin->server_decode(server->obfs, &buf->array, buf->len, &buf->capacity, &needsendback); + + if ((int)buf->len < 0) + { + LOGE("obfs_compatible"); + memcpy(buf, back_buf, sizeof(buffer_t)); + free(back_buf); + server->obfs_compatible_state = 1; + } + } + else + { + buf->len = obfs_plugin->server_decode(server->obfs, &buf->array, buf->len, &buf->capacity, &needsendback); + if ((int)buf->len < 0) { + LOGE("server_decode"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + } + + if (needsendback) { + size_t capacity = BUF_SIZE; + char *sendback_buf = (char*)malloc(capacity); + obfs_class *obfs_plugin = server->obfs_plugin; + if (obfs_plugin->server_encode) { + int len = obfs_plugin->server_encode(server->obfs, &sendback_buf, 0, &capacity); + send(server->fd, sendback_buf, len, 0); + } + free(sendback_buf); + return; + } + } + } + + int err = ss_decrypt(buf, server->d_ctx, BUF_SIZE); + + if (err) { + report_addr(server->fd, MALICIOUS); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + + if (server->protocol_plugin) { + obfs_class *protocol_plugin = server->protocol_plugin; + if (protocol_plugin->server_post_decrypt) { + + if(protocol_compatible == 1) + { + char *back_buf = (char*)malloc(sizeof(buffer_t)); + memcpy(back_buf, buf, sizeof(buffer_t)); + buf->len = protocol_plugin->server_post_decrypt(server->protocol, &buf->array, buf->len, &buf->capacity); + + if ((int)buf->len < 0) { + LOGE("protocol_compatible"); + memcpy(buf, back_buf, sizeof(buffer_t)); + free(back_buf); + server->protocol_compatible_state = 1; + } + if ( buf->len == 0 ) + { + LOGE("protocol_compatible"); + memcpy(buf, back_buf, sizeof(buffer_t)); + free(back_buf); + server->protocol_compatible_state = 1; + } + } + else + { + buf->len = protocol_plugin->server_post_decrypt(server->protocol, &buf->array, buf->len, &buf->capacity); + if ((int)buf->len < 0) { + LOGE("server_post_decrypt"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + if ( buf->len == 0 ) + { + LOGE("server_post_decrypt"); + return; + } + } + } + } + // SSR end + + // handle incomplete header part 2 + if (server->stage == STAGE_INIT) { + int ret = is_header_complete(server->buf); + if (ret == 1) { + bfree(server->header_buf); + ss_free(server->header_buf); + server->stage = STAGE_PARSE; + } else if (ret == -1) { + server->stage = STAGE_ERROR; + report_addr(server->fd, MALFORMED); + server->buf->len = 0; + server->buf->idx = 0; + return; + } else { + server->stage = STAGE_HANDSHAKE; + } + } + + if (server->stage == STAGE_HANDSHAKE) { + size_t header_len = server->header_buf->len; + brealloc(server->header_buf, server->buf->len + header_len, BUF_SIZE); + memcpy(server->header_buf->array + header_len, + server->buf->array, server->buf->len); + server->header_buf->len = server->buf->len + header_len; + + int ret = is_header_complete(server->buf); + + if (ret == 1) { + brealloc(server->buf, server->header_buf->len, BUF_SIZE); + memcpy(server->buf->array, server->header_buf->array, server->header_buf->len); + server->buf->len = server->header_buf->len; + bfree(server->header_buf); + ss_free(server->header_buf); + server->stage = STAGE_PARSE; + } else { + if (ret == -1) + server->stage = STAGE_ERROR; + server->buf->len = 0; + server->buf->idx = 0; + return; + } + } + + // handshake and transmit data + if (server->stage == STAGE_STREAM) { + if (server->auth && !ss_check_hash(remote->buf, server->chunk, server->d_ctx, BUF_SIZE)) { + LOGE("hash error"); + report_addr(server->fd, BAD); + close_and_free_server(EV_A_ server); + close_and_free_remote(EV_A_ remote); + return; + } + + int s = send(remote->fd, remote->buf->array, remote->buf->len, 0); + if (s == -1) { + if (errno == EAGAIN || errno == EWOULDBLOCK) { + // no data, wait for send + remote->buf->idx = 0; + ev_io_stop(EV_A_ & server_recv_ctx->io); + ev_io_start(EV_A_ & remote->send_ctx->io); + } else { + ERROR("server_recv_send"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + } + } else if (s < remote->buf->len) { + remote->buf->len -= s; + remote->buf->idx = s; + ev_io_stop(EV_A_ & server_recv_ctx->io); + ev_io_start(EV_A_ & remote->send_ctx->io); + } + return; + } else if (server->stage == STAGE_PARSE) { + /* + * Shadowsocks TCP Relay Header: + * + * +------+----------+----------+----------------+ + * | ATYP | DST.ADDR | DST.PORT | HMAC-SHA1 | + * +------+----------+----------+----------------+ + * | 1 | Variable | 2 | 10 | + * +------+----------+----------+----------------+ + * + * If ATYP & ONETIMEAUTH_FLAG(0x10) != 0, Authentication (HMAC-SHA1) is enabled. + * + * The key of HMAC-SHA1 is (IV + KEY) and the input is the whole header. + * The output of HMAC-SHA is truncated to 10 bytes (leftmost bits). + */ + + /* + * Shadowsocks Request's Chunk Authentication for TCP Relay's payload + * (No chunk authentication for response's payload): + * + * +------+-----------+-------------+------+ + * | LEN | HMAC-SHA1 | DATA | ... + * +------+-----------+-------------+------+ + * | 2 | 10 | Variable | ... + * +------+-----------+-------------+------+ + * + * The key of HMAC-SHA1 is (IV + CHUNK ID) + * The output of HMAC-SHA is truncated to 10 bytes (leftmost bits). + */ + + int offset = 0; + int need_query = 0; + char atyp = server->buf->array[offset++]; + char host[257] = { 0 }; + uint16_t port = 0; + struct addrinfo info; + struct sockaddr_storage storage; + memset(&info, 0, sizeof(struct addrinfo)); + memset(&storage, 0, sizeof(struct sockaddr_storage)); + + if (auth || (atyp & ONETIMEAUTH_FLAG)) { + size_t header_len = parse_header_len(atyp, server->buf->array, offset); + size_t len = server->buf->len; + + if (header_len == 0 || len < offset + header_len + ONETIMEAUTH_BYTES) { + report_addr(server->fd, MALFORMED); + close_and_free_server(EV_A_ server); + return; + } + + server->buf->len = offset + header_len + ONETIMEAUTH_BYTES; + if (ss_onetimeauth_verify(server->buf, server->d_ctx->evp.iv)) { + report_addr(server->fd, BAD); + close_and_free_server(EV_A_ server); + return; + } + + server->buf->len = len; + server->auth = 1; + } + + // get remote addr and port + if ((atyp & ADDRTYPE_MASK) == 1) { + // IP V4 + struct sockaddr_in *addr = (struct sockaddr_in *)&storage; + size_t in_addr_len = sizeof(struct in_addr); + addr->sin_family = AF_INET; + if (server->buf->len >= in_addr_len + 3) { + addr->sin_addr = *(struct in_addr *)(server->buf->array + offset); + dns_ntop(AF_INET, (const void *)(server->buf->array + offset), + host, INET_ADDRSTRLEN); + offset += in_addr_len; + } else { + LOGE("invalid header with addr type %d", atyp); + report_addr(server->fd, MALFORMED); + close_and_free_server(EV_A_ server); + return; + } + addr->sin_port = *(uint16_t *)(server->buf->array + offset); + info.ai_family = AF_INET; + info.ai_socktype = SOCK_STREAM; + info.ai_protocol = IPPROTO_TCP; + info.ai_addrlen = sizeof(struct sockaddr_in); + info.ai_addr = (struct sockaddr *)addr; + } else if ((atyp & ADDRTYPE_MASK) == 3) { + // Domain name + uint8_t name_len = *(uint8_t *)(server->buf->array + offset); + if (name_len + 4 <= server->buf->len) { + memcpy(host, server->buf->array + offset + 1, name_len); + offset += name_len + 1; + } else { + LOGE("invalid name length: %d", name_len); + report_addr(server->fd, MALFORMED); + close_and_free_server(EV_A_ server); + return; + } + if (acl && outbound_block_match_host(host) == 1) { + if (verbose) + LOGI("outbound blocked %s", host); + close_and_free_server(EV_A_ server); + return; + } + struct cork_ip ip; + if (cork_ip_init(&ip, host) != -1) { + info.ai_socktype = SOCK_STREAM; + info.ai_protocol = IPPROTO_TCP; + if (ip.version == 4) { + struct sockaddr_in *addr = (struct sockaddr_in *)&storage; + dns_pton(AF_INET, host, &(addr->sin_addr)); + addr->sin_port = *(uint16_t *)(server->buf->array + offset); + addr->sin_family = AF_INET; + info.ai_family = AF_INET; + info.ai_addrlen = sizeof(struct sockaddr_in); + info.ai_addr = (struct sockaddr *)addr; + } else if (ip.version == 6) { + struct sockaddr_in6 *addr = (struct sockaddr_in6 *)&storage; + dns_pton(AF_INET6, host, &(addr->sin6_addr)); + addr->sin6_port = *(uint16_t *)(server->buf->array + offset); + addr->sin6_family = AF_INET6; + info.ai_family = AF_INET6; + info.ai_addrlen = sizeof(struct sockaddr_in6); + info.ai_addr = (struct sockaddr *)addr; + } + } else { + if (!validate_hostname(host, name_len)) { + LOGE("invalid host name"); + report_addr(server->fd, MALFORMED); + close_and_free_server(EV_A_ server); + return; + } + need_query = 1; + } + } else if ((atyp & ADDRTYPE_MASK) == 4) { + // IP V6 + struct sockaddr_in6 *addr = (struct sockaddr_in6 *)&storage; + size_t in6_addr_len = sizeof(struct in6_addr); + addr->sin6_family = AF_INET6; + if (server->buf->len >= in6_addr_len + 3) { + addr->sin6_addr = *(struct in6_addr *)(server->buf->array + offset); + dns_ntop(AF_INET6, (const void *)(server->buf->array + offset), + host, INET6_ADDRSTRLEN); + offset += in6_addr_len; + } else { + LOGE("invalid header with addr type %d", atyp); + report_addr(server->fd, MALFORMED); + close_and_free_server(EV_A_ server); + return; + } + addr->sin6_port = *(uint16_t *)(server->buf->array + offset); + info.ai_family = AF_INET6; + info.ai_socktype = SOCK_STREAM; + info.ai_protocol = IPPROTO_TCP; + info.ai_addrlen = sizeof(struct sockaddr_in6); + info.ai_addr = (struct sockaddr *)addr; + } + + if (offset == 1) { + LOGE("invalid header with addr type %d", atyp); + report_addr(server->fd, MALFORMED); + close_and_free_server(EV_A_ server); + return; + } + + port = (*(uint16_t *)(server->buf->array + offset)); + + offset += 2; + + if (server->auth) { + offset += ONETIMEAUTH_BYTES; + } + + if (server->buf->len < offset) { + report_addr(server->fd, MALFORMED); + close_and_free_server(EV_A_ server); + return; + } else { + server->buf->len -= offset; + memmove(server->buf->array, server->buf->array + offset, server->buf->len); + } + + if (verbose) { + if ((atyp & ADDRTYPE_MASK) == 4) + LOGI("connect to [%s]:%d", host, ntohs(port)); + else + LOGI("connect to %s:%d", host, ntohs(port)); + } + + if (server->auth && !ss_check_hash(server->buf, server->chunk, server->d_ctx, BUF_SIZE)) { + LOGE("hash error"); + report_addr(server->fd, BAD); + close_and_free_server(EV_A_ server); + return; + } + + + if (!need_query) { + remote_t *remote = connect_to_remote(EV_A_ &info, server); + + if (remote == NULL) { + LOGE("connect error"); + close_and_free_server(EV_A_ server); + return; + } else { + server->remote = remote; + remote->server = server; + + // XXX: should handle buffer carefully + if (server->buf->len > 0) { + memcpy(remote->buf->array, server->buf->array, server->buf->len); + remote->buf->len = server->buf->len; + remote->buf->idx = 0; + server->buf->len = 0; + server->buf->idx = 0; + } + + // waiting on remote connected event + ev_io_stop(EV_A_ & server_recv_ctx->io); + ev_io_start(EV_A_ & remote->send_ctx->io); + } + } else { + query_t *query = (query_t *)ss_malloc(sizeof(query_t)); + query->server = server; + snprintf(query->hostname, 256, "%s", host); + + server->stage = STAGE_RESOLVE; + server->query = resolv_query(host, server_resolve_cb, + query_free_cb, query, port); + + ev_io_stop(EV_A_ & server_recv_ctx->io); + } + + return; + } + // should not reach here + FATAL("server context error"); +} + +static void +server_send_cb(EV_P_ ev_io *w, int revents) +{ + server_ctx_t *server_send_ctx = (server_ctx_t *)w; + server_t *server = server_send_ctx->server; + remote_t *remote = server->remote; + + if (remote == NULL) { + LOGE("invalid server"); + close_and_free_server(EV_A_ server); + return; + } + + if (server->buf->len == 0) { + // close and free + if (verbose) { + LOGI("server_send close the connection"); + } + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } else { + // has data to send + ssize_t s = send(server->fd, server->buf->array + server->buf->idx, + server->buf->len, 0); + if (s == -1) { + if (errno != EAGAIN && errno != EWOULDBLOCK) { + ERROR("server_send_send"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + } + return; + } else if (s < server->buf->len) { + // partly sent, move memory, wait for the next time to send + server->buf->len -= s; + server->buf->idx += s; + return; + } else { + // all sent out, wait for reading + server->buf->len = 0; + server->buf->idx = 0; + ev_io_stop(EV_A_ & server_send_ctx->io); + if (remote != NULL) { + ev_io_start(EV_A_ & remote->recv_ctx->io); + return; + } else { + LOGE("invalid remote"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + } + } +} + +static void +block_list_clear_cb(EV_P_ ev_timer *watcher, int revents) +{ + clear_block_list(); +} + +static void +server_timeout_cb(EV_P_ ev_timer *watcher, int revents) +{ + server_ctx_t *server_ctx + = cork_container_of(watcher, server_ctx_t, watcher); + server_t *server = server_ctx->server; + remote_t *remote = server->remote; + + if (verbose) { + LOGI("TCP connection timeout"); + } + + if (server->stage < STAGE_PARSE) { + if (verbose) { + size_t len = server->stage ? + server->header_buf->len : server->buf->len; +#ifdef __MINGW32__ + LOGI("incomplete header: %u", len); +#else + LOGI("incomplete header: %zu", len); +#endif + } + report_addr(server->fd, SUSPICIOUS); + } + + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); +} + +static void +query_free_cb(void *data) +{ + if (data != NULL) { + ss_free(data); + } +} + +static void +server_resolve_cb(struct sockaddr *addr, void *data) +{ + query_t *query = (query_t *)data; + server_t *server = query->server; + struct ev_loop *loop = server->listen_ctx->loop; + + server->query = NULL; + + if (addr == NULL) { + LOGE("unable to resolve %s", query->hostname); + close_and_free_server(EV_A_ server); + } else { + if (verbose) { + LOGI("successfully resolved %s", query->hostname); + } + + struct addrinfo info; + memset(&info, 0, sizeof(struct addrinfo)); + info.ai_socktype = SOCK_STREAM; + info.ai_protocol = IPPROTO_TCP; + info.ai_addr = addr; + + if (addr->sa_family == AF_INET) { + info.ai_family = AF_INET; + info.ai_addrlen = sizeof(struct sockaddr_in); + } else if (addr->sa_family == AF_INET6) { + info.ai_family = AF_INET6; + info.ai_addrlen = sizeof(struct sockaddr_in6); + } + + remote_t *remote = connect_to_remote(EV_A_ &info, server); + + if (remote == NULL) { + close_and_free_server(EV_A_ server); + } else { + server->remote = remote; + remote->server = server; + + // XXX: should handle buffer carefully + if (server->buf->len > 0) { + memcpy(remote->buf->array, server->buf->array + server->buf->idx, + server->buf->len); + remote->buf->len = server->buf->len; + remote->buf->idx = 0; + server->buf->len = 0; + server->buf->idx = 0; + } + + // listen to remote connected event + ev_io_start(EV_A_ & remote->send_ctx->io); + } + } +} + +static void +remote_recv_cb(EV_P_ ev_io *w, int revents) +{ + remote_ctx_t *remote_recv_ctx = (remote_ctx_t *)w; + remote_t *remote = remote_recv_ctx->remote; + server_t *server = remote->server; + + if (server == NULL) { + LOGE("invalid server"); + close_and_free_remote(EV_A_ remote); + return; + } + + ev_timer_again(EV_A_ & server->recv_ctx->watcher); + + ssize_t r = recv(remote->fd, server->buf->array, BUF_SIZE, 0); + + if (r == 0) { + // connection closed + if (verbose) { + LOGI("remote_recv close the connection"); + } + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } else if (r == -1) { + if (errno == EAGAIN || errno == EWOULDBLOCK) { + // no data + // continue to wait for recv + return; + } else { + ERROR("remote recv"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + } + + rx += r; + + server->buf->len = r; + + // SSR beg + server_info _server_info; + if (server->obfs_plugin) { + server->obfs_plugin->get_server_info(server->obfs, &_server_info); + _server_info.head_len = get_head_size(server->buf->array, server->buf->len, 30); + server->obfs_plugin->set_server_info(server->obfs, &_server_info); + } + + if (server->protocol_plugin && server->obfs_compatible_state == 0) { + obfs_class *protocol_plugin = server->protocol_plugin; + if (protocol_plugin->server_pre_encrypt) { + server->buf->len = protocol_plugin->server_pre_encrypt(server->protocol, &server->buf->array, server->buf->len, &server->buf->capacity); + } + } + + int err = ss_encrypt(server->buf, server->e_ctx, BUF_SIZE); + + if (err) { + LOGE("invalid password or cipher"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + + if (server->obfs_plugin && server->obfs_compatible_state == 0) { + obfs_class *obfs_plugin = server->obfs_plugin; + if (obfs_plugin->server_encode) { + server->buf->len = obfs_plugin->server_encode(server->obfs, &server->buf->array, server->buf->len, &server->buf->capacity); + } + } + // SSR end + + int s = send(server->fd, server->buf->array, server->buf->len, 0); + + if (s == -1) { + if (errno == EAGAIN || errno == EWOULDBLOCK) { + // no data, wait for send + server->buf->idx = 0; + ev_io_stop(EV_A_ & remote_recv_ctx->io); + ev_io_start(EV_A_ & server->send_ctx->io); + } else { + ERROR("remote_recv_send"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + } else if (s < server->buf->len) { + server->buf->len -= s; + server->buf->idx = s; + ev_io_stop(EV_A_ & remote_recv_ctx->io); + ev_io_start(EV_A_ & server->send_ctx->io); + } + + // Disable TCP_NODELAY after the first response are sent + if (!remote->recv_ctx->connected) { + int opt = 0; + setsockopt(server->fd, SOL_TCP, TCP_NODELAY, &opt, sizeof(opt)); + setsockopt(remote->fd, SOL_TCP, TCP_NODELAY, &opt, sizeof(opt)); + remote->recv_ctx->connected = 1; + } +} + +static void +remote_send_cb(EV_P_ ev_io *w, int revents) +{ + remote_ctx_t *remote_send_ctx = (remote_ctx_t *)w; + remote_t *remote = remote_send_ctx->remote; + server_t *server = remote->server; + + if (server == NULL) { + LOGE("invalid server"); + close_and_free_remote(EV_A_ remote); + return; + } + + if (!remote_send_ctx->connected) { + struct sockaddr_storage addr; + socklen_t len = sizeof(struct sockaddr_storage); + memset(&addr, 0, len); + int r = getpeername(remote->fd, (struct sockaddr *)&addr, &len); + if (r == 0) { + if (verbose) { + LOGI("remote connected"); + } + remote_send_ctx->connected = 1; + + // Clear the state of this address in the block list + reset_addr(server->fd); + + if (remote->buf->len == 0) { + server->stage = STAGE_STREAM; + ev_io_stop(EV_A_ & remote_send_ctx->io); + ev_io_start(EV_A_ & server->recv_ctx->io); + ev_io_start(EV_A_ & remote->recv_ctx->io); + return; + } + } else { + ERROR("getpeername"); + // not connected + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } + } + + if (remote->buf->len == 0) { + // close and free + if (verbose) { + LOGI("remote_send close the connection"); + } + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + return; + } else { + // has data to send + ssize_t s = send(remote->fd, remote->buf->array + remote->buf->idx, + remote->buf->len, 0); + if (s == -1) { + if (errno != EAGAIN && errno != EWOULDBLOCK) { + ERROR("remote_send_send"); + // close and free + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + } + return; + } else if (s < remote->buf->len) { + // partly sent, move memory, wait for the next time to send + remote->buf->len -= s; + remote->buf->idx += s; + return; + } else { + // all sent out, wait for reading + remote->buf->len = 0; + remote->buf->idx = 0; + ev_io_stop(EV_A_ & remote_send_ctx->io); + if (server != NULL) { + ev_io_start(EV_A_ & server->recv_ctx->io); + if (server->stage != STAGE_STREAM) { + server->stage = STAGE_STREAM; + ev_io_start(EV_A_ & remote->recv_ctx->io); + } + } else { + LOGE("invalid server"); + close_and_free_remote(EV_A_ remote); + close_and_free_server(EV_A_ server); + } + return; + } + } +} + +static remote_t * +new_remote(int fd) +{ + if (verbose) { + remote_conn++; + } + + remote_t *remote; + + remote = ss_malloc(sizeof(remote_t)); + remote->recv_ctx = ss_malloc(sizeof(remote_ctx_t)); + remote->send_ctx = ss_malloc(sizeof(remote_ctx_t)); + remote->buf = ss_malloc(sizeof(buffer_t)); + remote->fd = fd; + remote->recv_ctx->remote = remote; + remote->recv_ctx->connected = 0; + remote->send_ctx->remote = remote; + remote->send_ctx->connected = 0; + remote->server = NULL; + + ev_io_init(&remote->recv_ctx->io, remote_recv_cb, fd, EV_READ); + ev_io_init(&remote->send_ctx->io, remote_send_cb, fd, EV_WRITE); + + balloc(remote->buf, BUF_SIZE); + + return remote; +} + +static void +free_remote(remote_t *remote) +{ + if (remote->server != NULL) { + remote->server->remote = NULL; + } + if (remote->buf != NULL) { + bfree(remote->buf); + ss_free(remote->buf); + } + ss_free(remote->recv_ctx); + ss_free(remote->send_ctx); + ss_free(remote); +} + +static void +close_and_free_remote(EV_P_ remote_t *remote) +{ + if (remote != NULL) { + ev_io_stop(EV_A_ & remote->send_ctx->io); + ev_io_stop(EV_A_ & remote->recv_ctx->io); + close(remote->fd); + free_remote(remote); + if (verbose) { + remote_conn--; + LOGI("current remote connection: %d", remote_conn); + } + } +} + +static server_t * +new_server(int fd, listen_ctx_t *listener) +{ + if (verbose) { + server_conn++; + } + + server_t *server; + server = ss_malloc(sizeof(server_t)); + + memset(server, 0, sizeof(server_t)); + + server->recv_ctx = ss_malloc(sizeof(server_ctx_t)); + server->send_ctx = ss_malloc(sizeof(server_ctx_t)); + server->buf = ss_malloc(sizeof(buffer_t)); + server->header_buf = ss_malloc(sizeof(buffer_t)); + server->fd = fd; + server->recv_ctx->server = server; + server->recv_ctx->connected = 0; + server->send_ctx->server = server; + server->send_ctx->connected = 0; + server->stage = STAGE_INIT; + server->query = NULL; + server->listen_ctx = listener; + server->remote = NULL; + + if (listener->method) { + server->e_ctx = ss_malloc(sizeof(enc_ctx_t)); + server->d_ctx = ss_malloc(sizeof(enc_ctx_t)); + enc_ctx_init(listener->method, server->e_ctx, 1); + enc_ctx_init(listener->method, server->d_ctx, 0); + } else { + server->e_ctx = NULL; + server->d_ctx = NULL; + } + + int request_timeout = min(MAX_REQUEST_TIMEOUT, listener->timeout) + + rand() % MAX_REQUEST_TIMEOUT; + + ev_io_init(&server->recv_ctx->io, server_recv_cb, fd, EV_READ); + ev_io_init(&server->send_ctx->io, server_send_cb, fd, EV_WRITE); + ev_timer_init(&server->recv_ctx->watcher, server_timeout_cb, + request_timeout, listener->timeout); + + balloc(server->buf, BUF_SIZE); + balloc(server->header_buf, BUF_SIZE); + + server->chunk = (chunk_t *)malloc(sizeof(chunk_t)); + memset(server->chunk, 0, sizeof(chunk_t)); + server->chunk->buf = ss_malloc(sizeof(buffer_t)); + memset(server->chunk->buf, 0, sizeof(buffer_t)); + + cork_dllist_add(&connections, &server->entries); + + return server; +} + +static void +free_server(server_t *server) +{ + cork_dllist_remove(&server->entries); + + if (server->chunk != NULL) { + if (server->chunk->buf != NULL) { + bfree(server->chunk->buf); + ss_free(server->chunk->buf); + } + ss_free(server->chunk); + } + if (server->remote != NULL) { + server->remote->server = NULL; + } + if (server->e_ctx != NULL) { + cipher_context_release(&server->e_ctx->evp); + ss_free(server->e_ctx); + } + if (server->d_ctx != NULL) { + cipher_context_release(&server->d_ctx->evp); + ss_free(server->d_ctx); + } + if (server->buf != NULL) { + bfree(server->buf); + ss_free(server->buf); + } + if (server->header_buf != NULL) { + bfree(server->header_buf); + ss_free(server->header_buf); + } + + ss_free(server->recv_ctx); + ss_free(server->send_ctx); + ss_free(server); +} + +static void +close_and_free_server(EV_P_ server_t *server) +{ + if (server != NULL) { + if (server->query != NULL) { + resolv_cancel(server->query); + server->query = NULL; + } + ev_io_stop(EV_A_ & server->send_ctx->io); + ev_io_stop(EV_A_ & server->recv_ctx->io); + ev_timer_stop(EV_A_ & server->recv_ctx->watcher); + close(server->fd); + free_server(server); + if (verbose) { + server_conn--; + LOGI("current server connection: %d", server_conn); + } + } +} + +static void +signal_cb(EV_P_ ev_signal *w, int revents) +{ + if (revents & EV_SIGNAL) { + switch (w->signum) { + case SIGINT: + case SIGTERM: + ev_unloop(EV_A_ EVUNLOOP_ALL); + } + } +} + +static void +accept_cb(EV_P_ ev_io *w, int revents) +{ + listen_ctx_t *listener = (listen_ctx_t *)w; + int serverfd = accept(listener->fd, NULL, NULL); + if (serverfd == -1) { + ERROR("accept"); + return; + } + + char *peer_name = get_peer_name(serverfd); + if (peer_name != NULL) { + int in_white_list = 0; + if (acl) { + if ((get_acl_mode() == BLACK_LIST && acl_match_host(peer_name) == 1) + || (get_acl_mode() == WHITE_LIST && acl_match_host(peer_name) >= 0)) { + LOGE("Access denied from %s", peer_name); + close(serverfd); + return; + } else if (acl_match_host(peer_name) == -1) { + in_white_list = 1; + } + } + if (!in_white_list && check_block_list(peer_name)) { + LOGE("block all requests from %s", peer_name); +#ifdef __linux__ + set_linger(serverfd); +#endif + close(serverfd); + return; + } + } + + int opt = 1; + setsockopt(serverfd, SOL_TCP, TCP_NODELAY, &opt, sizeof(opt)); +#ifdef SO_NOSIGPIPE + setsockopt(serverfd, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)); +#endif + setnonblocking(serverfd); + + if (verbose) { + LOGI("accept a connection"); + } + + server_t *server = new_server(serverfd, listener); + + // SSR beg + server->obfs_plugin = new_obfs_class(server->listen_ctx->obfs_name); + if (server->obfs_plugin) { + server->obfs = server->obfs_plugin->new_obfs(); + server->obfs_compatible_state = 0; + } + server->protocol_plugin = new_obfs_class(server->listen_ctx->protocol_name); + if (server->protocol_plugin) { + server->protocol = server->protocol_plugin->new_obfs(); + server->protocol_compatible_state = 0; + } + server_info _server_info; + memset(&_server_info, 0, sizeof(server_info)); + _server_info.param = server->listen_ctx->obfs_param; + if(server->obfs_plugin) + _server_info.g_data = server->obfs_plugin->init_data(); + _server_info.head_len = 7; + _server_info.iv = server->e_ctx->evp.iv; + _server_info.iv_len = enc_get_iv_len(); + _server_info.key = enc_get_key(); + _server_info.key_len = enc_get_key_len(); + _server_info.tcp_mss = 1460; + + if (server->obfs_plugin) + server->obfs_plugin->set_server_info(server->obfs, &_server_info); + + _server_info.param = server->listen_ctx->protocol_param; + if (server->protocol_plugin) + _server_info.g_data = server->protocol_plugin->init_data(); + + if (server->protocol_plugin) + server->protocol_plugin->set_server_info(server->protocol, &_server_info); + // SSR end + + ev_io_start(EV_A_ & server->recv_ctx->io); + ev_timer_start(EV_A_ & server->recv_ctx->watcher); +} + +int +main(int argc, char **argv) +{ + int i, c; + int pid_flags = 0; + int mptcp = 0; + int firewall = 0; + int mtu = 0; + char *user = NULL; + char *password = NULL; + char *timeout = NULL; + char *protocol = NULL; // SSR + char *protocol_param = NULL; // SSR + char *method = NULL; + char *obfs = NULL; // SSR + char *obfs_param = NULL; // SSR + char *pid_path = NULL; + char *conf_path = NULL; + char *iface = NULL; + + int server_num = 0; + const char *server_host[MAX_REMOTE_NUM]; + + char *nameservers[MAX_DNS_NUM + 1]; + int nameserver_num = 0; + + int option_index = 0; + static struct option long_options[] = { + { "fast-open", no_argument, 0, 0 }, + { "acl", required_argument, 0, 0 }, + { "manager-address", required_argument, 0, 0 }, + { "mtu", required_argument, 0, 0 }, + { "help", no_argument, 0, 0 }, +#ifdef __linux__ + { "mptcp", no_argument, 0, 0 }, + { "firewall", no_argument, 0, 0 }, +#endif + { 0, 0, 0, 0 } + }; + + opterr = 0; + + USE_TTY(); + + while ((c = getopt_long(argc, argv, "f:s:p:l:k:t:m:b:c:i:d:a:n:O:o:G:g:huUvA6", + long_options, &option_index)) != -1) { + switch (c) { + case 0: + if (option_index == 0) { + fast_open = 1; + } else if (option_index == 1) { + LOGI("initializing acl..."); + acl = !init_acl(optarg); + } else if (option_index == 2) { + manager_address = optarg; + } else if (option_index == 3) { + mtu = atoi(optarg); + LOGI("set MTU to %d", mtu); + } else if (option_index == 4) { + usage(); + exit(EXIT_SUCCESS); + } else if (option_index == 5) { + mptcp = 1; + LOGI("enable multipath TCP"); + } else if (option_index == 6) { + firewall = 1; + LOGI("enable firewall rules"); + } + break; + case 's': + if (server_num < MAX_REMOTE_NUM) { + server_host[server_num++] = optarg; + } + break; + case 'b': + bind_address = optarg; + break; + case 'p': + server_port = optarg; + break; + case 'k': + password = optarg; + break; + case 'f': + pid_flags = 1; + pid_path = optarg; + break; + case 't': + timeout = optarg; + break; + // SSR beg + case 'O': + protocol = optarg; + break; + case 'm': + method = optarg; + break; + case 'o': + obfs = optarg; + break; + case 'G': + protocol_param = optarg; + break; + case 'g': + obfs_param = optarg; + break; + // SSR end + case 'c': + conf_path = optarg; + break; + case 'i': + iface = optarg; + break; + case 'd': + if (nameserver_num < MAX_DNS_NUM) { + nameservers[nameserver_num++] = optarg; + } + break; + case 'a': + user = optarg; + break; +#ifdef HAVE_SETRLIMIT + case 'n': + nofile = atoi(optarg); + break; +#endif + case 'u': + mode = TCP_AND_UDP; + break; + case 'U': + mode = UDP_ONLY; + break; + case 'v': + verbose = 1; + break; + case 'h': + usage(); + exit(EXIT_SUCCESS); + case 'A': + auth = 1; + break; + case '6': + ipv6first = 1; + break; + case '?': + // The option character is not recognized. + LOGE("Unrecognized option: %s", optarg); + opterr = 1; + break; + } + } + + if (opterr) { + usage(); + exit(EXIT_FAILURE); + } + + if (argc == 1) { + if (conf_path == NULL) { + conf_path = DEFAULT_CONF_PATH; + } + } + + if (conf_path != NULL) { + jconf_t *conf = read_jconf(conf_path); + if (server_num == 0) { + server_num = conf->remote_num; + for (i = 0; i < server_num; i++) + server_host[i] = conf->remote_addr[i].host; + } + if (server_port == NULL) { + server_port = conf->remote_port; + } + if (password == NULL) { + password = conf->password; + } + // SSR beg + if (protocol == NULL) { + protocol = conf->protocol; + LOGI("protocol %s", protocol); + } + if (protocol_param == NULL) { + protocol_param = conf->protocol_param; + LOGI("protocol_param %s", obfs_param); + } + if (method == NULL) { + method = conf->method; + LOGI("method %s", method); + } + if (obfs == NULL) { + obfs = conf->obfs; + LOGI("obfs %s", obfs); + } + if (obfs_param == NULL) { + obfs_param = conf->obfs_param; + LOGI("obfs_param %s", obfs_param); + } + // SSR end + if (timeout == NULL) { + timeout = conf->timeout; + } + if (user == NULL) { + user = conf->user; + } + if (auth == 0) { + auth = conf->auth; + } + if (mode == TCP_ONLY) { + mode = conf->mode; + } + if (mtu == 0) { + mtu = conf->mtu; + } + if (mptcp == 0) { + mptcp = conf->mptcp; + } +#ifdef TCP_FASTOPEN + if (fast_open == 0) { + fast_open = conf->fast_open; + } +#endif +#ifdef HAVE_SETRLIMIT + if (nofile == 0) { + nofile = conf->nofile; + } +#endif + if (conf->nameserver != NULL) { + nameservers[nameserver_num++] = conf->nameserver; + } + if (ipv6first == 0) { + ipv6first = conf->ipv6_first; + } + } + + //_compatible + if(strlen(protocol)>11) + { + char *text; + text = (char*)malloc(12); + memcpy(text, protocol + strlen(protocol) - 11, 12); + + if(strcmp(text, "_compatible") == 0) + { + free(text); + text = (char*)malloc(strlen(protocol) - 11); + memcpy(text, protocol, strlen(protocol) - 11); + int length = strlen(protocol) - 11; + free(protocol); + obfs = (char*)malloc(length); + memset(protocol, 0x00, length); + memcpy(protocol, text, length); + LOGI("protocol compatible enable, %s", protocol); + free(text); + protocol_compatible = 1; + } + } + + if(strlen(obfs)>11) + { + char *text; + text = (char*)malloc(12); + memcpy(text, obfs + strlen(obfs) - 11, 12); + + if(strcmp(text, "_compatible") == 0) + { + free(text); + text = (char*)malloc(strlen(obfs) - 11); + memcpy(text, obfs, strlen(obfs) - 11); + int length = strlen(obfs) - 11; + free(obfs); + obfs = (char*)malloc(length); + memset(obfs, 0x00, length); + memcpy(obfs, text, length); + LOGI("obfs compatible enable, %s", obfs); + free(text); + obfs_compatible = 1; + } + } + + + if (server_num == 0) { + server_host[server_num++] = NULL; + } + + if (server_num == 0 || server_port == NULL || password == NULL) { + usage(); + exit(EXIT_FAILURE); + } + + if (protocol && strcmp(protocol, "verify_sha1") == 0) { + auth = 1; + protocol = NULL; + } + + if (method == NULL) { + method = "rc4-md5"; + } + + if (timeout == NULL) { + timeout = "60"; + } + +#ifdef HAVE_SETRLIMIT + /* + * no need to check the return value here since we will show + * the user an error message if setrlimit(2) fails + */ + if (nofile > 1024) { + if (verbose) { + LOGI("setting NOFILE to %d", nofile); + } + set_nofile(nofile); + } +#endif + + if (pid_flags) { + USE_SYSLOG(argv[0]); + daemonize(pid_path); + } + + if (ipv6first) { + LOGI("resolving hostname to IPv6 address first"); + } + + if (fast_open == 1) { +#ifdef TCP_FASTOPEN + LOGI("using tcp fast open"); +#else + LOGE("tcp fast open is not supported by this environment"); + fast_open = 0; +#endif + } + + if (auth) { + LOGI("onetime authentication enabled"); + } + + if (mode != TCP_ONLY) { + LOGI("UDP relay enabled"); + } + + if (mode == UDP_ONLY) { + LOGI("TCP relay disabled"); + } + +#ifdef __MINGW32__ + winsock_init(); +#else + // ignore SIGPIPE + signal(SIGPIPE, SIG_IGN); + signal(SIGCHLD, SIG_IGN); + signal(SIGABRT, SIG_IGN); +#endif + + struct ev_signal sigint_watcher; + struct ev_signal sigterm_watcher; + ev_signal_init(&sigint_watcher, signal_cb, SIGINT); + ev_signal_init(&sigterm_watcher, signal_cb, SIGTERM); + ev_signal_start(EV_DEFAULT, &sigint_watcher); + ev_signal_start(EV_DEFAULT, &sigterm_watcher); + + // setup keys + LOGI("initializing ciphers... %s", method); + int m = enc_init(password, method); + + // initialize ev loop + struct ev_loop *loop = EV_DEFAULT; + + // setup udns + if (nameserver_num == 0) { +#ifdef __MINGW32__ + nameservers[nameserver_num++] = "8.8.8.8"; + resolv_init(loop, nameservers, nameserver_num, ipv6first); +#else + resolv_init(loop, NULL, 0, ipv6first); +#endif + } else { + resolv_init(loop, nameservers, nameserver_num, ipv6first); + } + + for (int i = 0; i < nameserver_num; i++) + LOGI("using nameserver: %s", nameservers[i]); + + // initialize listen context + listen_ctx_t listen_ctx_list[server_num]; + + // bind to each interface + while (server_num > 0) { + int index = --server_num; + const char *host = server_host[index]; + + if (mode != UDP_ONLY) { + // Bind to port + int listenfd; + listenfd = create_and_bind(host, server_port, mptcp); + if (listenfd == -1) { + FATAL("bind() error"); + } + if (listen(listenfd, SSMAXCONN) == -1) { + FATAL("listen() error"); + } + setfastopen(listenfd); + setnonblocking(listenfd); + listen_ctx_t *listen_ctx = &listen_ctx_list[index]; + + // Setup proxy context + listen_ctx->timeout = atoi(timeout); + listen_ctx->fd = listenfd; + listen_ctx->method = m; + listen_ctx->iface = iface; + + // SSR beg + listen_ctx->protocol_name = protocol; + listen_ctx->protocol_param = protocol_param; + listen_ctx->method = m; + listen_ctx->obfs_name = obfs; + listen_ctx->obfs_param = obfs_param; + listen_ctx->list_protocol_global = malloc(sizeof(void *)); + listen_ctx->list_obfs_global = malloc(sizeof(void *)); + memset(listen_ctx->list_protocol_global, 0, sizeof(void *)); + memset(listen_ctx->list_obfs_global, 0, sizeof(void *)); + // SSR end + + listen_ctx->loop = loop; + + ev_io_init(&listen_ctx->io, accept_cb, listenfd, EV_READ); + ev_io_start(loop, &listen_ctx->io); + } + + // Setup UDP + if (mode != TCP_ONLY) { + init_udprelay(server_host[index], server_port, mtu, m, + auth, atoi(timeout), iface, protocol, protocol_param); + } + + if (host && strcmp(host, ":") > 0) + LOGI("listening at [%s]:%s", host, server_port); + else + LOGI("listening at %s:%s", host ? host : "*", server_port); + } + + if (manager_address != NULL) { + ev_timer_init(&stat_update_watcher, stat_update_cb, UPDATE_INTERVAL, UPDATE_INTERVAL); + ev_timer_start(EV_DEFAULT, &stat_update_watcher); + } + + ev_timer_init(&block_list_watcher, block_list_clear_cb, UPDATE_INTERVAL, UPDATE_INTERVAL); + ev_timer_start(EV_DEFAULT, &block_list_watcher); + + // setuid + if (user != NULL && ! run_as(user)) { + FATAL("failed to switch user"); + } + +#ifndef __MINGW32__ + if (geteuid() == 0){ + LOGI("running from root user"); + } else if (firewall) { + LOGE("firewall setup requires running from root user"); + exit(-1); + } +#endif + + // init block list + init_block_list(firewall); + + // Init connections + cork_dllist_init(&connections); + + // start ev loop + ev_run(loop, 0); + + if (verbose) { + LOGI("closed gracefully"); + } + + // Free block list + free_block_list(); + + if (manager_address != NULL) { + ev_timer_stop(EV_DEFAULT, &stat_update_watcher); + } + ev_timer_stop(EV_DEFAULT, &block_list_watcher); + + // Clean up + for (int i = 0; i <= server_num; i++) { + listen_ctx_t *listen_ctx = &listen_ctx_list[i]; + if (mode != UDP_ONLY) { + ev_io_stop(loop, &listen_ctx->io); + close(listen_ctx->fd); + } + } + + if (mode != UDP_ONLY) { + free_connections(loop); + } + + if (mode != TCP_ONLY) { + free_udprelay(); + } + + resolv_shutdown(loop); + +#ifdef __MINGW32__ + winsock_cleanup(); +#endif + + ev_signal_stop(EV_DEFAULT, &sigint_watcher); + ev_signal_stop(EV_DEFAULT, &sigterm_watcher); + + return 0; +} diff --git a/shadowsocksr-libev/src/server/server.h b/shadowsocksr-libev/src/server/server.h new file mode 100644 index 000000000..4cd3cf6bf --- /dev/null +++ b/shadowsocksr-libev/src/server/server.h @@ -0,0 +1,115 @@ +/* + * server.h - Define shadowsocks server's buffers and callbacks + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#ifndef _SERVER_H +#define _SERVER_H + +#include +#include +#include + +#include "encrypt.h" +#include "jconf.h" +#include "resolv.h" +#include "obfs.h" +#include "protocol.h" + +#include "common.h" + +typedef struct listen_ctx { + ev_io io; + int fd; + int timeout; + int method; + char *iface; + struct ev_loop *loop; + + // SSR + char *protocol_name; + char *protocol_param; + char *obfs_name; + char *obfs_param; + void **list_protocol_global; + void **list_obfs_global; +} listen_ctx_t; + +typedef struct server_ctx { + ev_io io; + ev_timer watcher; + int connected; + struct server *server; +} server_ctx_t; + +typedef struct server { + int fd; + int stage; + buffer_t *buf; + ssize_t buf_capacity; + buffer_t *header_buf; + + int auth; + struct chunk *chunk; + + struct enc_ctx *e_ctx; + struct enc_ctx *d_ctx; + struct server_ctx *recv_ctx; + struct server_ctx *send_ctx; + struct listen_ctx *listen_ctx; + struct remote *remote; + + struct ResolvQuery *query; + + struct cork_dllist_item entries; + + // SSR + obfs *protocol; + obfs *obfs; + obfs_class *protocol_plugin; + obfs_class *obfs_plugin; + int obfs_compatible_state; + int protocol_compatible_state; +} server_t; + +typedef struct query { + server_t *server; + char hostname[257]; +} query_t; + +typedef struct remote_ctx { + ev_io io; + int connected; + struct remote *remote; +} remote_ctx_t; + +typedef struct remote { + int fd; + buffer_t *buf; + ssize_t buf_capacity; + struct remote_ctx *recv_ctx; + struct remote_ctx *send_ctx; + struct server *server; + + // SSR + int remote_index; +} remote_t; + +#endif // _SERVER_H diff --git a/shadowsocksr-libev/src/server/tls.c b/shadowsocksr-libev/src/server/tls.c new file mode 100644 index 000000000..5c4221605 --- /dev/null +++ b/shadowsocksr-libev/src/server/tls.c @@ -0,0 +1,263 @@ +/* + * Copyright (c) 2011 and 2012, Dustin Lundquist + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +/* + * This is a minimal TLS implementation intended only to parse the server name + * extension. This was created based primarily on Wireshark dissection of a + * TLS handshake and RFC4366. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include /* malloc() */ +#include /* strncpy() */ + +#ifndef __MINGW32__ +#include +#else +#include +#endif + +#include "tls.h" +#include "protocol.h" +#include "utils.h" + +#define SERVER_NAME_LEN 256 +#define TLS_HEADER_LEN 5 +#define TLS_HANDSHAKE_CONTENT_TYPE 0x16 +#define TLS_HANDSHAKE_TYPE_CLIENT_HELLO 0x01 + +#ifndef MIN +#define MIN(X, Y) ((X) < (Y) ? (X) : (Y)) +#endif + +extern int verbose; + +static int parse_tls_header(const char *, size_t, char **); +static int parse_extensions(const char *, size_t, char **); +static int parse_server_name_extension(const char *, size_t, char **); + +static const protocol_t tls_protocol_st = { + .default_port = 443, + .parse_packet = &parse_tls_header, +}; +const protocol_t *const tls_protocol = &tls_protocol_st; + +/* Parse a TLS packet for the Server Name Indication extension in the client + * hello handshake, returning the first servername found (pointer to static + * array) + * + * Returns: + * >=0 - length of the hostname and updates *hostname + * caller is responsible for freeing *hostname + * -1 - Incomplete request + * -2 - No Host header included in this request + * -3 - Invalid hostname pointer + * -4 - malloc failure + * < -4 - Invalid TLS client hello + */ +static int +parse_tls_header(const char *data, size_t data_len, char **hostname) +{ + char tls_content_type; + char tls_version_major; + char tls_version_minor; + size_t pos = TLS_HEADER_LEN; + size_t len; + + if (hostname == NULL) + return -3; + + /* Check that our TCP payload is at least large enough for a TLS header */ + if (data_len < TLS_HEADER_LEN) + return -1; + + /* SSL 2.0 compatible Client Hello + * + * High bit of first byte (length) and content type is Client Hello + * + * See RFC5246 Appendix E.2 + */ + if (data[0] & 0x80 && data[2] == 1) { + if (verbose) + LOGI("Received SSL 2.0 Client Hello which can not support SNI."); + return -2; + } + + tls_content_type = data[0]; + if (tls_content_type != TLS_HANDSHAKE_CONTENT_TYPE) { + if (verbose) + LOGI("Request did not begin with TLS handshake."); + return -5; + } + + tls_version_major = data[1]; + tls_version_minor = data[2]; + if (tls_version_major < 3) { + if (verbose) + LOGI("Received SSL %d.%d handshake which can not support SNI.", + tls_version_major, tls_version_minor); + + return -2; + } + + /* TLS record length */ + len = ((unsigned char)data[3] << 8) + + (unsigned char)data[4] + TLS_HEADER_LEN; + data_len = MIN(data_len, len); + + /* Check we received entire TLS record length */ + if (data_len < len) + return -1; + + /* + * Handshake + */ + if (pos + 1 > data_len) { + return -5; + } + if (data[pos] != TLS_HANDSHAKE_TYPE_CLIENT_HELLO) { + if (verbose) + LOGI("Not a client hello"); + + return -5; + } + + /* Skip past fixed length records: + * 1 Handshake Type + * 3 Length + * 2 Version (again) + * 32 Random + * to Session ID Length + */ + pos += 38; + + /* Session ID */ + if (pos + 1 > data_len) + return -5; + len = (unsigned char)data[pos]; + pos += 1 + len; + + /* Cipher Suites */ + if (pos + 2 > data_len) + return -5; + len = ((unsigned char)data[pos] << 8) + (unsigned char)data[pos + 1]; + pos += 2 + len; + + /* Compression Methods */ + if (pos + 1 > data_len) + return -5; + len = (unsigned char)data[pos]; + pos += 1 + len; + + if (pos == data_len && tls_version_major == 3 && tls_version_minor == 0) { + if (verbose) + LOGI("Received SSL 3.0 handshake without extensions"); + return -2; + } + + /* Extensions */ + if (pos + 2 > data_len) + return -5; + len = ((unsigned char)data[pos] << 8) + (unsigned char)data[pos + 1]; + pos += 2; + + if (pos + len > data_len) + return -5; + return parse_extensions(data + pos, len, hostname); +} + +static int +parse_extensions(const char *data, size_t data_len, char **hostname) +{ + size_t pos = 0; + size_t len; + + /* Parse each 4 bytes for the extension header */ + while (pos + 4 <= data_len) { + /* Extension Length */ + len = ((unsigned char)data[pos + 2] << 8) + + (unsigned char)data[pos + 3]; + + /* Check if it's a server name extension */ + if (data[pos] == 0x00 && data[pos + 1] == 0x00) { + /* There can be only one extension of each type, so we break + * our state and move p to beinnging of the extension here */ + if (pos + 4 + len > data_len) + return -5; + return parse_server_name_extension(data + pos + 4, len, hostname); + } + pos += 4 + len; /* Advance to the next extension header */ + } + /* Check we ended where we expected to */ + if (pos != data_len) + return -5; + + return -2; +} + +static int +parse_server_name_extension(const char *data, size_t data_len, + char **hostname) +{ + size_t pos = 2; /* skip server name list length */ + size_t len; + + while (pos + 3 < data_len) { + len = ((unsigned char)data[pos + 1] << 8) + + (unsigned char)data[pos + 2]; + + if (pos + 3 + len > data_len) + return -5; + + switch (data[pos]) { /* name type */ + case 0x00: /* host_name */ + *hostname = malloc(len + 1); + if (*hostname == NULL) { + ERROR("malloc() failure"); + return -4; + } + + strncpy(*hostname, data + pos + 3, len); + + (*hostname)[len] = '\0'; + + return len; + default: + if (verbose) + LOGI("Unknown server name extension name type: %d", + data[pos]); + } + pos += 3 + len; + } + /* Check we ended where we expected to */ + if (pos != data_len) + return -5; + + return -2; +} diff --git a/shadowsocksr-libev/src/server/tls.h b/shadowsocksr-libev/src/server/tls.h new file mode 100644 index 000000000..39989131f --- /dev/null +++ b/shadowsocksr-libev/src/server/tls.h @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2011 and 2012, Dustin Lundquist + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +#ifndef TLS_H +#define TLS_H + +#include "protocol.h" + +const protocol_t *const tls_protocol; + +#endif diff --git a/shadowsocksr-libev/src/server/tls1.2_ticket.c b/shadowsocksr-libev/src/server/tls1.2_ticket.c new file mode 100644 index 000000000..88970c09b --- /dev/null +++ b/shadowsocksr-libev/src/server/tls1.2_ticket.c @@ -0,0 +1,609 @@ + +#include "tls1.2_ticket.h" +#include "list.c" + +typedef struct tls12_ticket_auth_global_data { + uint8_t local_client_id[32]; + List client_data; + time_t startup_time; +}tls12_ticket_auth_global_data; + +typedef struct tls12_ticket_auth_local_data { + int handshake_status; + char *send_buffer; + int send_buffer_size; + char *recv_buffer; + int recv_buffer_size; +}tls12_ticket_auth_local_data; + +void tls12_ticket_auth_local_data_init(tls12_ticket_auth_local_data* local) { + local->handshake_status = 0; + local->send_buffer = malloc(0); + local->send_buffer_size = 0; + local->recv_buffer = malloc(0); + local->recv_buffer_size = 0; +} + +void * tls12_ticket_auth_init_data() { + tls12_ticket_auth_global_data *global = (tls12_ticket_auth_global_data*)malloc(sizeof(tls12_ticket_auth_global_data)); + rand_bytes(global->local_client_id, 32); + global->client_data = list_init(22); + global->startup_time = time(NULL); + return global; +} + +obfs * tls12_ticket_auth_new_obfs() { + obfs * self = new_obfs(); + self->l_data = malloc(sizeof(tls12_ticket_auth_local_data)); + tls12_ticket_auth_local_data_init((tls12_ticket_auth_local_data*)self->l_data); + return self; +} + +void tls12_ticket_auth_dispose(obfs *self) { + tls12_ticket_auth_local_data *local = (tls12_ticket_auth_local_data*)self->l_data; + if (local->send_buffer != NULL) { + free(local->send_buffer); + local->send_buffer = NULL; + } + if (local->recv_buffer != NULL) { + free(local->recv_buffer); + local->recv_buffer = NULL; + } + free(local); + dispose_obfs(self); +} + +int tls12_ticket_pack_auth_data(tls12_ticket_auth_global_data *global, server_info *server, char *outdata) { + int out_size = 32; + time_t t = time(NULL); + outdata[0] = t >> 24; + outdata[1] = t >> 16; + outdata[2] = t >> 8; + outdata[3] = t; + rand_bytes((uint8_t*)outdata + 4, 18); + + uint8_t *key = (uint8_t*)malloc(server->key_len + 32); + char hash[ONETIMEAUTH_BYTES * 2]; + memcpy(key, server->key, server->key_len); + memcpy(key + server->key_len, global->local_client_id, 32); + ss_sha1_hmac_with_key(hash, outdata, out_size - OBFS_HMAC_SHA1_LEN, key, server->key_len + 32); + free(key); + memcpy(outdata + out_size - OBFS_HMAC_SHA1_LEN, hash, OBFS_HMAC_SHA1_LEN); + return out_size; +} + +void tls12_ticket_auth_pack_data(char *encryptdata, int datalength, int start, int len, char *out_buffer, int outlength) { + out_buffer[outlength] = 0x17; + out_buffer[outlength + 1] = 0x3; + out_buffer[outlength + 2] = 0x3; + out_buffer[outlength + 3] = len >> 8; + out_buffer[outlength + 4] = len; + memcpy(out_buffer + outlength + 5, encryptdata + start, len); +} + +int tls12_ticket_auth_client_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity) { + char *encryptdata = *pencryptdata; + tls12_ticket_auth_local_data *local = (tls12_ticket_auth_local_data*)self->l_data; + tls12_ticket_auth_global_data *global = (tls12_ticket_auth_global_data*)self->server.g_data; + char * out_buffer = NULL; + + if (local->handshake_status == 8) { + if (datalength < 1024) { + if (*capacity < datalength + 5) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = (datalength + 5) * 2); + encryptdata = *pencryptdata; + } + memmove(encryptdata + 5, encryptdata, datalength); + encryptdata[0] = 0x17; + encryptdata[1] = 0x3; + encryptdata[2] = 0x3; + encryptdata[3] = datalength >> 8; + encryptdata[4] = datalength; + return datalength + 5; + } else { + out_buffer = (char*)malloc(datalength + 2048); + int start = 0; + int outlength = 0; + int len; + while (datalength - start > 2048) { + len = xorshift128plus() % 4096 + 100; + if (len > datalength - start) + len = datalength - start; + tls12_ticket_auth_pack_data(encryptdata, datalength, start, len, out_buffer, outlength); + outlength += len + 5; + start += len; + } + if (datalength - start > 0) { + len = datalength - start; + tls12_ticket_auth_pack_data(encryptdata, datalength, start, len, out_buffer, outlength); + outlength += len + 5; + } + if (*capacity < outlength) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = outlength * 2); + encryptdata = *pencryptdata; + } + memcpy(encryptdata, out_buffer, outlength); + free(out_buffer); + return outlength; + } + } + local->send_buffer = (char*)realloc(local->send_buffer, local->send_buffer_size + datalength + 5); + memcpy(local->send_buffer + local->send_buffer_size + 5, encryptdata, datalength); + local->send_buffer[local->send_buffer_size] = 0x17; + local->send_buffer[local->send_buffer_size + 1] = 0x3; + local->send_buffer[local->send_buffer_size + 2] = 0x3; + local->send_buffer[local->send_buffer_size + 3] = datalength >> 8; + local->send_buffer[local->send_buffer_size + 4] = datalength; + local->send_buffer_size += datalength + 5; + + if (local->handshake_status == 0) { +#define CSTR_DECL(name, len, str) const char* name = str; const int len = sizeof(str) - 1; + CSTR_DECL(tls_data0, tls_data0_len, "\x00\x1c\xc0\x2b\xc0\x2f\xcc\xa9\xcc\xa8\xcc\x14\xcc\x13\xc0\x0a\xc0\x14\xc0\x09\xc0\x13\x00\x9c\x00\x35\x00\x2f\x00\x0a\x01\x00" + ); + CSTR_DECL(tls_data1, tls_data1_len, "\xff\x01\x00\x01\x00" + ); + CSTR_DECL(tls_data2, tls_data2_len, "\x00\x17\x00\x00\x00\x23\x00\xd0"); + CSTR_DECL(tls_data3, tls_data3_len, "\x00\x0d\x00\x16\x00\x14\x06\x01\x06\x03\x05\x01\x05\x03\x04\x01\x04\x03\x03\x01\x03\x03\x02\x01\x02\x03\x00\x05\x00\x05\x01\x00\x00\x00\x00\x00\x12\x00\x00\x75\x50\x00\x00\x00\x0b\x00\x02\x01\x00\x00\x0a\x00\x06\x00\x04\x00\x17\x00\x18" + //"00150066000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" // padding + ); + uint8_t tls_data[2048]; + int tls_data_len = 0; + memcpy(tls_data, tls_data1, tls_data1_len); + tls_data_len += tls_data1_len; + + char hosts[1024]; + char * phost[128]; + int host_num = 0; + int pos; + + char sni[256] = {0}; + if (self->server.param && strlen(self->server.param) == 0) + self->server.param = NULL; + strncpy(hosts, self->server.param ? self->server.param : self->server.host, sizeof hosts); + phost[host_num++] = hosts; + for (pos = 0; hosts[pos]; ++pos) { + if (hosts[pos] == ',') { + phost[host_num++] = &hosts[pos + 1]; + } + } + host_num = xorshift128plus() % host_num; + + sprintf(sni, "%s", phost[host_num]); + int sni_len = strlen(sni); + if (sni_len > 0 && sni[sni_len - 1] >= '0' && sni[sni_len - 1] <= '9') + sni_len = 0; + tls_data[tls_data_len] = '\0'; + tls_data[tls_data_len + 1] = '\0'; + tls_data[tls_data_len + 2] = (sni_len + 5) >> 8; + tls_data[tls_data_len + 3] = (sni_len + 5); + tls_data[tls_data_len + 4] = (sni_len + 3) >> 8; + tls_data[tls_data_len + 5] = (sni_len + 3); + tls_data[tls_data_len + 6] = '\0'; + tls_data[tls_data_len + 7] = sni_len >> 8; + tls_data[tls_data_len + 8] = sni_len; + memcpy(tls_data + tls_data_len + 9, sni, sni_len); + tls_data_len += 9 + sni_len; + memcpy(tls_data + tls_data_len, tls_data2, tls_data2_len); + tls_data_len += tls_data2_len; + rand_bytes(tls_data + tls_data_len, 208); + tls_data_len += 208; + memcpy(tls_data + tls_data_len, tls_data3, tls_data3_len); + tls_data_len += tls_data3_len; + + datalength = 11 + 32 + 1 + 32 + tls_data0_len + 2 + tls_data_len; + out_buffer = (char*)malloc(datalength); + char *pdata = out_buffer + datalength - tls_data_len; + int len = tls_data_len; + memcpy(pdata, tls_data, tls_data_len); + pdata[-1] = tls_data_len; + pdata[-2] = tls_data_len >> 8; + pdata -= 2; len += 2; + memcpy(pdata - tls_data0_len, tls_data0, tls_data0_len); + pdata -= tls_data0_len; len += tls_data0_len; + memcpy(pdata - 32, global->local_client_id, 32); + pdata -= 32; len += 32; + pdata[-1] = 0x20; + pdata -= 1; len += 1; + tls12_ticket_pack_auth_data(global, &self->server, pdata - 32); + pdata -= 32; len += 32; + pdata[-1] = 0x3; + pdata[-2] = 0x3; // tls version + pdata -= 2; len += 2; + pdata[-1] = len; + pdata[-2] = len >> 8; + pdata[-3] = 0; + pdata[-4] = 1; + pdata -= 4; len += 4; + + pdata[-1] = len; + pdata[-2] = len >> 8; + pdata -= 2; len += 2; + pdata[-1] = 0x1; + pdata[-2] = 0x3; // tls version + pdata -= 2; len += 2; + pdata[-1] = 0x16; // tls handshake + pdata -= 1; len += 1; + + local->handshake_status = 1; + } else if (datalength == 0) { + datalength = local->send_buffer_size + 43; + out_buffer = (char*)malloc(datalength); + char *pdata = out_buffer; + memcpy(pdata, "\x14\x03\x03\x00\x01\x01", 6); + pdata += 6; + memcpy(pdata, "\x16\x03\x03\x00\x20", 5); + pdata += 5; + rand_bytes((uint8_t*)pdata, 22); + pdata += 22; + + uint8_t *key = (uint8_t*)malloc(self->server.key_len + 32); + char hash[ONETIMEAUTH_BYTES * 2]; + memcpy(key, self->server.key, self->server.key_len); + memcpy(key + self->server.key_len, global->local_client_id, 32); + ss_sha1_hmac_with_key(hash, out_buffer, pdata - out_buffer, key, self->server.key_len + 32); + free(key); + memcpy(pdata, hash, OBFS_HMAC_SHA1_LEN); + + pdata += OBFS_HMAC_SHA1_LEN; + memcpy(pdata, local->send_buffer, local->send_buffer_size); + free(local->send_buffer); + local->send_buffer = NULL; + + local->handshake_status = 8; + } else { + return 0; + } + if (*capacity < datalength) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = datalength * 2); + encryptdata = *pencryptdata; + } + memmove(encryptdata, out_buffer, datalength); + free(out_buffer); + return datalength; +} + +int tls12_ticket_auth_server_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity) { + char *encryptdata = *pencryptdata; + tls12_ticket_auth_local_data *local = (tls12_ticket_auth_local_data*)self->l_data; + tls12_ticket_auth_global_data *global = (tls12_ticket_auth_global_data*)self->server.g_data; + char * out_buffer = NULL; + + if (local->handshake_status == 8) { + if (datalength < 1024) { + if (*capacity < datalength + 5) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = (datalength + 5) * 2); + encryptdata = *pencryptdata; + } + memmove(encryptdata + 5, encryptdata, datalength); + encryptdata[0] = 0x17; + encryptdata[1] = 0x3; + encryptdata[2] = 0x3; + encryptdata[3] = datalength >> 8; + encryptdata[4] = datalength; + return datalength + 5; + } else { + out_buffer = (char*)malloc(datalength + 2048); + int start = 0; + int outlength = 0; + int len; + while (datalength - start > 2048) { + len = xorshift128plus() % 4096 + 100; + if (len > datalength - start) + len = datalength - start; + tls12_ticket_auth_pack_data(encryptdata, datalength, start, len, out_buffer, outlength); + outlength += len + 5; + start += len; + } + if (datalength - start > 0) { + len = datalength - start; + tls12_ticket_auth_pack_data(encryptdata, datalength, start, len, out_buffer, outlength); + outlength += len + 5; + } + if (*capacity < outlength) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = outlength * 2); + encryptdata = *pencryptdata; + } + memcpy(encryptdata, out_buffer, outlength); + free(out_buffer); + return outlength; + } + } + + local->handshake_status = 3; + + out_buffer = (char*)malloc(43 + 86); + int data_len = 0; + char *p_data = out_buffer + 86; + + memcpy(p_data - 10, "\xc0\x2f\x00\x00\x05\xff\x01\x00\x01\x00", 10); + p_data -= 10;data_len += 10; + + memcpy(p_data - 32, global->local_client_id, 32); + p_data -= 32;data_len += 32; + + p_data[-1] = 0x20; + p_data -= 1;data_len += 1; + + tls12_ticket_pack_auth_data(global, &self->server, p_data - 32); + p_data -= 32;data_len += 32; + + p_data[-1] = 0x3; + p_data[-2] = 0x3; // tls version + p_data -= 2;data_len += 2; + + p_data[-1] = data_len; + p_data[-2] = data_len >> 8; + p_data[-3] = 0x00; + p_data[-4] = 0x02; + p_data -= 4; data_len += 4; + + p_data[-1] = data_len; + p_data[-2] = data_len >> 8; + p_data[-3] = 0x03; + p_data[-4] = 0x03; + p_data[-5] = 0x16; + p_data -= 5; data_len += 5; + + memcpy(out_buffer, p_data, data_len); + char *pdata = out_buffer + 86; + + memcpy(pdata, "\x14\x03\x03\x00\x01\x01", 6); + pdata += 6; + memcpy(pdata, "\x16\x03\x03\x00\x20", 5); + pdata += 5; + rand_bytes((uint8_t*)pdata, 22); + pdata += 22; + + uint8_t *key = (uint8_t*)malloc(self->server.key_len + 32); + char hash[ONETIMEAUTH_BYTES * 2]; + memcpy(key, self->server.key, self->server.key_len); + memcpy(key + self->server.key_len, global->local_client_id, 32); + ss_sha1_hmac_with_key(hash, out_buffer, 43 + 86, key, self->server.key_len + 32); + free(key); + memcpy(pdata, hash, OBFS_HMAC_SHA1_LEN); + + memmove(encryptdata, out_buffer, 43 + 86); + free(out_buffer); + return 43 + 86; +} + +int tls12_ticket_auth_client_decode(obfs *self, char **pencryptdata, int datalength, size_t* capacity, int *needsendback) { + char *encryptdata = *pencryptdata; + tls12_ticket_auth_local_data *local = (tls12_ticket_auth_local_data*)self->l_data; + tls12_ticket_auth_global_data *global = (tls12_ticket_auth_global_data*)self->server.g_data; + + *needsendback = 0; + + if (local->handshake_status == 8) { + local->recv_buffer_size += datalength; + local->recv_buffer = (char*)realloc(local->recv_buffer, local->recv_buffer_size); + memcpy(local->recv_buffer + local->recv_buffer_size - datalength, encryptdata, datalength); + datalength = 0; + while (local->recv_buffer_size > 5) { + if (local->recv_buffer[0] != 0x17) + return -1; + int size = ((int)(unsigned char)local->recv_buffer[3] << 8) + (unsigned char)local->recv_buffer[4]; + if (size + 5 > local->recv_buffer_size) + break; + if (*capacity < datalength + size) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = (datalength + size) * 2); + encryptdata = *pencryptdata; + } + memcpy(encryptdata + datalength, local->recv_buffer + 5, size); + datalength += size; + local->recv_buffer_size -= 5 + size; + memmove(local->recv_buffer, local->recv_buffer + 5 + size, local->recv_buffer_size); + } + return datalength; + } + if (datalength < 11 + 32 + 1 + 32) { + return -1; + } + + uint8_t *key = (uint8_t*)malloc(self->server.key_len + 32); + char hash[ONETIMEAUTH_BYTES * 2]; + memcpy(key, self->server.key, self->server.key_len); + memcpy(key + self->server.key_len, global->local_client_id, 32); + ss_sha1_hmac_with_key(hash, encryptdata + 11, 22, key, self->server.key_len + 32); + free(key); + + if (memcmp(encryptdata + 33, hash, OBFS_HMAC_SHA1_LEN)) { + return -1; + } + + *needsendback = 1; + return 0; +} + +int tls12_ticket_auth_server_decode(obfs *self, char **pencryptdata, int datalength, size_t* capacity, int *needsendback) { + char *encryptdata = *pencryptdata; + tls12_ticket_auth_local_data *local = (tls12_ticket_auth_local_data*)self->l_data; + tls12_ticket_auth_global_data *global = (tls12_ticket_auth_global_data*)self->server.g_data; + + *needsendback = 0; + + if (local->handshake_status == 8) { + if(datalength != 0) + { + local->recv_buffer = (char*)realloc(local->recv_buffer, local->recv_buffer_size + datalength); + memmove(local->recv_buffer + local->recv_buffer_size, encryptdata, datalength); + local->recv_buffer_size += datalength; + } + datalength = 0; + + while (local->recv_buffer_size > 5) { + if (local->recv_buffer[0] != 0x17 || local->recv_buffer[1] != 0x03 || local->recv_buffer[2] != 0x03) + { + LOGE("server_decode data error, wrong tls version 3"); + return -1; + } + int size = ((int)(unsigned char)local->recv_buffer[3] << 8) + (unsigned char)local->recv_buffer[4]; + if (size + 5 > local->recv_buffer_size) + break; + if (*capacity < local->recv_buffer_size + size) { + *pencryptdata = (char*)realloc(*pencryptdata, *capacity = (local->recv_buffer_size + size) * 2); + encryptdata = *pencryptdata; + } + memcpy(encryptdata + datalength, local->recv_buffer + 5, size); + datalength += size; + local->recv_buffer_size -= 5 + size; + memmove(local->recv_buffer, local->recv_buffer + 5 + size, local->recv_buffer_size); + } + return datalength; + } + + if (local->handshake_status == 3) { + + char *verify = encryptdata; + + if(datalength < 43) + { + LOGE("server_decode data error, too short:%d", (int)datalength); + return -1; + } + + if(encryptdata[0] != 0x14 || encryptdata[1] != 0x03 || encryptdata[2] != 0x03 || encryptdata[3] != 0x00 || encryptdata[4] != 0x01 || encryptdata[5] != 0x01) + { + LOGE("server_decode data error, wrong tls version"); + return -1; + } + + encryptdata += 6; + + if(encryptdata[0] != 0x16 || encryptdata[1] != 0x03 || encryptdata[2] != 0x03 || encryptdata[3] != 0x00 || encryptdata[4] != 0x20) + { + LOGE("server_decode data error, wrong tls version 2"); + return -1; + } + + uint8_t *key = (uint8_t*)malloc(self->server.key_len + 32); + char hash[ONETIMEAUTH_BYTES * 2]; + memcpy(key, self->server.key, self->server.key_len); + memcpy(key + self->server.key_len, global->local_client_id, 32); + ss_sha1_hmac_with_key(hash, verify, 33, key, self->server.key_len + 32); + free(key); + + if (memcmp(verify + 33, hash, OBFS_HMAC_SHA1_LEN) != 0) { + LOGE("server_decode data error, hash Mismatch %d",(int)memcmp(verify + 33, hash, OBFS_HMAC_SHA1_LEN)); + return -1; + } + + local->recv_buffer_size = datalength - 43; + local->recv_buffer = (char*)realloc(local->recv_buffer, local->recv_buffer_size); + memmove(local->recv_buffer, encryptdata + 37, datalength - 43); + + local->handshake_status = 8; + return tls12_ticket_auth_server_decode(self, pencryptdata, 0, capacity, needsendback); + } + + local->handshake_status = 2; + if(encryptdata[0] != 0x16 || encryptdata[1] != 0x03 || encryptdata[2] != 0x01) + { + return -1; + } + + encryptdata += 3; + + { + int size = ((int)(unsigned char)encryptdata[0] << 8) + (unsigned char)encryptdata[1]; + if(size != datalength - 5) + { + LOGE("tls_auth wrong tls head size"); + return -1; + } + } + + encryptdata += 2; + + if(encryptdata[0] != 0x01 || encryptdata[1] != 0x00) + { + LOGE("tls_auth not client hello message"); + return -1; + } + + encryptdata += 2; + + { + int size = ((int)(unsigned char)encryptdata[0] << 8) + (unsigned char)encryptdata[1]; + if(size != datalength - 9) + { + LOGE("tls_auth wrong message size"); + return -1; + } + } + + encryptdata += 2; + + if(encryptdata[0] != 0x03 || encryptdata[1] != 0x03) + { + LOGE("tls_auth wrong tls version"); + return -1; + } + + encryptdata += 2; + + char *verifyid = encryptdata; + + encryptdata += 32; + + int sessionid_len = encryptdata[0]; + if(sessionid_len < 32) + { + LOGE("tls_auth wrong sessionid_len"); + return -1; + } + + char *sessionid = encryptdata + 1; + memcpy(global->local_client_id , sessionid, sessionid_len); + + uint8_t *key = (uint8_t*)malloc(self->server.key_len + sessionid_len); + char hash[ONETIMEAUTH_BYTES * 2]; + memcpy(key, self->server.key, self->server.key_len); + memcpy(key + self->server.key_len, global->local_client_id, sessionid_len); + ss_sha1_hmac_with_key(hash, verifyid, 22, key, self->server.key_len + sessionid_len); + free(key); + + encryptdata += (sessionid_len + 1); + + long utc_time = ((int)(unsigned char)verifyid[0] << 24) + ((int)(unsigned char)verifyid[1] << 16) + ((int)(unsigned char)verifyid[2] << 8) + (unsigned char)verifyid[3]; + time_t t = time(NULL); + + + if (self->server.param && strlen(self->server.param) == 0) + { + self->server.param = NULL; + } + + int max_time_dif = 0; + int time_dif = utc_time - t; + if(self->server.param) + { + max_time_dif = atoi(self->server.param); + } + + if(max_time_dif > 0 && (time_dif < -max_time_dif || time_dif > max_time_dif || utc_time - global->startup_time < -max_time_dif / 2)) + { + LOGE("tls_auth wrong time"); + return -1; + } + + if (memcmp(verifyid + 22, hash, OBFS_HMAC_SHA1_LEN)) { + LOGE("tls_auth wrong sha1"); + return -1; + } + + int search_result = global->client_data->have_same_cmp(global->client_data, verifyid); + if(search_result != 0) + { + LOGE("replay attack detect!"); + return -1; + } + + global->client_data->add_back(global->client_data, verifyid); + + encryptdata += 48; + + *needsendback = 1; + + return 0; +} diff --git a/shadowsocksr-libev/src/server/tls1.2_ticket.h b/shadowsocksr-libev/src/server/tls1.2_ticket.h new file mode 100644 index 000000000..10a57c907 --- /dev/null +++ b/shadowsocksr-libev/src/server/tls1.2_ticket.h @@ -0,0 +1,20 @@ +/* + * http_simple.h - Define shadowsocksR server's buffers and callbacks + * + * Copyright (C) 2015 - 2016, Break Wa11 + */ + +#ifndef _TLS1_2_TICKET_H +#define _TLS1_2_TICKET_H + +void * tls12_ticket_auth_init_data(); +obfs * tls12_ticket_auth_new_obfs(); +void tls12_ticket_auth_dispose(obfs *self); + +int tls12_ticket_auth_client_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity); +int tls12_ticket_auth_client_decode(obfs *self, char **pencryptdata, int datalength, size_t* capacity, int *needsendback); + +int tls12_ticket_auth_server_encode(obfs *self, char **pencryptdata, int datalength, size_t* capacity); +int tls12_ticket_auth_server_decode(obfs *self, char **pencryptdata, int datalength, size_t* capacity, int *needsendback); + +#endif // _TLS1_2_TICKET_H diff --git a/shadowsocksr-libev/src/server/udprelay.c b/shadowsocksr-libev/src/server/udprelay.c new file mode 100644 index 000000000..d9251eeae --- /dev/null +++ b/shadowsocksr-libev/src/server/udprelay.c @@ -0,0 +1,1452 @@ +/* + * udprelay.c - Setup UDP relay for both client and server + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifndef __MINGW32__ +#include +#include +#include +#include +#include +#endif + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#if defined(HAVE_SYS_IOCTL_H) && defined(HAVE_NET_IF_H) && defined(__linux__) +#include +#include +#define SET_INTERFACE +#endif + +#ifdef __MINGW32__ +#include "win32.h" +#endif + +#include +#include + +#include "utils.h" +#include "netutils.h" +#include "cache.h" +#include "udprelay.h" + +#ifdef MODULE_REMOTE +#define MAX_UDP_CONN_NUM 512 +#else +#define MAX_UDP_CONN_NUM 256 +#endif + +#ifdef MODULE_REMOTE +#ifdef MODULE_ +#error "MODULE_REMOTE and MODULE_LOCAL should not be both defined" +#endif +#endif + +#ifndef EAGAIN +#define EAGAIN EWOULDBLOCK +#endif + +#ifndef EWOULDBLOCK +#define EWOULDBLOCK EAGAIN +#endif + +static void server_recv_cb(EV_P_ ev_io *w, int revents); +static void remote_recv_cb(EV_P_ ev_io *w, int revents); +static void remote_timeout_cb(EV_P_ ev_timer *watcher, int revents); + +static char *hash_key(const int af, const struct sockaddr_storage *addr); +#ifdef MODULE_REMOTE +static void query_resolve_cb(struct sockaddr *addr, void *data); +#endif +static void close_and_free_remote(EV_P_ remote_ctx_t *ctx); +static remote_ctx_t *new_remote(int fd, server_ctx_t *server_ctx); + +#ifdef ANDROID +extern uint64_t tx; +extern uint64_t rx; +extern int vpn; +#endif + +extern int verbose; +#ifdef MODULE_REMOTE +extern uint64_t tx; +extern uint64_t rx; +#endif + +static int packet_size = DEFAULT_PACKET_SIZE; +static int buf_size = DEFAULT_PACKET_SIZE * 2; +static int server_num = 0; +static server_ctx_t *server_ctx_list[MAX_REMOTE_NUM] = { NULL }; + +#ifndef __MINGW32__ +static int +setnonblocking(int fd) +{ + int flags; + if (-1 == (flags = fcntl(fd, F_GETFL, 0))) { + flags = 0; + } + return fcntl(fd, F_SETFL, flags | O_NONBLOCK); +} + +#endif + +#if defined(MODULE_REMOTE) && defined(SO_BROADCAST) +static int +set_broadcast(int socket_fd) +{ + int opt = 1; + return setsockopt(socket_fd, SOL_SOCKET, SO_BROADCAST, &opt, sizeof(opt)); +} + +#endif + +#ifdef SO_NOSIGPIPE +static int +set_nosigpipe(int socket_fd) +{ + int opt = 1; + return setsockopt(socket_fd, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)); +} + +#endif + +#ifdef MODULE_REDIR + +#ifndef IP_TRANSPARENT +#define IP_TRANSPARENT 19 +#endif + +#ifndef IP_RECVORIGDSTADDR +#define IP_RECVORIGDSTADDR 20 +#endif + +static int +get_dstaddr(struct msghdr *msg, struct sockaddr_storage *dstaddr) +{ + struct cmsghdr *cmsg; + + for (cmsg = CMSG_FIRSTHDR(msg); cmsg; cmsg = CMSG_NXTHDR(msg, cmsg)) { + if (cmsg->cmsg_level == SOL_IP && cmsg->cmsg_type == IP_RECVORIGDSTADDR) { + memcpy(dstaddr, CMSG_DATA(cmsg), sizeof(struct sockaddr_in)); + dstaddr->ss_family = AF_INET; + return 0; + } else if (cmsg->cmsg_level == SOL_IPV6 && cmsg->cmsg_type == IP_RECVORIGDSTADDR) { + memcpy(dstaddr, CMSG_DATA(cmsg), sizeof(struct sockaddr_in6)); + dstaddr->ss_family = AF_INET6; + return 0; + } + } + + return 1; +} + +#endif + +#define HASH_KEY_LEN sizeof(struct sockaddr_storage) + sizeof(int) +static char * +hash_key(const int af, const struct sockaddr_storage *addr) +{ + size_t addr_len = sizeof(struct sockaddr_storage); + static char key[HASH_KEY_LEN]; + + memset(key, 0, HASH_KEY_LEN); + memcpy(key, &af, sizeof(int)); + memcpy(key + sizeof(int), (const uint8_t *)addr, addr_len); + + return key; +} + +#if defined(MODULE_REDIR) || defined(MODULE_REMOTE) +static int +construct_udprealy_header(const struct sockaddr_storage *in_addr, + char *addr_header) +{ + int addr_header_len = 0; + if (in_addr->ss_family == AF_INET) { + struct sockaddr_in *addr = (struct sockaddr_in *)in_addr; + size_t addr_len = sizeof(struct in_addr); + addr_header[addr_header_len++] = 1; + memcpy(addr_header + addr_header_len, &addr->sin_addr, addr_len); + addr_header_len += addr_len; + memcpy(addr_header + addr_header_len, &addr->sin_port, 2); + addr_header_len += 2; + } else if (in_addr->ss_family == AF_INET6) { + struct sockaddr_in6 *addr = (struct sockaddr_in6 *)in_addr; + size_t addr_len = sizeof(struct in6_addr); + addr_header[addr_header_len++] = 4; + memcpy(addr_header + addr_header_len, &addr->sin6_addr, addr_len); + addr_header_len += addr_len; + memcpy(addr_header + addr_header_len, &addr->sin6_port, 2); + addr_header_len += 2; + } else { + return 0; + } + return addr_header_len; +} + +#endif + +static int +parse_udprealy_header(const char *buf, const size_t buf_len, + char *host, char *port, struct sockaddr_storage *storage) +{ + const uint8_t atyp = *(uint8_t *)buf; + int offset = 1; + + // get remote addr and port + if ((atyp & ADDRTYPE_MASK) == 1) { + // IP V4 + size_t in_addr_len = sizeof(struct in_addr); + if (buf_len >= in_addr_len + 3) { + if (storage != NULL) { + struct sockaddr_in *addr = (struct sockaddr_in *)storage; + addr->sin_family = AF_INET; + addr->sin_addr = *(struct in_addr *)(buf + offset); + addr->sin_port = *(uint16_t *)(buf + offset + in_addr_len); + } + if (host != NULL) { + dns_ntop(AF_INET, (const void *)(buf + offset), + host, INET_ADDRSTRLEN); + } + offset += in_addr_len; + } + } else if ((atyp & ADDRTYPE_MASK) == 3) { + // Domain name + uint8_t name_len = *(uint8_t *)(buf + offset); + if (name_len + 4 <= buf_len) { + if (storage != NULL) { + char tmp[257] = { 0 }; + struct cork_ip ip; + memcpy(tmp, buf + offset + 1, name_len); + if (cork_ip_init(&ip, tmp) != -1) { + if (ip.version == 4) { + struct sockaddr_in *addr = (struct sockaddr_in *)storage; + dns_pton(AF_INET, tmp, &(addr->sin_addr)); + addr->sin_port = *(uint16_t *)(buf + offset + 1 + name_len); + addr->sin_family = AF_INET; + } else if (ip.version == 6) { + struct sockaddr_in6 *addr = (struct sockaddr_in6 *)storage; + dns_pton(AF_INET, tmp, &(addr->sin6_addr)); + addr->sin6_port = *(uint16_t *)(buf + offset + 1 + name_len); + addr->sin6_family = AF_INET6; + } + } + } + if (host != NULL) { + memcpy(host, buf + offset + 1, name_len); + } + offset += 1 + name_len; + } + } else if ((atyp & ADDRTYPE_MASK) == 4) { + // IP V6 + size_t in6_addr_len = sizeof(struct in6_addr); + if (buf_len >= in6_addr_len + 3) { + if (storage != NULL) { + struct sockaddr_in6 *addr = (struct sockaddr_in6 *)storage; + addr->sin6_family = AF_INET6; + addr->sin6_addr = *(struct in6_addr *)(buf + offset); + addr->sin6_port = *(uint16_t *)(buf + offset + in6_addr_len); + } + if (host != NULL) { + dns_ntop(AF_INET6, (const void *)(buf + offset), + host, INET6_ADDRSTRLEN); + } + offset += in6_addr_len; + } + } + + if (offset == 1) { + LOGE("[udp] invalid header with addr type %d", atyp); + return 0; + } + + if (port != NULL) { + sprintf(port, "%d", ntohs(*(uint16_t *)(buf + offset))); + } + offset += 2; + + return offset; +} + +static char * +get_addr_str(const struct sockaddr *sa) +{ + static char s[SS_ADDRSTRLEN]; + memset(s, 0, SS_ADDRSTRLEN); + char addr[INET6_ADDRSTRLEN] = { 0 }; + char port[PORTSTRLEN] = { 0 }; + uint16_t p; + + switch (sa->sa_family) { + case AF_INET: + dns_ntop(AF_INET, &(((struct sockaddr_in *)sa)->sin_addr), + addr, INET_ADDRSTRLEN); + p = ntohs(((struct sockaddr_in *)sa)->sin_port); + sprintf(port, "%d", p); + break; + + case AF_INET6: + dns_ntop(AF_INET6, &(((struct sockaddr_in6 *)sa)->sin6_addr), + addr, INET6_ADDRSTRLEN); + p = ntohs(((struct sockaddr_in *)sa)->sin_port); + sprintf(port, "%d", p); + break; + + default: + strncpy(s, "Unknown AF", SS_ADDRSTRLEN); + } + + int addr_len = strlen(addr); + int port_len = strlen(port); + memcpy(s, addr, addr_len); + memcpy(s + addr_len + 1, port, port_len); + s[addr_len] = ':'; + + return s; +} + +int +create_remote_socket(int ipv6) +{ + int remote_sock; + + if (ipv6) { + // Try to bind IPv6 first + struct sockaddr_in6 addr; + memset(&addr, 0, sizeof(struct sockaddr_in6)); + addr.sin6_family = AF_INET6; + addr.sin6_addr = in6addr_any; + addr.sin6_port = 0; + remote_sock = socket(AF_INET6, SOCK_DGRAM, 0); + if (remote_sock == -1) { + ERROR("[udp] cannot create socket"); + return -1; + } + if (bind(remote_sock, (struct sockaddr *)&addr, sizeof(addr)) != 0) { + FATAL("[udp] cannot bind remote"); + return -1; + } + } else { + // Or else bind to IPv4 + struct sockaddr_in addr; + memset(&addr, 0, sizeof(struct sockaddr_in)); + addr.sin_family = AF_INET; + addr.sin_addr.s_addr = INADDR_ANY; + addr.sin_port = 0; + remote_sock = socket(AF_INET, SOCK_DGRAM, 0); + if (remote_sock == -1) { + ERROR("[udp] cannot create socket"); + return -1; + } + + if (bind(remote_sock, (struct sockaddr *)&addr, sizeof(addr)) != 0) { + FATAL("[udp] cannot bind remote"); + return -1; + } + } + return remote_sock; +} + +int +create_server_socket(const char *host, const char *port) +{ + struct addrinfo hints; + struct addrinfo *result, *rp, *ipv4v6bindall; + int s, server_sock; + + memset(&hints, 0, sizeof(struct addrinfo)); + hints.ai_family = AF_UNSPEC; /* Return IPv4 and IPv6 choices */ + hints.ai_socktype = SOCK_DGRAM; /* We want a UDP socket */ + hints.ai_flags = AI_PASSIVE | AI_ADDRCONFIG; /* For wildcard IP address */ + hints.ai_protocol = IPPROTO_UDP; + + s = getaddrinfo(host, port, &hints, &result); + if (s != 0) { + LOGE("[udp] getaddrinfo: %s", gai_strerror(s)); + return -1; + } + + rp = result; + + /* + * On Linux, with net.ipv6.bindv6only = 0 (the default), getaddrinfo(NULL) with + * AI_PASSIVE returns 0.0.0.0 and :: (in this order). AI_PASSIVE was meant to + * return a list of addresses to listen on, but it is impossible to listen on + * 0.0.0.0 and :: at the same time, if :: implies dualstack mode. + */ + if (!host) { + ipv4v6bindall = result; + + /* Loop over all address infos found until a IPV6 address is found. */ + while (ipv4v6bindall) { + if (ipv4v6bindall->ai_family == AF_INET6) { + rp = ipv4v6bindall; /* Take first IPV6 address available */ + break; + } + ipv4v6bindall = ipv4v6bindall->ai_next; /* Get next address info, if any */ + } + } + + for (/*rp = result*/; rp != NULL; rp = rp->ai_next) { + server_sock = socket(rp->ai_family, rp->ai_socktype, rp->ai_protocol); + if (server_sock == -1) { + continue; + } + + if (rp->ai_family == AF_INET6) { + int ipv6only = host ? 1 : 0; + setsockopt(server_sock, IPPROTO_IPV6, IPV6_V6ONLY, &ipv6only, sizeof(ipv6only)); + } + + int opt = 1; + setsockopt(server_sock, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)); +#ifdef SO_NOSIGPIPE + set_nosigpipe(server_sock); +#endif + int err = set_reuseport(server_sock); + if (err == 0) { + LOGI("udp port reuse enabled"); + } +#ifdef IP_TOS + // Set QoS flag + int tos = 46; + setsockopt(server_sock, IPPROTO_IP, IP_TOS, &tos, sizeof(tos)); +#endif + +#ifdef MODULE_REDIR + if (setsockopt(server_sock, SOL_IP, IP_TRANSPARENT, &opt, sizeof(opt))) { + ERROR("[udp] setsockopt IP_TRANSPARENT"); + exit(EXIT_FAILURE); + } + if (setsockopt(server_sock, IPPROTO_IP, IP_RECVORIGDSTADDR, &opt, sizeof(opt))) { + FATAL("[udp] setsockopt IP_RECVORIGDSTADDR"); + } +#endif + + s = bind(server_sock, rp->ai_addr, rp->ai_addrlen); + if (s == 0) { + /* We managed to bind successfully! */ + break; + } else { + ERROR("[udp] bind"); + } + + close(server_sock); + } + + if (rp == NULL) { + LOGE("[udp] cannot bind"); + return -1; + } + + freeaddrinfo(result); + + return server_sock; +} + +remote_ctx_t * +new_remote(int fd, server_ctx_t *server_ctx) +{ + remote_ctx_t *ctx = ss_malloc(sizeof(remote_ctx_t)); + memset(ctx, 0, sizeof(remote_ctx_t)); + + ctx->fd = fd; + ctx->server_ctx = server_ctx; + + ev_io_init(&ctx->io, remote_recv_cb, fd, EV_READ); + ev_timer_init(&ctx->watcher, remote_timeout_cb, server_ctx->timeout, + server_ctx->timeout); + + return ctx; +} + +server_ctx_t * +new_server_ctx(int fd) +{ + server_ctx_t *ctx = ss_malloc(sizeof(server_ctx_t)); + memset(ctx, 0, sizeof(server_ctx_t)); + + ctx->fd = fd; + + ev_io_init(&ctx->io, server_recv_cb, fd, EV_READ); + + return ctx; +} + +#ifdef MODULE_REMOTE +struct query_ctx * +new_query_ctx(char *buf, size_t len) +{ + struct query_ctx *ctx = ss_malloc(sizeof(struct query_ctx)); + memset(ctx, 0, sizeof(struct query_ctx)); + ctx->buf = ss_malloc(sizeof(buffer_t)); + balloc(ctx->buf, len); + memcpy(ctx->buf->array, buf, len); + ctx->buf->len = len; + return ctx; +} + +void +close_and_free_query(EV_P_ struct query_ctx *ctx) +{ + if (ctx != NULL) { + if (ctx->query != NULL) { + resolv_cancel(ctx->query); + ctx->query = NULL; + } + if (ctx->buf != NULL) { + bfree(ctx->buf); + ss_free(ctx->buf); + } + ss_free(ctx); + } +} + +#endif + +void +close_and_free_remote(EV_P_ remote_ctx_t *ctx) +{ + if (ctx != NULL) { + ev_timer_stop(EV_A_ & ctx->watcher); + ev_io_stop(EV_A_ & ctx->io); + close(ctx->fd); + ss_free(ctx); + } +} + +static void +remote_timeout_cb(EV_P_ ev_timer *watcher, int revents) +{ + remote_ctx_t *remote_ctx + = cork_container_of(watcher, remote_ctx_t, watcher); + + if (verbose) { + LOGI("[udp] connection timeout"); + } + + char *key = hash_key(remote_ctx->af, &remote_ctx->src_addr); + cache_remove(remote_ctx->server_ctx->conn_cache, key, HASH_KEY_LEN); +} + +#ifdef MODULE_REMOTE +static void +query_resolve_cb(struct sockaddr *addr, void *data) +{ + struct query_ctx *query_ctx = (struct query_ctx *)data; + struct ev_loop *loop = query_ctx->server_ctx->loop; + + if (verbose) { + LOGI("[udp] udns resolved"); + } + + query_ctx->query = NULL; + + if (addr == NULL) { + LOGE("[udp] udns returned an error"); + } else { + remote_ctx_t *remote_ctx = query_ctx->remote_ctx; + int cache_hit = 0; + + // Lookup in the conn cache + if (remote_ctx == NULL) { + char *key = hash_key(AF_UNSPEC, &query_ctx->src_addr); + cache_lookup(query_ctx->server_ctx->conn_cache, key, HASH_KEY_LEN, (void *)&remote_ctx); + } + + if (remote_ctx == NULL) { + int remotefd = create_remote_socket(addr->sa_family == AF_INET6); + if (remotefd != -1) { + setnonblocking(remotefd); +#ifdef SO_BROADCAST + set_broadcast(remotefd); +#endif +#ifdef SO_NOSIGPIPE + set_nosigpipe(remotefd); +#endif +#ifdef IP_TOS + // Set QoS flag + int tos = 46; + setsockopt(remotefd, IPPROTO_IP, IP_TOS, &tos, sizeof(tos)); +#endif +#ifdef SET_INTERFACE + if (query_ctx->server_ctx->iface) { + if (setinterface(remotefd, query_ctx->server_ctx->iface) == -1) + ERROR("setinterface"); + } +#endif + remote_ctx = new_remote(remotefd, query_ctx->server_ctx); + remote_ctx->src_addr = query_ctx->src_addr; + remote_ctx->server_ctx = query_ctx->server_ctx; + remote_ctx->addr_header_len = query_ctx->addr_header_len; + memcpy(remote_ctx->addr_header, query_ctx->addr_header, + query_ctx->addr_header_len); + } else { + ERROR("[udp] bind() error"); + } + } else { + cache_hit = 1; + } + + if (remote_ctx != NULL) { + memcpy(&remote_ctx->dst_addr, addr, sizeof(struct sockaddr_storage)); + + size_t addr_len = get_sockaddr_len(addr); + int s = sendto(remote_ctx->fd, query_ctx->buf->array, query_ctx->buf->len, + 0, addr, addr_len); + + if (s == -1) { + ERROR("[udp] sendto_remote"); + if (!cache_hit) { + close_and_free_remote(EV_A_ remote_ctx); + } + } else { + if (!cache_hit) { + // Add to conn cache + char *key = hash_key(AF_UNSPEC, &remote_ctx->src_addr); + cache_insert(query_ctx->server_ctx->conn_cache, key, HASH_KEY_LEN, (void *)remote_ctx); + ev_io_start(EV_A_ & remote_ctx->io); + ev_timer_start(EV_A_ & remote_ctx->watcher); + } + } + } + } + + // clean up + close_and_free_query(EV_A_ query_ctx); +} + +#endif + +static void +remote_recv_cb(EV_P_ ev_io *w, int revents) +{ + ssize_t r; + remote_ctx_t *remote_ctx = (remote_ctx_t *)w; + server_ctx_t *server_ctx = remote_ctx->server_ctx; + + // server has been closed + if (server_ctx == NULL) { + LOGE("[udp] invalid server"); + close_and_free_remote(EV_A_ remote_ctx); + return; + } + + struct sockaddr_storage src_addr; + socklen_t src_addr_len = sizeof(struct sockaddr_storage); + memset(&src_addr, 0, src_addr_len); + + buffer_t *buf = ss_malloc(sizeof(buffer_t)); + balloc(buf, buf_size); + + // recv + r = recvfrom(remote_ctx->fd, buf->array, buf_size, 0, (struct sockaddr *)&src_addr, &src_addr_len); + + if (r == -1) { + // error on recv + // simply drop that packet + ERROR("[udp] remote_recv_recvfrom"); + goto CLEAN_UP; + } else if (r > packet_size) { + LOGE("[udp] remote_recv_recvfrom fragmentation"); + goto CLEAN_UP; + } + + buf->len = r; + +#ifdef MODULE_LOCAL + int err = ss_decrypt_all(buf, server_ctx->method, 0, buf_size); + if (err) { + // drop the packet silently + goto CLEAN_UP; + } + + //SSR beg + if (server_ctx->protocol_plugin) { + obfs_class *protocol_plugin = server_ctx->protocol_plugin; + if (protocol_plugin->client_udp_post_decrypt) { + buf->len = protocol_plugin->client_udp_post_decrypt(server_ctx->protocol, &buf->array, buf->len, &buf->capacity); + if ((int)buf->len < 0) { + LOGE("client_udp_post_decrypt"); + close_and_free_remote(EV_A_ remote_ctx); + return; + } + if ( buf->len == 0 ) + return; + } + } + // SSR end + +#ifdef MODULE_REDIR + struct sockaddr_storage dst_addr; + memset(&dst_addr, 0, sizeof(struct sockaddr_storage)); + int len = parse_udprealy_header(buf->array, buf->len, NULL, NULL, &dst_addr); + + if (dst_addr.ss_family != AF_INET && dst_addr.ss_family != AF_INET6) { + LOGI("[udp] ss-redir does not support domain name"); + goto CLEAN_UP; + } + + if (verbose) { + char src[SS_ADDRSTRLEN]; + char dst[SS_ADDRSTRLEN]; + strcpy(src, get_addr_str((struct sockaddr *)&src_addr)); + strcpy(dst, get_addr_str((struct sockaddr *)&dst_addr)); + LOGI("[udp] recv %s via %s", dst, src); + } +#else + int len = parse_udprealy_header(buf->array, buf->len, NULL, NULL, NULL); +#endif + + if (len == 0) { + LOGI("[udp] error in parse header"); + // error in parse header + goto CLEAN_UP; + } + + // server may return using a different address type other than the type we + // have used during sending +#if defined(MODULE_TUNNEL) || defined(MODULE_REDIR) + // Construct packet + buf->len -= len; + memmove(buf->array, buf->array + len, buf->len); +#else +#ifdef ANDROID + rx += buf->len; +#endif + // Construct packet + brealloc(buf, buf->len + 3, buf_size); + memmove(buf->array + 3, buf->array, buf->len); + memset(buf->array, 0, 3); + buf->len += 3; +#endif + +#endif + +#ifdef MODULE_REMOTE + + rx += buf->len; + + char addr_header_buf[512]; + char *addr_header = remote_ctx->addr_header; + int addr_header_len = remote_ctx->addr_header_len; + + if (remote_ctx->af == AF_INET || remote_ctx->af == AF_INET6) { + addr_header_len = construct_udprealy_header(&src_addr, addr_header_buf); + addr_header = addr_header_buf; + } + + // Construct packet + brealloc(buf, buf->len + addr_header_len, buf_size); + memmove(buf->array + addr_header_len, buf->array, buf->len); + memcpy(buf->array, addr_header, addr_header_len); + buf->len += addr_header_len; + + int err = ss_encrypt_all(buf, server_ctx->method, 0, buf_size); + if (err) { + // drop the packet silently + goto CLEAN_UP; + } + +#endif + + if (buf->len > packet_size) { + LOGE("[udp] remote_recv_sendto fragmentation"); + goto CLEAN_UP; + } + + size_t remote_src_addr_len = get_sockaddr_len((struct sockaddr *)&remote_ctx->src_addr); + +#ifdef MODULE_REDIR + + size_t remote_dst_addr_len = get_sockaddr_len((struct sockaddr *)&dst_addr); + + int src_fd = socket(remote_ctx->src_addr.ss_family, SOCK_DGRAM, 0); + if (src_fd < 0) { + ERROR("[udp] remote_recv_socket"); + goto CLEAN_UP; + } + int opt = 1; + if (setsockopt(src_fd, SOL_IP, IP_TRANSPARENT, &opt, sizeof(opt))) { + ERROR("[udp] remote_recv_setsockopt"); + close(src_fd); + goto CLEAN_UP; + } + if (setsockopt(src_fd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt))) { + ERROR("[udp] remote_recv_setsockopt"); + close(src_fd); + goto CLEAN_UP; + } +#ifdef IP_TOS + // Set QoS flag + int tos = 46; + setsockopt(src_fd, IPPROTO_IP, IP_TOS, &tos, sizeof(tos)); +#endif + if (bind(src_fd, (struct sockaddr *)&dst_addr, remote_dst_addr_len) != 0) { + ERROR("[udp] remote_recv_bind"); + close(src_fd); + goto CLEAN_UP; + } + + int s = sendto(src_fd, buf->array, buf->len, 0, + (struct sockaddr *)&remote_ctx->src_addr, remote_src_addr_len); + if (s == -1) { + ERROR("[udp] remote_recv_sendto"); + close(src_fd); + goto CLEAN_UP; + } + close(src_fd); + +#else + + int s = sendto(server_ctx->fd, buf->array, buf->len, 0, + (struct sockaddr *)&remote_ctx->src_addr, remote_src_addr_len); + if (s == -1) { + ERROR("[udp] remote_recv_sendto"); + goto CLEAN_UP; + } + +#endif + + // handle the UDP packet successfully, + // triger the timer + ev_timer_again(EV_A_ & remote_ctx->watcher); + +CLEAN_UP: + + bfree(buf); + ss_free(buf); +} + +static void +server_recv_cb(EV_P_ ev_io *w, int revents) +{ + server_ctx_t *server_ctx = (server_ctx_t *)w; + struct sockaddr_storage src_addr; + memset(&src_addr, 0, sizeof(struct sockaddr_storage)); + + buffer_t *buf = ss_malloc(sizeof(buffer_t)); + balloc(buf, buf_size); + + socklen_t src_addr_len = sizeof(struct sockaddr_storage); + unsigned int offset = 0; + +#ifdef MODULE_REDIR + char control_buffer[64] = { 0 }; + struct msghdr msg; + memset(&msg, 0, sizeof(struct msghdr)); + struct iovec iov[1]; + struct sockaddr_storage dst_addr; + memset(&dst_addr, 0, sizeof(struct sockaddr_storage)); + + msg.msg_name = &src_addr; + msg.msg_namelen = src_addr_len; + msg.msg_control = control_buffer; + msg.msg_controllen = sizeof(control_buffer); + + iov[0].iov_base = buf->array; + iov[0].iov_len = buf_size; + msg.msg_iov = iov; + msg.msg_iovlen = 1; + + buf->len = recvmsg(server_ctx->fd, &msg, 0); + if (buf->len == -1) { + ERROR("[udp] server_recvmsg"); + goto CLEAN_UP; + } else if (buf->len > packet_size) { + ERROR("[udp] UDP server_recv_recvmsg fragmentation"); + goto CLEAN_UP; + } + + if (get_dstaddr(&msg, &dst_addr)) { + LOGE("[udp] unable to get dest addr"); + goto CLEAN_UP; + } + + src_addr_len = msg.msg_namelen; +#else + ssize_t r; + r = recvfrom(server_ctx->fd, buf->array, buf_size, + 0, (struct sockaddr *)&src_addr, &src_addr_len); + + if (r == -1) { + // error on recv + // simply drop that packet + ERROR("[udp] server_recv_recvfrom"); + goto CLEAN_UP; + } else if (r > packet_size) { + ERROR("[udp] server_recv_recvfrom fragmentation"); + goto CLEAN_UP; + } + + buf->len = r; +#endif + +#ifdef MODULE_REMOTE + tx += buf->len; + + int err = ss_decrypt_all(buf, server_ctx->method, server_ctx->auth, buf_size); + if (err) { + // drop the packet silently + goto CLEAN_UP; + } +#endif + +#ifdef MODULE_LOCAL +#if !defined(MODULE_TUNNEL) && !defined(MODULE_REDIR) +#ifdef ANDROID + tx += buf->len; +#endif + uint8_t frag = *(uint8_t *)(buf->array + 2); + offset += 3; +#endif +#endif + + /* + * + * SOCKS5 UDP Request + * +----+------+------+----------+----------+----------+ + * |RSV | FRAG | ATYP | DST.ADDR | DST.PORT | DATA | + * +----+------+------+----------+----------+----------+ + * | 2 | 1 | 1 | Variable | 2 | Variable | + * +----+------+------+----------+----------+----------+ + * + * SOCKS5 UDP Response + * +----+------+------+----------+----------+----------+ + * |RSV | FRAG | ATYP | DST.ADDR | DST.PORT | DATA | + * +----+------+------+----------+----------+----------+ + * | 2 | 1 | 1 | Variable | 2 | Variable | + * +----+------+------+----------+----------+----------+ + * + * shadowsocks UDP Request (before encrypted) + * +------+----------+----------+----------+-------------+ + * | ATYP | DST.ADDR | DST.PORT | DATA | HMAC-SHA1 | + * +------+----------+----------+----------+-------------+ + * | 1 | Variable | 2 | Variable | 10 | + * +------+----------+----------+----------+-------------+ + * + * If ATYP & ONETIMEAUTH_FLAG(0x10) != 0, Authentication (HMAC-SHA1) is enabled. + * + * The key of HMAC-SHA1 is (IV + KEY) and the input is the whole packet. + * The output of HMAC-SHA is truncated to 10 bytes (leftmost bits). + * + * shadowsocks UDP Response (before encrypted) + * +------+----------+----------+----------+ + * | ATYP | DST.ADDR | DST.PORT | DATA | + * +------+----------+----------+----------+ + * | 1 | Variable | 2 | Variable | + * +------+----------+----------+----------+ + * + * shadowsocks UDP Request and Response (after encrypted) + * +-------+--------------+ + * | IV | PAYLOAD | + * +-------+--------------+ + * | Fixed | Variable | + * +-------+--------------+ + * + */ + +#ifdef MODULE_REDIR + if (verbose) { + char src[SS_ADDRSTRLEN]; + char dst[SS_ADDRSTRLEN]; + strcpy(src, get_addr_str((struct sockaddr *)&src_addr)); + strcpy(dst, get_addr_str((struct sockaddr *)&dst_addr)); + LOGI("[udp] redir to %s from %s", dst, src); + } + + char addr_header[512] = { 0 }; + int addr_header_len = construct_udprealy_header(&dst_addr, addr_header); + + if (addr_header_len == 0) { + LOGE("[udp] failed to parse tproxy addr"); + goto CLEAN_UP; + } + + // reconstruct the buffer + brealloc(buf, buf->len + addr_header_len, buf_size); + memmove(buf->array + addr_header_len, buf->array, buf->len); + memcpy(buf->array, addr_header, addr_header_len); + buf->len += addr_header_len; + +#elif MODULE_TUNNEL + + char addr_header[512] = { 0 }; + char *host = server_ctx->tunnel_addr.host; + char *port = server_ctx->tunnel_addr.port; + uint16_t port_num = (uint16_t)atoi(port); + uint16_t port_net_num = htons(port_num); + int addr_header_len = 0; + + struct cork_ip ip; + if (cork_ip_init(&ip, host) != -1) { + if (ip.version == 4) { + // send as IPv4 + struct in_addr host_addr; + memset(&host_addr, 0, sizeof(struct in_addr)); + int host_len = sizeof(struct in_addr); + + if (dns_pton(AF_INET, host, &host_addr) == -1) { + FATAL("IP parser error"); + } + addr_header[addr_header_len++] = 1; + memcpy(addr_header + addr_header_len, &host_addr, host_len); + addr_header_len += host_len; + } else if (ip.version == 6) { + // send as IPv6 + struct in6_addr host_addr; + memset(&host_addr, 0, sizeof(struct in6_addr)); + int host_len = sizeof(struct in6_addr); + + if (dns_pton(AF_INET6, host, &host_addr) == -1) { + FATAL("IP parser error"); + } + addr_header[addr_header_len++] = 4; + memcpy(addr_header + addr_header_len, &host_addr, host_len); + addr_header_len += host_len; + } else { + FATAL("IP parser error"); + } + } else { + // send as domain + int host_len = strlen(host); + + addr_header[addr_header_len++] = 3; + addr_header[addr_header_len++] = host_len; + memcpy(addr_header + addr_header_len, host, host_len); + addr_header_len += host_len; + } + memcpy(addr_header + addr_header_len, &port_net_num, 2); + addr_header_len += 2; + + // reconstruct the buffer + brealloc(buf, buf->len + addr_header_len, buf_size); + memmove(buf->array + addr_header_len, buf->array, buf->len); + memcpy(buf->array, addr_header, addr_header_len); + buf->len += addr_header_len; + +#else + + char host[257] = { 0 }; + char port[64] = { 0 }; + struct sockaddr_storage dst_addr; + memset(&dst_addr, 0, sizeof(struct sockaddr_storage)); + + int addr_header_len = parse_udprealy_header(buf->array + offset, buf->len - offset, + host, port, &dst_addr); + if (addr_header_len == 0) { + // error in parse header + goto CLEAN_UP; + } + + char *addr_header = buf->array + offset; +#endif + +#ifdef MODULE_LOCAL + char *key = hash_key(server_ctx->remote_addr->sa_family, &src_addr); +#else + char *key = hash_key(dst_addr.ss_family, &src_addr); +#endif + + struct cache *conn_cache = server_ctx->conn_cache; + + remote_ctx_t *remote_ctx = NULL; + cache_lookup(conn_cache, key, HASH_KEY_LEN, (void *)&remote_ctx); + + if (remote_ctx != NULL) { + if (sockaddr_cmp(&src_addr, &remote_ctx->src_addr, sizeof(src_addr))) { + remote_ctx = NULL; + } + } + + // reset the timer + if (remote_ctx != NULL) { + ev_timer_again(EV_A_ & remote_ctx->watcher); + } + + if (remote_ctx == NULL) { + if (verbose) { +#ifdef MODULE_REDIR + char src[SS_ADDRSTRLEN]; + char dst[SS_ADDRSTRLEN]; + strcpy(src, get_addr_str((struct sockaddr *)&src_addr)); + strcpy(dst, get_addr_str((struct sockaddr *)&dst_addr)); + LOGI("[udp] cache miss: %s <-> %s", dst, src); +#else + LOGI("[udp] cache miss: %s:%s <-> %s", host, port, + get_addr_str((struct sockaddr *)&src_addr)); +#endif + } + } else { + if (verbose) { +#ifdef MODULE_REDIR + char src[SS_ADDRSTRLEN]; + char dst[SS_ADDRSTRLEN]; + strcpy(src, get_addr_str((struct sockaddr *)&src_addr)); + strcpy(dst, get_addr_str((struct sockaddr *)&dst_addr)); + LOGI("[udp] cache hit: %s <-> %s", dst, src); +#else + LOGI("[udp] cache hit: %s:%s <-> %s", host, port, + get_addr_str((struct sockaddr *)&src_addr)); +#endif + } + } + +#ifdef MODULE_LOCAL + +#if !defined(MODULE_TUNNEL) && !defined(MODULE_REDIR) + if (frag) { + LOGE("[udp] drop a message since frag is not 0, but %d", frag); + goto CLEAN_UP; + } +#endif + + const struct sockaddr *remote_addr = server_ctx->remote_addr; + const int remote_addr_len = server_ctx->remote_addr_len; + + if (remote_ctx == NULL) { + // Bind to any port + int remotefd = create_remote_socket(remote_addr->sa_family == AF_INET6); + if (remotefd < 0) { + ERROR("[udp] udprelay bind() error"); + goto CLEAN_UP; + } + setnonblocking(remotefd); + +#ifdef SO_NOSIGPIPE + set_nosigpipe(remotefd); +#endif +#ifdef IP_TOS + // Set QoS flag + int tos = 46; + setsockopt(remotefd, IPPROTO_IP, IP_TOS, &tos, sizeof(tos)); +#endif +#ifdef SET_INTERFACE + if (server_ctx->iface) { + if (setinterface(remotefd, server_ctx->iface) == -1) + ERROR("setinterface"); + } +#endif + +#ifdef ANDROID + if (vpn) { + if (protect_socket(remotefd) == -1) { + ERROR("protect_socket"); + close(remotefd); + goto CLEAN_UP; + } + } +#endif + + // Init remote_ctx + remote_ctx = new_remote(remotefd, server_ctx); + remote_ctx->src_addr = src_addr; + remote_ctx->af = remote_addr->sa_family; + remote_ctx->addr_header_len = addr_header_len; + memcpy(remote_ctx->addr_header, addr_header, addr_header_len); + + // Add to conn cache + cache_insert(conn_cache, key, HASH_KEY_LEN, (void *)remote_ctx); + + // Start remote io + ev_io_start(EV_A_ & remote_ctx->io); + ev_timer_start(EV_A_ & remote_ctx->watcher); + } + + if (offset > 0) { + buf->len -= offset; + memmove(buf->array, buf->array + offset, buf->len); + } + + if (server_ctx->auth) { + buf->array[0] |= ONETIMEAUTH_FLAG; + } + + // SSR beg + if (server_ctx->protocol_plugin) { + obfs_class *protocol_plugin = server_ctx->protocol_plugin; + if (protocol_plugin->client_udp_pre_encrypt) { + buf->len = protocol_plugin->client_udp_pre_encrypt(server_ctx->protocol, &buf->array, buf->len, &buf->capacity); + } + } + //SSR end + + int err = ss_encrypt_all(buf, server_ctx->method, server_ctx->auth, buf->len); + + if (err) { + // drop the packet silently + goto CLEAN_UP; + } + + if (buf->len > packet_size) { + LOGE("[udp] server_recv_sendto fragmentation"); + goto CLEAN_UP; + } + + int s = sendto(remote_ctx->fd, buf->array, buf->len, 0, remote_addr, remote_addr_len); + + if (s == -1) { + ERROR("[udp] server_recv_sendto"); + } + +#else + + int cache_hit = 0; + int need_query = 0; + + if (buf->len - addr_header_len > packet_size) { + LOGE("[udp] server_recv_sendto fragmentation"); + goto CLEAN_UP; + } + + if (remote_ctx != NULL) { + cache_hit = 1; + // detect destination mismatch + if (remote_ctx->addr_header_len != addr_header_len + || memcmp(addr_header, remote_ctx->addr_header, addr_header_len) != 0) { + if (dst_addr.ss_family != AF_INET && dst_addr.ss_family != AF_INET6) { + need_query = 1; + } + } else { + memcpy(&dst_addr, &remote_ctx->dst_addr, sizeof(struct sockaddr_storage)); + } + } else { + if (dst_addr.ss_family == AF_INET || dst_addr.ss_family == AF_INET6) { + int remotefd = create_remote_socket(dst_addr.ss_family == AF_INET6); + if (remotefd != -1) { + setnonblocking(remotefd); +#ifdef SO_BROADCAST + set_broadcast(remotefd); +#endif +#ifdef SO_NOSIGPIPE + set_nosigpipe(remotefd); +#endif +#ifdef IP_TOS + // Set QoS flag + int tos = 46; + setsockopt(remotefd, IPPROTO_IP, IP_TOS, &tos, sizeof(tos)); +#endif +#ifdef SET_INTERFACE + if (server_ctx->iface) { + if (setinterface(remotefd, server_ctx->iface) == -1) + ERROR("setinterface"); + } +#endif + remote_ctx = new_remote(remotefd, server_ctx); + remote_ctx->src_addr = src_addr; + remote_ctx->server_ctx = server_ctx; + remote_ctx->addr_header_len = addr_header_len; + memcpy(remote_ctx->addr_header, addr_header, addr_header_len); + memcpy(&remote_ctx->dst_addr, &dst_addr, sizeof(struct sockaddr_storage)); + } else { + ERROR("[udp] bind() error"); + goto CLEAN_UP; + } + } + } + + if (remote_ctx != NULL && !need_query) { + size_t addr_len = get_sockaddr_len((struct sockaddr *)&dst_addr); + int s = sendto(remote_ctx->fd, buf->array + addr_header_len, + buf->len - addr_header_len, 0, + (struct sockaddr *)&dst_addr, addr_len); + + if (s == -1) { + ERROR("[udp] sendto_remote"); + if (!cache_hit) { + close_and_free_remote(EV_A_ remote_ctx); + } + } else { + if (!cache_hit) { + // Add to conn cache + remote_ctx->af = dst_addr.ss_family; + char *key = hash_key(remote_ctx->af, &remote_ctx->src_addr); + cache_insert(server_ctx->conn_cache, key, HASH_KEY_LEN, (void *)remote_ctx); + + ev_io_start(EV_A_ & remote_ctx->io); + ev_timer_start(EV_A_ & remote_ctx->watcher); + } + } + } else { + struct addrinfo hints; + memset(&hints, 0, sizeof(struct addrinfo)); + hints.ai_family = AF_UNSPEC; + hints.ai_socktype = SOCK_DGRAM; + hints.ai_protocol = IPPROTO_UDP; + + struct query_ctx *query_ctx = new_query_ctx(buf->array + addr_header_len, + buf->len - addr_header_len); + query_ctx->server_ctx = server_ctx; + query_ctx->addr_header_len = addr_header_len; + query_ctx->src_addr = src_addr; + memcpy(query_ctx->addr_header, addr_header, addr_header_len); + + if (need_query) { + query_ctx->remote_ctx = remote_ctx; + } + + struct ResolvQuery *query = resolv_query(host, query_resolve_cb, + NULL, query_ctx, htons(atoi(port))); + if (query == NULL) { + ERROR("[udp] unable to create DNS query"); + close_and_free_query(EV_A_ query_ctx); + goto CLEAN_UP; + } + query_ctx->query = query; + } +#endif + +CLEAN_UP: + bfree(buf); + ss_free(buf); +} + +void +free_cb(void *key, void *element) +{ + remote_ctx_t *remote_ctx = (remote_ctx_t *)element; + + if (verbose) { + LOGI("[udp] one connection freed"); + } + + close_and_free_remote(EV_DEFAULT, remote_ctx); +} + +int +init_udprelay(const char *server_host, const char *server_port, +#ifdef MODULE_LOCAL + const struct sockaddr *remote_addr, const int remote_addr_len, +#ifdef MODULE_TUNNEL + const ss_addr_t tunnel_addr, +#endif +#endif + int mtu, int method, int auth, int timeout, const char *iface, const char *protocol, const char *protocol_param) +{ + // Initialize ev loop + struct ev_loop *loop = EV_DEFAULT; + + // Initialize MTU + if (mtu > 0) { + packet_size = mtu - 1 - 28 - 2 - 64; + buf_size = packet_size * 2; + } + + // Initialize cache + struct cache *conn_cache; + cache_create(&conn_cache, MAX_UDP_CONN_NUM, free_cb); + + // //////////////////////////////////////////////// + // Setup server context + + // Bind to port + int serverfd = create_server_socket(server_host, server_port); + if (serverfd < 0) { + FATAL("[udp] bind() error"); + } + setnonblocking(serverfd); + if (protocol != NULL && strcmp(protocol, "verify_sha1") == 0) { + auth = 1; + protocol = NULL; + } + + server_ctx_t *server_ctx = new_server_ctx(serverfd); +#ifdef MODULE_REMOTE + server_ctx->loop = loop; +#endif + server_ctx->auth = auth; + server_ctx->timeout = max(timeout, MIN_UDP_TIMEOUT); + server_ctx->method = method; + server_ctx->iface = iface; + server_ctx->conn_cache = conn_cache; +#ifdef MODULE_LOCAL + server_ctx->remote_addr = remote_addr; + server_ctx->remote_addr_len = remote_addr_len; + //SSR beg + server_ctx->protocol_plugin = new_obfs_class((char *)protocol); + if (server_ctx->protocol_plugin) { + server_ctx->protocol = server_ctx->protocol_plugin->new_obfs(); + server_ctx->protocol_global = server_ctx->protocol_plugin->init_data(); + } + + server_info _server_info; + memset(&_server_info, 0, sizeof(server_info)); + strcpy(_server_info.host, inet_ntoa(((struct sockaddr_in*)remote_addr)->sin_addr)); + _server_info.port = ((struct sockaddr_in*)remote_addr)->sin_port; + _server_info.port = _server_info.port >> 8 | _server_info.port << 8; + _server_info.g_data = server_ctx->protocol_global; + _server_info.param = (char *)protocol_param; + _server_info.key = enc_get_key(); + _server_info.key_len = enc_get_key_len(); + + if (server_ctx->protocol_plugin) + server_ctx->protocol_plugin->set_server_info(server_ctx->protocol, &_server_info); + //SSR end +#ifdef MODULE_TUNNEL + server_ctx->tunnel_addr = tunnel_addr; +#endif +#endif + + ev_io_start(loop, &server_ctx->io); + + server_ctx_list[server_num++] = server_ctx; + + return 0; +} + +void +free_udprelay() +{ + struct ev_loop *loop = EV_DEFAULT; + while (server_num-- > 0) { + server_ctx_t *server_ctx = server_ctx_list[server_num]; + +#ifdef MODULE_LOCAL + //SSR beg + if (server_ctx->protocol_plugin) { + server_ctx->protocol_plugin->dispose(server_ctx->protocol); + server_ctx->protocol = NULL; + free_obfs_class(server_ctx->protocol_plugin); + server_ctx->protocol_plugin = NULL; + } + //SSR end +#endif + + ev_io_stop(loop, &server_ctx->io); + close(server_ctx->fd); + cache_delete(server_ctx->conn_cache, 0); + ss_free(server_ctx); + server_ctx_list[server_num] = NULL; + } +} diff --git a/shadowsocksr-libev/src/server/udprelay.h b/shadowsocksr-libev/src/server/udprelay.h new file mode 100644 index 000000000..89876d4f4 --- /dev/null +++ b/shadowsocksr-libev/src/server/udprelay.h @@ -0,0 +1,95 @@ +/* + * udprelay.h - Define UDP relay's buffers and callbacks + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#ifndef _UDPRELAY_H +#define _UDPRELAY_H + +#include +#include + +#include "encrypt.h" +#include "jconf.h" +#include "obfs.h" + +#ifdef MODULE_REMOTE +#include "resolv.h" +#endif + +#include "cache.h" + +#include "common.h" + +#define MAX_UDP_PACKET_SIZE (65507) + +#define DEFAULT_PACKET_SIZE 1397 // 1492 - 1 - 28 - 2 - 64 = 1397, the default MTU for UDP relay + +typedef struct server_ctx { + ev_io io; + int fd; + int method; + int auth; + int timeout; + const char *iface; + struct cache *conn_cache; +#ifdef MODULE_LOCAL + const struct sockaddr *remote_addr; + int remote_addr_len; +#ifdef MODULE_TUNNEL + ss_addr_t tunnel_addr; +#endif +#endif +#ifdef MODULE_REMOTE + struct ev_loop *loop; +#endif + // SSR + obfs *protocol; + obfs_class *protocol_plugin; + void *protocol_global; +} server_ctx_t; + +#ifdef MODULE_REMOTE +typedef struct query_ctx { + struct ResolvQuery *query; + struct sockaddr_storage src_addr; + buffer_t *buf; + int addr_header_len; + char addr_header[384]; + struct server_ctx *server_ctx; + struct remote_ctx *remote_ctx; +} query_ctx_t; +#endif + +typedef struct remote_ctx { + ev_io io; + ev_timer watcher; + int af; + int fd; + int addr_header_len; + char addr_header[384]; + struct sockaddr_storage src_addr; +#ifdef MODULE_REMOTE + struct sockaddr_storage dst_addr; +#endif + struct server_ctx *server_ctx; +} remote_ctx_t; + +#endif // _UDPRELAY_H diff --git a/shadowsocksr-libev/src/server/uthash.h b/shadowsocksr-libev/src/server/uthash.h new file mode 100644 index 000000000..45d1f9fc1 --- /dev/null +++ b/shadowsocksr-libev/src/server/uthash.h @@ -0,0 +1,1074 @@ +/* +Copyright (c) 2003-2016, Troy D. Hanson http://troydhanson.github.com/uthash/ +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef UTHASH_H +#define UTHASH_H + +#define UTHASH_VERSION 2.0.1 + +#include /* memcmp,strlen */ +#include /* ptrdiff_t */ +#include /* exit() */ + +/* These macros use decltype or the earlier __typeof GNU extension. + As decltype is only available in newer compilers (VS2010 or gcc 4.3+ + when compiling c++ source) this code uses whatever method is needed + or, for VS2008 where neither is available, uses casting workarounds. */ +#if defined(_MSC_VER) /* MS compiler */ +#if _MSC_VER >= 1600 && defined(__cplusplus) /* VS2010 or newer in C++ mode */ +#define DECLTYPE(x) (decltype(x)) +#else /* VS2008 or older (or VS2010 in C mode) */ +#define NO_DECLTYPE +#define DECLTYPE(x) +#endif +#elif defined(__BORLANDC__) || defined(__LCC__) || defined(__WATCOMC__) +#define NO_DECLTYPE +#define DECLTYPE(x) +#else /* GNU, Sun and other compilers */ +#define DECLTYPE(x) (__typeof(x)) +#endif + +#ifdef NO_DECLTYPE +#define DECLTYPE_ASSIGN(dst,src) \ +do { \ + char **_da_dst = (char**)(&(dst)); \ + *_da_dst = (char*)(src); \ +} while (0) +#else +#define DECLTYPE_ASSIGN(dst,src) \ +do { \ + (dst) = DECLTYPE(dst)(src); \ +} while (0) +#endif + +/* a number of the hash function use uint32_t which isn't defined on Pre VS2010 */ +#if defined(_WIN32) +#if defined(_MSC_VER) && _MSC_VER >= 1600 +#include +#elif defined(__WATCOMC__) || defined(__MINGW32__) || defined(__CYGWIN__) +#include +#else +typedef unsigned int uint32_t; +typedef unsigned char uint8_t; +#endif +#elif defined(__GNUC__) && !defined(__VXWORKS__) +#include +#else +typedef unsigned int uint32_t; +typedef unsigned char uint8_t; +#endif + +#ifndef uthash_fatal +#define uthash_fatal(msg) exit(-1) /* fatal error (out of memory,etc) */ +#endif +#ifndef uthash_malloc +#define uthash_malloc(sz) malloc(sz) /* malloc fcn */ +#endif +#ifndef uthash_free +#define uthash_free(ptr,sz) free(ptr) /* free fcn */ +#endif +#ifndef uthash_strlen +#define uthash_strlen(s) strlen(s) +#endif +#ifndef uthash_memcmp +#define uthash_memcmp(a,b,n) memcmp(a,b,n) +#endif + +#ifndef uthash_noexpand_fyi +#define uthash_noexpand_fyi(tbl) /* can be defined to log noexpand */ +#endif +#ifndef uthash_expand_fyi +#define uthash_expand_fyi(tbl) /* can be defined to log expands */ +#endif + +/* initial number of buckets */ +#define HASH_INITIAL_NUM_BUCKETS 32U /* initial number of buckets */ +#define HASH_INITIAL_NUM_BUCKETS_LOG2 5U /* lg2 of initial number of buckets */ +#define HASH_BKT_CAPACITY_THRESH 10U /* expand when bucket count reaches */ + +/* calculate the element whose hash handle address is hhp */ +#define ELMT_FROM_HH(tbl,hhp) ((void*)(((char*)(hhp)) - ((tbl)->hho))) +/* calculate the hash handle from element address elp */ +#define HH_FROM_ELMT(tbl,elp) ((UT_hash_handle *)(((char*)(elp)) + ((tbl)->hho))) + +#define HASH_VALUE(keyptr,keylen,hashv) \ +do { \ + HASH_FCN(keyptr, keylen, hashv); \ +} while (0) + +#define HASH_FIND_BYHASHVALUE(hh,head,keyptr,keylen,hashval,out) \ +do { \ + (out) = NULL; \ + if (head) { \ + unsigned _hf_bkt; \ + HASH_TO_BKT(hashval, (head)->hh.tbl->num_buckets, _hf_bkt); \ + if (HASH_BLOOM_TEST((head)->hh.tbl, hashval) != 0) { \ + HASH_FIND_IN_BKT((head)->hh.tbl, hh, (head)->hh.tbl->buckets[ _hf_bkt ], keyptr, keylen, hashval, out); \ + } \ + } \ +} while (0) + +#define HASH_FIND(hh,head,keyptr,keylen,out) \ +do { \ + unsigned _hf_hashv; \ + HASH_VALUE(keyptr, keylen, _hf_hashv); \ + HASH_FIND_BYHASHVALUE(hh, head, keyptr, keylen, _hf_hashv, out); \ +} while (0) + +#ifdef HASH_BLOOM +#define HASH_BLOOM_BITLEN (1UL << HASH_BLOOM) +#define HASH_BLOOM_BYTELEN (HASH_BLOOM_BITLEN/8UL) + (((HASH_BLOOM_BITLEN%8UL)!=0UL) ? 1UL : 0UL) +#define HASH_BLOOM_MAKE(tbl) \ +do { \ + (tbl)->bloom_nbits = HASH_BLOOM; \ + (tbl)->bloom_bv = (uint8_t*)uthash_malloc(HASH_BLOOM_BYTELEN); \ + if (!((tbl)->bloom_bv)) { uthash_fatal( "out of memory"); } \ + memset((tbl)->bloom_bv, 0, HASH_BLOOM_BYTELEN); \ + (tbl)->bloom_sig = HASH_BLOOM_SIGNATURE; \ +} while (0) + +#define HASH_BLOOM_FREE(tbl) \ +do { \ + uthash_free((tbl)->bloom_bv, HASH_BLOOM_BYTELEN); \ +} while (0) + +#define HASH_BLOOM_BITSET(bv,idx) (bv[(idx)/8U] |= (1U << ((idx)%8U))) +#define HASH_BLOOM_BITTEST(bv,idx) (bv[(idx)/8U] & (1U << ((idx)%8U))) + +#define HASH_BLOOM_ADD(tbl,hashv) \ + HASH_BLOOM_BITSET((tbl)->bloom_bv, (hashv & (uint32_t)((1ULL << (tbl)->bloom_nbits) - 1U))) + +#define HASH_BLOOM_TEST(tbl,hashv) \ + HASH_BLOOM_BITTEST((tbl)->bloom_bv, (hashv & (uint32_t)((1ULL << (tbl)->bloom_nbits) - 1U))) + +#else +#define HASH_BLOOM_MAKE(tbl) +#define HASH_BLOOM_FREE(tbl) +#define HASH_BLOOM_ADD(tbl,hashv) +#define HASH_BLOOM_TEST(tbl,hashv) (1) +#define HASH_BLOOM_BYTELEN 0U +#endif + +#define HASH_MAKE_TABLE(hh,head) \ +do { \ + (head)->hh.tbl = (UT_hash_table*)uthash_malloc( \ + sizeof(UT_hash_table)); \ + if (!((head)->hh.tbl)) { uthash_fatal( "out of memory"); } \ + memset((head)->hh.tbl, 0, sizeof(UT_hash_table)); \ + (head)->hh.tbl->tail = &((head)->hh); \ + (head)->hh.tbl->num_buckets = HASH_INITIAL_NUM_BUCKETS; \ + (head)->hh.tbl->log2_num_buckets = HASH_INITIAL_NUM_BUCKETS_LOG2; \ + (head)->hh.tbl->hho = (char*)(&(head)->hh) - (char*)(head); \ + (head)->hh.tbl->buckets = (UT_hash_bucket*)uthash_malloc( \ + HASH_INITIAL_NUM_BUCKETS*sizeof(struct UT_hash_bucket)); \ + if (! (head)->hh.tbl->buckets) { uthash_fatal( "out of memory"); } \ + memset((head)->hh.tbl->buckets, 0, \ + HASH_INITIAL_NUM_BUCKETS*sizeof(struct UT_hash_bucket)); \ + HASH_BLOOM_MAKE((head)->hh.tbl); \ + (head)->hh.tbl->signature = HASH_SIGNATURE; \ +} while (0) + +#define HASH_REPLACE_BYHASHVALUE_INORDER(hh,head,fieldname,keylen_in,hashval,add,replaced,cmpfcn) \ +do { \ + (replaced) = NULL; \ + HASH_FIND_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, hashval, replaced); \ + if (replaced) { \ + HASH_DELETE(hh, head, replaced); \ + } \ + HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, &((add)->fieldname), keylen_in, hashval, add, cmpfcn); \ +} while (0) + +#define HASH_REPLACE_BYHASHVALUE(hh,head,fieldname,keylen_in,hashval,add,replaced) \ +do { \ + (replaced) = NULL; \ + HASH_FIND_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, hashval, replaced); \ + if (replaced) { \ + HASH_DELETE(hh, head, replaced); \ + } \ + HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, hashval, add); \ +} while (0) + +#define HASH_REPLACE(hh,head,fieldname,keylen_in,add,replaced) \ +do { \ + unsigned _hr_hashv; \ + HASH_VALUE(&((add)->fieldname), keylen_in, _hr_hashv); \ + HASH_REPLACE_BYHASHVALUE(hh, head, fieldname, keylen_in, _hr_hashv, add, replaced); \ +} while (0) + +#define HASH_REPLACE_INORDER(hh,head,fieldname,keylen_in,add,replaced,cmpfcn) \ +do { \ + unsigned _hr_hashv; \ + HASH_VALUE(&((add)->fieldname), keylen_in, _hr_hashv); \ + HASH_REPLACE_BYHASHVALUE_INORDER(hh, head, fieldname, keylen_in, _hr_hashv, add, replaced, cmpfcn); \ +} while (0) + +#define HASH_APPEND_LIST(hh, head, add) \ +do { \ + (add)->hh.next = NULL; \ + (add)->hh.prev = ELMT_FROM_HH((head)->hh.tbl, (head)->hh.tbl->tail); \ + (head)->hh.tbl->tail->next = (add); \ + (head)->hh.tbl->tail = &((add)->hh); \ +} while (0) + +#define HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh,head,keyptr,keylen_in,hashval,add,cmpfcn) \ +do { \ + unsigned _ha_bkt; \ + (add)->hh.hashv = (hashval); \ + (add)->hh.key = (char*) (keyptr); \ + (add)->hh.keylen = (unsigned) (keylen_in); \ + if (!(head)) { \ + (add)->hh.next = NULL; \ + (add)->hh.prev = NULL; \ + (head) = (add); \ + HASH_MAKE_TABLE(hh, head); \ + } else { \ + struct UT_hash_handle *_hs_iter = &(head)->hh; \ + (add)->hh.tbl = (head)->hh.tbl; \ + do { \ + if (cmpfcn(DECLTYPE(head) ELMT_FROM_HH((head)->hh.tbl, _hs_iter), add) > 0) \ + break; \ + } while ((_hs_iter = _hs_iter->next)); \ + if (_hs_iter) { \ + (add)->hh.next = _hs_iter; \ + if (((add)->hh.prev = _hs_iter->prev)) { \ + HH_FROM_ELMT((head)->hh.tbl, _hs_iter->prev)->next = (add); \ + } else { \ + (head) = (add); \ + } \ + _hs_iter->prev = (add); \ + } else { \ + HASH_APPEND_LIST(hh, head, add); \ + } \ + } \ + (head)->hh.tbl->num_items++; \ + HASH_TO_BKT(hashval, (head)->hh.tbl->num_buckets, _ha_bkt); \ + HASH_ADD_TO_BKT((head)->hh.tbl->buckets[_ha_bkt], &(add)->hh); \ + HASH_BLOOM_ADD((head)->hh.tbl, hashval); \ + HASH_EMIT_KEY(hh, head, keyptr, keylen_in); \ + HASH_FSCK(hh, head); \ +} while (0) + +#define HASH_ADD_KEYPTR_INORDER(hh,head,keyptr,keylen_in,add,cmpfcn) \ +do { \ + unsigned _hs_hashv; \ + HASH_VALUE(keyptr, keylen_in, _hs_hashv); \ + HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, keyptr, keylen_in, _hs_hashv, add, cmpfcn); \ +} while (0) + +#define HASH_ADD_BYHASHVALUE_INORDER(hh,head,fieldname,keylen_in,hashval,add,cmpfcn) \ + HASH_ADD_KEYPTR_BYHASHVALUE_INORDER(hh, head, &((add)->fieldname), keylen_in, hashval, add, cmpfcn) + +#define HASH_ADD_INORDER(hh,head,fieldname,keylen_in,add,cmpfcn) \ + HASH_ADD_KEYPTR_INORDER(hh, head, &((add)->fieldname), keylen_in, add, cmpfcn) + +#define HASH_ADD_KEYPTR_BYHASHVALUE(hh,head,keyptr,keylen_in,hashval,add) \ +do { \ + unsigned _ha_bkt; \ + (add)->hh.hashv = (hashval); \ + (add)->hh.key = (char*) (keyptr); \ + (add)->hh.keylen = (unsigned) (keylen_in); \ + if (!(head)) { \ + (add)->hh.next = NULL; \ + (add)->hh.prev = NULL; \ + (head) = (add); \ + HASH_MAKE_TABLE(hh, head); \ + } else { \ + (add)->hh.tbl = (head)->hh.tbl; \ + HASH_APPEND_LIST(hh, head, add); \ + } \ + (head)->hh.tbl->num_items++; \ + HASH_TO_BKT(hashval, (head)->hh.tbl->num_buckets, _ha_bkt); \ + HASH_ADD_TO_BKT((head)->hh.tbl->buckets[_ha_bkt], &(add)->hh); \ + HASH_BLOOM_ADD((head)->hh.tbl, hashval); \ + HASH_EMIT_KEY(hh, head, keyptr, keylen_in); \ + HASH_FSCK(hh, head); \ +} while (0) + +#define HASH_ADD_KEYPTR(hh,head,keyptr,keylen_in,add) \ +do { \ + unsigned _ha_hashv; \ + HASH_VALUE(keyptr, keylen_in, _ha_hashv); \ + HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, keyptr, keylen_in, _ha_hashv, add); \ +} while (0) + +#define HASH_ADD_BYHASHVALUE(hh,head,fieldname,keylen_in,hashval,add) \ + HASH_ADD_KEYPTR_BYHASHVALUE(hh, head, &((add)->fieldname), keylen_in, hashval, add) + +#define HASH_ADD(hh,head,fieldname,keylen_in,add) \ + HASH_ADD_KEYPTR(hh, head, &((add)->fieldname), keylen_in, add) + +#define HASH_TO_BKT(hashv,num_bkts,bkt) \ +do { \ + bkt = ((hashv) & ((num_bkts) - 1U)); \ +} while (0) + +/* delete "delptr" from the hash table. + * "the usual" patch-up process for the app-order doubly-linked-list. + * The use of _hd_hh_del below deserves special explanation. + * These used to be expressed using (delptr) but that led to a bug + * if someone used the same symbol for the head and deletee, like + * HASH_DELETE(hh,users,users); + * We want that to work, but by changing the head (users) below + * we were forfeiting our ability to further refer to the deletee (users) + * in the patch-up process. Solution: use scratch space to + * copy the deletee pointer, then the latter references are via that + * scratch pointer rather than through the repointed (users) symbol. + */ +#define HASH_DELETE(hh,head,delptr) \ +do { \ + struct UT_hash_handle *_hd_hh_del; \ + if ( ((delptr)->hh.prev == NULL) && ((delptr)->hh.next == NULL) ) { \ + uthash_free((head)->hh.tbl->buckets, \ + (head)->hh.tbl->num_buckets*sizeof(struct UT_hash_bucket) ); \ + HASH_BLOOM_FREE((head)->hh.tbl); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + head = NULL; \ + } else { \ + unsigned _hd_bkt; \ + _hd_hh_del = &((delptr)->hh); \ + if ((delptr) == ELMT_FROM_HH((head)->hh.tbl,(head)->hh.tbl->tail)) { \ + (head)->hh.tbl->tail = \ + (UT_hash_handle*)((ptrdiff_t)((delptr)->hh.prev) + \ + (head)->hh.tbl->hho); \ + } \ + if ((delptr)->hh.prev != NULL) { \ + ((UT_hash_handle*)((ptrdiff_t)((delptr)->hh.prev) + \ + (head)->hh.tbl->hho))->next = (delptr)->hh.next; \ + } else { \ + DECLTYPE_ASSIGN(head,(delptr)->hh.next); \ + } \ + if (_hd_hh_del->next != NULL) { \ + ((UT_hash_handle*)((ptrdiff_t)_hd_hh_del->next + \ + (head)->hh.tbl->hho))->prev = \ + _hd_hh_del->prev; \ + } \ + HASH_TO_BKT( _hd_hh_del->hashv, (head)->hh.tbl->num_buckets, _hd_bkt); \ + HASH_DEL_IN_BKT(hh,(head)->hh.tbl->buckets[_hd_bkt], _hd_hh_del); \ + (head)->hh.tbl->num_items--; \ + } \ + HASH_FSCK(hh,head); \ +} while (0) + + +/* convenience forms of HASH_FIND/HASH_ADD/HASH_DEL */ +#define HASH_FIND_STR(head,findstr,out) \ + HASH_FIND(hh,head,findstr,(unsigned)uthash_strlen(findstr),out) +#define HASH_ADD_STR(head,strfield,add) \ + HASH_ADD(hh,head,strfield[0],(unsigned)uthash_strlen(add->strfield),add) +#define HASH_REPLACE_STR(head,strfield,add,replaced) \ + HASH_REPLACE(hh,head,strfield[0],(unsigned)uthash_strlen(add->strfield),add,replaced) +#define HASH_FIND_INT(head,findint,out) \ + HASH_FIND(hh,head,findint,sizeof(int),out) +#define HASH_ADD_INT(head,intfield,add) \ + HASH_ADD(hh,head,intfield,sizeof(int),add) +#define HASH_REPLACE_INT(head,intfield,add,replaced) \ + HASH_REPLACE(hh,head,intfield,sizeof(int),add,replaced) +#define HASH_FIND_PTR(head,findptr,out) \ + HASH_FIND(hh,head,findptr,sizeof(void *),out) +#define HASH_ADD_PTR(head,ptrfield,add) \ + HASH_ADD(hh,head,ptrfield,sizeof(void *),add) +#define HASH_REPLACE_PTR(head,ptrfield,add,replaced) \ + HASH_REPLACE(hh,head,ptrfield,sizeof(void *),add,replaced) +#define HASH_DEL(head,delptr) \ + HASH_DELETE(hh,head,delptr) + +/* HASH_FSCK checks hash integrity on every add/delete when HASH_DEBUG is defined. + * This is for uthash developer only; it compiles away if HASH_DEBUG isn't defined. + */ +#ifdef HASH_DEBUG +#define HASH_OOPS(...) do { fprintf(stderr,__VA_ARGS__); exit(-1); } while (0) +#define HASH_FSCK(hh,head) \ +do { \ + struct UT_hash_handle *_thh; \ + if (head) { \ + unsigned _bkt_i; \ + unsigned _count; \ + char *_prev; \ + _count = 0; \ + for( _bkt_i = 0; _bkt_i < (head)->hh.tbl->num_buckets; _bkt_i++) { \ + unsigned _bkt_count = 0; \ + _thh = (head)->hh.tbl->buckets[_bkt_i].hh_head; \ + _prev = NULL; \ + while (_thh) { \ + if (_prev != (char*)(_thh->hh_prev)) { \ + HASH_OOPS("invalid hh_prev %p, actual %p\n", \ + _thh->hh_prev, _prev ); \ + } \ + _bkt_count++; \ + _prev = (char*)(_thh); \ + _thh = _thh->hh_next; \ + } \ + _count += _bkt_count; \ + if ((head)->hh.tbl->buckets[_bkt_i].count != _bkt_count) { \ + HASH_OOPS("invalid bucket count %u, actual %u\n", \ + (head)->hh.tbl->buckets[_bkt_i].count, _bkt_count); \ + } \ + } \ + if (_count != (head)->hh.tbl->num_items) { \ + HASH_OOPS("invalid hh item count %u, actual %u\n", \ + (head)->hh.tbl->num_items, _count ); \ + } \ + /* traverse hh in app order; check next/prev integrity, count */ \ + _count = 0; \ + _prev = NULL; \ + _thh = &(head)->hh; \ + while (_thh) { \ + _count++; \ + if (_prev !=(char*)(_thh->prev)) { \ + HASH_OOPS("invalid prev %p, actual %p\n", \ + _thh->prev, _prev ); \ + } \ + _prev = (char*)ELMT_FROM_HH((head)->hh.tbl, _thh); \ + _thh = ( _thh->next ? (UT_hash_handle*)((char*)(_thh->next) + \ + (head)->hh.tbl->hho) : NULL ); \ + } \ + if (_count != (head)->hh.tbl->num_items) { \ + HASH_OOPS("invalid app item count %u, actual %u\n", \ + (head)->hh.tbl->num_items, _count ); \ + } \ + } \ +} while (0) +#else +#define HASH_FSCK(hh,head) +#endif + +/* When compiled with -DHASH_EMIT_KEYS, length-prefixed keys are emitted to + * the descriptor to which this macro is defined for tuning the hash function. + * The app can #include to get the prototype for write(2). */ +#ifdef HASH_EMIT_KEYS +#define HASH_EMIT_KEY(hh,head,keyptr,fieldlen) \ +do { \ + unsigned _klen = fieldlen; \ + write(HASH_EMIT_KEYS, &_klen, sizeof(_klen)); \ + write(HASH_EMIT_KEYS, keyptr, (unsigned long)fieldlen); \ +} while (0) +#else +#define HASH_EMIT_KEY(hh,head,keyptr,fieldlen) +#endif + +/* default to Jenkin's hash unless overridden e.g. DHASH_FUNCTION=HASH_SAX */ +#ifdef HASH_FUNCTION +#define HASH_FCN HASH_FUNCTION +#else +#define HASH_FCN HASH_JEN +#endif + +/* The Bernstein hash function, used in Perl prior to v5.6. Note (x<<5+x)=x*33. */ +#define HASH_BER(key,keylen,hashv) \ +do { \ + unsigned _hb_keylen=(unsigned)keylen; \ + const unsigned char *_hb_key=(const unsigned char*)(key); \ + (hashv) = 0; \ + while (_hb_keylen-- != 0U) { \ + (hashv) = (((hashv) << 5) + (hashv)) + *_hb_key++; \ + } \ +} while (0) + + +/* SAX/FNV/OAT/JEN hash functions are macro variants of those listed at + * http://eternallyconfuzzled.com/tuts/algorithms/jsw_tut_hashing.aspx */ +#define HASH_SAX(key,keylen,hashv) \ +do { \ + unsigned _sx_i; \ + const unsigned char *_hs_key=(const unsigned char*)(key); \ + hashv = 0; \ + for(_sx_i=0; _sx_i < keylen; _sx_i++) { \ + hashv ^= (hashv << 5) + (hashv >> 2) + _hs_key[_sx_i]; \ + } \ +} while (0) +/* FNV-1a variation */ +#define HASH_FNV(key,keylen,hashv) \ +do { \ + unsigned _fn_i; \ + const unsigned char *_hf_key=(const unsigned char*)(key); \ + hashv = 2166136261U; \ + for(_fn_i=0; _fn_i < keylen; _fn_i++) { \ + hashv = hashv ^ _hf_key[_fn_i]; \ + hashv = hashv * 16777619U; \ + } \ +} while (0) + +#define HASH_OAT(key,keylen,hashv) \ +do { \ + unsigned _ho_i; \ + const unsigned char *_ho_key=(const unsigned char*)(key); \ + hashv = 0; \ + for(_ho_i=0; _ho_i < keylen; _ho_i++) { \ + hashv += _ho_key[_ho_i]; \ + hashv += (hashv << 10); \ + hashv ^= (hashv >> 6); \ + } \ + hashv += (hashv << 3); \ + hashv ^= (hashv >> 11); \ + hashv += (hashv << 15); \ +} while (0) + +#define HASH_JEN_MIX(a,b,c) \ +do { \ + a -= b; a -= c; a ^= ( c >> 13 ); \ + b -= c; b -= a; b ^= ( a << 8 ); \ + c -= a; c -= b; c ^= ( b >> 13 ); \ + a -= b; a -= c; a ^= ( c >> 12 ); \ + b -= c; b -= a; b ^= ( a << 16 ); \ + c -= a; c -= b; c ^= ( b >> 5 ); \ + a -= b; a -= c; a ^= ( c >> 3 ); \ + b -= c; b -= a; b ^= ( a << 10 ); \ + c -= a; c -= b; c ^= ( b >> 15 ); \ +} while (0) + +#define HASH_JEN(key,keylen,hashv) \ +do { \ + unsigned _hj_i,_hj_j,_hj_k; \ + unsigned const char *_hj_key=(unsigned const char*)(key); \ + hashv = 0xfeedbeefu; \ + _hj_i = _hj_j = 0x9e3779b9u; \ + _hj_k = (unsigned)(keylen); \ + while (_hj_k >= 12U) { \ + _hj_i += (_hj_key[0] + ( (unsigned)_hj_key[1] << 8 ) \ + + ( (unsigned)_hj_key[2] << 16 ) \ + + ( (unsigned)_hj_key[3] << 24 ) ); \ + _hj_j += (_hj_key[4] + ( (unsigned)_hj_key[5] << 8 ) \ + + ( (unsigned)_hj_key[6] << 16 ) \ + + ( (unsigned)_hj_key[7] << 24 ) ); \ + hashv += (_hj_key[8] + ( (unsigned)_hj_key[9] << 8 ) \ + + ( (unsigned)_hj_key[10] << 16 ) \ + + ( (unsigned)_hj_key[11] << 24 ) ); \ + \ + HASH_JEN_MIX(_hj_i, _hj_j, hashv); \ + \ + _hj_key += 12; \ + _hj_k -= 12U; \ + } \ + hashv += (unsigned)(keylen); \ + switch ( _hj_k ) { \ + case 11: hashv += ( (unsigned)_hj_key[10] << 24 ); /* FALLTHROUGH */ \ + case 10: hashv += ( (unsigned)_hj_key[9] << 16 ); /* FALLTHROUGH */ \ + case 9: hashv += ( (unsigned)_hj_key[8] << 8 ); /* FALLTHROUGH */ \ + case 8: _hj_j += ( (unsigned)_hj_key[7] << 24 ); /* FALLTHROUGH */ \ + case 7: _hj_j += ( (unsigned)_hj_key[6] << 16 ); /* FALLTHROUGH */ \ + case 6: _hj_j += ( (unsigned)_hj_key[5] << 8 ); /* FALLTHROUGH */ \ + case 5: _hj_j += _hj_key[4]; /* FALLTHROUGH */ \ + case 4: _hj_i += ( (unsigned)_hj_key[3] << 24 ); /* FALLTHROUGH */ \ + case 3: _hj_i += ( (unsigned)_hj_key[2] << 16 ); /* FALLTHROUGH */ \ + case 2: _hj_i += ( (unsigned)_hj_key[1] << 8 ); /* FALLTHROUGH */ \ + case 1: _hj_i += _hj_key[0]; \ + } \ + HASH_JEN_MIX(_hj_i, _hj_j, hashv); \ +} while (0) + +/* The Paul Hsieh hash function */ +#undef get16bits +#if (defined(__GNUC__) && defined(__i386__)) || defined(__WATCOMC__) \ + || defined(_MSC_VER) || defined (__BORLANDC__) || defined (__TURBOC__) +#define get16bits(d) (*((const uint16_t *) (d))) +#endif + +#if !defined (get16bits) +#define get16bits(d) ((((uint32_t)(((const uint8_t *)(d))[1])) << 8) \ + +(uint32_t)(((const uint8_t *)(d))[0]) ) +#endif +#define HASH_SFH(key,keylen,hashv) \ +do { \ + unsigned const char *_sfh_key=(unsigned const char*)(key); \ + uint32_t _sfh_tmp, _sfh_len = (uint32_t)keylen; \ + \ + unsigned _sfh_rem = _sfh_len & 3U; \ + _sfh_len >>= 2; \ + hashv = 0xcafebabeu; \ + \ + /* Main loop */ \ + for (;_sfh_len > 0U; _sfh_len--) { \ + hashv += get16bits (_sfh_key); \ + _sfh_tmp = ((uint32_t)(get16bits (_sfh_key+2)) << 11) ^ hashv; \ + hashv = (hashv << 16) ^ _sfh_tmp; \ + _sfh_key += 2U*sizeof (uint16_t); \ + hashv += hashv >> 11; \ + } \ + \ + /* Handle end cases */ \ + switch (_sfh_rem) { \ + case 3: hashv += get16bits (_sfh_key); \ + hashv ^= hashv << 16; \ + hashv ^= (uint32_t)(_sfh_key[sizeof (uint16_t)]) << 18; \ + hashv += hashv >> 11; \ + break; \ + case 2: hashv += get16bits (_sfh_key); \ + hashv ^= hashv << 11; \ + hashv += hashv >> 17; \ + break; \ + case 1: hashv += *_sfh_key; \ + hashv ^= hashv << 10; \ + hashv += hashv >> 1; \ + } \ + \ + /* Force "avalanching" of final 127 bits */ \ + hashv ^= hashv << 3; \ + hashv += hashv >> 5; \ + hashv ^= hashv << 4; \ + hashv += hashv >> 17; \ + hashv ^= hashv << 25; \ + hashv += hashv >> 6; \ +} while (0) + +#ifdef HASH_USING_NO_STRICT_ALIASING +/* The MurmurHash exploits some CPU's (x86,x86_64) tolerance for unaligned reads. + * For other types of CPU's (e.g. Sparc) an unaligned read causes a bus error. + * MurmurHash uses the faster approach only on CPU's where we know it's safe. + * + * Note the preprocessor built-in defines can be emitted using: + * + * gcc -m64 -dM -E - < /dev/null (on gcc) + * cc -## a.c (where a.c is a simple test file) (Sun Studio) + */ +#if (defined(__i386__) || defined(__x86_64__) || defined(_M_IX86)) +#define MUR_GETBLOCK(p,i) p[i] +#else /* non intel */ +#define MUR_PLUS0_ALIGNED(p) (((unsigned long)p & 3UL) == 0UL) +#define MUR_PLUS1_ALIGNED(p) (((unsigned long)p & 3UL) == 1UL) +#define MUR_PLUS2_ALIGNED(p) (((unsigned long)p & 3UL) == 2UL) +#define MUR_PLUS3_ALIGNED(p) (((unsigned long)p & 3UL) == 3UL) +#define WP(p) ((uint32_t*)((unsigned long)(p) & ~3UL)) +#if (defined(__BIG_ENDIAN__) || defined(SPARC) || defined(__ppc__) || defined(__ppc64__)) +#define MUR_THREE_ONE(p) ((((*WP(p))&0x00ffffff) << 8) | (((*(WP(p)+1))&0xff000000) >> 24)) +#define MUR_TWO_TWO(p) ((((*WP(p))&0x0000ffff) <<16) | (((*(WP(p)+1))&0xffff0000) >> 16)) +#define MUR_ONE_THREE(p) ((((*WP(p))&0x000000ff) <<24) | (((*(WP(p)+1))&0xffffff00) >> 8)) +#else /* assume little endian non-intel */ +#define MUR_THREE_ONE(p) ((((*WP(p))&0xffffff00) >> 8) | (((*(WP(p)+1))&0x000000ff) << 24)) +#define MUR_TWO_TWO(p) ((((*WP(p))&0xffff0000) >>16) | (((*(WP(p)+1))&0x0000ffff) << 16)) +#define MUR_ONE_THREE(p) ((((*WP(p))&0xff000000) >>24) | (((*(WP(p)+1))&0x00ffffff) << 8)) +#endif +#define MUR_GETBLOCK(p,i) (MUR_PLUS0_ALIGNED(p) ? ((p)[i]) : \ + (MUR_PLUS1_ALIGNED(p) ? MUR_THREE_ONE(p) : \ + (MUR_PLUS2_ALIGNED(p) ? MUR_TWO_TWO(p) : \ + MUR_ONE_THREE(p)))) +#endif +#define MUR_ROTL32(x,r) (((x) << (r)) | ((x) >> (32 - (r)))) +#define MUR_FMIX(_h) \ +do { \ + _h ^= _h >> 16; \ + _h *= 0x85ebca6bu; \ + _h ^= _h >> 13; \ + _h *= 0xc2b2ae35u; \ + _h ^= _h >> 16; \ +} while (0) + +#define HASH_MUR(key,keylen,hashv) \ +do { \ + const uint8_t *_mur_data = (const uint8_t*)(key); \ + const int _mur_nblocks = (int)(keylen) / 4; \ + uint32_t _mur_h1 = 0xf88D5353u; \ + uint32_t _mur_c1 = 0xcc9e2d51u; \ + uint32_t _mur_c2 = 0x1b873593u; \ + uint32_t _mur_k1 = 0; \ + const uint8_t *_mur_tail; \ + const uint32_t *_mur_blocks = (const uint32_t*)(_mur_data+(_mur_nblocks*4)); \ + int _mur_i; \ + for(_mur_i = -_mur_nblocks; _mur_i!=0; _mur_i++) { \ + _mur_k1 = MUR_GETBLOCK(_mur_blocks,_mur_i); \ + _mur_k1 *= _mur_c1; \ + _mur_k1 = MUR_ROTL32(_mur_k1,15); \ + _mur_k1 *= _mur_c2; \ + \ + _mur_h1 ^= _mur_k1; \ + _mur_h1 = MUR_ROTL32(_mur_h1,13); \ + _mur_h1 = (_mur_h1*5U) + 0xe6546b64u; \ + } \ + _mur_tail = (const uint8_t*)(_mur_data + (_mur_nblocks*4)); \ + _mur_k1=0; \ + switch((keylen) & 3U) { \ + case 3: _mur_k1 ^= (uint32_t)_mur_tail[2] << 16; /* FALLTHROUGH */ \ + case 2: _mur_k1 ^= (uint32_t)_mur_tail[1] << 8; /* FALLTHROUGH */ \ + case 1: _mur_k1 ^= (uint32_t)_mur_tail[0]; \ + _mur_k1 *= _mur_c1; \ + _mur_k1 = MUR_ROTL32(_mur_k1,15); \ + _mur_k1 *= _mur_c2; \ + _mur_h1 ^= _mur_k1; \ + } \ + _mur_h1 ^= (uint32_t)(keylen); \ + MUR_FMIX(_mur_h1); \ + hashv = _mur_h1; \ +} while (0) +#endif /* HASH_USING_NO_STRICT_ALIASING */ + +/* iterate over items in a known bucket to find desired item */ +#define HASH_FIND_IN_BKT(tbl,hh,head,keyptr,keylen_in,hashval,out) \ +do { \ + if ((head).hh_head != NULL) { \ + DECLTYPE_ASSIGN(out, ELMT_FROM_HH(tbl, (head).hh_head)); \ + } else { \ + (out) = NULL; \ + } \ + while ((out) != NULL) { \ + if ((out)->hh.hashv == (hashval) && (out)->hh.keylen == (keylen_in)) { \ + if (uthash_memcmp((out)->hh.key, keyptr, keylen_in) == 0) { \ + break; \ + } \ + } \ + if ((out)->hh.hh_next != NULL) { \ + DECLTYPE_ASSIGN(out, ELMT_FROM_HH(tbl, (out)->hh.hh_next)); \ + } else { \ + (out) = NULL; \ + } \ + } \ +} while (0) + +/* add an item to a bucket */ +#define HASH_ADD_TO_BKT(head,addhh) \ +do { \ + head.count++; \ + (addhh)->hh_next = head.hh_head; \ + (addhh)->hh_prev = NULL; \ + if (head.hh_head != NULL) { (head).hh_head->hh_prev = (addhh); } \ + (head).hh_head=addhh; \ + if ((head.count >= ((head.expand_mult+1U) * HASH_BKT_CAPACITY_THRESH)) \ + && ((addhh)->tbl->noexpand != 1U)) { \ + HASH_EXPAND_BUCKETS((addhh)->tbl); \ + } \ +} while (0) + +/* remove an item from a given bucket */ +#define HASH_DEL_IN_BKT(hh,head,hh_del) \ + (head).count--; \ + if ((head).hh_head == hh_del) { \ + (head).hh_head = hh_del->hh_next; \ + } \ + if (hh_del->hh_prev) { \ + hh_del->hh_prev->hh_next = hh_del->hh_next; \ + } \ + if (hh_del->hh_next) { \ + hh_del->hh_next->hh_prev = hh_del->hh_prev; \ + } + +/* Bucket expansion has the effect of doubling the number of buckets + * and redistributing the items into the new buckets. Ideally the + * items will distribute more or less evenly into the new buckets + * (the extent to which this is true is a measure of the quality of + * the hash function as it applies to the key domain). + * + * With the items distributed into more buckets, the chain length + * (item count) in each bucket is reduced. Thus by expanding buckets + * the hash keeps a bound on the chain length. This bounded chain + * length is the essence of how a hash provides constant time lookup. + * + * The calculation of tbl->ideal_chain_maxlen below deserves some + * explanation. First, keep in mind that we're calculating the ideal + * maximum chain length based on the *new* (doubled) bucket count. + * In fractions this is just n/b (n=number of items,b=new num buckets). + * Since the ideal chain length is an integer, we want to calculate + * ceil(n/b). We don't depend on floating point arithmetic in this + * hash, so to calculate ceil(n/b) with integers we could write + * + * ceil(n/b) = (n/b) + ((n%b)?1:0) + * + * and in fact a previous version of this hash did just that. + * But now we have improved things a bit by recognizing that b is + * always a power of two. We keep its base 2 log handy (call it lb), + * so now we can write this with a bit shift and logical AND: + * + * ceil(n/b) = (n>>lb) + ( (n & (b-1)) ? 1:0) + * + */ +#define HASH_EXPAND_BUCKETS(tbl) \ +do { \ + unsigned _he_bkt; \ + unsigned _he_bkt_i; \ + struct UT_hash_handle *_he_thh, *_he_hh_nxt; \ + UT_hash_bucket *_he_new_buckets, *_he_newbkt; \ + _he_new_buckets = (UT_hash_bucket*)uthash_malloc( \ + 2UL * tbl->num_buckets * sizeof(struct UT_hash_bucket)); \ + if (!_he_new_buckets) { uthash_fatal( "out of memory"); } \ + memset(_he_new_buckets, 0, \ + 2UL * tbl->num_buckets * sizeof(struct UT_hash_bucket)); \ + tbl->ideal_chain_maxlen = \ + (tbl->num_items >> (tbl->log2_num_buckets+1U)) + \ + (((tbl->num_items & ((tbl->num_buckets*2U)-1U)) != 0U) ? 1U : 0U); \ + tbl->nonideal_items = 0; \ + for(_he_bkt_i = 0; _he_bkt_i < tbl->num_buckets; _he_bkt_i++) \ + { \ + _he_thh = tbl->buckets[ _he_bkt_i ].hh_head; \ + while (_he_thh != NULL) { \ + _he_hh_nxt = _he_thh->hh_next; \ + HASH_TO_BKT( _he_thh->hashv, tbl->num_buckets*2U, _he_bkt); \ + _he_newbkt = &(_he_new_buckets[ _he_bkt ]); \ + if (++(_he_newbkt->count) > tbl->ideal_chain_maxlen) { \ + tbl->nonideal_items++; \ + _he_newbkt->expand_mult = _he_newbkt->count / \ + tbl->ideal_chain_maxlen; \ + } \ + _he_thh->hh_prev = NULL; \ + _he_thh->hh_next = _he_newbkt->hh_head; \ + if (_he_newbkt->hh_head != NULL) { _he_newbkt->hh_head->hh_prev = \ + _he_thh; } \ + _he_newbkt->hh_head = _he_thh; \ + _he_thh = _he_hh_nxt; \ + } \ + } \ + uthash_free( tbl->buckets, tbl->num_buckets*sizeof(struct UT_hash_bucket) ); \ + tbl->num_buckets *= 2U; \ + tbl->log2_num_buckets++; \ + tbl->buckets = _he_new_buckets; \ + tbl->ineff_expands = (tbl->nonideal_items > (tbl->num_items >> 1)) ? \ + (tbl->ineff_expands+1U) : 0U; \ + if (tbl->ineff_expands > 1U) { \ + tbl->noexpand=1; \ + uthash_noexpand_fyi(tbl); \ + } \ + uthash_expand_fyi(tbl); \ +} while (0) + + +/* This is an adaptation of Simon Tatham's O(n log(n)) mergesort */ +/* Note that HASH_SORT assumes the hash handle name to be hh. + * HASH_SRT was added to allow the hash handle name to be passed in. */ +#define HASH_SORT(head,cmpfcn) HASH_SRT(hh,head,cmpfcn) +#define HASH_SRT(hh,head,cmpfcn) \ +do { \ + unsigned _hs_i; \ + unsigned _hs_looping,_hs_nmerges,_hs_insize,_hs_psize,_hs_qsize; \ + struct UT_hash_handle *_hs_p, *_hs_q, *_hs_e, *_hs_list, *_hs_tail; \ + if (head != NULL) { \ + _hs_insize = 1; \ + _hs_looping = 1; \ + _hs_list = &((head)->hh); \ + while (_hs_looping != 0U) { \ + _hs_p = _hs_list; \ + _hs_list = NULL; \ + _hs_tail = NULL; \ + _hs_nmerges = 0; \ + while (_hs_p != NULL) { \ + _hs_nmerges++; \ + _hs_q = _hs_p; \ + _hs_psize = 0; \ + for ( _hs_i = 0; _hs_i < _hs_insize; _hs_i++ ) { \ + _hs_psize++; \ + _hs_q = (UT_hash_handle*)((_hs_q->next != NULL) ? \ + ((void*)((char*)(_hs_q->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + if (! (_hs_q) ) { break; } \ + } \ + _hs_qsize = _hs_insize; \ + while ((_hs_psize > 0U) || ((_hs_qsize > 0U) && (_hs_q != NULL))) {\ + if (_hs_psize == 0U) { \ + _hs_e = _hs_q; \ + _hs_q = (UT_hash_handle*)((_hs_q->next != NULL) ? \ + ((void*)((char*)(_hs_q->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + _hs_qsize--; \ + } else if ( (_hs_qsize == 0U) || (_hs_q == NULL) ) { \ + _hs_e = _hs_p; \ + if (_hs_p != NULL){ \ + _hs_p = (UT_hash_handle*)((_hs_p->next != NULL) ? \ + ((void*)((char*)(_hs_p->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + } \ + _hs_psize--; \ + } else if (( \ + cmpfcn(DECLTYPE(head)(ELMT_FROM_HH((head)->hh.tbl,_hs_p)), \ + DECLTYPE(head)(ELMT_FROM_HH((head)->hh.tbl,_hs_q))) \ + ) <= 0) { \ + _hs_e = _hs_p; \ + if (_hs_p != NULL){ \ + _hs_p = (UT_hash_handle*)((_hs_p->next != NULL) ? \ + ((void*)((char*)(_hs_p->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + } \ + _hs_psize--; \ + } else { \ + _hs_e = _hs_q; \ + _hs_q = (UT_hash_handle*)((_hs_q->next != NULL) ? \ + ((void*)((char*)(_hs_q->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + _hs_qsize--; \ + } \ + if ( _hs_tail != NULL ) { \ + _hs_tail->next = ((_hs_e != NULL) ? \ + ELMT_FROM_HH((head)->hh.tbl,_hs_e) : NULL); \ + } else { \ + _hs_list = _hs_e; \ + } \ + if (_hs_e != NULL) { \ + _hs_e->prev = ((_hs_tail != NULL) ? \ + ELMT_FROM_HH((head)->hh.tbl,_hs_tail) : NULL); \ + } \ + _hs_tail = _hs_e; \ + } \ + _hs_p = _hs_q; \ + } \ + if (_hs_tail != NULL){ \ + _hs_tail->next = NULL; \ + } \ + if ( _hs_nmerges <= 1U ) { \ + _hs_looping=0; \ + (head)->hh.tbl->tail = _hs_tail; \ + DECLTYPE_ASSIGN(head,ELMT_FROM_HH((head)->hh.tbl, _hs_list)); \ + } \ + _hs_insize *= 2U; \ + } \ + HASH_FSCK(hh,head); \ + } \ +} while (0) + +/* This function selects items from one hash into another hash. + * The end result is that the selected items have dual presence + * in both hashes. There is no copy of the items made; rather + * they are added into the new hash through a secondary hash + * hash handle that must be present in the structure. */ +#define HASH_SELECT(hh_dst, dst, hh_src, src, cond) \ +do { \ + unsigned _src_bkt, _dst_bkt; \ + void *_last_elt=NULL, *_elt; \ + UT_hash_handle *_src_hh, *_dst_hh, *_last_elt_hh=NULL; \ + ptrdiff_t _dst_hho = ((char*)(&(dst)->hh_dst) - (char*)(dst)); \ + if (src != NULL) { \ + for(_src_bkt=0; _src_bkt < (src)->hh_src.tbl->num_buckets; _src_bkt++) { \ + for(_src_hh = (src)->hh_src.tbl->buckets[_src_bkt].hh_head; \ + _src_hh != NULL; \ + _src_hh = _src_hh->hh_next) { \ + _elt = ELMT_FROM_HH((src)->hh_src.tbl, _src_hh); \ + if (cond(_elt)) { \ + _dst_hh = (UT_hash_handle*)(((char*)_elt) + _dst_hho); \ + _dst_hh->key = _src_hh->key; \ + _dst_hh->keylen = _src_hh->keylen; \ + _dst_hh->hashv = _src_hh->hashv; \ + _dst_hh->prev = _last_elt; \ + _dst_hh->next = NULL; \ + if (_last_elt_hh != NULL) { _last_elt_hh->next = _elt; } \ + if (dst == NULL) { \ + DECLTYPE_ASSIGN(dst,_elt); \ + HASH_MAKE_TABLE(hh_dst,dst); \ + } else { \ + _dst_hh->tbl = (dst)->hh_dst.tbl; \ + } \ + HASH_TO_BKT(_dst_hh->hashv, _dst_hh->tbl->num_buckets, _dst_bkt); \ + HASH_ADD_TO_BKT(_dst_hh->tbl->buckets[_dst_bkt],_dst_hh); \ + (dst)->hh_dst.tbl->num_items++; \ + _last_elt = _elt; \ + _last_elt_hh = _dst_hh; \ + } \ + } \ + } \ + } \ + HASH_FSCK(hh_dst,dst); \ +} while (0) + +#define HASH_CLEAR(hh,head) \ +do { \ + if (head != NULL) { \ + uthash_free((head)->hh.tbl->buckets, \ + (head)->hh.tbl->num_buckets*sizeof(struct UT_hash_bucket)); \ + HASH_BLOOM_FREE((head)->hh.tbl); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + (head)=NULL; \ + } \ +} while (0) + +#define HASH_OVERHEAD(hh,head) \ + ((head != NULL) ? ( \ + (size_t)(((head)->hh.tbl->num_items * sizeof(UT_hash_handle)) + \ + ((head)->hh.tbl->num_buckets * sizeof(UT_hash_bucket)) + \ + sizeof(UT_hash_table) + \ + (HASH_BLOOM_BYTELEN))) : 0U) + +#ifdef NO_DECLTYPE +#define HASH_ITER(hh,head,el,tmp) \ +for(((el)=(head)), ((*(char**)(&(tmp)))=(char*)((head!=NULL)?(head)->hh.next:NULL)); \ + (el) != NULL; ((el)=(tmp)), ((*(char**)(&(tmp)))=(char*)((tmp!=NULL)?(tmp)->hh.next:NULL))) +#else +#define HASH_ITER(hh,head,el,tmp) \ +for(((el)=(head)), ((tmp)=DECLTYPE(el)((head!=NULL)?(head)->hh.next:NULL)); \ + (el) != NULL; ((el)=(tmp)), ((tmp)=DECLTYPE(el)((tmp!=NULL)?(tmp)->hh.next:NULL))) +#endif + +/* obtain a count of items in the hash */ +#define HASH_COUNT(head) HASH_CNT(hh,head) +#define HASH_CNT(hh,head) ((head != NULL)?((head)->hh.tbl->num_items):0U) + +typedef struct UT_hash_bucket { + struct UT_hash_handle *hh_head; + unsigned count; + + /* expand_mult is normally set to 0. In this situation, the max chain length + * threshold is enforced at its default value, HASH_BKT_CAPACITY_THRESH. (If + * the bucket's chain exceeds this length, bucket expansion is triggered). + * However, setting expand_mult to a non-zero value delays bucket expansion + * (that would be triggered by additions to this particular bucket) + * until its chain length reaches a *multiple* of HASH_BKT_CAPACITY_THRESH. + * (The multiplier is simply expand_mult+1). The whole idea of this + * multiplier is to reduce bucket expansions, since they are expensive, in + * situations where we know that a particular bucket tends to be overused. + * It is better to let its chain length grow to a longer yet-still-bounded + * value, than to do an O(n) bucket expansion too often. + */ + unsigned expand_mult; + +} UT_hash_bucket; + +/* random signature used only to find hash tables in external analysis */ +#define HASH_SIGNATURE 0xa0111fe1u +#define HASH_BLOOM_SIGNATURE 0xb12220f2u + +typedef struct UT_hash_table { + UT_hash_bucket *buckets; + unsigned num_buckets, log2_num_buckets; + unsigned num_items; + struct UT_hash_handle *tail; /* tail hh in app order, for fast append */ + ptrdiff_t hho; /* hash handle offset (byte pos of hash handle in element */ + + /* in an ideal situation (all buckets used equally), no bucket would have + * more than ceil(#items/#buckets) items. that's the ideal chain length. */ + unsigned ideal_chain_maxlen; + + /* nonideal_items is the number of items in the hash whose chain position + * exceeds the ideal chain maxlen. these items pay the penalty for an uneven + * hash distribution; reaching them in a chain traversal takes >ideal steps */ + unsigned nonideal_items; + + /* ineffective expands occur when a bucket doubling was performed, but + * afterward, more than half the items in the hash had nonideal chain + * positions. If this happens on two consecutive expansions we inhibit any + * further expansion, as it's not helping; this happens when the hash + * function isn't a good fit for the key domain. When expansion is inhibited + * the hash will still work, albeit no longer in constant time. */ + unsigned ineff_expands, noexpand; + + uint32_t signature; /* used only to find hash tables in external analysis */ +#ifdef HASH_BLOOM + uint32_t bloom_sig; /* used only to test bloom exists in external analysis */ + uint8_t *bloom_bv; + uint8_t bloom_nbits; +#endif + +} UT_hash_table; + +typedef struct UT_hash_handle { + struct UT_hash_table *tbl; + void *prev; /* prev element in app order */ + void *next; /* next element in app order */ + struct UT_hash_handle *hh_prev; /* previous hh in bucket order */ + struct UT_hash_handle *hh_next; /* next hh in bucket order */ + void *key; /* ptr to enclosing struct's key */ + unsigned keylen; /* enclosing struct's key len */ + unsigned hashv; /* result of hash-fcn(key) */ +} UT_hash_handle; + +#endif /* UTHASH_H */ diff --git a/shadowsocksr-libev/src/server/utils.c b/shadowsocksr-libev/src/server/utils.c new file mode 100644 index 000000000..14a60c7f3 --- /dev/null +++ b/shadowsocksr-libev/src/server/utils.c @@ -0,0 +1,448 @@ +/* + * utils.c - Misc utilities + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include +#ifndef __MINGW32__ +#include +#include +#endif + +#include +#include + +#include "utils.h" + +#ifdef HAVE_SETRLIMIT +#include +#include +#endif + +#define INT_DIGITS 19 /* enough for 64 bit integer */ + +#ifdef LIB_ONLY +FILE *logfile; +#endif + +#ifdef HAS_SYSLOG +int use_syslog = 0; +#endif + +#ifndef __MINGW32__ +void +ERROR(const char *s) +{ + char *msg = strerror(errno); + LOGE("%s: %s", s, msg); +} + +#endif + +int use_tty = 1; + +char * +ss_itoa(int i) +{ + /* Room for INT_DIGITS digits, - and '\0' */ + static char buf[INT_DIGITS + 2]; + char *p = buf + INT_DIGITS + 1; /* points to terminating '\0' */ + if (i >= 0) { + do { + *--p = '0' + (i % 10); + i /= 10; + } while (i != 0); + return p; + } else { /* i < 0 */ + do { + *--p = '0' - (i % 10); + i /= 10; + } while (i != 0); + *--p = '-'; + } + return p; +} + +int +ss_isnumeric(const char *s) { + if (!s || !*s) + return 0; + while (isdigit(*s)) + ++s; + return *s == '\0'; +} + +/* + * setuid() and setgid() for a specified user. + */ +int +run_as(const char *user) +{ +#ifndef __MINGW32__ + if (user[0]) { + /* Convert user to a long integer if it is a non-negative number. + * -1 means it is a user name. */ + long uid = -1; + if (ss_isnumeric(user)) { + errno = 0; + char *endptr; + uid = strtol(user, &endptr, 10); + if (errno || endptr == user) + uid = -1; + } + +#ifdef HAVE_GETPWNAM_R + struct passwd pwdbuf, *pwd; + memset(&pwdbuf, 0, sizeof(struct passwd)); + size_t buflen; + int err; + + for (buflen = 128;; buflen *= 2) { + char buf[buflen]; /* variable length array */ + + /* Note that we use getpwnam_r() instead of getpwnam(), + * which returns its result in a statically allocated buffer and + * cannot be considered thread safe. */ + err = uid >= 0 ? getpwuid_r((uid_t)uid, &pwdbuf, buf, buflen, &pwd) + : getpwnam_r(user, &pwdbuf, buf, buflen, &pwd); + + if (err == 0 && pwd) { + /* setgid first, because we may not be allowed to do it anymore after setuid */ + if (setgid(pwd->pw_gid) != 0) { + LOGE( + "Could not change group id to that of run_as user '%s': %s", + pwd->pw_name, strerror(errno)); + return 0; + } + + if (initgroups(pwd->pw_name, pwd->pw_gid) == -1) { + LOGE("Could not change supplementary groups for user '%s'.", pwd->pw_name); + return 0; + } + + if (setuid(pwd->pw_uid) != 0) { + LOGE( + "Could not change user id to that of run_as user '%s': %s", + pwd->pw_name, strerror(errno)); + return 0; + } + break; + } else if (err != ERANGE) { + if (err) { + LOGE("run_as user '%s' could not be found: %s", user, + strerror(err)); + } else { + LOGE("run_as user '%s' could not be found.", user); + } + return 0; + } else if (buflen >= 16 * 1024) { + /* If getpwnam_r() seems defective, call it quits rather than + * keep on allocating ever larger buffers until we crash. */ + LOGE( + "getpwnam_r() requires more than %u bytes of buffer space.", + (unsigned)buflen); + return 0; + } + /* Else try again with larger buffer. */ + } +#else + /* No getpwnam_r() :-( We'll use getpwnam() and hope for the best. */ + struct passwd *pwd; + + if (!(pwd = uid >=0 ? getpwuid((uid_t)uid) : getpwnam(user))) { + LOGE("run_as user %s could not be found.", user); + return 0; + } + /* setgid first, because we may not allowed to do it anymore after setuid */ + if (setgid(pwd->pw_gid) != 0) { + LOGE("Could not change group id to that of run_as user '%s': %s", + pwd->pw_name, strerror(errno)); + return 0; + } + if (initgroups(pwd->pw_name, pwd->pw_gid) == -1) { + LOGE("Could not change supplementary groups for user '%s'.", pwd->pw_name); + return 0; + } + if (setuid(pwd->pw_uid) != 0) { + LOGE("Could not change user id to that of run_as user '%s': %s", + pwd->pw_name, strerror(errno)); + return 0; + } +#endif + } + +#endif // __MINGW32__ + return 1; +} + +char * +ss_strndup(const char *s, size_t n) +{ + size_t len = strlen(s); + char *ret; + + if (len <= n) { + return strdup(s); + } + + ret = ss_malloc(n + 1); + strncpy(ret, s, n); + ret[n] = '\0'; + return ret; +} + +void +FATAL(const char *msg) +{ + LOGE("%s", msg); + exit(-1); +} + +void * +ss_malloc(size_t size) +{ + void *tmp = malloc(size); + if (tmp == NULL) + exit(EXIT_FAILURE); + return tmp; +} + +void * +ss_realloc(void *ptr, size_t new_size) +{ + void *new = realloc(ptr, new_size); + if (new == NULL) { + free(ptr); + ptr = NULL; + exit(EXIT_FAILURE); + } + return new; +} + +void +usage() +{ + printf("\n"); + printf("shadowsocks-libev %s with %s\n\n", VERSION, USING_CRYPTO); + printf( + " maintained by Max Lv and Linus Yang \n\n"); + printf(" usage:\n\n"); +#ifdef MODULE_LOCAL + printf(" ss-local\n"); +#elif MODULE_REMOTE + printf(" ss-server\n"); +#elif MODULE_TUNNEL + printf(" ss-tunnel\n"); +#elif MODULE_REDIR + printf(" ss-redir\n"); +#elif MODULE_MANAGER + printf(" ss-manager\n"); +#endif + printf("\n"); + printf( + " -s Host name or IP address of your remote server.\n"); + printf( + " -p Port number of your remote server.\n"); + printf( + " -l Port number of your local server.\n"); + printf( + " -k Password of your remote server.\n"); + printf( + " -m Encrypt method: table, rc4, rc4-md5,\n"); + printf( + " aes-128-cfb, aes-192-cfb, aes-256-cfb,\n"); + printf( + " aes-128-ctr, aes-192-ctr, aes-256-ctr,\n"); + printf( + " bf-cfb, camellia-128-cfb, camellia-192-cfb,\n"); + printf( + " camellia-256-cfb, cast5-cfb, des-cfb,\n"); + printf( + " idea-cfb, rc2-cfb, seed-cfb, salsa20,\n"); + printf( + " chacha20 and chacha20-ietf.\n"); + printf( + " The default cipher is rc4-md5.\n"); + printf("\n"); + printf( + " [-a ] Run as another user.\n"); + printf( + " [-f ] The file path to store pid.\n"); + printf( + " [-t ] Socket timeout in seconds.\n"); + printf( + " [-c ] The path to config file.\n"); +#ifdef HAVE_SETRLIMIT + printf( + " [-n ] Max number of open files.\n"); +#endif +#ifndef MODULE_REDIR + printf( + " [-i ] Network interface to bind.\n"); +#endif + printf( + " [-b ] Local address to bind.\n"); + printf("\n"); + printf( + " [-u] Enable UDP relay.\n"); +#ifdef MODULE_REDIR + printf( + " TPROXY is required in redir mode.\n"); +#endif + printf( + " [-U] Enable UDP relay and disable TCP relay.\n"); + printf( + " [-A] Enable onetime authentication.\n"); +#ifdef MODULE_REMOTE + printf( + " [-6] Resovle hostname to IPv6 address first.\n"); +#endif + printf("\n"); +#ifdef MODULE_TUNNEL + printf( + " [-L :] Destination server address and port\n"); + printf( + " for local port forwarding.\n"); +#endif +#ifdef MODULE_REMOTE + printf( + " [-d ] Name servers for internal DNS resolver.\n"); +#endif +#if defined(MODULE_REMOTE) || defined(MODULE_LOCAL) + printf( + " [--fast-open] Enable TCP fast open.\n"); + printf( + " with Linux kernel > 3.7.0.\n"); + printf( + " [--acl ] Path to ACL (Access Control List).\n"); +#endif +#if defined(MODULE_REMOTE) || defined(MODULE_MANAGER) + printf( + " [--manager-address ] UNIX domain socket address.\n"); +#endif +#ifdef MODULE_MANAGER + printf( + " [--executable ] Path to the executable of ss-server.\n"); +#endif + printf( + " [--mtu ] MTU of your network interface.\n"); +#ifdef __linux__ + printf( + " [--mptcp] Enable Multipath TCP on MPTCP Kernel.\n"); +#ifdef MODULE_REMOTE + printf( + " [--firewall] Setup firewall rules for auto blocking.\n"); +#endif +#endif + printf("\n"); + printf( + " [-v] Verbose mode.\n"); + printf( + " [-h, --help] Print this message.\n"); + printf("\n"); +} + +void +daemonize(const char *path) +{ +#ifndef __MINGW32__ + /* Our process ID and Session ID */ + pid_t pid, sid; + + /* Fork off the parent process */ + pid = fork(); + if (pid < 0) { + exit(EXIT_FAILURE); + } + + /* If we got a good PID, then + * we can exit the parent process. */ + if (pid > 0) { + FILE *file = fopen(path, "w"); + if (file == NULL) { + FATAL("Invalid pid file\n"); + } + + fprintf(file, "%d", (int)pid); + fclose(file); + exit(EXIT_SUCCESS); + } + + /* Change the file mode mask */ + umask(0); + + /* Open any logs here */ + + /* Create a new SID for the child process */ + sid = setsid(); + if (sid < 0) { + /* Log the failure */ + exit(EXIT_FAILURE); + } + + /* Change the current working directory */ + if ((chdir("/")) < 0) { + /* Log the failure */ + exit(EXIT_FAILURE); + } + + /* Close out the standard file descriptors */ + close(STDIN_FILENO); + close(STDOUT_FILENO); + close(STDERR_FILENO); +#endif +} + +#ifdef HAVE_SETRLIMIT +int +set_nofile(int nofile) +{ + struct rlimit limit = { nofile, nofile }; /* set both soft and hard limit */ + + if (nofile <= 0) { + FATAL("nofile must be greater than 0\n"); + } + + if (setrlimit(RLIMIT_NOFILE, &limit) < 0) { + if (errno == EPERM) { + LOGE( + "insufficient permission to change NOFILE, not starting as root?"); + return -1; + } else if (errno == EINVAL) { + LOGE("invalid nofile, decrease nofile and try again"); + return -1; + } else { + LOGE("setrlimit failed: %s", strerror(errno)); + return -1; + } + } + + return 0; +} + +#endif diff --git a/shadowsocksr-libev/src/server/utils.h b/shadowsocksr-libev/src/server/utils.h new file mode 100644 index 000000000..0fb7f5a2c --- /dev/null +++ b/shadowsocksr-libev/src/server/utils.h @@ -0,0 +1,232 @@ +/* + * utils.h - Misc utilities + * + * Copyright (C) 2013 - 2016, Max Lv + * + * This file is part of the shadowsocks-libev. + * + * shadowsocks-libev is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * shadowsocks-libev is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with shadowsocks-libev; see the file COPYING. If not, see + * . + */ + +#if defined(USE_CRYPTO_OPENSSL) + +#include +#define USING_CRYPTO OPENSSL_VERSION_TEXT + +#elif defined(USE_CRYPTO_POLARSSL) +#include +#define USING_CRYPTO POLARSSL_VERSION_STRING_FULL + +#elif defined(USE_CRYPTO_MBEDTLS) +#include +#define USING_CRYPTO MBEDTLS_VERSION_STRING_FULL + +#endif + +#ifndef _UTILS_H +#define _UTILS_H + +#include +#include +#include +#include + +#define PORTSTRLEN 16 +#define SS_ADDRSTRLEN (INET6_ADDRSTRLEN + PORTSTRLEN + 1) + +#ifdef ANDROID + +#include + +#define USE_TTY() +#define USE_SYSLOG(ident) +#define LOGI(...) \ + ((void)__android_log_print(ANDROID_LOG_DEBUG, "shadowsocks", \ + __VA_ARGS__)) +#define LOGE(...) \ + ((void)__android_log_print(ANDROID_LOG_ERROR, "shadowsocks", \ + __VA_ARGS__)) + +#else + +#define STR(x) # x +#define TOSTR(x) STR(x) + +#ifdef LIB_ONLY + +extern FILE *logfile; + +#define TIME_FORMAT "%Y-%m-%d %H:%M:%S" + +#define USE_TTY() + +#define USE_SYSLOG(ident) + +#define USE_LOGFILE(ident) \ + do { \ + if (ident != NULL) { logfile = fopen(ident, "w+"); } } \ + while (0) + +#define CLOSE_LOGFILE \ + do { \ + if (logfile != NULL) { fclose(logfile); } } \ + while (0) + +#define LOGI(format, ...) \ + do { \ + if (logfile != NULL) { \ + time_t now = time(NULL); \ + char timestr[20]; \ + strftime(timestr, 20, TIME_FORMAT, localtime(&now)); \ + fprintf(logfile, " %s INFO: " format "\n", timestr, ## __VA_ARGS__); \ + fflush(logfile); } \ + } \ + while (0) + +#define LOGE(format, ...) \ + do { \ + if (logfile != NULL) { \ + time_t now = time(NULL); \ + char timestr[20]; \ + strftime(timestr, 20, TIME_FORMAT, localtime(&now)); \ + fprintf(logfile, " %s ERROR: " format "\n", timestr, \ + ## __VA_ARGS__); \ + fflush(logfile); } \ + } \ + while (0) + +#elif defined(_WIN32) + +#define TIME_FORMAT "%Y-%m-%d %H:%M:%S" + +#define USE_TTY() + +#define USE_SYSLOG(ident) + +#define LOGI(format, ...) \ + do { \ + time_t now = time(NULL); \ + char timestr[20]; \ + strftime(timestr, 20, TIME_FORMAT, localtime(&now)); \ + fprintf(stderr, " %s INFO: " format "\n", timestr, ## __VA_ARGS__); \ + fflush(stderr); } \ + while (0) + +#define LOGE(format, ...) \ + do { \ + time_t now = time(NULL); \ + char timestr[20]; \ + strftime(timestr, 20, TIME_FORMAT, localtime(&now)); \ + fprintf(stderr, " %s ERROR: " format "\n", timestr, ## __VA_ARGS__); \ + fflush(stderr); } \ + while (0) + +#else + +#include + +extern int use_tty; +#define USE_TTY() \ + do { \ + use_tty = isatty(STDERR_FILENO); \ + } while (0) \ + +#define HAS_SYSLOG +extern int use_syslog; + +#define TIME_FORMAT "%F %T" + +#define USE_SYSLOG(ident) \ + do { \ + use_syslog = 1; \ + openlog((ident), LOG_CONS | LOG_PID, 0); } \ + while (0) + +#define LOGI(format, ...) \ + do { \ + if (use_syslog) { \ + syslog(LOG_INFO, format, ## __VA_ARGS__); \ + } else { \ + time_t now = time(NULL); \ + char timestr[20]; \ + strftime(timestr, 20, TIME_FORMAT, localtime(&now)); \ + if (use_tty) { \ + fprintf(stderr, "\e[01;32m %s INFO: \e[0m" format "\n", timestr, \ + ## __VA_ARGS__); \ + } else { \ + fprintf(stderr, " %s INFO: " format "\n", timestr, \ + ## __VA_ARGS__); \ + } \ + } \ + } \ + while (0) + +#define LOGE(format, ...) \ + do { \ + if (use_syslog) { \ + syslog(LOG_ERR, format, ## __VA_ARGS__); \ + } else { \ + time_t now = time(NULL); \ + char timestr[20]; \ + strftime(timestr, 20, TIME_FORMAT, localtime(&now)); \ + if (use_tty) { \ + fprintf(stderr, "\e[01;35m %s ERROR: \e[0m" format "\n", timestr, \ + ## __VA_ARGS__); \ + } else { \ + fprintf(stderr, " %s ERROR: " format "\n", timestr, \ + ## __VA_ARGS__); \ + } \ + } } \ + while (0) + +#endif +/* _WIN32 */ + +#endif + +#ifdef __MINGW32__ + +#ifdef ERROR +#undef ERROR +#endif +#define ERROR(s) ss_error(s) + +#else + +void ERROR(const char *s); + +#endif + +char *ss_itoa(int i); +int ss_isnumeric(const char *s); +int run_as(const char *user); +void FATAL(const char *msg); +void usage(void); +void daemonize(const char *path); +char *ss_strndup(const char *s, size_t n); +#ifdef HAVE_SETRLIMIT +int set_nofile(int nofile); +#endif + +void *ss_malloc(size_t size); +void *ss_realloc(void *ptr, size_t new_size); + +#define ss_free(ptr) \ + do { \ + free(ptr); \ + ptr = NULL; \ + } while (0) + +#endif // _UTILS_H diff --git a/shadowsocksr-libev/src/server/verify.c b/shadowsocksr-libev/src/server/verify.c new file mode 100644 index 000000000..9e7393dd8 --- /dev/null +++ b/shadowsocksr-libev/src/server/verify.c @@ -0,0 +1,188 @@ + +#include "verify.h" + +static int verify_simple_pack_unit_size = 2000; + +typedef struct verify_simple_local_data { + char * recv_buffer; + int recv_buffer_size; +}verify_simple_local_data; + +void verify_simple_local_data_init(verify_simple_local_data* local) { + local->recv_buffer = (char*)malloc(16384); + local->recv_buffer_size = 0; +} + +obfs * verify_simple_new_obfs() { + obfs * self = new_obfs(); + self->l_data = malloc(sizeof(verify_simple_local_data)); + verify_simple_local_data_init((verify_simple_local_data*)self->l_data); + return self; +} + +void verify_simple_dispose(obfs *self) { + verify_simple_local_data *local = (verify_simple_local_data*)self->l_data; + if (local->recv_buffer != NULL) { + free(local->recv_buffer); + local->recv_buffer = NULL; + } + free(local); + self->l_data = NULL; + dispose_obfs(self); +} + +int verify_simple_pack_data(char *data, int datalength, char *outdata) { + unsigned char rand_len = (xorshift128plus() & 0xF) + 1; + int out_size = rand_len + datalength + 6; + outdata[0] = out_size >> 8; + outdata[1] = out_size; + outdata[2] = rand_len; + memmove(outdata + rand_len + 2, data, datalength); + fillcrc32((unsigned char *)outdata, out_size); + return out_size; +} + +int verify_simple_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t *capacity) { + char *plaindata = *pplaindata; + //verify_simple_local_data *local = (verify_simple_local_data*)self->l_data; + char * out_buffer = (char*)malloc(datalength * 2 + 32); + char * buffer = out_buffer; + char * data = plaindata; + int len = datalength; + int pack_len; + while ( len > verify_simple_pack_unit_size ) { + pack_len = verify_simple_pack_data(data, verify_simple_pack_unit_size, buffer); + buffer += pack_len; + data += verify_simple_pack_unit_size; + len -= verify_simple_pack_unit_size; + } + if (len > 0) { + pack_len = verify_simple_pack_data(data, len, buffer); + buffer += pack_len; + } + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + +int verify_simple_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t *capacity) { + char *plaindata = *pplaindata; + verify_simple_local_data *local = (verify_simple_local_data*)self->l_data; + uint8_t * recv_buffer = (uint8_t *)local->recv_buffer; + if (local->recv_buffer_size + datalength > 16384) + return -1; + memmove(recv_buffer + local->recv_buffer_size, plaindata, datalength); + local->recv_buffer_size += datalength; + + char * out_buffer = (char*)malloc(local->recv_buffer_size); + char * buffer = out_buffer; + while (local->recv_buffer_size > 2) { + int length = ((int)recv_buffer[0] << 8) | recv_buffer[1]; + if (length >= 8192 || length < 7) { + free(out_buffer); + local->recv_buffer_size = 0; + return -1; + } + if (length > local->recv_buffer_size) + break; + + int crc = crc32((unsigned char*)recv_buffer, length); + if (crc != -1) { + free(out_buffer); + local->recv_buffer_size = 0; + return -1; + } + int data_size = length - recv_buffer[2] - 6; + memmove(buffer, recv_buffer + 2 + recv_buffer[2], data_size); + buffer += data_size; + memmove(recv_buffer, recv_buffer + length, local->recv_buffer_size -= length); + } + int len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + +int verify_simple_server_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t *capacity) { + char *plaindata = *pplaindata; + //verify_simple_local_data *local = (verify_simple_local_data*)self->l_data; + char * out_buffer = (char*)malloc(datalength * 2 + 32); + char * buffer = out_buffer; + char * data = plaindata; + int len = datalength; + int pack_len; + while ( len > verify_simple_pack_unit_size ) { + pack_len = verify_simple_pack_data(data, verify_simple_pack_unit_size, buffer); + buffer += pack_len; + data += verify_simple_pack_unit_size; + len -= verify_simple_pack_unit_size; + } + if (len > 0) { + pack_len = verify_simple_pack_data(data, len, buffer); + buffer += pack_len; + } + len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} + +int verify_simple_server_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t *capacity) { + char *plaindata = *pplaindata; + verify_simple_local_data *local = (verify_simple_local_data*)self->l_data; + uint8_t * recv_buffer = (uint8_t *)local->recv_buffer; + if (local->recv_buffer_size + datalength > 16384) + { + LOGE("verify_simple: wrong buf length %d", local->recv_buffer_size + datalength); + return -1; + } + memmove(recv_buffer + local->recv_buffer_size, plaindata, datalength); + local->recv_buffer_size += datalength; + + char * out_buffer = (char*)malloc(local->recv_buffer_size); + char * buffer = out_buffer; + while (local->recv_buffer_size > 2) { + int length = ((int)recv_buffer[0] << 8) | recv_buffer[1]; + if (length >= 8192 || length < 7) { + free(out_buffer); + local->recv_buffer_size = 0; + LOGE("verify_simple: wrong length %d", length); + return -1; + } + if (length > local->recv_buffer_size) + break; + + int crc = crc32((unsigned char*)recv_buffer, length); + if (crc != -1) { + free(out_buffer); + local->recv_buffer_size = 0; + LOGE("verify_simple: wrong crc"); + return -1; + } + int data_size = length - recv_buffer[2] - 6; + memmove(buffer, recv_buffer + 2 + recv_buffer[2], data_size); + buffer += data_size; + memmove(recv_buffer, recv_buffer + length, local->recv_buffer_size -= length); + } + int len = buffer - out_buffer; + if (*capacity < len) { + *pplaindata = (char*)realloc(*pplaindata, *capacity = len * 2); + plaindata = *pplaindata; + } + memmove(plaindata, out_buffer, len); + free(out_buffer); + return len; +} diff --git a/shadowsocksr-libev/src/server/verify.h b/shadowsocksr-libev/src/server/verify.h new file mode 100644 index 000000000..57c6ff997 --- /dev/null +++ b/shadowsocksr-libev/src/server/verify.h @@ -0,0 +1,19 @@ +/* + * verify.h - Define shadowsocksR server's buffers and callbacks + * + * Copyright (C) 2015 - 2016, Break Wa11 + */ + +#ifndef _VERIFY_H +#define _VERIFY_H + +obfs * verify_simple_new_obfs(); +void verify_simple_dispose(obfs *self); + +int verify_simple_client_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); +int verify_simple_client_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); + +int verify_simple_server_pre_encrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); +int verify_simple_server_post_decrypt(obfs *self, char **pplaindata, int datalength, size_t* capacity); + +#endif // _VERIFY_H diff --git a/simple-obfs/Makefile b/simple-obfs/Makefile new file mode 100644 index 000000000..aa7be91a4 --- /dev/null +++ b/simple-obfs/Makefile @@ -0,0 +1,71 @@ +# SPDX-License-Identifier: GPL-3.0-or-later +# +# Copyright (C) 2017-2019 Jian Chang +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=simple-obfs +PKG_VERSION:=0.0.5 +PKG_RELEASE:=$(AUTORELEASE) + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/shadowsocks/simple-obfs.git +PKG_SOURCE_DATE:=2019-08-17 +PKG_SOURCE_VERSION:=486bebd9208539058e57e23a12f23103016e09b4 +PKG_MIRROR_HASH:=b1ae62a6826616b35b6aea0c6b2d55b5f36da96be0cd1c229c263b508d1aeef0 + +PKG_LICENSE:=GPL-3.0-or-later +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Jian Chang + +PKG_BUILD_DEPENDS:=libev +PKG_FIXUP:=autoreconf +PKG_BUILD_PARALLEL:=1 +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/simple-obfs/template + SECTION:=net + CATEGORY:=Network + TITLE:=A simple obfuscating tool + URL:=https://github.com/shadowsocks/simple-obfs + DEPENDS:=+libpthread +libev +endef + +define Package/simple-obfs-client + $(call Package/simple-obfs/template) + TITLE+= (client) + PROVIDES:=simple-obfs +endef + +define Package/simple-obfs-server + $(call Package/simple-obfs/template) + TITLE+= (server) +endef + +define Package/simple-obfs/description + Simple-obfs is a simple obfusacting tool, designed as plugin server of shadowsocks. +endef + +Package/simple-obfs-client/description = $(Package/simple-obfs/description) +Package/simple-obfs-server/description = $(Package/simple-obfs/description) + +CONFIGURE_ARGS += \ + --disable-ssp \ + --disable-documentation \ + --disable-assert + +define Package/simple-obfs-client/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/obfs-local $(1)/usr/bin/ +endef + +define Package/simple-obfs-server/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/obfs-server $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,simple-obfs-client)) +$(eval $(call BuildPackage,simple-obfs-server)) diff --git a/tcping/Makefile b/tcping/Makefile new file mode 100644 index 000000000..884d518d7 --- /dev/null +++ b/tcping/Makefile @@ -0,0 +1,34 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=tcping +PKG_VERSION:=0.3 +PKG_RELEASE:=$(AUTORELEASE) + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/Mattraks/tcping/tar.gz/$(PKG_VERSION)? +PKG_HASH:=c703481d1751adf051dd3391c4dccdadc6dfca7484e636222b392e1213312e02 + +PKG_LICENSE:=GPL-2.0-only +PKG_LICENSE_FILE:=license.txt + +PKG_BUILD_PARALLEL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/tcping + SECTION:=net + CATEGORY:=Network + TITLE:=tcping measures the latency of a tcp-connection + URL:=https://github.com/jlyo/tcping +endef + +define Package/tcping/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/tcping $(1)/usr/sbin +endef + +$(eval $(call BuildPackage,tcping)) diff --git a/trojan-go/Makefile b/trojan-go/Makefile new file mode 100644 index 000000000..6f00b833c --- /dev/null +++ b/trojan-go/Makefile @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=trojan-go +PKG_VERSION:=0.10.6 +PKG_RELEASE:=$(AUTORELEASE) + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/p4gefau1t/trojan-go/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=925f02647dda944813f1eab0b71eac98b83eb5964ef5a6f63e89bc7eb4486c1f + +PKG_LICENSE:=GPL-3.0-only +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Tianling Shen + +PKG_BUILD_DEPENDS:=golang/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/p4gefau1t/trojan-go +GO_PKG_BUILD_PKG:=$(GO_PKG) +GO_PKG_LDFLAGS_X:= \ + $(GO_PKG)/constant.Version=$(PKG_VERSION) \ + $(GO_PKG)/constant.Commit=v$(PKG_VERSION) +GO_PKG_TAGS:=full + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk + +define Package/trojan-go + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + TITLE:=A Trojan proxy written in Go + DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle + URL:=https://p4gefau1t.github.io/trojan-go/ +endef + +define Package/trojan-go/description + Trojan features multiple protocols over TLS to avoid both + active/passive detections and ISP QoS limitations. +endef + +$(eval $(call GoBinPackage,trojan-go)) +$(eval $(call BuildPackage,trojan-go)) diff --git a/trojan-plus/Makefile b/trojan-plus/Makefile new file mode 100644 index 000000000..5120ab7c8 --- /dev/null +++ b/trojan-plus/Makefile @@ -0,0 +1,69 @@ +# +# Copyright (C) 2018-2019 wongsyrone +# +# This is free software, licensed under the GNU General Public License v3. +# See /LICENSE for more information. +# +include $(TOPDIR)/rules.mk + +PKG_NAME:=trojan-plus +PKG_VERSION:=10.0.3 +PKG_RELEASE:=2 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/peter-tank/trojan-plus.git +PKG_SOURCE_DATE:=2020-09-06 +PKG_SOURCE_VERSION:=a6394cdd718669b0c7491493a78e61f6f0f899b3 +PKG_MIRROR_HASH:=2d37d09fe6d39d7981116ad387706f58f2b30b74a34e27fc5608f267dacc9208 + +PKG_BUILD_PARALLEL:=1 +PKG_BUILD_DEPENDS:=openssl + +PKG_LICENSE:=GPL-3.0 +PKG_LICENSE_FILE:=LICENSE +PKG_MAINTAINER:=Trojan-Plus-Group + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/cmake.mk + +TARGET_CXXFLAGS += -Wall -Wextra +TARGET_CXXFLAGS += $(FPIC) + +# LTO +TARGET_CXXFLAGS += -flto +TARGET_LDFLAGS += -flto + +# CXX standard +TARGET_CXXFLAGS += -std=c++11 +TARGET_CXXFLAGS := $(filter-out -O%,$(TARGET_CXXFLAGS)) -O3 +TARGET_CXXFLAGS += -ffunction-sections -fdata-sections +TARGET_LDFLAGS += -Wl,--gc-sections + +CMAKE_OPTIONS += \ + -DENABLE_MYSQL=OFF \ + -DENABLE_NAT=ON \ + -DENABLE_REUSE_PORT=ON \ + -DENABLE_SSL_KEYLOG=ON \ + -DENABLE_TLS13_CIPHERSUITES=ON \ + -DFORCE_TCP_FASTOPEN=OFF \ + -DSYSTEMD_SERVICE=OFF \ + -DOPENSSL_USE_STATIC_LIBS=FALSE \ + -DBoost_DEBUG=ON \ + -DBoost_NO_BOOST_CMAKE=ON + +define Package/trojan-plus + SECTION:=net + CATEGORY:=Network + TITLE:=An unidentifiable mechanism that helps you bypass GFW. It's compatible with original trojan with experimental features. + URL:=https://github.com/Trojan-Plus-Group/trojan-plus + DEPENDS:= \ + +libpthread +libstdcpp +libopenssl \ + +boost +boost-system +boost-program_options +endef + +define Package/trojan-plus/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/trojan $(1)/usr/sbin/trojan-plus +endef + +$(eval $(call BuildPackage,trojan-plus)) diff --git a/trojan/Makefile b/trojan/Makefile new file mode 100644 index 000000000..b75a18a5c --- /dev/null +++ b/trojan/Makefile @@ -0,0 +1,68 @@ +# +# Copyright (C) 2018-2019 wongsyrone +# +# This is free software, licensed under the GNU General Public License v3. +# See /LICENSE for more information. +# +include $(TOPDIR)/rules.mk + +PKG_NAME:=trojan +PKG_VERSION:=1.16.0 +PKG_RELEASE:=2 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/trojan-gfw/trojan/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=86cdb2685bb03a63b62ce06545c41189952f1ec4a0cd9147450312ed70956cbc + +PKG_BUILD_PARALLEL:=1 +PKG_BUILD_DEPENDS:=openssl + +PKG_LICENSE:=GPL-3.0 +PKG_LICENSE_FILE:=LICENSE +PKG_MAINTAINER:=GreaterFire + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/cmake.mk + +TARGET_CXXFLAGS += -Wall -Wextra +TARGET_CXXFLAGS += $(FPIC) + +# LTO +TARGET_CXXFLAGS += -flto +TARGET_LDFLAGS += -flto + +# CXX standard +TARGET_CXXFLAGS += -std=c++11 +TARGET_CXXFLAGS := $(filter-out -O%,$(TARGET_CXXFLAGS)) -O3 +TARGET_CXXFLAGS += -ffunction-sections -fdata-sections +TARGET_LDFLAGS += -Wl,--gc-sections + +CMAKE_OPTIONS += \ + -DENABLE_MYSQL=OFF \ + -DENABLE_NAT=ON \ + -DENABLE_REUSE_PORT=ON \ + -DENABLE_SSL_KEYLOG=ON \ + -DENABLE_TLS13_CIPHERSUITES=ON \ + -DFORCE_TCP_FASTOPEN=OFF \ + -DSYSTEMD_SERVICE=OFF \ + -DOPENSSL_USE_STATIC_LIBS=FALSE \ + -DBoost_DEBUG=ON \ + -DBoost_NO_BOOST_CMAKE=ON + +define Package/trojan + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + TITLE:=An unidentifiable mechanism that helps you bypass GFW + URL:=https://github.com/trojan-gfw/trojan + DEPENDS:= \ + +libpthread +libstdcpp +libopenssl \ + +boost +boost-system +boost-program_options +boost-date_time +endef + +define Package/trojan/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/trojan $(1)/usr/sbin/trojan +endef + +$(eval $(call BuildPackage,trojan)) diff --git a/v2ray-core/Makefile b/v2ray-core/Makefile new file mode 100644 index 000000000..38262533a --- /dev/null +++ b/v2ray-core/Makefile @@ -0,0 +1,151 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=v2ray-core +PKG_VERSION:=4.44.0 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/v2fly/v2ray-core/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=d9973bafd3020f60a51fa3495b24ab417b08b3c8f9539a3748d00da6c68d0103 + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Tianling Shen + +PKG_CONFIG_DEPENDS:= \ + CONFIG_V2RAY_CORE_COMPRESS_GOPROXY \ + CONFIG_V2RAY_CORE_COMPRESS_UPX \ + CONFIG_V2RAY_CTL_COMPRESS_GOPROXY \ + CONFIG_V2RAY_CTL_COMPRESS_UPX + +PKG_BUILD_DEPENDS:=golang/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/v2fly/v2ray-core/v4 +GO_PKG_BUILD_PKG:=github.com/v2fly/v2ray-core/v4/main +GO_PKG_LDFLAGS:=-s -w +GO_PKG_LDFLAGS_X:= \ + $(GO_PKG).build=OpenWrt \ + $(GO_PKG).version=$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk + +define Package/v2ray/template + TITLE:=A platform for building proxies to bypass network restrictions + SECTION:=net + CATEGORY:=Network + URL:=https://www.v2fly.org +endef + +define Package/v2ray-core + $(call Package/v2ray/template) + DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle +endef + +define Package/v2ray-ctl + $(call Package/v2ray/template) + DEPENDS:=v2ray-core +endef + +define Package/v2ray-extra + $(call Package/v2ray/template) + TITLE+= (extra resources) + DEPENDS:=v2ray-core + PKGARCH:=all +endef + +define Package/v2ray/description + Project V is a set of network tools that help you to build your own computer network. + It secures your network connections and thus protects your privacy. +endef + +define Package/v2ray-core/description + $(call Package/v2ray/description) +endef + +define Package/v2ray-ctl/description + $(call Package/v2ray/description) + + This includes configuration tool for v2ray-core. +endef + +define Package/v2ray-extra/description + $(call Package/v2ray/description) + + This includes extra resources for v2ray-core. +endef + +define Package/v2ray-core/config +menu "v2ray-core Configuration" + depends on PACKAGE_v2ray-core + +config V2RAY_CORE_COMPRESS_GOPROXY + bool "Compiling with GOPROXY proxy" + default n + +config V2RAY_CORE_COMPRESS_UPX + bool "Compress executable files with UPX" + depends on !mips64 + default n +endmenu +endef + +define Package/v2ray-ctl/config +menu "v2ray-ctl Configuration" + depends on PACKAGE_v2ray-ctl + +config V2RAY_CTL_COMPRESS_GOPROXY + bool "Compiling with GOPROXY proxy" + default n + +config V2RAY_CTL_COMPRESS_UPX + bool "Compress executable files with UPX" + depends on !mips64 + default n +endmenu +endef + +define Build/Compile + $(call GoPackage/Build/Compile) + mv $(GO_PKG_BUILD_BIN_DIR)/main $(GO_PKG_BUILD_BIN_DIR)/v2ray +ifneq ($(CONFIG_V2RAY_CORE_COMPRESS_UPX),) + $(STAGING_DIR_HOST)/bin/upx --lzma --best $(GO_PKG_BUILD_BIN_DIR)/v2ray +endif + +ifneq ($(CONFIG_PACKAGE_v2ray-ctl),) + $(eval GO_PKG_BUILD_PKG:=$(GO_PKG)/infra/control/main) + $(call GoPackage/Build/Compile) + mv $(GO_PKG_BUILD_BIN_DIR)/main $(GO_PKG_BUILD_BIN_DIR)/v2ctl +ifneq ($(CONFIG_V2RAY_CTL_COMPRESS_UPX),) + $(STAGING_DIR_HOST)/bin/upx --lzma --best $(GO_PKG_BUILD_BIN_DIR)/v2ctl +endif +endif +endef + +define Package/v2ray-core/install + $(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR)) + $(INSTALL_DIR) $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/v2ray $(1)/usr/bin/ +endef + +define Package/v2ray-ctl/install + $(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR)) + + $(INSTALL_DIR) $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/v2ctl $(1)/usr/bin/ +endef + +define Package/v2ray-extra/install + $(INSTALL_DIR) $(1)/usr/share/v2ray/ + $(CP) $(PKG_BUILD_DIR)/release/extra/* $(1)/usr/share/v2ray/ +endef + +$(eval $(call BuildPackage,v2ray-core)) +$(eval $(call BuildPackage,v2ray-ctl)) +$(eval $(call BuildPackage,v2ray-extra)) diff --git a/v2ray-geodata/Makefile b/v2ray-geodata/Makefile new file mode 100644 index 000000000..be1cf1df6 --- /dev/null +++ b/v2ray-geodata/Makefile @@ -0,0 +1,77 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=v2ray-geodata +PKG_RELEASE:=1 + +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Tianling Shen + +include $(INCLUDE_DIR)/package.mk + +GEOIP_FILE:=geoip.dat +define Download/geoip + URL:=https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/ + URL_FILE:=geoip.dat + FILE:=$(GEOIP_FILE) + HASH:=skip +endef + +GEOSITE_FILE:=geosite.dat +define Download/geosite + URL:=https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/ + URL_FILE:=geosite.dat + FILE:=$(GEOSITE_FILE) + HASH:=skip +endef + +define Package/v2ray-geodata/template + SECTION:=net + CATEGORY:=Network + SUBMENU:=IP Addresses and Names + URL:=https://www.v2fly.org + PKGARCH:=all +endef + +define Package/v2ray-geoip + $(call Package/v2ray-geodata/template) + TITLE:=GeoIP List for V2Ray + VERSION:=$(GEOIP_VER)-$(PKG_RELEASE) + LICENSE:=CC-BY-SA-4.0 +endef + +define Package/v2ray-geosite + $(call Package/v2ray-geodata/template) + TITLE:=Geosite List for V2Ray + VERSION:=$(GEOSITE_VER)-$(PKG_RELEASE) + LICENSE:=MIT +endef + +define Build/Prepare + $(call Build/Prepare/Default) +ifneq ($(CONFIG_PACKAGE_v2ray-geoip),) + $(call Download,geoip) +endif +ifneq ($(CONFIG_PACKAGE_v2ray-geosite),) + $(call Download,geosite) +endif +endef + +define Build/Compile +endef + +define Package/v2ray-geoip/install + $(INSTALL_DIR) $(1)/usr/share/v2ray + $(INSTALL_DATA) $(DL_DIR)/$(GEOIP_FILE) $(1)/usr/share/v2ray/geoip.dat +endef + +define Package/v2ray-geosite/install + $(INSTALL_DIR) $(1)/usr/share/v2ray + $(INSTALL_DATA) $(DL_DIR)/$(GEOSITE_FILE) $(1)/usr/share/v2ray/geosite.dat +endef + +$(eval $(call BuildPackage,v2ray-geoip)) +$(eval $(call BuildPackage,v2ray-geosite)) diff --git a/v2ray-plugin/Makefile b/v2ray-plugin/Makefile new file mode 100644 index 000000000..af4d1494a --- /dev/null +++ b/v2ray-plugin/Makefile @@ -0,0 +1,68 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2020 SharerMax +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=v2ray-plugin +PKG_VERSION:=4.44.0 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/teddysun/v2ray-plugin/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=f94e8efe879a5300871dd01faec7d6635baaef4dbd39d83f4362802f716d386e + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=madeye + +PKG_CONFIG_DEPENDS:= \ + CONFIG_V2RAY_PLUGIN_COMPRESS_GOPROXY \ + CONFIG_V2RAY_PLUGIN_COMPRESS_UPX + +PKG_BUILD_DEPENDS:=golang/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/shadowsocks/v2ray-plugin +GO_PKG_LDFLAGS:=-s -w +GO_PKG_LDFLAGS_X:=main.VERSION=v$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk + +define Package/v2ray-plugin/config +config V2RAY_PLUGIN_COMPRESS_GOPROXY + bool "Compiling with GOPROXY proxy" + default n + +config V2RAY_PLUGIN_COMPRESS_UPX + bool "Compress executable files with UPX" + depends on !mips64 + default n +endef + +ifeq ($(CONFIG_V2RAY_PLUGIN_COMPRESS_GOPROXY),y) + export GO111MODULE=on + export GOPROXY=https://goproxy.bj.bcebos.com +endif + +define Package/v2ray-plugin + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + TITLE:=SIP003 plugin for shadowsocks, based on v2ray + URL:=https://github.com/teddysun/v2ray-plugin + DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle +endef + +define Build/Compile + $(call GoPackage/Build/Compile) +ifeq ($(CONFIG_V2RAY_PLUGIN_COMPRESS_UPX),y) + $(STAGING_DIR_HOST)/bin/upx --lzma --best $(GO_PKG_BUILD_BIN_DIR)/v2ray-plugin +endif +endef + +$(eval $(call GoBinPackage,v2ray-plugin)) +$(eval $(call BuildPackage,v2ray-plugin)) diff --git a/v2raya/Makefile b/v2raya/Makefile new file mode 100644 index 000000000..519c9de90 --- /dev/null +++ b/v2raya/Makefile @@ -0,0 +1,81 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=v2rayA +PKG_VERSION:=1.5.6.2 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/v2rayA/v2rayA/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=d949246aa9fe80aa9cb8fb4d80cb470f508bb44d4ac23e84e28e3b9abd30b67c +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)/service + +PKG_LICENSE:=AGPL-3.0-only +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Tianling Shen + +PKG_BUILD_DEPENDS:=golang/host node/host node-yarn/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/v2rayA/v2rayA +GO_PKG_LDFLAGS_X:=$(GO_PKG)/conf.Version=$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk + +TAR_OPTIONS+= --strip-components 1 +TAR_CMD=$(HOST_TAR) -C $(1)/.. $(TAR_OPTIONS) + +define Package/v2raya + TITLE:=A Linux web GUI client of Project V + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + DEPENDS:=$(GO_ARCH_DEPENDS) \ + +ca-bundle \ + +iptables-mod-conntrack-extra \ + +iptables-mod-extra \ + +iptables-mod-filter \ + +iptables-mod-tproxy \ + +kmod-ipt-nat6 \ + +xray-core + URL:=https://v2raya.org +endef + +define Package/v2raya/description + v2rayA is a V2Ray Linux client supporting global transparent proxy, + compatible with SS, SSR, Trojan(trojan-go), PingTunnel protocols. +endef + +define Package/v2raya/conffiles +/etc/v2raya/ +/etc/config/v2raya +endef + +define Build/Compile + ( \ + pushd $(PKG_BUILD_DIR)/../gui ; \ + yarn ; \ + OUTPUT_DIR=../service/server/router/web yarn build ; \ + popd ; \ + $(call GoPackage/Build/Compile) ; \ + ) +endef + +define Package/v2raya/install + $(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR)) + $(INSTALL_DIR) $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/v2rayA $(1)/usr/bin/v2raya + + $(INSTALL_DIR) $(1)/etc/config/ + $(INSTALL_CONF) $(CURDIR)/files/v2raya.config $(1)/etc/config/v2raya + $(INSTALL_DIR) $(1)/etc/init.d/ + $(INSTALL_BIN) $(CURDIR)/files/v2raya.init $(1)/etc/init.d/v2raya +endef + +$(eval $(call GoBinPackage,v2raya)) +$(eval $(call BuildPackage,v2raya)) diff --git a/v2raya/files/v2raya.config b/v2raya/files/v2raya.config new file mode 100644 index 000000000..841b90a2a --- /dev/null +++ b/v2raya/files/v2raya.config @@ -0,0 +1,37 @@ + +config v2raya 'config' + option enabled '0' + + # Listening address + option address '0.0.0.0:2017' + + # v2rayA configuration directory + option config '/etc/v2raya' + + # Make sure your IPv6 network works fine before you turn it on. + # Optional values: auto, on, off. + option ipv6_support 'auto' + + # Optional values: trace, debug, info, warn or error + option log_level 'info' + + # The path of log file + option log_file '/tmp/v2raya.log' + + # Maximum number of days to keep log files + option log_max_days '3' + + option log_disable_color '1' + + option log_disable_timestamp '0' + + # Executable v2ray binary path. Auto-detect if put it empty + option v2ray_bin '' + + # Additional v2ray config directory, files in it will be combined with config generated by v2rayA + option v2ray_confdir '' + + # Specify the certification path instead of automatically generating a self-signed certificate. + # Example: /etc/v2raya/grpc_certificate.crt,/etc/v2raya/grpc_private.key + option vless_grpc_inbound_cert_key '' + diff --git a/v2raya/files/v2raya.init b/v2raya/files/v2raya.init new file mode 100755 index 000000000..826935d5c --- /dev/null +++ b/v2raya/files/v2raya.init @@ -0,0 +1,70 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2021 Tianling Shen + +USE_PROCD=1 +START=99 + +CONF="v2raya" +PROG="/usr/bin/v2raya" + +is_enabled() { + local enabled + config_get_bool enabled "$1" "$2" "${3:-0}" + if [ "$enabled" -eq "1" ]; then + return 0 + else + return 1 + fi +} + +append_env() { + procd_append_param env "V2RAYA_$(echo "$1" | tr "[a-z]" "[A-Z]")"="$2" +} + +append_env_arg() { + local value + config_get value "$1" "$2" $3 + [ -n "$value" ] && append_env "$2" "$value" +} + +append_env_bool() { + is_enabled "$1" "$2" && append_env "$2" "true" +} + +start_service() { + config_load "$CONF" + + is_enabled "config" "enabled" || exit 1 + + procd_open_instance "$CONF" + procd_set_param command "$PROG" + procd_set_param env XDG_DATA_HOME="/usr/share" + + append_env_arg "config" "address" "0.0.0.0:2017" + append_env_arg "config" "config" "/etc/v2raya" + append_env_arg "config" "ipv6_support" "auto" + append_env_arg "config" "log_level" "info" + append_env_arg "config" "log_file" "/tmp/v2raya.log" + append_env_arg "config" "log_max_days" "3" + append_env_arg "config" "v2ray_bin" + append_env_arg "config" "v2ray_confdir" + append_env_arg "config" "vless_grpc_inbound_cert_key" + append_env_bool "config" "log_disable_color" + append_env_bool "config" "log_disable_timestamp" + + procd_set_param limits core="unlimited" + procd_set_param respawn + procd_set_param stdout 1 + procd_set_param stderr 1 + + procd_close_instance +} + +reload_service() { + stop + start +} + +service_triggers() { + procd_add_reload_trigger "$CONF" +} diff --git a/v2raya/patches/010-fix-panic-in-go-1.18-462.patch b/v2raya/patches/010-fix-panic-in-go-1.18-462.patch new file mode 100644 index 000000000..3461629e9 --- /dev/null +++ b/v2raya/patches/010-fix-panic-in-go-1.18-462.patch @@ -0,0 +1,32 @@ +From eb210b5e634b65838b50387891ad837590fb2b4e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=E9=AB=98=E6=B8=90=E7=A6=BB?= +Date: Tue, 22 Mar 2022 15:28:50 +0800 +Subject: [PATCH] fix: panic in go 1.18 (#462) + +--- + service/go.mod | 2 +- + service/go.sum | 2 ++ + 2 files changed, 3 insertions(+), 1 deletion(-) + +--- a/go.mod ++++ b/go.mod +@@ -50,7 +50,7 @@ require ( + github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 // indirect + github.com/mattn/go-isatty v0.0.12 // indirect + github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421 // indirect +- github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742 // indirect ++ github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/pelletier/go-toml v1.2.0 // indirect + github.com/pires/go-proxyproto v0.6.1 // indirect + github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c // indirect +--- a/go.sum ++++ b/go.sum +@@ -145,6 +145,8 @@ github.com/modern-go/concurrent v0.0.0-2 + github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= + github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742 h1:Esafd1046DLDQ0W1YjYsBW+p8U2u7vzgW2SQVmlNazg= + github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= ++github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= ++github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= + github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 h1:RWengNIwukTxcDr9M+97sNutRR1RKhG96O6jWumTTnw= + github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8= + github.com/muhammadmuzzammil1998/jsonc v0.0.0-20201229145248-615b0916ca38 h1:0FrBxrkJ0hVembTb/e4EU5Ml6vLcOusAqymmYISg5Uo= diff --git a/xray-core/Makefile b/xray-core/Makefile new file mode 100644 index 000000000..614c2d641 --- /dev/null +++ b/xray-core/Makefile @@ -0,0 +1,47 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=Xray-core +PKG_VERSION:=1.5.4 +PKG_RELEASE:=$(AUTORELEASE) + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/XTLS/xray-core/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=af9b9b5b0a2d4f055d19f3580d1c2d3141bbaab9dd7824428c12ae0ced5f511e + +PKG_MAINTAINER:=Tianling Shen +PKG_LICENSE:=MPL-2.0 +PKG_LICENSE_FILES:=LICENSE + +PKG_BUILD_DEPENDS:=golang/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/xtls/xray-core +GO_PKG_BUILD_PKG:=$(GO_PKG)/main +GO_PKG_LDFLAGS_X:= \ + $(GO_PKG)/core.build=OpenWrt \ + $(GO_PKG)/core.version=$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk + +define Package/xray-core + TITLE:=A platform for building proxies to bypass network restrictions + SECTION:=net + CATEGORY:=Network + URL:=https://xtls.github.io + DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle +endef + +define Package/xray-core/description + Xray, Penetrates Everything. It helps you to build your own computer network. + It secures your network connections and thus protects your privacy. +endef + +define Package/xray-core/install + $(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR)) + $(INSTALL_DIR) $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/main $(1)/usr/bin/xray +endef + +$(eval $(call BuildPackage,xray-core)) diff --git a/xray-plugin/Makefile b/xray-plugin/Makefile new file mode 100644 index 000000000..bb5d34271 --- /dev/null +++ b/xray-plugin/Makefile @@ -0,0 +1,38 @@ +# SPDX-License-Identifier: GPL-3.0-only +# +# Copyright (C) 2021 ImmortalWrt.org + +include $(TOPDIR)/rules.mk + +PKG_NAME:=xray-plugin +PKG_VERSION:=1.5.4 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/teddysun/xray-plugin/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=b6b66ea091f6348c7f213a8f7a3be51be25cea2cdf9ea7fb5bb93e2e04077a6f + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Tianling Shen + +PKG_BUILD_DEPENDS:=golang/host +PKG_BUILD_PARALLEL:=1 +PKG_USE_MIPS16:=0 + +GO_PKG:=github.com/teddysun/xray-plugin + +include $(INCLUDE_DIR)/package.mk +include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk + +define Package/xray-plugin + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + TITLE:=SIP003 plugin for Shadowsocks, based on Xray + URL:=https://github.com/teddysun/xray-plugin + DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle +endef + +$(eval $(call GoBinPackage,xray-plugin)) +$(eval $(call BuildPackage,xray-plugin))