diff --git a/CONTRIBUTED.md b/CONTRIBUTED.md index 9e28e443b2..05e2081f01 100644 --- a/CONTRIBUTED.md +++ b/CONTRIBUTED.md @@ -19,7 +19,6 @@ Package zxlhhyccc: [zxlhhyccc/MY-lede](https://github.com/zxlhhyccc/MY-lede).
luci-theme-darkmatter source: [apollo-ng/luci-theme-darkmatter](https://github.com/apollo-ng/luci-theme-darkmatter).
openwrt-chinadns-ng source: [pexcn/openwrt-chinadns-ng](https://github.com/pexcn/openwrt-chinadns-ng).
-luci-app-ssr-plus-Jo source: [Leo-Jo-My/luci-app-ssr-plus-Jo](https://github.com/Leo-Jo-My/luci-app-ssr-plus-Jo).
openwrt-udpspeeder source: [zhfreal/openwrt-UDPspeeder](https://github.com/zhfreal/openwrt-UDPspeeder).
luci-app-onliner source: [rufengsuixing/luci-app-onliner](https://github.com/rufengsuixing/luci-app-onliner).
luci-app-dockerman source: [KFERMercer/luci-app-dockerman](https://github.com/KFERMercer/luci-app-dockerman).
@@ -29,7 +28,6 @@ luci-app-autoipsetadder source: [rufengsuixing/luci-app-autoipsetadder](https:// luci-app-adguardhome source: [rufengsuixing/luci-app-adguardhome](https://github.com/rufengsuixing/luci-app-adguardhome).
Rclone-OpenWrt source: [ElonH/Rclone-OpenWrt](https://github.com/ElonH/Rclone-OpenWrt).
luci-app-usb3disable source: [rufengsuixing/luci-app-usb3disable](https://github.com/rufengsuixing/luci-app-usb3disable).
-luci-app-vssr source: [Leo-Jo-My/luci-app-vssr](https://github.com/Leo-Jo-My/luci-app-vssr).
luci-app-diskman source: [lisaac/luci-app-diskman](https://github.com/lisaac/luci-app-diskman).
NanoPi R1s(h5) support: [jerrykuku/openwrt-nanopi-r1s-h5](https://github.com/jerrykuku/openwrt-nanopi-r1s-h5).
NanoPi support: [speedyworldclub/nlede](https://github.com/speedyworldclub/nlede).
@@ -56,7 +54,8 @@ node-request source: [jerrykuku/node-request](https://github.com/jerrykuku/node- luci-app-jd-dailybonus source: [jerrykuku/luci-app-jd-dailybonus](https://github.com/jerrykuku/luci-app-jd-dailybonus).
luci-app-oled source: [NateLol/luci-app-oled](https://github.com/NateLol/luci-app-oled).
luci-theme-edge source: [garypang13/luci-theme-edge](https://github.com//garypang13/luci-theme-edge).
-luci-app-beardropper source: [NateLol/natelol](https://github.com/NateLol/natelol). +luci-app-beardropper source: [NateLol/natelol](https://github.com/NateLol/natelol).
+luci-app-vssr source: [jerrykuku/luci-app-vssr](https://github.com/jerrykuku/luci-app-vssr). ## License ### Depend on their own License. diff --git a/Makefile b/Makefile index ef07800214..32c050bb48 100644 --- a/Makefile +++ b/Makefile @@ -88,18 +88,36 @@ prereq: $(target/stamp-prereq) tmp/.prereq_packages exit 1; \ fi +$(BIN_DIR)/profiles.json: FORCE + $(if $(CONFIG_JSON_OVERVIEW_IMAGE_INFO), \ + WORK_DIR=$(BUILD_DIR)/json_info_files \ + $(SCRIPT_DIR)/json_overview_image_info.py $@ \ + ) + +json_overview_image_info: $(BIN_DIR)/profiles.json + checksum: FORCE $(call sha256sums,$(BIN_DIR),$(CONFIG_BUILDBOT)) +buildversion: FORCE + $(SCRIPT_DIR)/getver.sh > $(BIN_DIR)/version.buildinfo + +feedsversion: FORCE + $(SCRIPT_DIR)/feeds list -fs > $(BIN_DIR)/feeds.buildinfo + diffconfig: FORCE mkdir -p $(BIN_DIR) - $(SCRIPT_DIR)/diffconfig.sh > $(BIN_DIR)/config.seed + $(SCRIPT_DIR)/diffconfig.sh > $(BIN_DIR)/config.buildinfo + +buildinfo: FORCE + $(_SINGLE)$(SUBMAKE) -r diffconfig buildversion feedsversion prepare: .config $(tools/stamp-compile) $(toolchain/stamp-compile) - $(_SINGLE)$(SUBMAKE) -r diffconfig + $(_SINGLE)$(SUBMAKE) -r buildinfo world: prepare $(target/stamp-compile) $(package/stamp-compile) $(package/stamp-install) $(target/stamp-install) FORCE $(_SINGLE)$(SUBMAKE) -r package/index + $(_SINGLE)$(SUBMAKE) -r json_overview_image_info $(_SINGLE)$(SUBMAKE) -r checksum .PHONY: clean dirclean prereq prepare world package/symlinks package/symlinks-install package/symlinks-clean diff --git a/include/image-commands.mk b/include/image-commands.mk index 4cf1293726..a168af4bd9 100644 --- a/include/image-commands.mk +++ b/include/image-commands.mk @@ -269,7 +269,7 @@ define Build/xor-image endef define Build/check-size - @[ $$(($(subst k,* 1024,$(subst m, * 1024k,$(1))))) -ge "$$(stat -c%s $@)" ] || { \ + @[ $$(($(subst k,* 1024,$(subst m, * 1024k,$(if $(1),$(1),$(IMAGE_SIZE)))))) -ge "$$(stat -c%s $@)" ] || { \ echo "WARNING: Image file $@ is too big" >&2; \ rm -f $@; \ } diff --git a/package/ctcgfw/luci-app-jd-dailybonus/relnotes.txt b/package/ctcgfw/luci-app-jd-dailybonus/relnotes.txt deleted file mode 100644 index dac56e603d..0000000000 --- a/package/ctcgfw/luci-app-jd-dailybonus/relnotes.txt +++ /dev/null @@ -1,132 +0,0 @@ -######################################################## -# -# RELEASE NOTES -# -######################################################## - -######################################################## -// -// 0.8.1 2020-07-16 -// -// -######################################################## - - -Updates - -- UPDATE: 修正部分cookie无法更新到脚本的问题。 - -######################################################## -// -// 0.8 2020-07-15 -// -// -######################################################## - - -Updates - -- NEW: 增加了使用Server酱推送签到结果到微信的功能。 -- NEW: 增加了仅当cookie失效时进行微信推送的功能。 -- NEW: 增加了一个自定义延迟签到的选项,能够避免并发签到带来的负面影响。 -- UPDATE: 修正了在不勾选自动签到或者自动更新选项时,点击保存Cookie并签到无法执行的问题。 -- UPDATE: 代码精简与优化。 - -######################################################## -// -// 0.7.8 2020-07-13 -// -// -######################################################## - - -Updates - -- UPDATE: 修改了签到时间策略,将原来的固定时间修改为,设定时间后的180秒间随机执行(感谢kid424 提供方案)。 - -######################################################## -// -// 0.7.7 2020-07-10 -// 大幅修改,建议卸载后重新安装 -// -######################################################## - - -Updates - -- UPDATE: 对整个插件进行了重构,cookie更新机制做了修改。 -- UPDATE: 增加新的栏目,可以自行编辑脚本的cookie。 -- UPDATE: 增加每天定时开关,可从脚本作者源更新脚本。 -- UPDATE: 将当前的打开插件自动检测版本,修改为手动检查,检查到新版本可点击更新。 - -######################################################## -// -// 0.7.5 2020-06-25 -// 小幅修正 -// -######################################################## - - -Updates - -- BUGFIX: 使用wget取代curl 现在不需要curl依赖了 -- UPDATE: 增加 当前版本显示 - -######################################################## -// -// 0.7.4 2020-06-07 -// 小幅修正 -// -######################################################## - - -Updates - -- BUGFIX: 修正编译依赖 -- BUGFIX: 修正弹窗log无法自动关闭的bug - -######################################################## -// -// 0.7 2020-05-27 -// 小幅修正 -// -######################################################## - - -Updates - -- BUGFIX: 修正部分文字翻译错误 -- UPD: 改善log输出方式 -- UPD: 不再对脚本检测进行锁定,可以强制更新。 - -######################################################## -// -// 0.6 2020-05-09 -// 增加脚本在线版本检测和更新功能 -// -######################################################## - - -Updates - -- UPD: 增加脚本在线版本检测和更新功能 - -######################################################## -// -// 0.5 2020-05-06 -// bug修复 -// -######################################################## - - -Updates - -- UPD: 增加了一个cookie工具zip包,如果crx安装不上,可以解压zip包内容,加载已解压的扩展包。 -- UPD: 增加了第二个账号的cookie,可以实现双签到 -- UPD: 修复部分文字解释 - -########################################################== -// -// END RELEASE NOTES -// -########################################################== diff --git a/package/ctcgfw/luci-app-openclash/Makefile b/package/ctcgfw/luci-app-openclash/Makefile index 30fe8d7591..b1eccdf8f1 100644 --- a/package/ctcgfw/luci-app-openclash/Makefile +++ b/package/ctcgfw/luci-app-openclash/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-openclash -PKG_VERSION:=0.39.5 +PKG_VERSION:=0.39.6 PKG_RELEASE:=beta PKG_MAINTAINER:=vernesong diff --git a/package/ctcgfw/luci-app-openclash/files/etc/openclash/lhie1.yaml b/package/ctcgfw/luci-app-openclash/files/etc/openclash/lhie1.yaml index 973def0e1e..549607d6b8 100644 --- a/package/ctcgfw/luci-app-openclash/files/etc/openclash/lhie1.yaml +++ b/package/ctcgfw/luci-app-openclash/files/etc/openclash/lhie1.yaml @@ -5211,7 +5211,6 @@ rules: - DOMAIN-SUFFIX,m.xxkio.com,AdBlock - DOMAIN-SUFFIX,m.yalayi.com,AdBlock - DOMAIN-SUFFIX,m.yangjingbang.net,AdBlock -- DOMAIN-SUFFIX,m.yap.yahoo.com,AdBlock - DOMAIN-SUFFIX,m.yicang8.com,AdBlock - DOMAIN-SUFFIX,m.yingchengtou.com,AdBlock - DOMAIN-SUFFIX,m.ynnke.com,AdBlock @@ -8489,6 +8488,7 @@ rules: - DOMAIN-SUFFIX,bilivideo.com,AsianTV - DOMAIN-SUFFIX,hdslb.com,AsianTV - DOMAIN-SUFFIX,im9.com,AsianTV +- DOMAIN-SUFFIX,smtcdns.net,AsianTV # > IQIYI - DOMAIN-KEYWORD,qiyi,AsianTV @@ -8533,11 +8533,12 @@ rules: - DOMAIN-SUFFIX,amazonaws.com,GlobalTV - DOMAIN-SUFFIX,amazonvideo.com,GlobalTV - DOMAIN-SUFFIX,llnwd.net,GlobalTV +- DOMAIN-SUFFIX,primevideo.com,GlobalTV # > Apple News and Apple Map TOMTOM Version # - USER-AGENT,AppleNews*,GlobalTV # - USER-AGENT,com.apple.news*,GlobalTV -- DOMAIN,gspe1-ssl.ls.apple.com,GlobalTV +# - DOMAIN,gspe1-ssl.ls.apple.com,GlobalTV # - USER-AGENT,News*,GlobalTV # - DOMAIN,apple.comscoreresearch.com,GlobalTV # - DOMAIN,gateway.icloud.com,GlobalTV @@ -8701,20 +8702,6 @@ rules: - DOMAIN-SUFFIX,viu.tv,GlobalTV - DOMAIN-SUFFIX,viu.now.com,GlobalTV -# > Youtube Music -# - USER-AGENT,*YouTubeMusic*,GlobalTV -# - USER-AGENT,*com.google.ios.youtubemusic*,GlobalTV - -# > Youtube -# - USER-AGENT,*youtube*,GlobalTV -# - USER-AGENT,YouTube*,GlobalTV -- DOMAIN-KEYWORD,youtube,GlobalTV -- DOMAIN,yt3.ggpht.com,GlobalTV -- DOMAIN-SUFFIX,googlevideo.com,GlobalTV -- DOMAIN-SUFFIX,gvt2.com,GlobalTV -- DOMAIN-SUFFIX,youtu.be,GlobalTV -- DOMAIN-SUFFIX,ytimg.com,GlobalTV - # > Netflix @@ -8789,22 +8776,13 @@ rules: - IP-CIDR,170.249.179.114/32,Netflix - IP-CIDR,170.52.52.130/32,Netflix - IP-CIDR,172.56.128.126/32,Netflix -- IP-CIDR,172.56.128.126/32,Netflix -- IP-CIDR,172.56.132.126/32,Netflix - IP-CIDR,172.56.132.126/32,Netflix - IP-CIDR,172.56.133.126/32,Netflix -- IP-CIDR,172.56.133.126/32,Netflix -- IP-CIDR,172.56.138.126/32,Netflix - IP-CIDR,172.56.138.126/32,Netflix - IP-CIDR,172.56.139.126/32,Netflix -- IP-CIDR,172.56.139.126/32,Netflix -- IP-CIDR,172.56.140.126/32,Netflix - IP-CIDR,172.56.140.126/32,Netflix - IP-CIDR,172.56.141.126/32,Netflix -- IP-CIDR,172.56.141.126/32,Netflix - IP-CIDR,172.56.143.126/32,Netflix -- IP-CIDR,172.56.143.126/32,Netflix -- IP-CIDR,172.56.145.66/32,Netflix - IP-CIDR,172.56.145.66/32,Netflix - IP-CIDR,173.219.132.226/32,Netflix - IP-CIDR,173.219.132.229/32,Netflix @@ -8971,12 +8949,10 @@ rules: - IP-CIDR,184.150.15.99/32,Netflix - IP-CIDR,184.175.190.38/32,Netflix - IP-CIDR,185.43.181.232/32,Netflix -- IP-CIDR,185.43.181.232/32,Netflix - IP-CIDR,185.43.181.234/32,Netflix - IP-CIDR,185.43.181.236/32,Netflix - IP-CIDR,185.43.181.238/32,Netflix - IP-CIDR,185.43.181.240/32,Netflix -- IP-CIDR,185.43.181.240/32,Netflix - IP-CIDR,185.43.181.246/32,Netflix - IP-CIDR,185.97.110.36/32,Netflix - IP-CIDR,186.15.229.194/32,Netflix @@ -8996,7 +8972,6 @@ rules: - IP-CIDR,188.47.196.252/32,Netflix - IP-CIDR,188.47.196.253/32,Netflix - IP-CIDR,188.47.208.242/32,Netflix -- IP-CIDR,188.47.208.242/32,Netflix - IP-CIDR,189.194.232.193/32,Netflix - IP-CIDR,189.194.232.194/32,Netflix - IP-CIDR,189.194.232.195/32,Netflix @@ -9013,10 +8988,7 @@ rules: - IP-CIDR,190.98.134.144/32,Netflix - IP-CIDR,190.98.134.146/32,Netflix - IP-CIDR,190.98.156.141/32,Netflix -- IP-CIDR,190.98.156.141/32,Netflix - IP-CIDR,190.98.156.149/32,Netflix -- IP-CIDR,190.98.156.149/32,Netflix -- IP-CIDR,190.98.156.183/32,Netflix - IP-CIDR,190.98.156.183/32,Netflix - IP-CIDR,192.148.237.10/32,Netflix - IP-CIDR,192.148.237.130/32,Netflix @@ -9037,14 +9009,10 @@ rules: - IP-CIDR,193.212.179.82/32,Netflix - IP-CIDR,193.212.179.98/32,Netflix - IP-CIDR,193.247.193.100/32,Netflix -- IP-CIDR,193.247.193.100/32,Netflix - IP-CIDR,193.247.193.38/32,Netflix - IP-CIDR,193.247.193.72/32,Netflix - IP-CIDR,193.247.193.74/32,Netflix -- IP-CIDR,193.247.193.74/32,Netflix - IP-CIDR,193.247.193.99/32,Netflix -- IP-CIDR,193.247.193.99/32,Netflix -- IP-CIDR,194.228.248.66/32,Netflix - IP-CIDR,194.228.248.66/32,Netflix - IP-CIDR,195.121.126.132/32,Netflix - IP-CIDR,195.121.126.139/32,Netflix @@ -9110,26 +9078,19 @@ rules: - IP-CIDR,203.116.200.130/32,Netflix - IP-CIDR,203.116.200.131/32,Netflix - IP-CIDR,203.116.200.134/32,Netflix -- IP-CIDR,203.116.200.134/32,Netflix - IP-CIDR,203.116.200.135/32,Netflix - IP-CIDR,203.116.200.136/32,Netflix -- IP-CIDR,203.116.200.136/32,Netflix - IP-CIDR,203.116.200.137/32,Netflix - IP-CIDR,203.116.210.132/32,Netflix - IP-CIDR,203.116.210.133/32,Netflix -- IP-CIDR,203.116.210.133/32,Netflix - IP-CIDR,203.116.210.134/32,Netflix - IP-CIDR,203.116.210.135/32,Netflix - IP-CIDR,203.116.210.136/32,Netflix - IP-CIDR,203.116.210.137/32,Netflix - IP-CIDR,203.116.210.196/32,Netflix -- IP-CIDR,203.116.210.196/32,Netflix - IP-CIDR,203.116.210.197/32,Netflix - IP-CIDR,203.116.210.198/32,Netflix -- IP-CIDR,203.116.210.198/32,Netflix - IP-CIDR,203.116.210.199/32,Netflix -- IP-CIDR,203.116.210.199/32,Netflix -- IP-CIDR,203.116.210.200/32,Netflix - IP-CIDR,203.116.210.200/32,Netflix - IP-CIDR,203.116.210.201/32,Netflix - IP-CIDR,203.177.54.2/32,Netflix @@ -9178,17 +9139,11 @@ rules: - IP-CIDR,208.180.59.229/32,Netflix - IP-CIDR,208.54.16.65/32,Netflix - IP-CIDR,208.54.2.3/32,Netflix -- IP-CIDR,208.54.2.3/32,Netflix -- IP-CIDR,208.54.37.30/32,Netflix - IP-CIDR,208.54.37.30/32,Netflix - IP-CIDR,208.54.66.30/32,Netflix - IP-CIDR,208.54.67.30/32,Netflix -- IP-CIDR,208.54.67.30/32,Netflix -- IP-CIDR,208.54.70.30/32,Netflix - IP-CIDR,208.54.70.30/32,Netflix - IP-CIDR,208.54.80.30/32,Netflix -- IP-CIDR,208.54.80.30/32,Netflix -- IP-CIDR,208.54.85.30/32,Netflix - IP-CIDR,208.54.85.30/32,Netflix - IP-CIDR,208.76.186.5/32,Netflix - IP-CIDR,208.76.186.50/32,Netflix @@ -9274,13 +9229,10 @@ rules: - IP-CIDR,40.133.138.47/32,Netflix - IP-CIDR,40.133.138.57/32,Netflix - IP-CIDR,43.245.105.1/32,Netflix -- IP-CIDR,43.245.105.1/32,Netflix -- IP-CIDR,43.245.105.11/32,Netflix - IP-CIDR,43.245.105.11/32,Netflix - IP-CIDR,43.245.105.129/32,Netflix - IP-CIDR,43.245.105.13/32,Netflix - IP-CIDR,43.245.105.9/32,Netflix -- IP-CIDR,43.245.105.9/32,Netflix - IP-CIDR,45.121.219.34/32,Netflix - IP-CIDR,45.57.56.130/32,Netflix - IP-CIDR,49.231.114.6/32,Netflix @@ -9295,7 +9247,6 @@ rules: - IP-CIDR,51.148.80.22/32,Netflix - IP-CIDR,51.148.80.6/32,Netflix - IP-CIDR,58.27.11.201/32,Netflix -- IP-CIDR,58.27.11.201/32,Netflix - IP-CIDR,58.27.38.199/32,Netflix - IP-CIDR,62.127.102.10/32,Netflix - IP-CIDR,62.127.102.14/32,Netflix @@ -9637,9 +9588,26 @@ rules: # > Spotify # - USER-AGENT,*Spotify*,Spotify -- DOMAIN-KEYWORD,spotify,Spotify +- DOMAIN-SUFFIX,pscdn.co,Spotify - DOMAIN-SUFFIX,scdn.co,Spotify - DOMAIN-SUFFIX,spoti.fi,Spotify +- DOMAIN-SUFFIX,spotify.com,Spotify +- DOMAIN-SUFFIX,spotifycdn.net,Spotify + +# > Youtube Music +# - USER-AGENT,*YouTubeMusic*,Youtube +# - USER-AGENT,*com.google.ios.youtubemusic*,Youtube + +# > Youtube +# - USER-AGENT,*youtube*,Youtube +# - USER-AGENT,YouTube*,Youtube +- DOMAIN-KEYWORD,youtube,Youtube +- DOMAIN,yt3.ggpht.com,Youtube +- DOMAIN-SUFFIX,googlevideo.com,Youtube +- DOMAIN-SUFFIX,gvt2.com,Youtube +- DOMAIN-SUFFIX,youtu.be,Youtube +- DOMAIN-SUFFIX,ytimg.com,Youtube + # > Telegram @@ -9970,7 +9938,7 @@ rules: - DOMAIN-SUFFIX,gvt0.com,Proxy - DOMAIN-SUFFIX,gvt1.com,Proxy - DOMAIN-SUFFIX,helpshift.com,Proxy -- DOMAIN-SUFFIX,hinet.net,Proxy +- DOMAIN-SUFFIX,hitun.io,Proxy - DOMAIN-SUFFIX,hockeyapp.net,Proxy - DOMAIN-SUFFIX,homedepot.com,Proxy - DOMAIN-SUFFIX,hootsuite.com,Proxy @@ -10031,6 +9999,7 @@ rules: - DOMAIN-SUFFIX,macid.co,Proxy - DOMAIN-SUFFIX,macromedia.com,Proxy - DOMAIN-SUFFIX,macrumors.com,Proxy +- DOMAIN-SUFFIX,mangaup.jp,Proxy - DOMAIN-SUFFIX,manhuaren.com,Proxy - DOMAIN-SUFFIX,marketwatch.com,Proxy - DOMAIN-SUFFIX,mashable.com,Proxy @@ -10056,7 +10025,9 @@ rules: - DOMAIN-SUFFIX,netdna-cdn.com,Proxy - DOMAIN-SUFFIX,newipnow.com,Proxy - DOMAIN-SUFFIX,nextmedia.com,Proxy +- DOMAIN-SUFFIX,nicovideo.jp,Proxy - DOMAIN-SUFFIX,nih.gov,Proxy +- DOMAIN-SUFFIX,nimg.jp,Proxy - DOMAIN-SUFFIX,nintendo.com,Proxy - DOMAIN-SUFFIX,nintendo.net,Proxy - DOMAIN-SUFFIX,notion.so,Proxy @@ -10383,7 +10354,6 @@ rules: - DOMAIN-SUFFIX,gcr.io,Proxy - DOMAIN-SUFFIX,gmail.com,Proxy - DOMAIN-SUFFIX,gosetsuden.jp,Proxy -- DOMAIN-SUFFIX,gvt1.com,Proxy - DOMAIN-SUFFIX,gwtproject.org,Proxy - DOMAIN-SUFFIX,heroku.com,Proxy - DOMAIN-SUFFIX,html5rocks.com,Proxy @@ -10548,7 +10518,6 @@ rules: - DOMAIN-SUFFIX,bababian.com,Domestic - DOMAIN-SUFFIX,baidu.com,Domestic - DOMAIN-SUFFIX,baidupcs.com,Domestic -- DOMAIN-SUFFIX,battle.net,Domestic - DOMAIN-SUFFIX,bdimg.com,Domestic - DOMAIN-SUFFIX,bdstatic.com,Domestic - DOMAIN-SUFFIX,beatsbydre.com,Domestic @@ -10639,6 +10608,8 @@ rules: - DOMAIN-SUFFIX,lxdns.com,Domestic - DOMAIN-SUFFIX,mai.tn,Domestic - DOMAIN-SUFFIX,meizu.com,Domestic +- DOMAIN-SUFFIX,metatrader4.com,Domestic +- DOMAIN-SUFFIX,metatrader5.com,Domestic - DOMAIN-SUFFIX,mi.com,Domestic - DOMAIN-SUFFIX,miaopai.com,Domestic - DOMAIN-SUFFIX,miui.com,Domestic diff --git a/package/ctcgfw/luci-app-openclash/files/etc/openclash/openclash_version b/package/ctcgfw/luci-app-openclash/files/etc/openclash/openclash_version index 142d6c6ebd..c521b7278c 100644 --- a/package/ctcgfw/luci-app-openclash/files/etc/openclash/openclash_version +++ b/package/ctcgfw/luci-app-openclash/files/etc/openclash/openclash_version @@ -1,2 +1,2 @@ -v0.39.5-beta -data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXMAAAAqCAMAAAB2kksrAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjY4OUM3MjlDQ0RGRjExRUFBNThGODVBNTBEMzU3REU2IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjY4OUM3MjlEQ0RGRjExRUFBNThGODVBNTBEMzU3REU2Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Njg5QzcyOUFDREZGMTFFQUE1OEY4NUE1MEQzNTdERTYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6Njg5QzcyOUJDREZGMTFFQUE1OEY4NUE1MEQzNTdERTYiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5vEDfyAAADAFBMVEUla5NISEjB1eCCqcBTiqkHXpHR0dEGcKwahMFJns5tbW09PT2EvN2EhIS6urokhLuTu9OUxeEJeLgJdbSCgoJlnr6enp4Ka6Ha2tqlpaV4eHgGbanf39/n5+c/Pz/GxsahoaE0dZrOzs46lcpYpdJpaWnR5vJ2ttpilLEEXI6RkZGizOVxcXG/v79FRUWsrKy1tbVmrdbR4uwJca0HXI2StchFmsrKysondqQEU4DB2eZiYmIEYJWy1upkq9MXgb5LS0tDQ0Pg4OCLi4sJZJkGdLKDs86iwNFGirEGVYLw9fd2dnbAwMCcnJwEWorCwsJBQUFFkbyx0OJCQkJFgKImcJuDrcW2trYYYo2jx9yXl5dHnMwmicJlZWWNjY0FaaJyn7grjsdzobuxzdwFcrAHZ502ksYIbKSvr69gYGCEtNCiyd8JWIUZdaqUlJQGZJpzsdSkzuYEYph0dHSyytgJcKuJweIwk8sIYZRGhKc1hbJDfqEHV4YRgsMCc7QBcrNRUVFUVFRVVVVSUlILfL1WVlYFdrcHeLkKe7wEdbYDdLQDdLUEdrYDdbUOf8AOgMASg8NXV1cSg8QShMQThMUAcrIGd7gOf78Nfr8Nfr4Mfb4Mfb0IebkJeroJe7sJers6OjqqqqrU1NTV1dWrq6upqak7OzvC3u6AgIB+fn4HVoTw9/uBgYHq6upMTEz19fXz8/Ph7/eHv9/09PSErMLA1N9/f3+DvNyFvt7v9Pfg6u90s9iGvt/B3e3B3e7C3+8FZ5+JiYlGm8vo6OgEVYMUXomhv9ALerkFa6YFZZuGv98HVoPW1tbg6vDD3+/B3u7g7vaEvd0FZ6CDu9wLdK8IaJ9Hm8zg7/cEWIgVaJcIWYgLb6iDr8gLeLfR3+hor9cGdbRVos/v9voEVYREmcp1qMWAudmjxdgpiL6ErcUXe7MHdrVkmbfB2+s1jsJTU1MPgMEQgcJZWVlaWlpfX19bW1tcXFxNTU1eXl5PT09QUFBYWFhdXV1OTk7///////+IfDSJAAABAHRSTlP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AU/cHJQAADDlJREFUeNrsVwlUFOcdn+WQY10Vjw0ssgoiAuqCQTErHsulYmxFo9F6PDWRaIwx8Yomsa0IG+iVlB4mTVCXSwIrl0AMGq94EmOiiSbmbI42sW3aTa0NiOFH/983s7szCxhek+d7u8/fe8z3P3//md83zMwKHR01q4Zf8wT8wQ2w+TFrR4fQkbLhmmfg926BzVEdQs2oVg/B79wDm63CKk+RvPW3boLHhFHfegp+6ibYLHx7W/NbDQ/S/N/uAuEbj8FtzW89vnYXCP/1GNzW/NbjGXeB8B+PwdPugi4118TFxcUG/vCqLNFoljicQI2mJz06ja6H7M92h2eGjdg3Yphr9Gv/yH379gU4/OV/lnsSKCZhuSL+Gl579v+GcNUVSfNrwJGyMOnq94QmTqPwa7DQYc/E+J5QvI7XezjsuW7g/wa/nDf8n5ZHl4tR1EWKfpDoBSh7pSKCMkGadzfuuYDXAp67KTpprqsCgku12giao/m+mschTu6aRyPFsbVA7A+r+Z+6wRHcOWj6oDtxRBENAD5uaJg2g9Rk7jrM+Ov06AmSJ+v1ahBxRRF/Ba90N+6mOQ7hhhJJKagNVDOYtLUDb3xPkOYKfxQQKJkLUZvTEwqD2tDDYc93jTE4t2DNmjULZmCMPBwwTVjDwuewjhfNoKKtW6ehTtF8BA1rRFxUxEnX57vDzXIcQieVapPUySqTyaBWm4f3VFvdQMX2DBwY2LXmqjAMlcwSzG+XinVdMya5aB6oHJJkr7Djha4xCff5fnDxA98GTJKHL65Z43vHHWnvN+AIeUcw7v2VFzdtoZ2JlFcdweo7RHykIH0ZL7/wwvKAYbJQgN3jOUdQUSPCVfMaaPXbuGU2MaMEe7m3FyXScWEKUHqjFKVJpfQYYtlS9gKoKeV1QBJ3S5K4I8LBvk2LKklAuuMLSLiZLF+VekNBfmNoFQ8zylKIxKk8NDNJqgzkjfPlp54rIRJ1klWHyNxcKx4/Tfbpx2HNleFi2kdsOd0PD9ECsSg3zQsvy6vKla4DpGtkHX8biL7/Otg9+0Xn5g6r44bVlUIoUGAvUJBjd7KzCwpIcylRwo8pJYymtKAU47kIewvoaVTTJ6RPDWayOlIKNRHB9AYmp6QKVSUEJ/9VQMeNoQhTFRToalC1KmQIsFBBPh/oExIymM6lgAaVsvqFwJCQVVVISeKVNTU4HhFGosvO3XFNdQjg6zAmvj/wMPceBvw7izfMOuMuLtRs7p7+G8p7prkVmODF3q0iC+r6rZ4DjKGWOtSVE3JzA1D35erVP7Ei6KaakxQmRcBVc9QPrVarkkgKHD+mV2//piAewSp6/KtqcTfX/Pgx8pK4p9ZCy14NTjpTMOK5kYKiNnacz/KBqJGTs/8BFt4e4dCcQho2JJjvLFX2GkWuhvfZkS9hUwPWcWMdGjblLwISuJcALMpX4sKFcniFp5HVhDFiaDXK5RXl/E4tH+Hv2gnr1AWVlQs+xrvMjcK0SsJcWPPzKxvQwJz8/Ctz2VoZTputaBbMCpQiwqYIlOBFvr6IEn483sLUUFHhED2z2uj7I1ttUBnUsYinCsCkVidnqmeh1GxOHoqhyQQnnU2DerbeTQ8cszkVYWq9inpnIVVG/iJAjKpMeqOwMyIi80zMYiE92w5WGaxW65P16lrp7Dgc1zRPvEh/K+blM83782j/zpqTnFFfbR1A1jS8K+oS5Kr5hPJyuqWj/F01v7ey0te3UgCG5edH4tzZsVmXtlRuRGS+74f40JdAu3x2bNqlS2lbvVwGd9K8l/mmmkeoVdnmbBsVavXVpGF2KoIzsymVHcgrABY204O71CGYHC1g8prZPwc7FhlYsI1XO8iHA6MDtxN5soNiMGIZbXZmrbg7Eclt5FZHyDXfZceljRhDyxhsvLRrF2kuhUnzXUpMnx7tRXKSJczAuyMWLRpB93W5vOKujLOEx5vEaLkIskjzS/137eo/9hwbFYRxaSyf4I0LLHdBbB6QsGvRhQuTJjS5DBa2K1CEwcoAac5X0pwfe9nshSF2wwFWAYgFISjiySIl3fbqWRhNSxVicxi5A0Uy8uv0PMfg0drh2x0UwN1iKkKsLBbZeklnx7HbjgHRiKKlHD4Ddu9+B5DCwDu7lcjIyBh7P9aRlRb+MT+N8/9EP3mFbwbdsVvP+gBTOAMHWaSrOMqLGeXO67jgzJFllaLKwS6a64AHb6p5iWNziuxGVRFHiDaViyPPd9bcpkP9g8SDFk5eYu/Vychz1JpgfqpameY6s6RykayyRK75Tge2NOGBnYtxYAvZVwApClwp3KlAQsJKXx9YyRqwNWPuvVOnPuHrhUG7ZRUDxLqtwKu0zhVBVm/0FgsmMONNvNmbY6r3bFmOftp++dX0ecT5qmKskK0EsFbhF+Mlvr6EYseRgaSwG8F7JGTyfnneUeVEci1NGI1ZKk5eZu9VyckNFAiMpc+SDXaKWhwTU4OhlVXaz46j0IGV4zCysDe8Q8neRHLx4Kv0Mi3sjOkAWxLGZjAsAO7qoihUJMkQQRbpKmai8Ghh4ZsYJ6Uyspy5KcAyHvOSzsAOF83b56Pqmt25Npxd1bGba07/Gd+qRJh6onn1fIzProcmh+wQ+mCU0C4nzzbp2T6EsW6RIgLx4inRDf/dmhcKsE45j3nMTPfCZB47CK/0LuScjCbR8MvKyloRBK+VOzsX0X79nZWIIGs/9vPEYuCJnYVTcSBLgp8zR00Z61f6pdOWuGhuUyDHRk/SVtE+Vl9hs/XBaGa3jkYxLRX8yFCGMtGgn5bjpdgG+qPnuSyvFbsVoA8dLWrvYSZ9rWvFYOtwGfkGmmtrUamDWZYTZdPnTqtIG6aSVRajwkmc58QjjZiEjVncXobDfI3CMrZMPnz4AbYeXMyjtDWnnH0HgfB0Zhw+HMSWRKkoCo1+eXKQrnwdiQNL8wrpQ+mgGJ9CDY9iJLcTgb5sfeA8EhXNLprbkjX0lRx/rKKijH6SVLDLQ1lFRXw9utO8hW708VS4QVtV1knzQNC+ta5VTghDPeJNfL/KiJ12ivgrZORkHGu1DS9D7TU7kT4Yg4mJ6nUtPdA8PZreBj5cvbz3DmDk4rzFI9H0nqiWqMAhTDqYmLjfiiaBbwU5Bw8D0b68CTgkFrOig+dpK/7hork16NPEydTwZEJeXtY4YD/tZGKQlbifAB2nTM7zO4CoyYmfjgS+Q/PrlsAw6WVbq71KCsVz+/ja7jS3qXW1UsOPOmmuErsVE9pjKfKgNExrf9+PkpGPkghrNSoHkUF8q9IvI1t3mu+QIaYJB3xF863wJt7ZFP4Wc98G/sLWh6TBB8InSmHmPGn0402kOVselYqafGJ2KPC2PRF9mbx0o7f9Ov5FA09xa0eoNLjfneJEB4QcF6gsFp02IiKiTGexVOfkmCyamRGz6Eq1qZRcwo8MOq1OskwWg6ZPcXGftTYDeVqtPN9u0cwqHjJUOcGs1WqTRdNgscUOKS6O0xiqZeTVBk1cr+IhsQb1dccgvYWG9NLaLCb5aaRqlzh55Ze11Mfb54xofnL55H1zDs257+TnnzB3trd3X74rwrJTjY2nok9+ns7DjY2N43yMxqVik7f3ILY0h7OijctOSlvhwGzvuT5fUodgDGXuI0Zh2f2HD/WLPkmunzH6/kNzPtyx47IwrrGxX/jn0eLE7jXPqVZbROwxtJGbzG21yqJnOX4U1TLYG0x7pAYVORaLIi92d9pVS4uDRkKLjLxFItyjchK1qZ0znJV6dlvY8ZQcJ4yX7abfCSPDCT/uNRuNoWydaBRx2RFmTqjUYzTGsOWoVHTizFNKNNsTS5W+0c9BbR98Yv2PjaGKZmFbZ5gMer3eYJI8VaY+U7Wt3aAiWzyKNSZHfZvqHr3+HlU7sw0GZZ51G5T07QaDM9JOBXqDqk1B3qaiM8jkQecgNsTQLjFIlSopwKG4rjPNTpnSj/rG+B5NF53Q5uYV3FhxdGJMzMSl9nBMTMx6Z0tzsyimHyty9DoR2hx6hjLrV9gDK2hGzHqJbSnNa2bB9RTze2pp84rv1NxN8Wt3gdDmMfiFu8CDNP+Nu0C47jH4lbvAgzT/pbtAWNLuKfiZm6CvEHJb81uML4R6j7nRf+4e6PuZ0DE4qcUz4CaSR3UIHR31IZ6h+h/dAH2/+Kyj438CDAAsDE6KILR99wAAAABJRU5ErkJggg== \ No newline at end of file +v0.39.6-beta +data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXMAAAAqCAMAAAB2kksrAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBBNTEyRjU3RDE1QjExRUE4MzgyQUY3ODk5QTY2NTgyIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBBNTEyRjU4RDE1QjExRUE4MzgyQUY3ODk5QTY2NTgyIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEE1MTJGNTVEMTVCMTFFQTgzODJBRjc4OTlBNjY1ODIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MEE1MTJGNTZEMTVCMTFFQTgzODJBRjc4OTlBNjY1ODIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6HWc3zAAADAFBMVEUGcKzR0dFtbW0GVYI9PT3B1eCStckHZp2EvN2EhIS6urokhLtFmsqUxeFTiqmGv98KaqGizOUHXpE6lcqCgoIJeLhlnr6enp52ttra2tqlpaXR4ux4eHgHXI3f398JdbTn5+djlbE/Pz9XpdLGxsahoaHOzs4la5MEXI6Ds85paWnR5vIFbamRkZFxcXG/v79GRkasrKw0dJq1tbVmrNUEU4AJZJkEYJWy1urKysoJca5iYmJkq9OiwNFLS0tDQ0Pg4ODC2eaLi4tFkbwGWopHirF2dnYGdLLAwMCcnJzw9ffCwsJBQUGx0OIXgL0neKZFgKJCQkIFZZomcJuDrcW2trYYYo2jx9xHnMyXl5cnicFlZWWNjY0FaaJJns42kcYrjsdzor2xzdwFcrA0fKUIbKUJWIWjzuavr69gYGCiyd8Zdapyn7iUlJSTvdaTu9FKns8EYpgIYZR0dHSyythDfqAdh8MJcKuJweIwk8t0sdUahMFortdFiK01hbIRgsMCc7QBcrNRUVFUVFRVVVVSUlILfL1WVlYFdrcHeLkKe7wOgMADdLQOf8AEdrYEdbYDdLUDdbUSg8MSg8RXV1cShMQAcrIThMUGd7gOf78Nfr8Nfr4Mfb4Mfb0IebkJeroJe7sJers6OjqqqqrU1NTV1dWrq6tISEipqak7OzuAgIB+fn7w9/sHVoTC3u5JSUmBgYHq6urh7/f19fVMTEzz8/P09PR/f3+DvNyFvt7A1N/B3e3v9PeCqcDg6u+hv9CErMLB3e6JiYnB3u7o6Oh0s9gIaJ/g6vALerkUXonW1taDq8LD3++EtNDC3+8LdK/g7/cFa6aDqsEEWIgFZ5+Evd3R3+hGm8tVos/g7vZInc2CutsZg8BGg6YGdbSDr8jv9voLb6gKeLeRuM8VaJdInc4IWYcEVYNXk7Y1jsKErcWjxdgvksvP5PFkmbdTU1MPgMEQgcJZWVlaWlpfX19bW1tcXFxNTU1eXl5PT09QUFBYWFhdXV1OTk7////////xDrwLAAABAHRSTlP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AU/cHJQAADGJJREFUeNrsVwlUFOcdH2EBV8UDjCtkVVgUUEAHcVFBFyQarKIxGK3H08QY0SRqvKJJNGkrAkJ6l7YmTQxyGxaQM4p44G2M95HL3Im2TZttrQ2I4Uf/3zezuzMLGF6T53u7z997zPc/f/+Z3zc7MwitrVXLht10BfzZCfD8c+bWVqE1fu1N18AfnQLPh7UKVcObXAR/cA48bxaWuYrkTb93EjwnDP/OVfAzJ8E/hO/uaX634UKa/9tZIHzrMrin+d3Hv5wFwn9dBvc0v/t42Vkg/Mdl8CtnQbuaayMjIyPcfnxV5mu1822Om1bbmR69Vt9J9lc6wsu+/Xv1920TXh/Uq1evVTb3sU1KTwGW6L9eHeuFXq/83xBuOCJ2VhU44ufG3viB0EZqVX4V5trsyRjbGYq38XYnh73aAda/wy/nnfWq6GNSFJVBku8teascu32lOoc4ad7RuFdX9Vr16h3RRnN9BeBXqNMF0yDtD9U8EpFKN2ME4m1bC0T8uJr/pQOcwf39JvW7H2dU0YXAlYMHx08BFjJ3KcyLJv11guzZsQmYMv7gwSsO4T3Y09G4O+Y4hNtqxMajxk3DYNLV9L39A0Gaq/zhgJtszkVNWmcoRI3YyWGvtY9NOD47JSVl9hRsUoYXjg9JYeHjWMqLpsy+di0lZTwqVc20MwdZWcpZNSnp+lpHuFOOQ2ijUk2sJq7cZBI1moxhndVW31e1PX37urWveVEAhshmAWa1yMX69hljHTR3Uw+JtVZY8Xr7GINFPp+d/cznIMYow2dTUnx6946+dhBnyDsDz2tLzm5YQzsTpKyqJMmvRffu7XNWTUq6vv76Ywt9FaGFVo/nbEFVjQRHzaugM2zmVoaJGQXYxb1dKJCPc+OBwtuFKIwtpMcQyxayF0BVIa8DYrlbEMsdCTb2zTpUyALSHZ9Nwk1m+YqE2yry20MqeJhRFkIiTuChybFypRtvnKU89XQZQaiUrUoEpaeb8eLnZJ/4COZ0Bc5Gs2j6iWfwFC3ARyeYG+2BPYqiIBwv7Z3eDkjXoEr+NpD8jUth9awXnZ7uW8kN8x6HZiFbhV1AdprVSU3NzibN5UQBP8YXMJrC7EKM5SLsyqanUVU3/25VmMzqSClUBfvRG5icggpUFBDs/DcAPTeGIEDMztZXoWKZ/2Bgrop8FtDN338gnUs2DSpk9XOBwf7LKhAfyyurqnAkOIBEV5y77Zoq8QFffZn4G4Gnufc0sLGteL7m+oe4UA9w98TfUabILoVn741ffeXbjuZmYIIHne0HEgsqV56eBoxKTy+rRGUZIT39A1R+ffr0T83wvqPmJIVJFXDUHLVDqjXlsSQFjhwyaLZ8mx0Fv3J6/JfX4EGu+ZFD5MVyT6ODjr0a7HQmP0RxIx55zew4i+XdUKUkZ78BFt4SbNOcQlo2xI/vLFV2GU6ulvdZkSVjwyks5cZSnNqQNQeI4V4MMCdLjcuXy+AxMpqseoySQqdRpigog+cYfqv2d+yEeejs0tLZV3COuWEYX0qYAXNWVukpnGJOVta8GWwtHUmbrWoWMlQoRLBFFSjAm3x9EwX8eKSRqVFOhYMNzGqm749UjVguaiIQRRWASaOJS9JMRWFGRtwQDIkj2OksWtSy9UF64GRkJCBAYxDL46g6QUH+JkCM5Un0RmFnREQZkzGV3jKigW0Hq/TTaAxxBk2NfHYctmuaCVyl5aoZM7OY5p/z6OdtNSc1w765Nois8Th3lYe8VZpTwbk+p09fgbyLCs0fKS318SkNAXyzstgjaKJX7zWl6xCU5fMJPvEh0C6XToxmrwwPh8FtNO+ScUfNgzXlqRmpFirUGapJw9QE+CWlUirVjVcALJxBD+5Cm2BKNILJm0E/DpEd80QWbObVNvJhwAi3LUQeZ6MYiAhGm5pUI+1OcFwzudXBSs1zrDi2DqNoGYV1x3JySHM5TJrnqDFpUqAHwq6SFTIF5/rPmdO/DChTFABD17BbNVDqLZNAFml+7L6cnPsGHGejvOEZzcpjLuAyy12WugfF5My5fHnMhHqHwcIWFfIwUB0gzflKmvNjF4u10N9q2MAqAKnAH3k8maem21I9FSNoqUBEGiO3IU9Bfoue5xg4Qjdsi40CeFBKBUuV+RJbF/nsOHZYMSgQYbSUoeegHTveBeQw8O4ONdzd3Qc8jqVkRY+8wk/j/b1YqSgAZkyMPnZsgLsHr5LPlSzSVRrlwYwy+3VctufIMstR9WAHzfXAk3fUvMC2OXlWoyKPw1+XwMVR5ttqbtGj9kniQSMnL7D26hXkaRqtHz9VnUJzfYascp6iskCp+Rs2rKnHoznzsH8N2d0BOQp0z3lDhZgNS3x6wkzWoFL3GY8MHfqSjwf6KQro1crXJRdwmJYZEsjqiq5SxQRmHMbhrhxDLzygyNG/tl9/8+JM4nxXNVZIVQNYofLz8RZf30K+7chAUlgNv50ykni/Mm+rsiOuhiaMwNRyTl5s7S1SksdRwC2CPkvWWilqcEhKDYROUWk9O47tNizxRJ/tXXEhnOwNdJfxIN3wMdvbYhLAlpgB7gyzgYcUSQ+Mk4yhOExHdwlkka5SIgwvbN9+GJ5yyt3LnpsOLOcxD/kMrHDQvGUWKm5anZvD2FUdurPm9Mv4rkiCqTOaV8/C2NRaaNPI9keA3FrUoiRPNRnYPgSwbokiGFHSKdEN//2abw+Befr7mMnMRKtuR+GR2I7m41AvK+Hl5bXYGx5LFEm2dxxjsJKVSCBrN3bz+DzgpTdoR/Z7yRDsOdpk99VLhETaEgfNLSqkWehJ2iTZh2pLLJZuGMHsphHIp6WEHxmKUSwZYgDGyrG19EfPc0VeJ3WrQB86OtQ8zEz6WtdJwaZhCvK1NNfSWKTxY1lOlEqfO00SbUCRojIfJXbiTDuS6zAG67y4vRwNfA3DcraMa2h4lK1H5/Eobc0Be99RYGQiMxoavNnyBMCL59E/VplKkK587YP9CzK304fSUSk+nVhfQB9u96DfDFsffR89VM0OmlvitPSVHHWopKSY/iUpYZeH4pKSqFp0pHkj3ehjqXCtrqK4jeZuoH1rWqGeEIBaRJn4fhUTO+0U8ZcoyMk41GQZVoyam1Yigx8GEhPV6xs7oXkifWigJ1cv88v96DMvc14f1H8pqSUpsBdjjvbosduM+hC+FeQcbQACfXgTsJfv3QGYx2VmvheGA8kOmpu93+sxjhpmxGRmenkCu2lzenibifsl0HH6uExhP8JG9XivD/A9mt/KdQuQX7Y1uhukUBS3j6zoSHOLRl8jN/ykjeZFUrdqQksERZ6Uh+ms7/vhCvLhMmGNtshKVC5Kb1X6z8jSkebbFAitx34fybw0sp531o+8xFymOVufkgfvHzlaDhOOP2sUeBNpzhbh5AGp6oAxXEkvlxNp4EXyEo37rNfxNxoo9WwLlwevvF+aaIOQ5oDy3Fy9Ljg4uFifm1udlmbK1U4OnkpXqkug5Hx+ZNDr9LJlyhW13fLzu62wiOTpdMp8S652av7gIeoJGTqdLk4yxVxLxOD8/EitWK0grxa1kV3yB0eImlu2QYZcGtJFZ8k1KU8jQTffzqu8rAU99/U8L5kfXzy5aNreaYtOXv+YuQ/s29ed70rI8gN1dQcCT15P5OG6ujrPnkbjAqlp375+fB1tfNazYe8XzxpHq1Qjlhk9v6aOEGkvVhtDlj/esPeZwJPkCsbAx/dO+2TbtoshnnV1XzxhDJQmdqx5WrUmV8JOsZncOG5rxFwDy/GjpJZobTDtlBtYJDdXlZe61QNEijQqbI5GBXmjTLiz3E7ULJ9VeZryNAzstrBiqxLXjRetpnDdyHBd4F6y0RjO1tFGCRdtYeaEyz1GYyhfP5bLRm9VI1nuvr5A7RsFG7Vt8OqJxnBVs7C5LUyiwWCIM8leUZIhqWhzi1hEtnSUaky2+uaihw2Gh8UWZouiOs+6RTV9iyiKCieJZhU1q8ibi+IM1NasGsSGSDPslUVygEN1XeeTz9vsxEs+oT6XEiUnPDl5MTcWXxodGjp6gTUcGhq62t6SnCyLuTV8NSXCHSQnlvDz1L56sTWwmGaErpbZFtC8ZBZkvcLWBcmLv1dzJ8WvnQVCs8vgN84CF9L8d84C4ZbL4LfOAhfS/JfOAmF+i6vg506C7oL/Pc3vMj4Ual3mRv+Fc6D7p0LrwNhG14CTSP7PVqG1tdbfNVT/kxOg+4eftrb+T4ABAJMDonDJ/UB6AAAAAElFTkSuQmCC \ No newline at end of file diff --git a/package/ctcgfw/luci-app-openclash/files/usr/lib/lua/luci/model/cbi/openclash/settings.lua b/package/ctcgfw/luci-app-openclash/files/usr/lib/lua/luci/model/cbi/openclash/settings.lua index 167cef1f8f..3f7bb17c0f 100644 --- a/package/ctcgfw/luci-app-openclash/files/usr/lib/lua/luci/model/cbi/openclash/settings.lua +++ b/package/ctcgfw/luci-app-openclash/files/usr/lib/lua/luci/model/cbi/openclash/settings.lua @@ -308,6 +308,12 @@ o:depends("rule_source", "ConnersHua_return") o:value(l) end file:seek("set") +o = s:taboption("rules", ListValue, "Youtube", translate("Youtube")) +o:depends("rule_source", "lhie1") + for l in file:lines() do + o:value(l) + end + file:seek("set") o = s:taboption("rules", ListValue, "Apple", translate("Apple")) o:depends("rule_source", "lhie1") for l in file:lines() do diff --git a/package/ctcgfw/luci-app-openclash/files/usr/share/openclash/yml_proxys_set.sh b/package/ctcgfw/luci-app-openclash/files/usr/share/openclash/yml_proxys_set.sh index b7ae5bae30..fa1e27d22e 100755 --- a/package/ctcgfw/luci-app-openclash/files/usr/share/openclash/yml_proxys_set.sh +++ b/package/ctcgfw/luci-app-openclash/files/usr/share/openclash/yml_proxys_set.sh @@ -704,6 +704,20 @@ EOF fi cat /tmp/Proxy_Provider >> $SERVER_FILE 2>/dev/null cat >> "$SERVER_FILE" <<-EOF +- name: Youtube + type: select + proxies: + - GlobalTV + - DIRECT +EOF +cat /tmp/Proxy_Server >> $SERVER_FILE 2>/dev/null +if [ -f "/tmp/Proxy_Provider" ]; then +cat >> "$SERVER_FILE" <<-EOF + use: +EOF +fi +cat /tmp/Proxy_Provider >> $SERVER_FILE 2>/dev/null +cat >> "$SERVER_FILE" <<-EOF - name: Spotify type: select proxies: @@ -825,6 +839,7 @@ ${UCI_SET}rule_source="lhie1" ${UCI_SET}GlobalTV="GlobalTV" ${UCI_SET}AsianTV="AsianTV" ${UCI_SET}Proxy="Proxy" +${UCI_SET}Youtube="Youtube" ${UCI_SET}Apple="Apple" ${UCI_SET}Microsoft="Microsoft" ${UCI_SET}Netflix="Netflix" @@ -841,6 +856,7 @@ ${UCI_SET}Others="Others" ${UCI_SET}servers_update="1" ${UCI_DEL_LIST}="Auto - UrlTest" >/dev/null 2>&1 && ${UCI_ADD_LIST}="Auto - UrlTest" >/dev/null 2>&1 ${UCI_DEL_LIST}="Proxy" >/dev/null 2>&1 && ${UCI_ADD_LIST}="Proxy" >/dev/null 2>&1 + ${UCI_DEL_LIST}="Youtube" >/dev/null 2>&1 && ${UCI_ADD_LIST}="Youtube" >/dev/null 2>&1 ${UCI_DEL_LIST}="AsianTV" >/dev/null 2>&1 && ${UCI_ADD_LIST}="AsianTV" >/dev/null 2>&1 ${UCI_DEL_LIST}="GlobalTV" >/dev/null 2>&1 && ${UCI_ADD_LIST}="GlobalTV" >/dev/null 2>&1 ${UCI_DEL_LIST}="Netflix" >/dev/null 2>&1 && ${UCI_ADD_LIST}="Netflix" >/dev/null 2>&1 diff --git a/package/ctcgfw/luci-app-openclash/files/usr/share/openclash/yml_rules_change.sh b/package/ctcgfw/luci-app-openclash/files/usr/share/openclash/yml_rules_change.sh index 8658ddad92..2645434e7b 100755 --- a/package/ctcgfw/luci-app-openclash/files/usr/share/openclash/yml_rules_change.sh +++ b/package/ctcgfw/luci-app-openclash/files/usr/share/openclash/yml_rules_change.sh @@ -84,6 +84,7 @@ if [ "$2" != 0 ]; then GlobalTV=$(uci get openclash.config.GlobalTV 2>/dev/null) AsianTV=$(uci get openclash.config.AsianTV 2>/dev/null) Proxy=$(uci get openclash.config.Proxy 2>/dev/null) + Youtube=$(uci get openclash.config.Youtube 2>/dev/null) Apple=$(uci get openclash.config.Apple 2>/dev/null) Netflix=$(uci get openclash.config.Netflix 2>/dev/null) Spotify=$(uci get openclash.config.Spotify 2>/dev/null) @@ -117,6 +118,7 @@ if [ "$2" != 0 ]; then if [ -z "$(grep "$GlobalTV" /tmp/Proxy_Group)" ]\ || [ -z "$(grep "$AsianTV" /tmp/Proxy_Group)" ]\ || [ -z "$(grep "$Proxy" /tmp/Proxy_Group)" ]\ + || [ -z "$(grep "$Youtube" /tmp/Proxy_Group)" ]\ || [ -z "$(grep "$Apple" /tmp/Proxy_Group)" ]\ || [ -z "$(grep "$Netflix" /tmp/Proxy_Group)" ]\ || [ -z "$(grep "$Spotify" /tmp/Proxy_Group)" ]\ @@ -156,6 +158,7 @@ if [ "$2" != 0 ]; then GlobalTV_YAML=$(grep '##GlobalTV:' "$4" |awk -F ':' '{print $2}') AsianTV_YAML=$(grep '##AsianTV:' "$4" |awk -F ':' '{print $2}') Proxy_YAML=$(grep '##Proxy:' "$4" |awk -F ':' '{print $2}') + Youtube_YAML=$(grep '##Youtube:' "$4" |awk -F ':' '{print $2}') Apple_YAML=$(grep '##Apple:' "$4" |awk -F ':' '{print $2}') Netflix_YAML=$(grep '##Netflix:' "$4" |awk -F ':' '{print $2}') Spotify_YAML=$(grep '##Spotify:' "$4" |awk -F ':' '{print $2}') @@ -186,6 +189,7 @@ if [ "$2" != 0 ]; then if [ "$GlobalTV" != "$GlobalTV_YAML" ]\ || [ "$AsianTV" != "$AsianTV_YAML" ]\ || [ "$Proxy" != "$Proxy_YAML" ]\ + || [ "$Youtube" != "$Youtube_YAML" ]\ || [ "$Apple" != "$Apple_YAML" ]\ || [ "$Netflix" != "$Netflix_YAML" ]\ || [ "$Spotify" != "$Spotify_YAML" ]\ @@ -217,6 +221,9 @@ if [ "$2" != 0 ]; then sed -i "s/,Proxy$/,${Proxy}#d/g" "/tmp/other_rule.yaml" 2>/dev/null sed -i "s/,Proxy,no-resolve$/,${Proxy},no-resolve#d/g" "/tmp/other_rule.yaml" 2>/dev/null sed -i "/rules:/a\##Proxy:${Proxy}" "/tmp/other_rule.yaml" 2>/dev/null + sed -i "s/,Youtube$/,${Youtube}#d/g" "/tmp/other_rule.yaml" 2>/dev/null + sed -i "s/,Youtube,no-resolve$/,${Youtube},no-resolve#d/g" "/tmp/other_rule.yaml" 2>/dev/null + sed -i "/rules:/a\##Youtube:${Youtube}" "/tmp/other_rule.yaml" 2>/dev/null sed -i "s/,Apple$/,${Apple}#d/g" "/tmp/other_rule.yaml" 2>/dev/null sed -i "s/,Apple,no-resolve$/,${Apple},no-resolve#d/g" "/tmp/other_rule.yaml" 2>/dev/null sed -i "/rules:/a\##Apple:${Apple}" "/tmp/other_rule.yaml" 2>/dev/null diff --git a/package/ctcgfw/luci-app-openclash/i18n/zh-cn/openclash.zh-cn.po b/package/ctcgfw/luci-app-openclash/i18n/zh-cn/openclash.zh-cn.po index 2c3ae67306..471aacd3f3 100644 --- a/package/ctcgfw/luci-app-openclash/i18n/zh-cn/openclash.zh-cn.po +++ b/package/ctcgfw/luci-app-openclash/i18n/zh-cn/openclash.zh-cn.po @@ -454,6 +454,9 @@ msgstr "亚洲流媒体流量" msgid "Proxy" msgstr "必须代理的流量" +msgid "Youtube" +msgstr "Youtube流量" + msgid "Apple" msgstr "苹果服务流量" diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/Makefile b/package/ctcgfw/luci-app-ssr-plus-Jo/Makefile deleted file mode 100644 index 2c3d950b35..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/Makefile +++ /dev/null @@ -1,181 +0,0 @@ -include $(TOPDIR)/rules.mk - -PKG_NAME:=luci-app-ssr-plus-Jo -PKG_VERSION:=152 -PKG_RELEASE:=20200307-5 -PKG_CONFIG_DEPENDS:= CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_V2ray \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Trojan \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun:kcptun \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Server \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Server \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Socks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Socks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ipt2socks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_dnscrypt_proxy \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_dnsforwarder \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_haproxy \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_udpspeeder \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_udp2raw-tunnel \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_privoxy \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs\ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs-server\ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-client\ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-server\ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_v2ray-plugin - -include $(INCLUDE_DIR)/package.mk - -define Package/$(PKG_NAME)/config -config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks - bool "Include Shadowsocks New Version" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_V2ray - bool "Include V2ray" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_Trojan - bool "Include Trojan" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun - bool "Include Kcptun" - default n - -config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Server - bool "Include ShadowsocksR Server" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Server - bool "Include Shadowsocks Server" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Socks - bool "Include ShadowsocksR Socks and Tunnel" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Socks - bool "Include Shadowsocks Socks and Tunnel" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_ipt2socks - bool "Include ipt2socks" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_dnscrypt_proxy - bool "Include dnscrypt-proxy-full" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_dnsforwarder - bool "Include dnsforwarder" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS - bool "Include chinadns" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_haproxy - bool "Include haproxy" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_privoxy - bool "Include privoxy http local" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs - bool "Include simple-obfsl" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs-server - bool "Include simple-obfs-server" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_udpspeeder - bool "Include udpspeeder" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_udp2raw-tunnel - bool "Include udp2raw-tunnel" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-client - bool "Include GoQuiet-client" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-server - bool "Include GoQuiet-server" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_v2ray-plugin - bool "Include v2ray-plugin" - default y -endef - -define Package/luci-app-ssr-plus-Jo - SECTION:=luci - CATEGORY:=LuCI - SUBMENU:=3. Applications - TITLE:=SS/SSR/V2Ray LuCI interface - PKGARCH:=all - DEPENDS:=+shadowsocksr-libev-alt +ipset +ip-full +iptables-mod-tproxy +dnsmasq-full +coreutils +coreutils-base64 +bash +pdnsd-alt +luasocket +jshn +curl +wget +unzip \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks:shadowsocks-libev-ss-redir \ - +PACKAGE_$(PKG_NAME)_INCLUDE_V2ray:v2ray \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Trojan:trojan \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun:kcptun-client \ - +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Server:shadowsocksr-libev-server \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Server:shadowsocks-libev-ss-server \ - +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Socks:shadowsocksr-libev-ssr-local \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Socks:shadowsocks-libev-ss-local \ - +PACKAGE_$(PKG_NAME)_INCLUDE_ipt2socks:ipt2socks \ - +PACKAGE_$(PKG_NAME)_INCLUDE_dnscrypt_proxy:dnscrypt-proxy-full \ - +PACKAGE_$(PKG_NAME)_INCLUDE_dnsforwarder:dnsforwarder \ - +PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS:openwrt_chinadns \ - +PACKAGE_$(PKG_NAME)_INCLUDE_haproxy:haproxy \ - +PACKAGE_$(PKG_NAME)_INCLUDE_privoxy:privoxy \ - +PACKAGE_$(PKG_NAME)_INCLUDE_udpspeeder:speederv2-tunnel \ - +PACKAGE_$(PKG_NAME)_INCLUDE_udp2raw-tunnel:udp2raw-tunnel \ - +PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs:simple-obfs \ - +PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs-server:simple-obfs-server \ - +PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-client:gq-client \ - +PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-server:gq-server \ - +PACKAGE_$(PKG_NAME)_INCLUDE_v2ray-plugin:v2ray-plugin -endef - -define Build/Prepare -endef - -define Build/Compile -endef - -define Package/luci-app-ssr-plus-Jo/install - $(INSTALL_DIR) $(1)/usr/lib/lua/luci - cp -pR ./luasrc/* $(1)/usr/lib/lua/luci - $(INSTALL_DIR) $(1)/ - cp -pR ./root/* $(1)/ - $(INSTALL_DIR) $(1)/usr/lib/lua/luci/i18n - po2lmo ./po/zh-cn/ssr-plus.po $(1)/usr/lib/lua/luci/i18n/ssr-plus.zh-cn.lmo -endef - -define Package/luci-app-ssr-plus-Jo/postinst -#!/bin/sh -if [ -z "$${IPKG_INSTROOT}" ]; then - ( . /etc/uci-defaults/luci-ssr-plus ) && rm -f /etc/uci-defaults/luci-ssr-plus - rm -f /tmp/luci-indexcache - chmod 755 /etc/init.d/shadowsocksr >/dev/null 2>&1 - /etc/init.d/shadowsocksr enable >/dev/null 2>&1 -fi -exit 0 -endef - -define Package/luci-app-ssr-plus-Jo/prerm -#!/bin/sh -if [ -z "$${IPKG_INSTROOT}" ]; then - /etc/init.d/shadowsocksr disable - /etc/init.d/shadowsocksr stop -fi -exit 0 -endef - -$(eval $(call BuildPackage,luci-app-ssr-plus-Jo)) diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/controller/shadowsocksr.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/controller/shadowsocksr.lua deleted file mode 100644 index 75a64157d8..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/controller/shadowsocksr.lua +++ /dev/null @@ -1,387 +0,0 @@ --- Copyright (C) 2018 jerrykuku --- 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 - return - end - if nixio.fs.access("/usr/bin/ssr-redir") then - entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false - entry({"admin", "vpn", "shadowsocksr"},alias("admin", "vpn", "shadowsocksr", "client"), _("ShadowSocksR Plus+"),10).dependent = true - entry({"admin", "vpn", "shadowsocksr", "client"},cbi("shadowsocksr/client"),_("SSR Client"),10).leaf = true - entry({"admin", "vpn", "shadowsocksr", "servers"}, cbi("shadowsocksr/servers"), _("Node List"), 11).leaf = true - entry({"admin", "vpn", "shadowsocksr", "servers"},arcombine(cbi("shadowsocksr/servers"), cbi("shadowsocksr/client-config")),_("Node List"), 11).leaf = true - - entry({"admin", "vpn", "shadowsocksr", "subscription"},cbi("shadowsocksr/subscription"), _("Subscription"),12).leaf = true - entry({"admin", "vpn", "shadowsocksr", "control"},cbi("shadowsocksr/control"),_("Access Control"),13).leaf = true - entry({"admin", "vpn", "shadowsocksr", "servers-list"}, cbi("shadowsocksr/servers-list"), _("Severs Nodes"), 14).leaf = true -entry({"admin", "vpn", "shadowsocksr", "appointlist"},form("shadowsocksr/appointlist"),_("Appointlist List"), 17).leaf = true - entry({"admin", "vpn", "shadowsocksr", "udp2raw"},cbi("shadowsocksr/udp2raw"),_("udp2raw tunnel"),16).leaf = true - entry({"admin", "vpn", "shadowsocksr", "advanced"},cbi("shadowsocksr/advanced"), _("Advanced Settings"),21).leaf = true - elseif nixio.fs.access("/usr/bin/ssr-server") then - entry({"admin", "vpn", "shadowsocksr"},alias("admin", "vpn", "shadowsocksr", "server"), _("ShadowSocksR"),10).dependent = true - else - return - end - if nixio.fs.access("/usr/bin/ssr-server") then - entry({"admin", "vpn", "shadowsocksr", "server"},arcombine(cbi("shadowsocksr/server"), cbi("shadowsocksr/server-config")),_("SSR Server"),22).leaf = true - end - entry({"admin", "vpn", "shadowsocksr", "status"},form("shadowsocksr/status"),_("Status"), 23).leaf = true - entry({"admin", "vpn", "shadowsocksr", "logview"}, cbi("shadowsocksr/logview", {hideapplybtn=true, hidesavebtn=true, hideresetbtn=true}), _("Log") ,30).leaf=true - entry({"admin", "vpn", "shadowsocksr", "fileread"}, call("act_read"), nil).leaf=true - entry({"admin", "vpn", "shadowsocksr", "refresh"}, call("refresh_data")) - entry({"admin", "vpn", "shadowsocksr", "checkport"}, call("check_port")) - entry({"admin", "vpn", "shadowsocksr", "checkports"}, call("check_ports")) - entry({"admin", "vpn", "shadowsocksr", "run"}, call("act_status")) - entry({"admin", "vpn", "shadowsocksr", "change"}, call("change_node")) - entry({"admin", "vpn", "shadowsocksr", "allserver"}, call("get_servers")) - entry({"admin", "vpn", "shadowsocksr", "subscribe"}, call("get_subscribe")) - entry({"admin", "vpn", "shadowsocksr", "ping"}, call("act_ping")).leaf=true -end -function get_subscribe() - - local cjson = require "cjson" - local e = {} - local uci = luci.model.uci.cursor() - local auto_update = luci.http.formvalue("auto_update") - local auto_update_time = luci.http.formvalue("auto_update_time") - local proxy = luci.http.formvalue("proxy") - local subscribe_url = luci.http.formvalue("subscribe_url") - if subscribe_url ~= "[]" then - local cmd1 = 'uci set shadowsocksr.@server_subscribe[0].auto_update="' .. - auto_update .. '"' - local cmd2 = 'uci set shadowsocksr.@server_subscribe[0].auto_update_time="' .. - auto_update_time .. '"' - local cmd3 = 'uci set shadowsocksr.@server_subscribe[0].proxy="' .. proxy .. '"' - luci.sys.call('uci delete shadowsocksr.@server_subscribe[0].subscribe_url ') - luci.sys.call(cmd1) - luci.sys.call(cmd2) - luci.sys.call(cmd3) - for k, v in ipairs(cjson.decode(subscribe_url)) do - luci.sys.call( - 'uci add_list shadowsocksr.@server_subscribe[0].subscribe_url="' .. v .. - '"') - end - luci.sys.call('uci commit shadowsocksr') - luci.sys.call( - "nohup /usr/bin/lua /usr/share/shadowsocksr/subscribe.lua >/www/check_update.htm 2>/dev/null &") - - e.error = 0 - else - e.error = 1 - end - - luci.http.prepare_content("application/json") - luci.http.write_json(e) - -end --- 获取所有节点 -function get_servers() - local uci = luci.model.uci.cursor() - local server_table = {} - uci:foreach("shadowsocksr", "servers", function(s) - s["name"] = s[".name"] - table.insert(server_table,s) - end) - luci.http.prepare_content("application/json") - luci.http.write_json(server_table) -end - --- 切换节点 -function change_node() - local e={} - local uci = luci.model.uci.cursor() - local sid = luci.http.formvalue("set") - local name = "" - uci:foreach("shadowsocksr", "global", function(s) - name = s[".name"] - end) - e.status = false - e.sid = sid - if sid ~= "" then - uci:set("shadowsocksr", name, "global_server" , sid) - luci.sys.call("uci commit shadowsocksr && /etc/init.d/shadowsocksr restart") - e.status = true - end - luci.http.prepare_content("application/json") - luci.http.write_json(e) -end - --- 检测全局服务器状态 -function act_status() - local e={} - --全局服务器 - e.global=luci.sys.call("ps -w | grep ssr-retcp | grep -v grep >/dev/null") == 0 - - --检测chinadns状态 - if tonumber(luci.sys.exec("ps -w | grep chinadns |grep -v grep| wc -l"))>0 then - e.chinadns= true - elseif tonumber(luci.sys.exec("ps -w | grep dnsparsing |grep -v grep| wc -l"))>0 then - e.chinadns= true - elseif tonumber(luci.sys.exec("ps -w | grep dnscrypt-proxy |grep -v grep| wc -l"))>0 then - e.chinadns= true - elseif tonumber(luci.sys.exec("ps -w | grep pdnsd |grep -v grep| wc -l"))>0 then - e.chinadns= true - - elseif tonumber(luci.sys.exec("ps -w | grep dnsforwarder |grep -v grep| wc -l"))>0 then - e.chinadns= true - - end - --检测SOCKS5状态 - if tonumber(luci.sys.exec("ps -w | grep ssr-local |grep -v grep| wc -l"))>0 then - e.SOCKS5= true - elseif tonumber(luci.sys.exec("ps -w | grep ss-local |grep -v grep| wc -l"))>0 then - e.SOCKS5= true - elseif tonumber(luci.sys.exec("ps -w | grep v2-ssr-local |grep -v grep| wc -l"))>0 then - e.SOCKS5= true - end - ---检测UDP2RAW状态 - if tonumber(luci.sys.exec("ps -w | grep udp2raw |grep -v grep| wc -l"))>0 then - e.udp2raw= true -end ---检测UDPspeeder状态 - if tonumber(luci.sys.exec("ps -w | grep udpspeeder |grep -v grep| wc -l"))>0 then - e.udpspeeder= true -end - --检测服务端状态 - if tonumber(luci.sys.exec("ps -w | grep ssr-server |grep -v grep| wc -l"))>0 then - e.server= true -end -if luci.sys.call("pidof ssr-server >/dev/null") == 0 then - e.ssr_server= true -end - if luci.sys.call("pidof ss-server >/dev/null") == 0 then - e.ss_server= true - -end - if luci.sys.call("ps -w | grep v2ray-server | grep -v grep >/dev/null") == 0 then - e.v2_server= true - - - end - -- 检测游戏模式状态 - e.game = false - if tonumber(luci.sys.exec("ps -w | grep ssr-reudp |grep -v grep| wc -l"))>0 then - e.game= true - else - if tonumber(luci.sys.exec("ps -w | grep ssr-retcp |grep \"\\-u\"|grep -v grep| wc -l"))>0 then - e.game= true - end - end - -- 检测国内通道 - e.baidu = false - sret = luci.sys.call("/usr/bin/ssr-check www.baidu.com 80 3 1") - if sret == 0 then - e.baidu = true - end - - -- 检测国外通道 - e.google = false - sret = luci.sys.call("/usr/bin/ssr-check www.google.com 80 3 1") - if sret == 0 then - e.google = true - end - - luci.http.prepare_content("application/json") - luci.http.write_json(e) -end - -function act_ping() - local e={} - e.index=luci.http.formvalue("index") - e.ping=luci.sys.exec("ping -c 1 -W 1 %q 2>&1 | grep -o 'time=[0-9]*.[0-9]' | awk -F '=' '{print$2}'"%luci.http.formvalue("domain")) - luci.http.prepare_content("application/json") - luci.http.write_json(e) -end - -function check_status() - local set ="/usr/bin/ssr-check www." .. luci.http.formvalue("set") .. ".com 80 3 1" - sret=luci.sys.call(set) - if sret== 0 then - retstring ="0" - else - retstring ="1" - end - - luci.http.prepare_content("application/json") - luci.http.write_json({ ret=retstring }) -end - - -function refresh_data() - local set = luci.http.formvalue("set") - local icount = 0 - - if set == "gfw_data" then - if nixio.fs.access("/usr/bin/wget-ssl") then - refresh_cmd = - "wget-ssl --no-check-certificate https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt -O /tmp/gfw.b64" - else - refresh_cmd = "wget -O /tmp/gfw.b64 http://iytc.net/tools/list.b64" - end - sret = luci.sys.call(refresh_cmd .. " 2>/dev/null") - if sret == 0 then - luci.sys.call("/usr/bin/ssr-gfw") - icount = luci.sys.exec("cat /tmp/gfwnew.txt | wc -l") - if tonumber(icount) > 1000 then - oldcount = luci.sys.exec("cat /etc/dnsmasq.ssr/gfw_list.conf | wc -l") - if tonumber(icount) ~= tonumber(oldcount) then - luci.sys.exec("cp -f /tmp/gfwnew.txt /etc/dnsmasq.ssr/gfw_list.conf") - retstring = tostring(math.ceil(tonumber(icount) / 2)) - else - retstring = "0" - end - else - retstring = "-1" - end - luci.sys.exec("rm -f /tmp/gfwnew.txt ") - else - retstring = "-1" - end - elseif set == "ip_data" then - refresh_cmd = - 'wget -O- \'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest\' 2>/dev/null| awk -F\\| \'/CN\\|ipv4/ { printf("%s/%d\\n", $4, 32-log($5)/log(2)) }\' > /tmp/china_ssr.txt' - sret = luci.sys.call(refresh_cmd) - icount = luci.sys.exec("cat /tmp/china_ssr.txt | wc -l") - if sret == 0 and tonumber(icount) > 1000 then - oldcount = luci.sys.exec("cat /etc/china_ssr.txt | wc -l") - if tonumber(icount) ~= tonumber(oldcount) then - luci.sys.exec("cp -f /tmp/china_ssr.txt /etc/china_ssr.txt") - retstring = tostring(tonumber(icount)) - else - retstring = "0" - end - else - retstring = "-1" - end - luci.sys.exec("rm -f /tmp/china_ssr.txt ") - else - if nixio.fs.access("/usr/bin/wget-ssl") then - refresh_cmd = - "wget --no-check-certificate -O - https://easylist-downloads.adblockplus.org/easylistchina+easylist.txt | grep ^\\|\\|[^\\*]*\\^$ | sed -e 's:||:address\\=\\/:' -e 's:\\^:/127\\.0\\.0\\.1:' > /tmp/ad.conf" - else - refresh_cmd = "wget -O /tmp/ad.conf http://iytc.net/tools/ad.conf" - end - sret = luci.sys.call(refresh_cmd .. " 2>/dev/null") - if sret == 0 then - icount = luci.sys.exec("cat /tmp/ad.conf | wc -l") - if tonumber(icount) > 1000 then - if nixio.fs.access("/etc/dnsmasq.ssr/ad.conf") then - oldcount = luci.sys.exec("cat /etc/dnsmasq.ssr/ad.conf | wc -l") - else - oldcount = 0 - end - - if tonumber(icount) ~= tonumber(oldcount) then - luci.sys.exec("cp -f /tmp/ad.conf /etc/dnsmasq.ssr/ad.conf") - retstring = tostring(math.ceil(tonumber(icount))) - if oldcount == 0 then - luci.sys.call("/etc/init.d/dnsmasq restart") - end - else - retstring = "0" - end - else - retstring = "-1" - end - luci.sys.exec("rm -f /tmp/ad.conf ") - else - retstring = "-1" - end - end - luci.http.prepare_content("application/json") - luci.http.write_json({ret = retstring, retcount = icount}) -end - - -function act_ping() - local e={} - e.index=luci.http.formvalue("index") - e.ping=luci.sys.exec("ping -c 1 -W 1 %q 2>&1 | grep -o 'time=[0-9]*.[0-9]' | awk -F '=' '{print$2}'"%luci.http.formvalue("domain")) - luci.http.prepare_content("application/json") - luci.http.write_json(e) -end - -function check_ports() - local set = "" - local retstring = "

" - local s - local server_name = "" - local shadowsocksr = "shadowsocksr" - 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 check_port() - local sockets = require "socket" - local set = luci.http.formvalue("host") - local port = luci.http.formvalue("port") - local retstring = "" - local iret = 1 - iret = luci.sys.call(" ipset add ss_spec_wan_ac " .. set .. " 2>/dev/null") - socket = nixio.socket("inet", "stream") - socket:setopt("socket", "rcvtimeo", 3) - socket:setopt("socket", "sndtimeo", 3) - local t0 = sockets.gettime() - ret = socket:connect(set, port) - if tostring(ret) == "true" then - socket:close() - retstring = "1" - else - retstring = "0" - end - if iret == 0 then - luci.sys.call(" ipset del ss_spec_wan_ac " .. set) - end - local t1 = sockets.gettime() - local tt =t1 -t0 - luci.http.prepare_content("application/json") - luci.http.write_json({ret = retstring , used = math.floor(tt*1000 + 0.5)}) -end - -function act_read(lfile) - local NXFS = require "nixio.fs" - local HTTP = require "luci.http" - local lfile = HTTP.formvalue("lfile") - local ldata={} - ldata[#ldata+1] = NXFS.readfile(lfile) or "_nofile_" - if ldata[1] == "" then - ldata[1] = "_nodata_" - end - HTTP.prepare_content("application/json") - HTTP.write_json(ldata) -end - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/advanced.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/advanced.lua deleted file mode 100644 index f6b8c5f0e7..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/advanced.lua +++ /dev/null @@ -1,114 +0,0 @@ -local shadowsocksr = "shadowsocksr" -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.type), s.alias} - elseif s.server and s.server_port then - server_table[s[".name"]] = "[%s]:%s:%s" %{string.upper(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 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 - - - --- [[ SOCKS5 Proxy ]]-- -if nixio.fs.access("/usr/bin/ssr-local") then -s = m:section(TypedSection, "socks5_proxy", translate("SOCKS5 Proxy")) -s.anonymous = true - -o = s:option(ListValue, "server", translate("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(Value, "local_port", translate("Local Port")) -o.datatype = "port" -o.default = 1080 -o.rmempty = false - --- [[ HTTP Proxy ]]-- -if nixio.fs.access("/usr/sbin/privoxy") then -o = s:option(Flag, "http_enable", translate("Enable HTTP Proxy")) -o.rmempty = false - -o = s:option(Value, "http_port", translate("HTTP Port")) -o.datatype = "port" -o.default = 1081 -o.rmempty = false - -end -end --- [[ adblock ]]-- -s = m:section(TypedSection, "global", translate("adblock settings")) -s.anonymous = true - -o = s:option(Flag, "adblock", translate("Enable adblock")) -o.rmempty = false - -o = s:option(Value, "adblock_url", translate("adblock_url")) -o.default = "https://easylist-downloads.adblockplus.org/easylistchina+easylist.txt" - --- [[ haProxy ]]-- - -s = m:section(TypedSection, "global_haproxy", translate("haProxy settings")) -s.anonymous = true - -o = s:option(Flag, "admin_enable", translate("Enabling the Management Console")) -o.rmempty = false -o.default = 1 - -o = s:option(Value, "admin_port", translate("Service Port")) -o.datatype = "uinteger" -o.default = 1111 - -o = s:option(Value, "admin_user", translate("User name")) -o.default = "admin" - -o = s:option(Value, "admin_password", translate("Password")) -o.default = "root" - - - - -return m - - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/appointlist.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/appointlist.lua deleted file mode 100644 index 124e525307..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/appointlist.lua +++ /dev/null @@ -1,23 +0,0 @@ -local fs = require "nixio.fs" -local conffile = "/etc/dnsmasq.ssr/appoint_list.conf" - -f = SimpleForm("custom", translate("Appoint dns List")) - -t = f:field(TextValue, "conf") -t.rmempty = true -t.rows = 13 -function t.cfgvalue() - return fs.readfile(conffile) or "" -end - -function f.handle(self, state, data) - if state == FORM_VALID then - if data.conf then - fs.writefile(conffile, data.conf:gsub("\r\n", "\n")) - luci.sys.call("/etc/init.d/dnsmasq restart") - end - end - return true -end - -return f \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/automatic.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/automatic.lua deleted file mode 100644 index c8ab721e7d..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/automatic.lua +++ /dev/null @@ -1,49 +0,0 @@ -local shadowsocksr = "shadowsocksr" -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.type), s.alias} - elseif s.server and s.server_port then - server_table[s[".name"]] = "[%s]:%s:%s" %{string.upper(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) - - -s = m:section(TypedSection, "global", translate("Server failsafe auto swith settings")) -s.anonymous = true - -o = s:option(Flag, "monitor_enable", translate("Enable Process Deamon")) -o.rmempty = false - -o = s:option(Flag, "enable_switch", translate("Enable Auto Switch")) -o.rmempty = false - -o = s:option(Value, "switch_time", translate("Switch check cycly(second)")) -o.datatype = "uinteger" -o:depends("enable_switch", "1") -o.default = 3600 - -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 - - -return m - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/client-config.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/client-config.lua deleted file mode 100644 index 6cd22090b2..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/client-config.lua +++ /dev/null @@ -1,461 +0,0 @@ --- Copyright (C) 2017 yushi studio github.com/ywb94 --- Licensed to the public under the GNU General Public License v3. - -local m, s, o,kcp_enable -local shadowsocksr = "shadowsocksr" -local uci = luci.model.uci.cursor() -local ipkg = require("luci.model.ipkg") -local fs = require "nixio.fs" -local sys = require "luci.sys" -local sid = arg[1] -local uuid = luci.sys.exec("cat /proc/sys/kernel/random/uuid") - - -local function isKcptun(file) - if not fs.access(file, "rwx", "rx", "rx") then - fs.chmod(file, 755) - end - - local str = sys.exec(file .. " -v | awk '{printf $1}'") - return (str:lower() == "kcptun") -end - - -local server_table = {} -local encrypt_methods = { - "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 - "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", - "auth_chain_b", - "auth_chain_c", - "auth_chain_d", - "auth_chain_e", - "auth_chain_f", -} - -local obfs = { - "plain", - "http_simple", - "http_post", - "random_head", - "tls1.2_ticket_auth", -} - -local securitys = { - "auto", - "none", - "aes-128-gcm", - "chacha20-poly1305" -} - - -m = Map(shadowsocksr, translate("Edit ShadowSocksR Server")) -m.redirect = luci.dispatcher.build_url("admin/vpn/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 nixio.fs.access("/usr/sbin/trojan") then -o:value("trojan", translate("Trojan")) -end - -if nixio.fs.access("/usr/bin/v2ray/v2ray") then -o:value("v2ray", translate("V2Ray")) -end -o:value("ssr", translate("ShadowsocksR")) -if nixio.fs.access("/usr/bin/ss-redir") then -o:value("ss", translate("Shadowsocks")) -end -if nixio.fs.access("/usr/bin/ipt2socks") then -o:value("socks5", translate("Socks5")) -end -o.description = translate("Using incorrect encryption mothod may causes service fail to start") - -upload_conf = s:option(FileUpload, "") -upload_conf.template = "cbi/other_upload2" -upload_conf:depends("use_conf_file", 1) - -o = s:option(Value, "alias", translate("Alias(optional)")) - -o = s:option(Value, "server", translate("Server Address")) -o.datatype = "host" -o.rmempty = false - -o = s:option(Value, "server_port", translate("Server Port")) -o.datatype = "port" -o.rmempty = false - --- o = s:option(Value, "timeout", translate("Connection Timeout")) --- o.datatype = "uinteger" --- o.default = 60 --- o.rmempty = false - - -o = s:option(Value, "weight", translate("Weight")) -o.datatype = "uinteger" -o.default = 10 -o.rmempty = false - -o = s:option(Flag, "auth_enable", translate("Enable Authentication")) -o.rmempty = false -o.default = "0" -o:depends("type", "socks5") - -o = s:option(Value, "username", translate("Username")) -o.rmempty = true -o:depends("type", "socks5") -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", "socks5") - - -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, "plugin", translate("plugin")) -o:value("none", "None") -if nixio.fs.access("/usr/bin/v2ray-plugin") then -o:value("/usr/bin/v2ray-plugin", "v2ray-plugin") -end -if nixio.fs.access("/usr/bin/obfs-local") then -o:value("/usr/bin/obfs-local", "obfs-local") -end -if nixio.fs.access("/usr/bin/goquiet-client") then -o:value("/usr/bin/goquiet-client", "GoQuiet") -end -o.rmempty = false -o.default = "none" -o:depends("type", "ss") - -o = s:option(Value, "plugin_opts", translate("Plugin Opts")) -o.rmempty = true -o:depends("plugin", "/usr/bin/v2ray-plugin") -o:depends("plugin", "/usr/bin/obfs-local") -o:depends("plugin", "/usr/bin/goquiet-client") - - -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") - --- AlterId -o = s:option(Value, "alter_id", translate("AlterId")) -o.default = 100 -o.rmempty = true -o:depends("type", "v2ray") - --- VmessId -o = s:option(Value, "vmess_id", translate("VmessId (UUID)")) -o.rmempty = true -o.default = uuid -o:depends("type", "v2ray") - --- 加密方式 -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") - --- 传输协议 -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.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(DynamicList, "http_host", translate("HTTP Host")) -o:depends("tcp_guise", "http") -o.rmempty = true - --- HTTP路径 -o = s:option(DynamicList, "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") -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(DynamicList, "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 - - --- [[ QUIC部分 ]]-- - -o = s:option(ListValue, "quic_security", translate("QUIC Security")) -o:depends("transport", "quic") -o.rmempty = true -o:value("none", translate("None")) -o:value("aes-128-gcm", translate("aes-128-gcm")) -o:value("chacha20-poly1305", translate("chacha20-poly1305")) - -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", "DTLS 1.2") -o:value("wireguard", "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", "DTLS 1.2") -o:value("wireguard", "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 = 50 -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(Flag, "congestion", translate("Congestion")) -o:depends("transport", "kcp") -o.rmempty = true - --- [[ allowInsecure ]]-- -o = s:option(Flag, "insecure", translate("allowInsecure")) -o.rmempty = true -o:depends("type", "v2ray") -o:depends("type", "trojan") - --- [[ TLS ]]-- -o = s:option(Flag, "tls", translate("TLS")) -o.rmempty = true -o.default = "0" -o:depends("type", "v2ray") -o:depends("type", "trojan") - --- [[ Mux ]]-- -o = s:option(Flag, "mux", translate("Mux")) -o.rmempty = true -o.default = "0" -o:depends("type", "v2ray") - -o = s:option(Value, "concurrency", translate("Concurrency")) -o.datatype = "uinteger" -o.rmempty = true -o.default = "8" -o:depends("mux", "1") - -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 nixio.fs.access("/usr/bin/kcptun-client") then - -kcp_enable = s:option(Flag, "kcp_enable", translate("KcpTun Enable"), translate("bin:/usr/bin/kcptun-client")) -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 -function o.validate(self, value, section) - local kcp_file="/usr/bin/kcptun-client" - local enable = kcp_enable:formvalue(section) or kcp_enable.disabled - if enable == kcp_enable.enabled then - if not fs.access(kcp_file) then - return nil, translate("Haven't a Kcptun executable file") - elseif not isKcptun(kcp_file) then - return nil, translate("Not a Kcptun executable file") - end - end - - return value -end -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/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/client.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/client.lua deleted file mode 100644 index aba10474c2..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/client.lua +++ /dev/null @@ -1,237 +0,0 @@ --- 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 shadowsocksr = "shadowsocksr" -local gfw_count=0 -local ad_count=0 -local ip_count=0 -local gfwmode=0 - -if nixio.fs.access("/etc/dnsmasq.ssr/gfw_list.conf") then -gfwmode=1 -end - -local uci = luci.model.uci.cursor() - -local sys = require "luci.sys" - -if gfwmode==1 then - gfw_count = tonumber(sys.exec("cat /etc/dnsmasq.ssr/gfw_list.conf | wc -l"))/2 - if nixio.fs.access("/etc/dnsmasq.ssr/ad.conf") then - ad_count=tonumber(sys.exec("cat /etc/dnsmasq.ssr/ad.conf | wc -l")) - end -end - -if nixio.fs.access("/etc/china_ssr.txt") then - ip_count = sys.exec("cat /etc/china_ssr.txt | wc -l") -end - -m = Map(shadowsocksr) - -m:section(SimpleSection).template = "shadowsocksr/status" - -local server_table = {} -local v2ray_table = {} -uci:foreach(shadowsocksr, "servers", function(s) - if s.alias then - server_table[s[".name"]] = "[%s]:%s" %{string.upper(s.type), s.alias} - elseif s.server and s.server_port then - server_table[s[".name"]] = "[%s]:%s:%s" %{string.upper(s.type), s.server, s.server_port} - end -if s.type == "v2ray" then - if s.alias then - v2ray_table[s[".name"]] = "[%s]:%s" %{string.upper(s.type), s.alias} - elseif s.server and s.server_port then - v2ray_table[s[".name"]] = "[%s]:%s:%s" %{string.upper(s.type), s.server, s.server_port} - end - end -end) - -local key_table = {} -for key,_ in pairs(server_table) do - table.insert(key_table,key) -end - -table.sort(key_table) - -local key_table_v2 = {} -for key,_ in pairs(v2ray_table) do - table.insert(key_table_v2,key) -end - -table.sort(key_table_v2) - --- [[ Global Setting ]]-- -s = m:section(TypedSection, "global", translate("ShadowSocksR Plus+ Settings")) -s.anonymous = true - -o = s:option(ListValue, "global_server", translate("Main Server")) -o:value("nil", translate("Disable")) -if nixio.fs.access("/usr/sbin/haproxy")then - o:value("__haproxy__", translate("Load Balancing")) -end -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 - -o = s:option(Flag, "v2ray_flow", translate("Open v2ray split-flow")) -o.rmempty = false -o.description = translate("When open v2ray split-flow,your main server must be a v2ray server") - -o = s:option(ListValue, "youtube_server", translate("Youtube Proxy")) -o:value("nil", translate("Same as Global Server")) -for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end -o:depends("v2ray_flow", "1") -o.default = "nil" - - - -o = s:option(ListValue, "tw_video_server", translate("TaiWan Video Proxy")) -o:value("nil", translate("Same as Global Server")) -for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end -o:depends("v2ray_flow", "1") -o.default = "nil" - - -o = s:option(ListValue, "netflix_server", translate("Netflix Proxy")) -o:value("nil", translate("Same as Global Server")) -for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end -o:depends("v2ray_flow", "1") -o.default = "nil" - - -o = s:option(ListValue, "disney_server", translate("Diseny+ Proxy")) -o:value("nil", translate("Same as Global Server")) -for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end -o:depends("v2ray_flow", "1") -o.default = "nil" - - -o = s:option(ListValue, "prime_server", translate("Prime Video Proxy")) -o:value("nil", translate("Same as Global Server")) -for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end -o:depends("v2ray_flow", "1") -o.default = "nil" - - -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:value("256", translate("256 Threads")) -o:value("512", translate("512 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("routers", translate("Oversea IP Route Mode")) -o:value("all", translate("Global Mode")) -o.default = gfw - -o = s:option(ListValue, "pdnsd_enable", translate("Resolve Dns Mode")) -o:value("0", translate("Use Local DNS Service listen port 5335")) -o:value("1", translate("Use Pdnsd tcp query and cache")) -o:value("2", translate("Use Pdnsd udp query and cache")) -if nixio.fs.access("/usr/bin/dnsforwarder") then -o:value("3", translate("Use dnsforwarder tcp query and cache")) -o:value("4", translate("Use dnsforwarder udp query and cache")) -end -if nixio.fs.access("/usr/bin/dnscrypt-proxy") then -o:value("5", translate("Use dnscrypt-proxy query and cache")) -end -if nixio.fs.access("/usr/bin/chinadns") then -o:value("6", translate("Use chinadns query and cache")) -end - -o.default = 1 - -o = s:option(ListValue, "chinadns_enable", translate("Chiadns Resolve Dns Mode")) -o:value("0", translate("Use Local DNS Service")) -o:value("1", translate("Use Pdnsd tcp query and cache")) -o:value("2", translate("Use Pdnsd udp query and cache")) -if nixio.fs.access("/usr/bin/dnsforwarder") then -o:value("3", translate("Use dnsforwarder tcp query and cache")) -o:value("4", translate("Use dnsforwarder udp query and cache")) -end -if nixio.fs.access("/usr/bin/dnscrypt-proxy") then -o:value("5", translate("Use dnscrypt-proxy query and cache")) -end - -if nixio.fs.access("/usr/sbin/smartdns") then -o:value("6", translate("Use smartdns query and cache")) -end - -if nixio.fs.access("/usr/sbin/https_dns_proxy") then -o:value("7", translate("Use https_dns_proxy query and cache")) -end -o.default = 1 -o:depends("pdnsd_enable", "6") - -o = s:option(Value, "tunnel_forward", translate("Anti-pollution DNS Server")) -o:value("0.0.0.0:53", translate("Using System Default DNS")) -o:value("0.0.0.0:5333", translate("Using acceleration center DNS")) -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:depends("pdnsd_enable", "3") -o:depends("pdnsd_enable", "4") -o:depends("pdnsd_enable", "6") -o.default = "8.8.4.4:53" - -o = s:option(Flag, "bt", translate("Kill BT")) -o.default = 0 -o.rmempty = false -o.description = translate("Prohibit downloading tool ports through proxy") - -o = s:option(Value, "bt_port", translate("BT Port")) -o.default = "1236:65535" -o.rmempty = true -o:depends("bt", "1") - -o = s:option(Button,"gfw_data",translate("GFW List Data")) -o.rawhtml = true -o.template = "shadowsocksr/refresh" -o.value =tostring(math.ceil(gfw_count)) .. " " .. translate("Records") - -o = s:option(Button,"ad_data",translate("Advertising Data")) -o .rawhtml = true -o .template = "shadowsocksr/refresh" -o .value =tostring(math.ceil(ad_count)) .. " " .. translate("Records") - -o = s:option(Button,"ip_data",translate("China IP Data")) -o.rawhtml = true -o.template = "shadowsocksr/refresh" -o.value =ip_count .. " " .. translate("Records") - -o = s:option(Button,"check_port",translate("Check Server Port")) -o.template = "shadowsocksr/checkport" -o.value =translate("No Check") - -return m diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/control.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/control.lua deleted file mode 100644 index 91cf55d756..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/control.lua +++ /dev/null @@ -1,104 +0,0 @@ -local m, s, o -local NXFS = require "nixio.fs" - -m = Map("shadowsocksr", translate("IP black-and-white list")) - -s = m:section(TypedSection, "access_control") -s.anonymous = true - --- 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/config/white.list" -o = s:taboption("esc", TextValue, "escconf") -o.rows = 13 -o.wrap = "off" -o.rmempty = true -o.cfgvalue = function(self, section) - return NXFS.readfile(escconf) or "" -end -o.write = function(self, section, value) - NXFS.writefile(escconf, value:gsub("\r\n", "\n")) -end -o.remove = function(self, section, value) - NXFS.writefile(escconf, "") -end - - -s:tab("block", translate("Black Domain List")) - -local blockconf = "/etc/config/black.list" -o = s:taboption("block", TextValue, "blockconf") -o.rows = 13 -o.wrap = "off" -o.rmempty = true -o.cfgvalue = function(self, section) - return NXFS.readfile(blockconf) or " " -end -o.write = function(self, section, value) - NXFS.writefile(blockconf, value:gsub("\r\n", "\n")) -end -o.remove = function(self, section, value) - NXFS.writefile(blockconf, "") -end - -return m diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/list.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/list.lua deleted file mode 100644 index e920889247..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/list.lua +++ /dev/null @@ -1,24 +0,0 @@ -local fs = require "nixio.fs" -local conffile = "/etc/config/gfw.list" - -f = SimpleForm("custom", translate("GFW Custom List"), translate("Please refer to the following writing")) - -t = f:field(TextValue, "conf") -t.rmempty = true -t.rows = 13 -function t.cfgvalue() - return fs.readfile(conffile) or "" -end - -function f.handle(self, state, data) - if state == FORM_VALID then - if data.conf then - fs.writefile(conffile, data.conf:gsub("\r\n", "\n")) - luci.sys.call("/usr/share/shadowsocksr/gfw2ipset.sh && /etc/init.d/dnsmasq restart") - end - end - return true -end - - -return f diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/log.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/log.lua deleted file mode 100644 index 05b4162fc4..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/log.lua +++ /dev/null @@ -1,15 +0,0 @@ -local fs = require "nixio.fs" -local conffile = "/tmp/ssrpro.log" - -f = SimpleForm("logview") - -t = f:field(TextValue, "conf") -t.rmempty = true -t.rows = 20 -function t.cfgvalue() - luci.sys.exec("[ -f /tmp/ssrplus.log ] && sed '1!G;h;$!d' /tmp/ssrplus.log > /tmp/ssrpro.log") - return fs.readfile(conffile) or "" -end -t.readonly="readonly" - -return f \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/logview.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/logview.lua deleted file mode 100644 index 91b2776327..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/logview.lua +++ /dev/null @@ -1,48 +0,0 @@ --- Copyright 2008 Steven Barth --- Licensed to the public under the Apache License 2.0. - -local NXFS = require "nixio.fs" -local DISP = require "luci.dispatcher" -local HTTP = require "luci.http" -local UCI = luci.model.uci.cursor() - -m = Map("shadowsocksr") - --- log directory -log_dir = UCI:get_first(m.config, "global", "log_dir") or "/tmp" -run_dir = UCI:get_first(m.config, "global", "run_dir") or "/var/etc" -local logfile_list = {} - -for path in (NXFS.glob("%s/ssr*" % log_dir) or function() end) do - logfile_list[#logfile_list+1] = path -end -for path in (NXFS.glob("%s/*.*" % run_dir) or function() end) do - logfile_list[#logfile_list+1] = path -end - -ns = m:section(TypedSection, "_dummy", translate("File Viewer")) -ns.addremove = false -ns.anonymous = true -function ns.cfgsections() - return{"_exrules"} -end - -lv = ns:option(DynamicList, "logfiles") -lv.template = "shadowsocksr/logsview" -lv.inputtitle = translate("Read / Reread log file") -lv.rows = 25 -lv.default = "" -for _, lfile in ipairs(logfile_list) do lv:value(lfile, lfile) end -function lv.cfgvalue(self, section) - if logfile_list[1] then - local lfile=logfile_list[1] - if NXFS.access(lfile) then - return lfile .. "\n" .. translate("Please press [Read] button") - end - return lfile .. "\n" .. translate("File not found or empty") - else - return log_dir .. "\/\n" .. translate("No files found") - end -end - -return m diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/oversealist.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/oversealist.lua deleted file mode 100644 index 112587e889..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/oversealist.lua +++ /dev/null @@ -1,23 +0,0 @@ -local fs = require "nixio.fs" -local conffile = "/etc/dnsmasq.oversea/base_list.conf" - -f = SimpleForm("custom", translate("Oversea Custom List")) - -t = f:field(TextValue, "conf") -t.rmempty = true -t.rows = 13 -function t.cfgvalue() - return fs.readfile(conffile) or "" -end - -function f.handle(self, state, data) - if state == FORM_VALID then - if data.conf then - fs.writefile(conffile, data.conf:gsub("\r\n", "\n")) - luci.sys.call("/etc/init.d/dnsmasq restart") - end - end - return true -end - -return f \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/server-config.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/server-config.lua deleted file mode 100644 index 1353bf285f..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/server-config.lua +++ /dev/null @@ -1,380 +0,0 @@ --- Copyright (C) 2017 yushi studio --- Licensed to the public under the GNU General Public License v3. - -local m, s, o -local shadowsocksr = "shadowsocksr" -local uci = luci.model.uci.cursor() -local fs = require "nixio.fs" -local sys = require "luci.sys" -local sid = arg[1] -local uuid = luci.sys.exec("cat /proc/sys/kernel/random/uuid") -local http = luci.http -local ucursor = require "luci.model.uci".cursor() - -local server_table = {} -local encrypt_methods = { - "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 - "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", - "auth_chain_b", - "auth_chain_c", - "auth_chain_d", - "auth_chain_e", - "auth_chain_f", -} - -obfs = { - "plain", - "http_simple", - "http_post", - "random_head", - "tls1.2_ticket_auth", -} - -local obfs_opts = { - "none", - "http", - "tls", -} - -local securitys = { - "auto", - "none", - "aes-128-gcm", - "chacha20-poly1305" -} - - - -m = Map(shadowsocksr, translate("Edit ShadowSocksR Server")) - -m.redirect = luci.dispatcher.build_url("admin/vpn/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 Node Type")) -if nixio.fs.access("/usr/bin/ssr-server") then -o:value("ssr", translate("ShadowsocksR")) -end -if nixio.fs.access("/usr/bin/ss-server") then -o:value("ss", translate("Shadowsocks New Version")) -end -if nixio.fs.access("/usr/bin/v2ray/v2ray") then -o:value("v2ray", translate("V2Ray")) -end -o.description = translate("Using incorrect encryption mothod may causes service fail to start") - - - -o = s:option(Flag, "ipv4_ipv6", translate("Enabling IPv6 server")) -o.default = 0 -o.rmempty = false - -o = s:option(Value, "server_port", translate("Server Port")) -o.datatype = "port" -o.default = 8388 -o.rmempty = false - -o = s:option(Value, "timeout", translate("Connection Timeout")) -o.datatype = "uinteger" -o.default = 60 -o.rmempty = false - -o = s:option(Value, "password", translate("Password")) -o.password = true -o.rmempty = true -o:depends("type", "ssr") -o:depends("type", "ss") - -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:depends("type", "ss") - - - -o = s:option(ListValue, "plugin", translate("plugin")) -o:value("none", "None") -if nixio.fs.access("/usr/bin/v2ray-plugin") then -o:value("/usr/bin/v2ray-plugin", "v2ray-plugin") -end -if nixio.fs.access("/usr/bin/obfs-server") then -o:value("/usr/bin/obfs-server", "obfs-server") -end -if nixio.fs.access("/usr/bin/gq-server") then -o:value("/usr/bin/gq-server", "GoQuiet") -end -o.rmempty = false -o.default = "none" -o:depends("type", "ss") - -o = s:option(Value, "plugin_opts", translate("Plugin Opts")) -o.rmempty = true -o:depends("plugin", "/usr/bin/v2ray-plugin") -o:depends("plugin", "/usr/bin/obfs-server") -o:depends("plugin", "/usr/bin/gq-server") - -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(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") - - --- AlterId -o = s:option(Value, "alter_id", translate("AlterId")) -o.default = 100 -o.rmempty = true -o:depends("type", "v2ray") - -o=s:option(Value,"VMess_level",translate("User Level")) -o.default=1 -o:depends("type", "v2ray") - --- VmessId -o = s:option(Value, "vmess_id", translate("VmessId (UUID)")) -o.rmempty = true -o.default = uuid -o:depends("type", "v2ray") - --- 加密方式 -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") - --- 传输协议 -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.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(DynamicList, "http_host", translate("HTTP Host")) -o:depends("tcp_guise", "http") -o.rmempty = true - --- HTTP路径 -o = s:option(DynamicList, "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") -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(DynamicList, "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 - --- [[ QUIC部分 ]]-- - -o = s:option(ListValue, "quic_security", translate("QUIC Security")) -o:depends("transport", "quic") -o.rmempty = true -o:value("none", translate("None")) -o:value("aes-128-gcm", translate("aes-128-gcm")) -o:value("chacha20-poly1305", translate("chacha20-poly1305")) - -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", "DTLS 1.2") -o:value("wireguard", "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", "DTLS 1.2") -o:value("wireguard", "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 = 50 -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(Flag, "congestion", translate("Congestion")) -o:depends("transport", "kcp") -o.rmempty = true - --- [[ allowInsecure ]]-- -o = s:option(Flag, "insecure", translate("allowInsecure")) -o.rmempty = true -o:depends("type", "v2ray") - --- [[ TLS ]]-- -o = s:option(Flag, "tls", translate("TLS")) -o.rmempty = true -o.default = "0" -o:depends("type", "v2ray") - --- [[ Mux ]]-- -o = s:option(Flag, "mux", translate("Mux")) -o.rmempty = true -o.default = "0" -o:depends("type", "v2ray") - -o = s:option(Value, "concurrency", translate("Concurrency")) -o.datatype = "uinteger" -o.rmempty = true -o.default = "8" -o:depends("mux", "1") - -o = s:option(Flag, "fast_open", translate("TCP Fast Open")) -o.rmempty = true -o:depends("type", "ssr") - -return m - - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/server.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/server.lua deleted file mode 100644 index ffa879d368..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/server.lua +++ /dev/null @@ -1,116 +0,0 @@ --- Copyright (C) 2017 yushi studio --- Licensed to the public under the GNU General Public License v3. - -local m, sec, o -local shadowsocksr = "shadowsocksr" -local uci = luci.model.uci.cursor() -local ipkg = require("luci.model.ipkg") - -m = Map(shadowsocksr, translate("SS/SSR/V2RAY Server")) - -local type = { - "ssr", - "ss", - "v2ray", -} - -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", - "aes-128-gcm", - "aes-192-gcm", - "aes-256-gcm", - "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", - "chacha20-ietf-poly1305", - "xchacha20-ietf-poly1305", -} - -local protocol = { - "origin", - "verify_deflate", - "auth_sha1_v4", - "auth_aes128_sha1", - "auth_aes128_md5", - "auth_chain_a", -} - -local obfs = { - "plain", - "http_simple", - "http_post", - "random_head", - "tls1.2_ticket_auth", - "tls1.2_ticket_fastauth", -} - - -m:section(SimpleSection).template = "shadowsocksr/status2" --- [[ 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.sortable = true -sec.template = "cbi/tblsection" -sec.extedit = luci.dispatcher.build_url("admin/vpn/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 Node Type")) -function o.cfgvalue(...) - return Value.cfgvalue(...) or "?" -end - -o = sec:option(DummyValue, "server_port", translate("Server Port")) -function o.cfgvalue(...) - return Value.cfgvalue(...) or "?" -end - -o = sec:option(DummyValue, "encrypt_method", translate("Encrypt Method")) -o.width="10%" - -o = sec:option(DummyValue, "protocol", translate("Protocol")) -o.width="10%" - -o = sec:option(DummyValue, "obfs", translate("Obfs")) -o.width="10%" - -m:append(Template("shadowsocksr/server_list")) -return m - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/servers-list.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/servers-list.lua deleted file mode 100644 index 2785b34ba0..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/servers-list.lua +++ /dev/null @@ -1,80 +0,0 @@ --- Licensed to the public under the GNU General Public License v3. - -local m, s, o -local shadowsocksr = "shadowsocksr" - -local uci = luci.model.uci.cursor() -local server_count = 0 -uci:foreach("shadowsocksr", "servers", function(s) - server_count = server_count + 1 -end) - -local fs = require "nixio.fs" -local sys = require "luci.sys" - -m = Map(shadowsocksr) -m:section(SimpleSection).template = "shadowsocksr/status" - - --- [[ Servers Manage ]]-- -s = m:section(TypedSection, "servers") -s.anonymous = true -s.addremove = true -s.description = string.format(translate("Server Count") .. ": %d", server_count) -s.sortable = true -s.template = "cbi/tblsection" -s.extedit = luci.dispatcher.build_url("admin/vpn/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(...) - return Value.cfgvalue(...) or translate("") -end - -o = s:option(DummyValue, "alias", translate("Alias")) -function o.cfgvalue(...) - return Value.cfgvalue(...) or translate("None") -end - -o = s:option(DummyValue, "server", translate("Server Address")) -function o.cfgvalue(...) - return Value.cfgvalue(...) or "?" -end - -o = s:option(DummyValue, "server_port", translate("Server Port")) -function o.cfgvalue(...) - return Value.cfgvalue(...) or "?" -end - -o = s:option(DummyValue, "encrypt_method", translate("Encrypt Method")) -o.width="10%" - -o = s:option(DummyValue, "protocol", translate("Protocol")) -o.width="10%" - -o = s:option(DummyValue, "obfs", translate("Obfs")) -o.width="10%" -o = s:option(Flag, "switch_enable", translate("Enable Auto Switch")) -function o.cfgvalue(...) - return Value.cfgvalue(...) or "?" -end -if nixio.fs.access("/usr/bin/kcptun-client") then - -o = s:option(Flag, "kcp_enable", translate("KcpTun")) -function o.cfgvalue(...) - return Value.cfgvalue(...) or "?" -end -end -o = s:option(DummyValue,"server",translate("Ping Latency")) -o.template="shadowsocksr/ping" -o.width="10%" - -m:append(Template("shadowsocksr/server_list")) - -return m diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/servers.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/servers.lua deleted file mode 100644 index abecf94ddf..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/servers.lua +++ /dev/null @@ -1,62 +0,0 @@ --- Licensed to the public under the GNU General Public License v3. - -local m, s, o -local shadowsocksr = "shadowsocksr" - - -local uci = luci.model.uci.cursor() -local server_count = 0 -local server_table = {} -uci:foreach("shadowsocksr", "servers", function(s) - server_count = server_count + 1 - s["name"] = s[".name"] - table.insert(server_table, s) -end) - -local name = "" -uci:foreach("shadowsocksr", "global", function(s) name = s[".name"] end) - -m = Map(shadowsocksr) - -m:section(SimpleSection).template = "shadowsocksr/status" - --- [[ Servers List ]]-- -s = m:section(TypedSection, "servers") -s.anonymous = true -s.addremove = true -s.sortable = false - -s.des = server_count -s.current = uci:get("shadowsocksr", name, "global_server") -s.template = "cbi/add" -s.extedit = luci.dispatcher.build_url("admin/vpn/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(...) return Value.cfgvalue(...) or translate("") end - -o = s:option(DummyValue, "alias", translate("Alias")) -function o.cfgvalue(...) return Value.cfgvalue(...) or translate("None") end - -o = s:option(DummyValue, "server", translate("Server Address")) -function o.cfgvalue(...) return Value.cfgvalue(...) or "?" end - -o = s:option(DummyValue, "server_port", translate("Server Port")) -function o.cfgvalue(...) return Value.cfgvalue(...) or "?" end - -if nixio.fs.access("/usr/bin/kcptun-client") then - - o = s:option(DummyValue, "kcp_enable", translate("KcpTun")) - function o.cfgvalue(...) return Value.cfgvalue(...) or "?" end - -end - - -return m - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/status.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/status.lua deleted file mode 100644 index 5c6ea05851..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/status.lua +++ /dev/null @@ -1,452 +0,0 @@ --- Copyright (C) 2017 yushi studio --- Licensed to the public under the GNU General Public License v3. - -local IPK_Version="20200304.151" -local m, s, o -local redir_run=0 -local reudp_run=0 -local sock5_run=0 -local ssock5_run=0 -local v2sock5_run=0 -local server_run=0 -local sserver_run=0 -local v2server_run=0 -local kcptun_run=0 -local tunnel_run=0 -local udp2raw_run=0 -local udpspeeder_run=0 -local gfw_count=0 -local ad_count=0 -local ip_count=0 -local gfwmode=0 -local pdnsd_run=0 -local dnsforwarder_run=0 -local dnscrypt_proxy_run=0 -local chinadns_run=0 -local haproxy_run=0 -local privoxy_run=0 - -if nixio.fs.access("/etc/dnsmasq.ssr/gfw_list.conf") then -gfwmode=1 -end - -local shadowsocksr = "shadowsocksr" - - --- html constants -font_blue = [[]] -font_off = [[]] -bold_on = [[]] -bold_off = [[]] - -local fs = require "nixio.fs" -local sys = require "luci.sys" -local kcptun_version=translate("Unknown") -local kcp_file="/usr/bin/kcptun-client" -if not fs.access(kcp_file) then - kcptun_version=translate("Not exist") -else - if not fs.access(kcp_file, "rwx", "rx", "rx") then - fs.chmod(kcp_file, 755) - end - kcptun_version=sys.exec(kcp_file .. " -v | awk '{printf $3}'") - if not kcptun_version or kcptun_version == "" then - kcptun_version = translate("Unknown") - end - -end - - -local udp2raw_version=translate("Unknown") -local udp2raw_file="/usr/bin/udp2raw" -if not fs.access(udp2raw_file) then - udp2raw_version=translate("Not exist") -else - if not fs.access(udp2raw_file, "rwx", "rx", "rx") then - fs.chmod(udp2raw_file, 755) - end - udp2raw_version=sys.exec(udp2raw_file .. " -h |grep 'git version' |awk -F ':' '{print $2}'|awk '{print $1}'") - if not udp2raw_version or udp2raw_version == "" then - udp2raw_version = translate("Unknown") - end -end - -local udpspeeder_version=translate("Unknown") -local udpspeeder_file="/usr/bin/udpspeeder" -if not fs.access(udpspeeder_file) then - udpspeeder_version=translate("Not exist") -else - if not fs.access(udpspeeder_file, "rwx", "rx", "rx") then - fs.chmod(udpspeeder_file, 755) - end - udpspeeder_version=sys.exec(udpspeeder_file .. " -h |grep 'git version' |awk -F ':' '{print $2}'|awk '{print $1}'") - if not udpspeeder_version or udpspeeder_version == "" then - udpspeeder_version = translate("Unknown") - end -end - -if gfwmode==1 then - gfw_count = tonumber(sys.exec("cat /etc/dnsmasq.ssr/gfw_list.conf | wc -l"))/2 - if nixio.fs.access("/etc/dnsmasq.ssr/ad.conf") then - ad_count=tonumber(sys.exec("cat /etc/dnsmasq.ssr/ad.conf | wc -l")) - end -end - -if nixio.fs.access("/etc/china_ssr.txt") then - ip_count = sys.exec("cat /etc/china_ssr.txt | wc -l") -end - -function processlist() - local data = {} - local netf = {} - local k - local ps = luci.util.execi("/bin/busybox top -bn1 | egrep -v dnsmasq") - local nets = luci.util.execi("netstat -netupl | egrep -v dnsmasq | awk '{print $1,$4,_,$6,$7}'") - - if not ps or not nets then - return - end - - for line in nets do --- tcp 0 0 127.0.0.1:1234 0.0.0.0:* LISTEN 5103/v2ray --- udp 0 0 127.0.0.1:1234 0.0.0.0:* 5147/v2ray --- local proto, ip, port, nid = line:match("([^%s]+) +.* +([^ ]*):(%d+) +.* +(%d+)\/.*") - local proto, ip, port, nid = line:match("([^%s]+) (.*):(%d+)[^%d]+(%d+)\/.*") - local idx = tonumber(nid) - if idx and ip then - local newstr = "://" .. ip .. ":" .. port - local isnew = (netf[idx] and netf[idx]['listen']) and netf[idx]['listen']:match(proto .. newstr) or false - netf[idx] = { - ['listen'] = ((netf[idx] and netf[idx]['listen']) and (not isnew) and (netf[idx]['listen'] .. "\n" .. proto) or proto) .. newstr, - } - end - end --- 5103 1 root S 661m 543% 0% /usr/bin/v2ray/v2ray -config /var/etc/shadowsocksr.json - for line in ps do - local pid, ppid, user, stat, vsz, mem, cpu, cmd = line:match( - "^ *(%d+) +(%d+) +(%S.-%S) +([RSDZTW][W ][ " .. status[idx]['COMMAND'] .. " -c " .. status[idx]['CONFIG'] .. font_off - sname = translate(status[idx]['COMMAND']) - break - end - end - end - local section = form:field(DummyValue,name,translate(name) .. ": " .. sname) - section.rawhtml = true - section.value = stat - return section -end - -procs=processlist() - - - -local icount=sys.exec("ps -w | grep ssr-reudp |grep -v grep| wc -l") -if tonumber(icount)>0 then -reudp_run=1 -else -icount=sys.exec("ps -w | grep ssr-retcp |grep \"\\-u\"|grep -v grep| wc -l") -if tonumber(icount)>0 then -reudp_run=1 -end -end - - -if luci.sys.call("ps -w | grep ssr-retcp | grep -v grep >/dev/null") == 0 then -redir_run=1 -end - -if luci.sys.call("pidof ssr-local >/dev/null") == 0 then -sock5_run=1 -end - -if luci.sys.call("pidof ss-local >/dev/null") == 0 then -ssock5_run=1 -end - -if luci.sys.call("ps -w | grep v2-ssr-local | grep -v grep >/dev/null") == 0 then -v2sock5_run=1 -end - -if luci.sys.call("pidof privoxy >/dev/null") == 0 then -privoxy_run=1 -end - -if luci.sys.call("pidof kcptun-client >/dev/null") == 0 then -kcptun_run=1 -end - -if luci.sys.call("pidof ssr-server >/dev/null") == 0 then -server_run=1 -end - -if luci.sys.call("busybox ps -w | grep ssr-tunnel |grep -v grep >/dev/null") == 0 then -tunnel_run=1 -end - -if luci.sys.call("pidof ss-server >/dev/null") == 0 then -sserver_run=1 -end - -if luci.sys.call("ps -w | grep v2ray-server | grep -v grep >/dev/null") == 0 then -v2server_run=1 -end - -if luci.sys.call("ps -w | grep ssr-tunnel |grep -v grep >/dev/null") == 0 then -tunnel_run=1 -end - -if luci.sys.call("pidof udp2raw >/dev/null") == 0 then -udp2raw_run=1 -end - -if luci.sys.call("pidof udpspeeder >/dev/null") == 0 then -udpspeeder_run=1 -end - -if luci.sys.call("pidof chinadns >/dev/null") == 0 then -chinadns_run=1 -end - -if luci.sys.call("pidof pdnsd >/dev/null") == 0 then -pdnsd_run=1 -end - -if luci.sys.call("pidof dnsparsing >/dev/null") == 0 then -dnsforwarder_run=1 -end - -if luci.sys.call("pidof dnscrypt-proxy >/dev/null") == 0 then -dnscrypt_proxy_run=1 -end - - -if luci.sys.call("pidof haproxy >/dev/null") == 0 then -haproxy_run=1 -end - -m = SimpleForm("Version") -m.reset = false -m.submit = false - -t = m:section(Table, procs, translate("Running Details: ") .. "(/var/etc)") -t:option(DummyValue, "PID", translate("PID")) -t:option(DummyValue, "COMMAND", translate("CMD")) -t:option(DummyValue, "LISTEN", translate("LISTEN")) -t:option(DummyValue, "%CPU", translate("CPU")) -t:option(DummyValue, "%MEM", translate("MEM")) - -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 = translate("Not Running") -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 = translate("Not Running") -end - -s=m:field(DummyValue,"haproxy_run",translate("Load Balancing")) -s.rawhtml = true -if haproxy_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - -if nixio.fs.access("/usr/bin/chinadns") then -s=m:field(DummyValue,"chinadns_run",translate("ChinaDNS")) -s.rawhtml = true -if chinadns_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -s=m:field(DummyValue,"pdnsd_run",translate("PDNSD")) -s.rawhtml = true -if pdnsd_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - -s=m:field(DummyValue,"dnsforwarder_run",translate("dnsforwarder")) -s.rawhtml = true -if dnsforwarder_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - -s=m:field(DummyValue,"dnscrypt_proxy_run",translate("dnscrypt_proxy")) -s.rawhtml = true -if dnscrypt_proxy_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - -if nixio.fs.access("/usr/bin/ss-local") then -s=m:field(DummyValue,"ssock5_run",translate("SSOCKS5 Proxy")) -s.rawhtml = true -if ssock5_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/bin/ssr-local") then -s=m:field(DummyValue,"sock5_run",translate("SSR SOCKS5 Proxy")) -s.rawhtml = true -if sock5_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/bin/v2ray/v2ray") then -s=m:field(DummyValue,"ssock5_run",translate("V2SOCKS5 Proxy")) -s.rawhtml = true -if v2sock5_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/sbin/privoxy") then -s=m:field(DummyValue,"privoxy_run",translate("HTTP Proxy")) -s.rawhtml = true -if privoxy_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/bin/ssr-server") then -s=m:field(DummyValue,"server_run",translate("Global SSR Server")) -s.rawhtml = true -if server_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/bin/ss-server") then -s=m:field(DummyValue,"sserver_run",translate("Global SS Server")) -s.rawhtml = true -if sserver_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/bin/v2ray") then -s=m:field(DummyValue,"v2server_run",translate("Global V2RAY Server")) -s.rawhtml = true -if v2server_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -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 = translate("Not Running") -end -end - -s=m:field(DummyValue,"version",translate("IPK Version")) -s.rawhtml = true -s.value =IPK_Version - -s=m:field(DummyValue,"udp2raw_version",translate("udp2raw Version")) -s.rawhtml = true -s.value =udp2raw_version -s=m:field(DummyValue,"udp2raw_run",translate("udp2raw")) -s.rawhtml = true -if udp2raw_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - - -s=m:field(DummyValue,"udpspeeder_version",translate("UDPspeeder Version")) -s.rawhtml = true -s.value =udpspeeder_version -s=m:field(DummyValue,"udpspeeder_run",translate("UDPspeeder")) -s.rawhtml = true -if udpspeeder_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -s=m:field(DummyValue,"feedback",translate("Feedback")) -s.template = "shadowsocksr/feedback" -s.value =translate("No feedback") - - -return m diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/subscription.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/subscription.lua deleted file mode 100644 index e790723629..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/subscription.lua +++ /dev/null @@ -1,83 +0,0 @@ --- Licensed to the public under the GNU General Public License v3. - -local m, s, o -local shadowsocksr= "shadowsocksr" -local uci = luci.model.uci.cursor() -local server_table = {} -local gfwmode=0 -local gfw_count=0 -local ip_count=0 - -if nixio.fs.access("/etc/dnsmasq.ssr/gfw_list.conf") then -gfwmode=1 -end - -local uci = luci.model.uci.cursor() -local server_count = 0 -uci:foreach("shadowsocksr", "servers", function(s) - server_count = server_count + 1 -end) - -local fs = require "nixio.fs" -local sys = require "luci.sys" - -if gfwmode==1 then - gfw_count = tonumber(sys.exec("cat /etc/dnsmasq.ssr/gfw_list.conf | wc -l"))/2 - -end - - -m = Map(shadowsocksr) -m:section(SimpleSection).template = "shadowsocksr/status3" --- [[ 节点订阅 ]]-- - -s = m:section(TypedSection, "server_subscribe", translate("Subscription")) -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(Flag, "proxy", translate("Through proxy update")) -o.rmempty = false -o.description = translate("Through proxy update list, Not Recommended ") - - -o = s:option(DummyValue, "", "") -o.rawhtml = true -o.template = "shadowsocksr/update_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"] then - return true - else - return false - end -end) -uci:save("shadowsocksr") - luci.sys.call("uci commit shadowsocksr && /etc/init.d/shadowsocksr stop") - - luci.http.redirect(luci.dispatcher.build_url("admin", "vpn", "shadowsocksr", "servers")) - return -end - - - -return m diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/udp2raw.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/udp2raw.lua deleted file mode 100644 index ec1194207a..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/model/cbi/shadowsocksr/udp2raw.lua +++ /dev/null @@ -1,197 +0,0 @@ --- 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 shadowsocksr = "shadowsocksr" - - -m = Map(shadowsocksr) - -local server_table = {} -local encrypt_methods = { - "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 protocol = { - "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 = { - "plain", - "http_simple", - "http_post", - "random_head", - "tls1.2_ticket_auth", -} - -local raw_mode = { - "faketcp", - "udp", - "icmp", -} - -local seq_mode = { - "0", - "1", - "2", - "3", - "4", -} - -local cipher_mode = { - "none", - "xor", - "aes128cbc", -} - -local auth_mode = { - "none", - "simple", - "md5", - "crc32", -} - -local speeder_mode = { - "0", - "1", -} - - - - --- [[ udp2raw ]]-- -if nixio.fs.access("/usr/bin/udp2raw") then - -s = m:section(TypedSection, "udp2raw", translate(" UDP2raw ")) -s.anonymous = true - -o = s:option(Flag, "udp2raw_enable", translate("Enable udp2raw")) -o.default = 0 -o.rmempty = false - -o = s:option(Value, "server", translate("Server Address")) -o.datatype = "host" -o.rmempty = false - -o = s:option(Value, "server_port", translate("Server Port")) -o.datatype = "port" -o.rmempty = false - -o = s:option(Value, "local_port", translate("Local Port")) -o.datatype = "port" -o.rmempty = false - -o = s:option(Value, "key", translate("Password")) -o.password = true -o.rmempty = false - -o = s:option(ListValue, "raw_mode", translate("Raw Mode")) -for _, v in ipairs(raw_mode) do o:value(v) end -o.default = "faketcp" -o.rmempty = false - -o = s:option(ListValue, "seq_mode", translate("Seq Mode")) -for _, v in ipairs(seq_mode) do o:value(v) end -o.default = "3" -o.rmempty = false - -o = s:option(ListValue, "cipher_mode", translate("Cipher Mode")) -for _, v in ipairs(cipher_mode) do o:value(v) end -o.default = "xor" -o.rmempty = false - -o = s:option(ListValue, "auth_mode", translate("Auth Mode")) -for _, v in ipairs(auth_mode) do o:value(v) end -o.default = "simple" -o.rmempty = false - -end - --- [[ udpspeeder ]]-- -if nixio.fs.access("/usr/bin/udpspeeder") then - -s = m:section(TypedSection, "udpspeeder", translate("UDPspeeder")) -s.anonymous = true - -o = s:option(Flag, "udpspeeder_enable", translate("Enable UDPspeeder")) -o.default = 0 -o.rmempty = false - -o = s:option(Value, "server", translate("Server Address")) -o.datatype = "host" -o.rmempty = false - -o = s:option(Value, "server_port", translate("Server Port")) -o.datatype = "port" -o.rmempty = false - -o = s:option(Value, "local_port", translate("Local Port")) -o.datatype = "port" -o.rmempty = false - -o = s:option(Value, "key", translate("Password")) -o.password = true -o.rmempty = false - -o = s:option(ListValue, "speeder_mode", translate("Speeder Mode")) -for _, v in ipairs(speeder_mode) do o:value(v) end -o.default = "0" -o.rmempty = false - -o = s:option(Value, "fec", translate("Fec")) -o.default = "20:10" -o.rmempty = false - -o = s:option(Value, "mtu", translate("Mtu")) -o.datatype = "uinteger" -o.default = 1250 -o.rmempty = false - -o = s:option(Value, "queue_len", translate("Queue Len")) -o.datatype = "uinteger" -o.default = 200 -o.rmempty = false - -o = s:option(Value, "timeout", translate("Fec Timeout")) -o.datatype = "uinteger" -o.default = 8 -o.rmempty = false - -end - - - -return m diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/cbi/add.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/cbi/add.htm deleted file mode 100644 index f84acdd64f..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/cbi/add.htm +++ /dev/null @@ -1,409 +0,0 @@ - - - - -
- <%:Node list%> (<%:total%>   <%- print(self.des)-%><%:Nodes%>) -
- <%- local count = 0 -%> -
- - <%- local isempty = true - for i, k in ipairs(self:cfgsections()) do - section = k - isempty = false - scope = { valueheader = "cbi/cell_valueheader", valuefooter = "cbi/cell_valuefooter" } - -%> - -
-
- -
- -
-
-
-
- <%- if self.extedit or self.addremove then -%> - - <%- end -%> -
-
- <%- end -%> - - <%- if isempty then -%> -
-

<%:This section contains no values yet%>
-
- <%- end -%> -
- - <% if self.error then %> -
-
    <% for _, c in pairs(self.error) do for _, e in ipairs(c) do -%> -
  • <%=pcdata(e):gsub("\n","
    ")%>
  • - <%- end end %>
-
- <% end %> - - <%- if self.addremove then -%> - <% if self.template_addremove then include(self.template_addremove) else -%> -
- <% if self.anonymous then %> - - <% else %> - <% if self.invalid_cts then -%>
<% end %> - - - <% if self.invalid_cts then -%> -
<%:Invalid%>
- <%- end %> - <% end %> -
- <%- end %> - <%- end -%> -
-
- - - - - - \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/cbi/other_upload2.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/cbi/other_upload2.htm deleted file mode 100644 index 322616d71a..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/cbi/other_upload2.htm +++ /dev/null @@ -1,6 +0,0 @@ -<%+cbi/valueheader%> - - - - -<%+cbi/valuefooter%> diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/check.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/check.htm deleted file mode 100644 index 629e43ef53..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/check.htm +++ /dev/null @@ -1,38 +0,0 @@ -<%+cbi/valueheader%> - - - - - -<%=self.value%> - -<%+cbi/valuefooter%> diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/checkport.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/checkport.htm deleted file mode 100644 index dcaf22e0b1..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/checkport.htm +++ /dev/null @@ -1,36 +0,0 @@ -<%+cbi/valueheader%> - - - -<%=self.value%> - - - -<%+cbi/valuefooter%> diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/feedback.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/feedback.htm deleted file mode 100644 index db165daadc..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/feedback.htm +++ /dev/null @@ -1,22 +0,0 @@ - - - -
- -
- -
-
- -
- -
- -
-
- - - - - - \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/logsview.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/logsview.htm deleted file mode 100644 index 6a00a16494..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/logsview.htm +++ /dev/null @@ -1,109 +0,0 @@ - -<%- - local values = self:formvalue(section) - if not values then - values = self:cfgvalue(section) or {self.default} - end - - local function serialize_json(x, cb) - local rv, push = nil, cb - if not push then - rv = { } - push = function(tok) rv[#rv+1] = tok end - end - - if x == nil then - push("null") - elseif type(x) == "table" then - push("[") - for k = 1, #x do - if k > 1 then - push(",") - end - serialize_json(x[k], push) - end - push("]") - else - push('"%s"' % tostring(x):gsub('["%z\1-\31\\]', - function(c) return '\\u%04x' % c:byte(1) end)) - end - - if not cb then - return table.concat(rv, "") - end - end --%> -<%+cbi/valueheader%> - - - - -<% --- one button on top, one at the buttom -%> -

- /> - -

- -<% --- set a readable style taken from openwrt theme for textarea#syslog --- in openwrt theme there are problems with a width of 100 so we check for theme and set to lower value -%> - -

- -<% --- one button on top, one at the buttom -%> - /> -

-<%+cbi/valuefooter%> - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/myip.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/myip.htm deleted file mode 100644 index b3f8c58d85..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/myip.htm +++ /dev/null @@ -1,350 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - -
- - -
- -
-
-

IP 地址查询

-

- IP   登录设备: -

-

- IPIP      国内: -

-

- IP.PC    国内: -

-

- IP.SB    海外: -

-

- IPIFY    海外: -

-
-
-

网站访问检查

-

- 百度搜索: -

-

- 网易云音乐: -

-

- GitHub: -

-

- Facebook: -

-

- YouTube: -

-
-
- -
-
- - - - - - - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/ping.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/ping.htm deleted file mode 100644 index 370d4f6e79..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/ping.htm +++ /dev/null @@ -1,28 +0,0 @@ -<%+cbi/valueheader%> --- ms -<%+cbi/valuefooter%> - - - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/refresh.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/refresh.htm deleted file mode 100644 index 7e260023d6..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/refresh.htm +++ /dev/null @@ -1,44 +0,0 @@ -<%+cbi/valueheader%> - - - - - -<%=self.value%> - -<%+cbi/valuefooter%> diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/server_list.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/server_list.htm deleted file mode 100644 index a5a4d9cb09..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/server_list.htm +++ /dev/null @@ -1,24 +0,0 @@ -<%# - Copyright 2018-2019 Lienol - Licensed to the public under the Apache License 2.0. --%> - -<% -local dsp = require "luci.dispatcher" --%> - - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/ssrurl.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/ssrurl.htm deleted file mode 100644 index 104a3edd50..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/ssrurl.htm +++ /dev/null @@ -1,257 +0,0 @@ -<%+cbi/valueheader%> - - - - - - - -<%+cbi/valuefooter%> - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/status.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/status.htm deleted file mode 100644 index 7912fc852e..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/status.htm +++ /dev/null @@ -1,210 +0,0 @@ - - -
-
-
-
-
- -
-
-
-

<%:Client%>
<%:Not Running%>

-
-
-
-
-
-
-
- -
-
-
-

<%:foreign websites%>
<%:Problem detected%>

-
-
-
-
-
-
-
- -
-
-
-

<%:domestic website%>
<%:Problem detected%>

-
-
-
-
-
-
-
- -
-
-
-

<%:Game Mode%>
<%:Not Running%>

-
-
-
-
-
-
-
- -
-
-
-

𝐂𝐡𝐢𝐧𝐚𝐃𝐍𝐒
<%:Not Running%>

-
-
-
-
-
-
-
- -
-
-
-

𝙎𝙊𝘾𝙆𝙎⑤
<%:Not Running%>

-
-
-
- -
- - - - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/status2.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/status2.htm deleted file mode 100644 index 3a900e0d2c..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/status2.htm +++ /dev/null @@ -1,202 +0,0 @@ - -
- - <%:Running Status%> - - - - -
-
-
-
-
- -
-
-
-

<%:Client%>
<%:Not Running%>

-
-
-
-
-
-
-
- -
-
-
-

<%:foreign websites%>
<%:Problem detected%>

-
-
-
-
-
-
-
- -
-
-
-

<%:domestic website%>
<%:Problem detected%>

-
-
-
-
-
-
-
- -
-
-
-

<%:SS Servers%>
<%:Not Running%>

-
-
-
-
-
-
-
- -
-
-
-

<%:SSR Servers%>
<%:Not Running%>

-
-
-
-
-
-
-
- -
-
-
-

<%:V2 Servers%>
<%:Not Running%>

-
-
-
-
- - -
diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/status3.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/status3.htm deleted file mode 100644 index e6ee8a3aac..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/status3.htm +++ /dev/null @@ -1,177 +0,0 @@ - - - - - - - - -
-
-
-
-

<%:Client%>
<%:Not Running%>

-
-
-
- -
-
-
-
-
-
-
- -

<%:domestic website%>
<%:Problem detected%>

-
-
-
- -
-
-
-
-
-
-
-

<%:foreign websites%>
<%:Problem detected%>

-
-
-
- -
-
-
-
- -
-
-
-

<%:Game Mode%>
<%:Not Running%>

-
-
-
- -
-
-
-
-
-
-
-

𝐂𝐡𝐢𝐧𝐚𝐃𝐍𝐒
<%:Not Running%>

-
-
-
- -
-
-
-
- -
-
-
-

𝙎𝙊𝘾𝙆𝙎5
<%:Not Running%>

-
-
-
- -
-
-
-
-
- - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/update_subscribe.htm b/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/update_subscribe.htm deleted file mode 100644 index 5844465e21..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/luasrc/view/shadowsocksr/update_subscribe.htm +++ /dev/null @@ -1,123 +0,0 @@ -<%+cbi/valueheader%> - - -
- "> -
- - - -<%+cbi/valuefooter%> \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/po/zh-cn/ssr-plus.po b/package/ctcgfw/luci-app-ssr-plus-Jo/po/zh-cn/ssr-plus.po deleted file mode 100644 index c25116a877..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/po/zh-cn/ssr-plus.po +++ /dev/null @@ -1,868 +0,0 @@ -msgid "" -msgstr "Content-Type: text/plain; charset=UTF-8\n" - - -msgid "Enable" -msgstr "启用" - -msgid "Disable" -msgstr "停用" - -msgid "Enable Servers" -msgstr "开启服务" - -msgid "Enable Authentication" -msgstr "启用 用户名/密码 认证" - -msgid "Open v2ray split-flow" -msgstr "开启V2ray分流" - -msgid "When open v2ray split-flow,your main server must be a v2ray server" -msgstr "当使用v2ray分流功能时 主服务器必须为V2ray" - -msgid "Youtube Proxy" -msgstr "Youtube 代理" - -msgid "TaiWan Video Proxy" -msgstr "台湾视频服务代理" - -msgid "Netflix Proxy" -msgstr "Netflix 代理" - -msgid "Diseny+ Proxy" -msgstr "Diseny+ 代理" - -msgid "Prime Video Proxy" -msgstr "Prime Video 代理" - -msgid "adblock settings" -msgstr "广告屏蔽设置" - -msgid "Enable adblock" -msgstr "开启广告屏蔽" - -msgid "adblock_url" -msgstr "广告屏蔽订阅" - -msgid "Socks user" -msgstr "用户名" - -msgid "Socks pass" -msgstr "密码" - -msgid "Ping All Servers" -msgstr "PING 所有节点" - -msgid "Ping Latency" -msgstr "Ping 延迟" - - - -msgid "SSR SOCKS5 Proxy" -msgstr "SSR SOCKS5代理" - -msgid "Subscription" -msgstr "订阅管理" - - - -msgid "Subscribing,Please do not refresh!" -msgstr "订阅,请不要刷新!" - -msgid "Check Try Count" -msgstr "切换检查重试次数" - -msgid "Log" -msgstr "日志" - -msgid "Bypass Domain List" -msgstr "不走代理的域名" - -msgid "Black Domain List" -msgstr "强制走代理的域名" - -msgid "Node List" -msgstr "节点列表" - -msgid "END SUBSCRIBE" -msgstr "结束订阅" - -msgid "Update Setting" -msgstr "更新设置" - - -msgid "AlterId" -msgstr "额外ID" - -msgid "Save And Start Subscribe" -msgstr "保存并开始订阅" - - -msgid "VmessId (UUID)" -msgstr "用户ID(UUID)" - -msgid "Transport" -msgstr "传输方式" - -msgid "Configuration Url" -msgstr "配置链接" - -msgid "Import Configuration" -msgstr "导入配置信息" - -msgid "Apply" -msgstr "应用" - -msgid "total" -msgstr "总计" - -msgid "Node list" -msgstr "节点列表" - - -msgid "Nodes" -msgstr "个节点" - -msgid "Client" -msgstr "客户端" - -msgid "Visit foreign websites" -msgstr "国外网站" - -msgid "Visit domestic website" -msgstr "国内网站" - -msgid "Problem detected" -msgstr "无法访问" - -msgid "Working..." -msgstr "连接正常" - - -msgid "Game Mode" -msgstr "游戏模式" - - -msgid "V2ray SOCKS5 Proxy" -msgstr "V2ray SOCKS5代理" - -msgid "Edit ShadowSocksR Server" -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 "Protocol" -msgstr "传输协议" - -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 "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 "bin:/usr/bin/kcptun-client" -msgstr "二进制文件:/usr/bin/kcptun-client" - -msgid "KcpTun Port" -msgstr "KcpTun 端口" - -msgid "KcpTun Param" -msgstr "KcpTun 参数" - -msgid "KcpTun Password" -msgstr "KcpTun 密码" - -msgid "Haven't a Kcptun executable file" -msgstr "不存在Kcptun可执行文件,请下载Kcptun可执行文件并改名放入/usr/bin/kcptun-client" - -msgid "Not a Kcptun executable file" -msgstr "Kcptun可执行文件格式不正确,请确认是否正确下载了路由器对应的可执行文件" - -msgid "Enable Process Monitor" -msgstr "启用进程监控" - -msgid "Edit ShadowSocksR Server" -msgstr "编辑服务器配置" - -msgid "Alias" -msgstr "别名" - -msgid "SOCKS5 Proxy" -msgstr "SOCKS5代理" - -msgid "Server" -msgstr "服务器" - -msgid "TCP Fast Open" -msgstr "TCP快速打开" - -msgid "Status" -msgstr "状态" - -msgid "Unknown" -msgstr "未知" - -msgid "Running Status" -msgstr "运行状态" - -msgid "ShadowSocksR Plus+" -msgstr "ShadowSocksR Plus+ 魔改版" - -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 "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 "Basic Settings" -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 "Enable Process Deamon" -msgstr "启用进程自动守护" - -msgid "Advertising Data" -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 "Use Other DNS Tunnel(Need to install)" -msgstr "使用其他DNS转发(需要自己安装)" - -msgid "Import SSR" -msgstr "导入ssr配置信息" - -msgid "Export SSR" -msgstr "导出ssr配置信息" - -msgid "Import SSR successfully." -msgstr "成功导入SSR。" - -msgid "Invalid SSR format." -msgstr "无效的SSR格式。" - -msgid "User cancelled." -msgstr "用户已取消。" - -msgid "Paste ssr url here" -msgstr "在此处粘贴ssr://网址" - -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+ 设置(支持SS/SSR/V2RAY/Trojan)" - -msgid "Main Server" -msgstr "主服务器" - -msgid "Anti-pollution DNS Server" -msgstr "访问国外域名DNS服务器" - -msgid "Use Pdnsd tcp query and cache" -msgstr "使用PDNSD TCP查询并缓存" - -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/V2RAY订阅URL地址" - -msgid "Update" -msgstr "更新" - -msgid "Server Count" -msgstr "服务器节点数量" - -msgid "IP black-and-white list" -msgstr "IP黑白名单" - -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 settings" -msgstr "服务器节点故障自动切换设置" - -msgid "Delete all 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 "256 Threads" -msgstr "256 线程" - -msgid "512 Threads" -msgstr "512 线程" - - -msgid "Proxy Ports" -msgstr "需要代理的端口" - -msgid "All Ports" -msgstr "所有端口(默认)" - -msgid "Only Common Ports" -msgstr "仅常用端口(不走P2P流量到代理)" - - -msgid "Use dnscrypt-proxy query and cache" -msgstr "使用dnscrypt-proxy TCP查询并缓存" - -msgid "Use dnsforwarder tcp query and cache" -msgstr "使用dnsforwarder TCP查询并缓存" - -msgid "Use Pdnsd udp query and cache" -msgstr "使用Pdnsd UDP查询并缓存" - - -msgid "Use dnsforwarder udp query and cache" -msgstr "使用dnsforwarder UDP查询并缓存" - -msgid "Use chinadns query and cache" -msgstr "使用ChinaDNS查询并缓存" - -msgid "Chiadns Resolve Dns Mode" -msgstr "ChinaDNS的上游服务器" - - -msgid "Use Local DNS Service" -msgstr "使用设定DNS解析" - -msgid "Oversea GFW List Mode" -msgstr "海外用户回国域名列表模式" - -msgid "Oversea IP Route Mode" -msgstr "海外用户回国IP路由模式" - -msgid "Use Local DNS Service" -msgstr "使用设定DNS解析" - -msgid "Using System Default DNS" -msgstr "使用系统默认DNS" - -msgid "Using acceleration center DNS" -msgstr "使用加速中心DNS" - -msgid "Appoint dns List" -msgstr "指定DNS解析列表" - -msgid "Use https_dns_proxy query and cache" -msgstr "使用https_dns_proxy TCP查询并缓存" - -msgid "Use smartdns query and cache" -msgstr "使用SmartDNS TCP查询并缓存" - -msgid "Use Pcap_DNSProxy query and cache" -msgstr "使用Pcap DNSProxy TCP查询并缓存" - -msgid "Kill BT" -msgstr "禁止 BT" - -msgid "BT Port" -msgstr "BT 端口" - -msgid "Enabling IPv6 server" -msgstr "启用ipv6服务" - -msgid "Prohibit downloading tool ports through proxy" -msgstr "禁止BT端口走代理" - - -msgid "udp2raw Version" -msgstr "udp2raw 版本" - -msgid "udp2raw tunnel Project" -msgstr "udp2raw 项目" - - -msgid "UDPspeeder Version" -msgstr "UDPspeeder 版本" - - -msgid "UDPspeeder Project" -msgstr "UDPspeeder 项目" - -msgid "Appointlist List" -msgstr "DNS列表" - -msgid "udp2raw tunnel" -msgstr "UDP隧道" - -msgid "Enable udp2raw" -msgstr "启用 udp2raw" - -msgid "Enable UDPspeeder" -msgstr "启用 UDPspeeder" - -msgid "SOCKS5 Proxy" -msgstr "SOCKS5代理" - -msgid "SSOCKS5 Proxy" -msgstr "SS SOCKS5代理" - -msgid "Global SS Server" -msgstr "SS服务端" - - -msgid "V2SOCKS5 Proxy" -msgstr "V2ray SOCKS5代理" - -msgid "Global V2RAY Server" -msgstr "V2RAY服务端" - -msgid "haProxy settings" -msgstr "HaProxy 设置" - - -msgid "Enabling the Management Console" -msgstr "启用管理控制台" - -msgid "Service Port" -msgstr "端口" - -msgid "Socket Connected" -msgstr "连接测试" - - -msgid "Enable HTTP Proxy" -msgstr "启用HTTP代理" - -msgid "HTTP Port" -msgstr "HTTP代理端口" - -msgid "plugin" -msgstr "插件" - -msgid "Plugin Opts" -msgstr "插件参数" - -msgid "Before subscribing please click below to delete all servers in the subscription" -msgstr "订阅前请点击下面的删除所有服务器在订阅" - -msgid "Chnroute Setting" -msgstr "国内IP段数据库更新设置" - -msgid "Enable custom chnroute" -msgstr "启用自定义更新地址" - -msgid "Update url" -msgstr "更新链接" - -msgid "HTTP Proxy" -msgstr "HTTP代理" - -msgid "Raw Mode" -msgstr "模式" - -msgid "Seq Mode" -msgstr "Seq模式" - -msgid "Cipher Mode" -msgstr "加密模式" - -msgid "Auth Mode" -msgstr "校验模式" - -msgid "Speeder Mode" -msgstr "Speeder模式" - -msgid "Fec" -msgstr "fec参数" - -msgid "Mtu" -msgstr "mtu参数" - -msgid "SS Servers" -msgstr "SS服务器" - - -msgid "SSR Servers" -msgstr "SSR服务器" - -msgid "SSR Server" -msgstr "服务端" - -msgid "V2 Servers" -msgstr "V2服务器" - -msgid "SS/SSR/V2RAY Server" -msgstr "SS/SSR/V2RAY 服务端" - -msgid "Delete All Subscribe Severs" -msgstr "删除所有订阅服务器节点" - -msgid "Update All Subscribe Severs" -msgstr "更新所有订阅服务器节点" - -msgid "No special needs, please click here to subscribe to update" -msgstr "没有特殊需要,请点击这里订阅更新" - -msgid "Running Details:" -msgstr "进程详情:" - -msgid "File Viewer" -msgstr "文件查看器" diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/black.list b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/black.list deleted file mode 100644 index e60cdc3a10..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/black.list +++ /dev/null @@ -1,58 +0,0 @@ -1dot1dot1dot1.cloudflare-dns.com -91smartyun.pt -adobe.com -amazonaws.com -ampproject.org -apple.news -aws.amazon.com -azureedge.net -backpackers.com.tw -bitfinex.com -buzzfeed.com -clockwise.ee -cloudflare-dns.com -cloudfront.net -coindesk.com -coinsquare.io -cryptocompare.com -dns.google -dns9.quad9.net -doh.opendns.com -dropboxstatic.com -eurecom.fr -gdax.com -github.com -kknews.cc -nutaq.com -openairinterface.org -skype.com -sublimetext.com -textnow.com -textnow.me -trouter.io -uploaded.net -whatsapp.com -whatsapp.net -wsj.net -google.com -google.com.hk -gstatic.com -googleusercontent.com -googlepages.com -googlevideo.com -googlecode.com -googleapis.com -googlesource.com -googledrive.com -ggpht.com -youtube.com -youtu.be -ytimg.com -twitter.com -facebook.com -fastly.net -akamai.net -akamaiedge.net -akamaihd.net -edgesuite.net -edgekey.net diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/gfw.list b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/gfw.list deleted file mode 100644 index 4e9d1cfab4..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/gfw.list +++ /dev/null @@ -1,54 +0,0 @@ -91smartyun.pt -adobe.com -amazonaws.com -ampproject.org -apple.news -aws.amazon.com -azureedge.net -backpackers.com.tw -bitfinex.com -buzzfeed.com -clockwise.ee -cloudfront.net -coindesk.com -coinsquare.io -cryptocompare.com -dropboxstatic.com -eurecom.fr -gdax.com -github.com -kknews.cc -nutaq.com -openairinterface.org -skype.com -sublimetext.com -textnow.com -textnow.me -trouter.io -uploaded.net -whatsapp.com -whatsapp.net -wsj.net -google.com -google.com.hk -gstatic.com -googleusercontent.com -googlepages.com -googlevideo.com -googlecode.com -googleapis.com -googlesource.com -googledrive.com -ggpht.com -youtube.com -youtu.be -ytimg.com -twitter.com -facebook.com -fastly.net -akamai.net -akamaiedge.net -akamaihd.net -edgesuite.net -edgekey.net - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/google_fu_mode b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/google_fu_mode deleted file mode 100644 index aef83c80fa..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/google_fu_mode +++ /dev/null @@ -1 +0,0 @@ -0xDEADBEEF diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/shadowsocksr b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/shadowsocksr deleted file mode 100644 index 1fcef37f6a..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/shadowsocksr +++ /dev/null @@ -1,120 +0,0 @@ - - -config server_config - option type 'ss' - option ipv4_ipv6 '0' - option server_port '8387' - option timeout '60' - option password 'admin' - option encrypt_method 'aes-256-ctr' - option enable '0' - -config server_config - option type 'ssr' - option ipv4_ipv6 '0' - option server_port '8388' - option timeout '60' - option password '222' - option protocol 'origin' - option obfs 'plain' - option encrypt_method 'aes-192-cfb' - option enable '0' - -config server_config - option type 'v2ray' - option ipv4_ipv6 '0' - option server_port '8389' - option timeout '60' - option alter_id '100' - option VMess_level '1' - option vmess_id '576f451f-0d21-44ed-aeaf-9b27a24d7bc9' - option security 'auto' - option transport 'tcp' - option tcp_guise 'none' - option tls '1' - option enable '0' - -config global - option tunnel_address '0.0.0.0' - option monitor_enable '1' - option enable_switch '1' - option switch_timeout '5' - option switch_time '667' - option threads '0' - option bt '0' - option global_server 'nil' - option run_mode 'router' - option pdnsd_enable '1' - option tunnel_forward '8.8.4.4:53' - -config socks5_proxy - option local_port '1080' - option local_address '0.0.0.0' - option http_port '1081' - option bt '0' - option server 'nil' - option http_enable '0' - -config global_haproxy - option admin_enable '1' - option admin_port '1111' - option admin_user 'admin' - option admin_password 'root' - option balancing_enable '0' - -config access_control - option wan_bp_list '/etc/china_ssr.txt' - option lan_ac_mode 'b' - option router_proxy '1' - list wan_fw_ips '149.154.160.0/20' - list wan_fw_ips '67.198.55.0/24' - list wan_fw_ips '91.108.4.0/22' - list wan_fw_ips '91.108.56.0/22' - list wan_fw_ips '109.239.140.0/24' - list wan_fw_ips '1.1.1.1/32' - list wan_fw_ips '1.0.0.1/32' - list wan_fw_ips '8.8.8.8/32' - list wan_fw_ips '8.8.4.4/32' - list wan_fw_ips '9.9.9.9/32' - list wan_fw_ips '146.112.41.2/32' - -config server_global - option enable_server '0' - -config server_subscribe - option proxy '0' - option auto_update_time '2' - option auto_update '0' - option v2ray_update '0' - option edition '4.20.0' - -config domain_white_list - option domain_names 'youdao.com' - -config domain_white_list - option domain_names 'gov.cn' - -config udp2raw - option server '127.0.0.1' - option local_port '400' - option key 'passwd' - option seq_mode '3' - option auth_mode 'simple' - option bt '0' - option udp2raw_enable '1' - option raw_mode 'udp' - option cipher_mode 'aes128cbc' - option server_port '600' - -config udpspeeder - option server '127.0.0.1' - option server_port '400' - option local_port '500' - option key 'passwd' - option speeder_mode '0' - option fec '2:4' - option mtu '1250' - option queue_len '1' - option timeout '8' - option udpspeeder_enable '1' - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/white.list b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/white.list deleted file mode 100644 index 6ccd305dc3..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/config/white.list +++ /dev/null @@ -1,2 +0,0 @@ -apple.com -microsoft.com \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.oversea/base_list.conf b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.oversea/base_list.conf deleted file mode 100644 index dd3a0ebb77..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.oversea/base_list.conf +++ /dev/null @@ -1,3 +0,0 @@ -server=/.3g.music.qq.com/127.0.0.1#5335 -ipset=/3g.music.qq.com/oversea - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.ssr/ad.conf b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.ssr/ad.conf deleted file mode 100644 index 6a2ce39cb6..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.ssr/ad.conf +++ /dev/null @@ -1,6273 +0,0 @@ -address=/pufenchuanmu.com/127.0.0.1 -address=/0024aaaa.com/127.0.0.1 -address=/00880808.com/127.0.0.1 -address=/008844.cc/127.0.0.1 -address=/0133hao.net/127.0.0.1 -address=/01fen.com/127.0.0.1 -address=/02123s.com/127.0.0.1 -address=/022aifang.com/127.0.0.1 -address=/023hysj.com/127.0.0.1 -address=/025suyu.com/127.0.0.1 -address=/0313413.com/127.0.0.1 -address=/0351dvd.cn/127.0.0.1 -address=/0451106.com/127.0.0.1 -address=/04zl.cn/127.0.0.1 -address=/0516bm.com/127.0.0.1 -address=/0531kt.com/127.0.0.1 -address=/0571hy.com/127.0.0.1 -address=/0571yy.com/127.0.0.1 -address=/0592weixin.com/127.0.0.1 -address=/0728w.cn/127.0.0.1 -address=/0756sjlm.com.cn/127.0.0.1 -address=/0796gou.com/127.0.0.1 -address=/0798ls.com/127.0.0.1 -address=/080644.com/127.0.0.1 -address=/0937jyg.com/127.0.0.1 -address=/0bc.top/127.0.0.1 -address=/0nin.cn/127.0.0.1 -address=/0qkc.cn/127.0.0.1 -address=/0xxd.com/127.0.0.1 -address=/1000dy.com/127.0.0.1 -address=/100fenlm.com/127.0.0.1 -address=/103.249.254.113/127.0.0.1 -address=/104.195.62.12/127.0.0.1 -address=/104.197.140.120/127.0.0.1 -address=/104.198.198.188/127.0.0.1 -address=/104.203.214.3/127.0.0.1 -address=/104.203.72.254/127.0.0.1 -address=/104.233.203.164/127.0.0.1 -address=/104.237.67.78/127.0.0.1 -address=/106.187.95.251/127.0.0.1 -address=/107.187.255.178/127.0.0.1 -address=/111111qb.com/127.0.0.1 -address=/112.74.95.46/127.0.0.1 -address=/11370090.net/127.0.0.1 -address=/114.95.102.77/127.0.0.1 -address=/115.238.246.181/127.0.0.1 -address=/116.55.227.242/127.0.0.1 -address=/116zhuce.com/127.0.0.1 -address=/117.25.133.209/127.0.0.1 -address=/118.144.88.216/127.0.0.1 -address=/119.29.207.87/127.0.0.1 -address=/119.4.249.166/127.0.0.1 -address=/12086.net/127.0.0.1 -address=/121.40.25.88/127.0.0.1 -address=/122.114.239.160/127.0.0.1 -address=/122.227.254.195/127.0.0.1 -address=/123.59.150.56/127.0.0.1 -address=/12306media.com/127.0.0.1 -address=/12365chia.com/127.0.0.1 -address=/123hala.com/127.0.0.1 -address=/124.232.160.178/127.0.0.1 -address=/134.73.54.252/127.0.0.1 -address=/138138138.top/127.0.0.1 -address=/138lm.com/127.0.0.1 -address=/139.159.32.82/127.0.0.1 -address=/139.196.166.21/127.0.0.1 -address=/13wnjs.com/127.0.0.1 -address=/1515788.net/127.0.0.1 -address=/154.83.113.19/127.0.0.1 -address=/162.209.213.66/127.0.0.1 -address=/164.155.185.254/127.0.0.1 -address=/1680go.com/127.0.0.1 -address=/16k6.com/127.0.0.1 -address=/170yy.com/127.0.0.1 -address=/174.139.53.195/127.0.0.1 -address=/175bar.com/127.0.0.1 -address=/176um.com/127.0.0.1 -address=/178bx.cn/127.0.0.1 -address=/17tuozhai.com/127.0.0.1 -address=/17un.co/127.0.0.1 -address=/180.76.171.28/127.0.0.1 -address=/1818bobo.com/127.0.0.1 -address=/181lm.net/127.0.0.1 -address=/182.92.81.104/127.0.0.1 -address=/18tzx.com/127.0.0.1 -address=/194.36.101.178/127.0.0.1 -address=/1999sg.com/127.0.0.1 -address=/1d1a.com/127.0.0.1 -address=/1d1px.net/127.0.0.1 -address=/1haosuo.com/127.0.0.1 -address=/1i580.com/127.0.0.1 -address=/1kmb.cn/127.0.0.1 -address=/1kzh.com/127.0.0.1 -address=/1l1.cc/127.0.0.1 -address=/1lib.cn/127.0.0.1 -address=/1q8h.cn/127.0.0.1 -address=/1uandun.com/127.0.0.1 -address=/201071.com/127.0.0.1 -address=/2012ui.com/127.0.0.1 -address=/2048hd.space/127.0.0.1 -address=/211.103.159.32/127.0.0.1 -address=/211.149.225.23/127.0.0.1 -address=/211.167.105.131/127.0.0.1 -address=/218.25.246.118/127.0.0.1 -address=/219.234.83.60/127.0.0.1 -address=/21kk.cc/127.0.0.1 -address=/220.115.251.25/127.0.0.1 -address=/221.204.213.222/127.0.0.1 -address=/222im.com/127.0.0.1 -address=/22lm.cc/127.0.0.1 -address=/23.244.43.212/127.0.0.1 -address=/23.89.50.180/127.0.0.1 -address=/23456dj.com/127.0.0.1 -address=/23dsf.top/127.0.0.1 -address=/258pcf.com/127.0.0.1 -address=/268mob.cn/127.0.0.1 -address=/272xb.com/127.0.0.1 -address=/280dp.com/127.0.0.1 -address=/28487.net/127.0.0.1 -address=/28acglz.com/127.0.0.1 -address=/293870.com/127.0.0.1 -address=/29wjns.com/127.0.0.1 -address=/2d-c.cn/127.0.0.1 -address=/2g2h.com/127.0.0.1 -address=/2m2n.com/127.0.0.1 -address=/2zfzly.com/127.0.0.1 -address=/31365y.com/127.0.0.1 -address=/333dm.com/127.0.0.1 -address=/338336.com/127.0.0.1 -address=/33shangyou.com/127.0.0.1 -address=/3400.org/127.0.0.1 -address=/360baidus.com/127.0.0.1 -address=/361315.cc/127.0.0.1 -address=/365bibi.com/127.0.0.1 -address=/365che.cc/127.0.0.1 -address=/365safego.com/127.0.0.1 -address=/366safego.com/127.0.0.1 -address=/36pn.com/127.0.0.1 -address=/376zf.com/127.0.0.1 -address=/38taobao.com/127.0.0.1 -address=/39xc.net/127.0.0.1 -address=/3amall.cn/127.0.0.1 -address=/3g.990.net/127.0.0.1 -address=/3gmtr.com/127.0.0.1 -address=/3htai.com/127.0.0.1 -address=/3lga3.cn/127.0.0.1 -address=/3qmh.com/127.0.0.1 -address=/3qsys.com/127.0.0.1 -address=/3xx.vip/127.0.0.1 -address=/3ygww.com/127.0.0.1 -address=/4006825178.com/127.0.0.1 -address=/41msl.cn/127.0.0.1 -address=/4480dy.net/127.0.0.1 -address=/45.34.240.72/127.0.0.1 -address=/456juhd.com/127.0.0.1 -address=/46cq.cn/127.0.0.1 -address=/47.90.50.177/127.0.0.1 -address=/4ggww.com/127.0.0.1 -address=/50zera.com/127.0.0.1 -address=/5125129.com/127.0.0.1 -address=/5151gj.com/127.0.0.1 -address=/517m.cn/127.0.0.1 -address=/517pass.com/127.0.0.1 -address=/517xx.com/127.0.0.1 -address=/51fuliwang.cn/127.0.0.1 -address=/51jumintong.com/127.0.0.1 -address=/51sxzz.com/127.0.0.1 -address=/51weidashi.com/127.0.0.1 -address=/51xumei.com/127.0.0.1 -address=/5207470.com/127.0.0.1 -address=/520meirenyu.com/127.0.0.1 -address=/5269120.com/127.0.0.1 -address=/52kmk.com/127.0.0.1 -address=/52yugan.com/127.0.0.1 -address=/52zfl.com/127.0.0.1 -address=/550tg.com/127.0.0.1 -address=/5535aibo.com/127.0.0.1 -address=/57union.com/127.0.0.1 -address=/58.215.179.159/127.0.0.1 -address=/592man.com/127.0.0.1 -address=/593pi.cn/127.0.0.1 -address=/59gt.cn/127.0.0.1 -address=/5a8p12.cn/127.0.0.1 -address=/5eln.cn/127.0.0.1 -address=/5imoney.com/127.0.0.1 -address=/5jcom.com.cn/127.0.0.1 -address=/5pub.com/127.0.0.1 -address=/5rxk.cn/127.0.0.1 -address=/60.190.139.164/127.0.0.1 -address=/61.152.223.15/127.0.0.1 -address=/61.174.50.211/127.0.0.1 -address=/626uc.com/127.0.0.1 -address=/643226.com/127.0.0.1 -address=/652748.com/127.0.0.1 -address=/66.212.56.229/127.0.0.1 -address=/6612151.cn/127.0.0.1 -address=/6612152.cn/127.0.0.1 -address=/664gp.com/127.0.0.1 -address=/6666lm.com/127.0.0.1 -address=/66996.top/127.0.0.1 -address=/66997.top/127.0.0.1 -address=/66998.top/127.0.0.1 -address=/66san.com/127.0.0.1 -address=/6728812.com/127.0.0.1 -address=/68665565.com/127.0.0.1 -address=/69duk.com/127.0.0.1 -address=/6avz.com/127.0.0.1 -address=/6cc8cc.xyz/127.0.0.1 -address=/6dvip.com/127.0.0.1 -address=/6huu.com/127.0.0.1 -address=/6ped2nd3yp.com/127.0.0.1 -address=/700ok.net/127.0.0.1 -address=/70lm.com/127.0.0.1 -address=/70yst.cn/127.0.0.1 -address=/711kk.com/127.0.0.1 -address=/71sem.com/127.0.0.1 -address=/766ba.net/127.0.0.1 -address=/77417.cn/127.0.0.1 -address=/77power.com/127.0.0.1 -address=/7891655.cn/127.0.0.1 -address=/7895983.cn/127.0.0.1 -address=/7a096v.cn/127.0.0.1 -address=/7dah8.com/127.0.0.1 -address=/7gg.cc/127.0.0.1 -address=/7jiajiao.com/127.0.0.1 -address=/7wen.cn/127.0.0.1 -address=/7xi9g1.com1.z0.glb.clouddn.com/127.0.0.1 -address=/7xz3.com/127.0.0.1 -address=/80sjw.com/127.0.0.1 -address=/810251.com/127.0.0.1 -address=/813690.top/127.0.0.1 -address=/81c.cn/127.0.0.1 -address=/825145.com/127.0.0.1 -address=/827649.com/127.0.0.1 -address=/8368661.com/127.0.0.1 -address=/8521448.com/127.0.0.1 -address=/85tgw.com/127.0.0.1 -address=/860010.com/127.0.0.1 -address=/8800271.com.cn/127.0.0.1 -address=/88818122.cn/127.0.0.1 -address=/8881919.cc/127.0.0.1 -address=/88rpg.net/127.0.0.1 -address=/892155.com/127.0.0.1 -address=/89h8.com/127.0.0.1 -address=/8ao8ao.com/127.0.0.1 -address=/8hdp.cn/127.0.0.1 -address=/8mfty.com/127.0.0.1 -address=/8ucdn.com/127.0.0.1 -address=/904ad.com/127.0.0.1 -address=/91luopan.com/127.0.0.1 -address=/91xry.com/127.0.0.1 -address=/91ysa.com/127.0.0.1 -address=/91zgm.com/127.0.0.1 -address=/9377aa.com/127.0.0.1 -address=/9377bh.com/127.0.0.1 -address=/9377co.com/127.0.0.1 -address=/9377hi.com/127.0.0.1 -address=/9377if.com/127.0.0.1 -address=/9377ku.com/127.0.0.1 -address=/9377or.com/127.0.0.1 -address=/9377os.com/127.0.0.1 -address=/93manhua.com/127.0.0.1 -address=/94lm.com/127.0.0.1 -address=/94nw.com/127.0.0.1 -address=/95105012.com/127.0.0.1 -address=/95558000.com/127.0.0.1 -address=/96mob.com/127.0.0.1 -address=/9868.online/127.0.0.1 -address=/9898c.com/127.0.0.1 -address=/991pao.com/127.0.0.1 -address=/99909988.com/127.0.0.1 -address=/99dqw.com/127.0.0.1 -address=/99lolo.com/127.0.0.1 -address=/99pps.com/127.0.0.1 -address=/99tuan.com.cn/127.0.0.1 -address=/9dtiny.cn/127.0.0.1 -address=/9h6qq.cn/127.0.0.1 -address=/9kff.com/127.0.0.1 -address=/9nwg9sib9e.com/127.0.0.1 -address=/9uys.co/127.0.0.1 -address=/9wlm.com/127.0.0.1 -address=/9wotuan.com/127.0.0.1 -address=/9xiazaiqi.com/127.0.0.1 -address=/a.youdao.com/127.0.0.1 -address=/a0b11.com/127.0.0.1 -address=/a0b22.com/127.0.0.1 -address=/a0b33.com/127.0.0.1 -address=/a0c66.com/127.0.0.1 -address=/a0c77.com/127.0.0.1 -address=/a0usa.top/127.0.0.1 -address=/a3p4.net/127.0.0.1 -address=/a907907.com/127.0.0.1 -address=/a9377j.com/127.0.0.1 -address=/aazcio.cn/127.0.0.1 -address=/abctcqq.top/127.0.0.1 -address=/acasys88.cn/127.0.0.1 -address=/acwgf.com/127.0.0.1 -address=/ad.52av.tv/127.0.0.1 -address=/ad.muyang888.top/127.0.0.1 -address=/ad000000.com/127.0.0.1 -address=/ad9377.com/127.0.0.1 -address=/adacgov.cn/127.0.0.1 -address=/adbot.tw/127.0.0.1 -address=/address9.com/127.0.0.1 -address=/adget.cn/127.0.0.1 -address=/adidaschile62tracksuit.com/127.0.0.1 -address=/adm-cnzz.net/127.0.0.1 -address=/adnex.tech/127.0.0.1 -address=/adomv.com/127.0.0.1 -address=/adreal.cn/127.0.0.1 -address=/adrs.sdo.com/127.0.0.1 -address=/ads.uc.cn/127.0.0.1 -address=/adsbang.top/127.0.0.1 -address=/adytx.com/127.0.0.1 -address=/aencx.net/127.0.0.1 -address=/aeoprw.cn/127.0.0.1 -address=/afj0.com/127.0.0.1 -address=/afjlb.com/127.0.0.1 -address=/agtsjb.com/127.0.0.1 -address=/agzxj8990.com/127.0.0.1 -address=/ahhuazhen.com/127.0.0.1 -address=/ahjzys.com/127.0.0.1 -address=/ahlxxx.com/127.0.0.1 -address=/ahszgog.com/127.0.0.1 -address=/ahyau.com/127.0.0.1 -address=/ahyuns.com/127.0.0.1 -address=/aigou023.com/127.0.0.1 -address=/aijielang.cn/127.0.0.1 -address=/aishang.bid/127.0.0.1 -address=/aishangcan.com/127.0.0.1 -address=/aishiguolong.com/127.0.0.1 -address=/ajaxcdn.org/127.0.0.1 -address=/ajuhd.com/127.0.0.1 -address=/akrwi.cn/127.0.0.1 -address=/alicmayuns.com/127.0.0.1 -address=/alifixed.cn/127.0.0.1 -address=/alimama.alicdn.com/127.0.0.1 -address=/alimb.top/127.0.0.1 -address=/aliqqjd.cn/127.0.0.1 -address=/alisinak.com/127.0.0.1 -address=/alitianxia168.com/127.0.0.1 -address=/aliyuncss.com/127.0.0.1 -address=/aliyunxin.com/127.0.0.1 -address=/allxin.com/127.0.0.1 -address=/amazingmagics.com/127.0.0.1 -address=/amensh.cn/127.0.0.1 -address=/anastasiaana.com/127.0.0.1 -address=/anioscp.com/127.0.0.1 -address=/anquanzhuomian.cn/127.0.0.1 -address=/anquanzhuomian.com/127.0.0.1 -address=/anreson.net/127.0.0.1 -address=/anzhuocpm.com/127.0.0.1 -address=/apkdo.com/127.0.0.1 -address=/aqgyju.cn/127.0.0.1 -address=/arealx.com/127.0.0.1 -address=/arrows-hitech.com/127.0.0.1 -address=/artedu.pw/127.0.0.1 -address=/as75.info/127.0.0.1 -address=/asir.vip/127.0.0.1 -address=/assigned.cn/127.0.0.1 -address=/aswlx.cn/127.0.0.1 -address=/at98.com/127.0.0.1 -address=/atanx.alicdn.com/127.0.0.1 -address=/audit8.com/127.0.0.1 -address=/auspiciousvp.com/127.0.0.1 -address=/awkjs.com/127.0.0.1 -address=/axhxa.com/127.0.0.1 -address=/axiba66.com/127.0.0.1 -address=/b588866.com/127.0.0.1 -address=/b7nkd.cn/127.0.0.1 -address=/b9377h.com/127.0.0.1 -address=/b99u.top/127.0.0.1 -address=/baiapk.com/127.0.0.1 -address=/baiduace.com/127.0.0.1 -address=/baiduappu.top/127.0.0.1 -address=/baiducom.bj.bcebos.com/127.0.0.1 -address=/baidujavascript.com/127.0.0.1 -address=/baidulao.com/127.0.0.1 -address=/baiduvip.life/127.0.0.1 -address=/baiduyoukualiyun.com/127.0.0.1 -address=/baiduyubaidu.com/127.0.0.1 -address=/baisuijk.com/127.0.0.1 -address=/baiyuandian.cc/127.0.0.1 -address=/bajieyy.cc/127.0.0.1 -address=/bangbang521.com/127.0.0.1 -address=/banjuanmao.com/127.0.0.1 -address=/baolic.com/127.0.0.1 -address=/battmd168a1.xyz/127.0.0.1 -address=/battmd168a2.xyz/127.0.0.1 -address=/bazhigu.com/127.0.0.1 -address=/bbdsdy.com/127.0.0.1 -address=/bccyyc.com/127.0.0.1 -address=/bdpuaw.com/127.0.0.1 -address=/bdtongfei.cn/127.0.0.1 -address=/bdyxzx.com/127.0.0.1 -address=/beatriceeatr.com/127.0.0.1 -address=/bebelait.com/127.0.0.1 -address=/bedhdig.cn/127.0.0.1 -address=/beeho.site/127.0.0.1 -address=/beijinglvyou.net.cn/127.0.0.1 -address=/bejzz.top/127.0.0.1 -address=/bench-life.me/127.0.0.1 -address=/bensezhiye.com/127.0.0.1 -address=/bfgg365.com/127.0.0.1 -address=/biandaosheng.com/127.0.0.1 -address=/biaoshipai.net/127.0.0.1 -address=/bigbos.top/127.0.0.1 -address=/billionfocus.com/127.0.0.1 -address=/bingyinq.com/127.0.0.1 -address=/biochempop.com/127.0.0.1 -address=/bivitr.com/127.0.0.1 -address=/biyibia.com/127.0.0.1 -address=/bj-bytsk.com/127.0.0.1 -address=/bjedpt.com/127.0.0.1 -address=/bjgtsh.com/127.0.0.1 -address=/bjtrld.com/127.0.0.1 -address=/bjyikao.org/127.0.0.1 -address=/bkyhq.cn/127.0.0.1 -address=/bla01.com/127.0.0.1 -address=/bllzgqbyp/127.0.0.1 -address=/blogdaka.cc/127.0.0.1 -address=/blogdaka.xyz/127.0.0.1 -address=/bnq86.com/127.0.0.1 -address=/borsendental.com/127.0.0.1 -address=/bosatria.cn/127.0.0.1 -address=/bosiwangzi.cn/127.0.0.1 -address=/boyueguoji.com/127.0.0.1 -address=/bp776.com/127.0.0.1 -address=/breezily168.com/127.0.0.1 -address=/bskeye.com/127.0.0.1 -address=/bsriedu.cn/127.0.0.1 -address=/btmp4.net/127.0.0.1 -address=/btssy.net/127.0.0.1 -address=/btwan5.com/127.0.0.1 -address=/bv8888.com/127.0.0.1 -address=/bxgmb.com/127.0.0.1 -address=/bxjpl.cn/127.0.0.1 -address=/bxjt518.com/127.0.0.1 -address=/bydonline.com/127.0.0.1 -address=/bypbwm.cn/127.0.0.1 -address=/cachesit.com/127.0.0.1 -address=/cadsips.com/127.0.0.1 -address=/caicool.co/127.0.0.1 -address=/caliyuna.cn/127.0.0.1 -address=/cangnews.com/127.0.0.1 -address=/caob5.info/127.0.0.1 -address=/caolvch.com/127.0.0.1 -address=/caredaily.me/127.0.0.1 -address=/carpenterrprp.com/127.0.0.1 -address=/cayanfang.com/127.0.0.1 -address=/cb.baidu.com/127.0.0.1 -address=/cbjs.baidu.com/127.0.0.1 -address=/cc599.com/127.0.0.1 -address=/ccbaihehq.com/127.0.0.1 -address=/cccccd.com/127.0.0.1 -address=/cctyly.com/127.0.0.1 -address=/cd-best.cn/127.0.0.1 -address=/cdlinli.com/127.0.0.1 -address=/cdnjsp.wang/127.0.0.1 -address=/cdnny.com/127.0.0.1 -address=/cdyqc.com/127.0.0.1 -address=/cfboo.com/127.0.0.1 -address=/cferw.com/127.0.0.1 -address=/cfqpxzx.com/127.0.0.1 -address=/cg2017.com/127.0.0.1 -address=/cgskqg.com/127.0.0.1 -address=/chadegongxiao.com/127.0.0.1 -address=/championmachinery-cn.com/127.0.0.1 -address=/chaoliangyun.com/127.0.0.1 -address=/charlesfc.com/127.0.0.1 -address=/chaxinyong.net/127.0.0.1 -address=/chebse.com/127.0.0.1 -address=/chehuanjie.com/127.0.0.1 -address=/chengzhao95511.com/127.0.0.1 -address=/chenyanjiao.cn/127.0.0.1 -address=/china-pengdu.cn/127.0.0.1 -address=/china-star.cc/127.0.0.1 -address=/chinaheh.com/127.0.0.1 -address=/chinaweichu.net/127.0.0.1 -address=/chiuhua.com.cn/127.0.0.1 -address=/chmae.com/127.0.0.1 -address=/chnhty.com/127.0.0.1 -address=/chongxiaota.top/127.0.0.1 -address=/christinehris.com/127.0.0.1 -address=/chromc.com/127.0.0.1 -address=/chucity.com/127.0.0.1 -address=/chuhanweb.com/127.0.0.1 -address=/chushoushijian.cn/127.0.0.1 -address=/chuzushijian.cn/127.0.0.1 -address=/ci-web.cn/127.0.0.1 -address=/ciajingman.com/127.0.0.1 -address=/cj-cy.com/127.0.0.1 -address=/cjsdtj.com/127.0.0.1 -address=/ckseeknew.com/127.0.0.1 -address=/claz.com.cn/127.0.0.1 -address=/clcassd.com/127.0.0.1 -address=/cmaxisolation.com/127.0.0.1 -address=/cmslayue.com/127.0.0.1 -address=/cnbole.net/127.0.0.1 -address=/cncy8.com/127.0.0.1 -address=/cnfanglei.com/127.0.0.1 -address=/cnhbxx.com/127.0.0.1 -address=/cnkok.com/127.0.0.1 -address=/cnpinzhuo.com/127.0.0.1 -address=/cnscdj.com/127.0.0.1 -address=/cnsjx.net/127.0.0.1 -address=/cnxad.net/127.0.0.1 -address=/cnzz.com.so/127.0.0.1 -address=/cnzzlink.com/127.0.0.1 -address=/code222.com/127.0.0.1 -address=/code668.com/127.0.0.1 -address=/compass-fit.jp/127.0.0.1 -address=/cooolyi.cn/127.0.0.1 -address=/corocksi.com/127.0.0.1 -address=/cosoyoo.com/127.0.0.1 -address=/couqm.com.cn/127.0.0.1 -address=/cpcv.cc/127.0.0.1 -address=/cpms.cc/127.0.0.1 -address=/cpro.baidu.com/127.0.0.1 -address=/cpro.baidustatic.com/127.0.0.1 -address=/cpshwl.cn/127.0.0.1 -address=/cpv6.com/127.0.0.1 -address=/cpva.cc/127.0.0.1 -address=/cqfangduan.com/127.0.0.1 -address=/cqftonline.com/127.0.0.1 -address=/cqhnm.com/127.0.0.1 -address=/cqjjlsy.com/127.0.0.1 -address=/cqyhd.com/127.0.0.1 -address=/cralp.cn/127.0.0.1 -address=/crdrjs.info/127.0.0.1 -address=/cre99.com/127.0.0.1 -address=/crywl.com/127.0.0.1 -address=/csbthyhh.com/127.0.0.1 -address=/csgtfruit.com/127.0.0.1 -address=/csqiulong.com/127.0.0.1 -address=/cssdiv.club/127.0.0.1 -address=/cstoa.com/127.0.0.1 -address=/csxsyp.cn/127.0.0.1 -address=/ct1985.com/127.0.0.1 -address=/ctrhfd.top/127.0.0.1 -address=/ctripatm.cn/127.0.0.1 -address=/ctsywy.com/127.0.0.1 -address=/cweclub.cn/127.0.0.1 -address=/cwmlm.com/127.0.0.1 -address=/cxd-ailegou.com/127.0.0.1 -address=/cxfzw.cn/127.0.0.1 -address=/cy-block.cn/127.0.0.1 -address=/cyacc.com/127.0.0.1 -address=/cylinderlongcheng.com/127.0.0.1 -address=/cytcm.com/127.0.0.1 -address=/czdqhyo1.net/127.0.0.1 -address=/czjiuding.cn/127.0.0.1 -address=/czpush.com/127.0.0.1 -address=/czpwm.com/127.0.0.1 -address=/cztanchao.com/127.0.0.1 -address=/d15cjcet1djbmv.cloudfront.net/127.0.0.1 -address=/d3nh49.com/127.0.0.1 -address=/dadjia.com/127.0.0.1 -address=/dafapai.com/127.0.0.1 -address=/dahanedu.com/127.0.0.1 -address=/daima123.cc/127.0.0.1 -address=/dalianhengtai.com/127.0.0.1 -address=/daliantong.com.cn/127.0.0.1 -address=/dami66.cn/127.0.0.1 -address=/danangmo.cn/127.0.0.1 -address=/dandan11.top/127.0.0.1 -address=/dandan13.top/127.0.0.1 -address=/dandan15.top/127.0.0.1 -address=/danpinwu.com/127.0.0.1 -address=/dante2007.com/127.0.0.1 -address=/dashaowu.com/127.0.0.1 -address=/dashet.com/127.0.0.1 -address=/datafastguru.info/127.0.0.1 -address=/dawwx.com/127.0.0.1 -address=/dazhonghua.cn/127.0.0.1 -address=/dazibenwm.com/127.0.0.1 -address=/dbncp.com/127.0.0.1 -address=/dbojetp.cn/127.0.0.1 -address=/ddhtek.com/127.0.0.1 -address=/ddomm.com/127.0.0.1 -address=/detuns.com/127.0.0.1 -address=/df3n43m.com/127.0.0.1 -address=/df77.com/127.0.0.1 -address=/dgpzx.com/127.0.0.1 -address=/dhlmy.com/127.0.0.1 -address=/dhxyzx.cn/127.0.0.1 -address=/di9qu.com.cn/127.0.0.1 -address=/dianwenwang.com/127.0.0.1 -address=/diaojiaoji168.com/127.0.0.1 -address=/dilcn.net/127.0.0.1 -address=/dingon.com.cn/127.0.0.1 -address=/dingyuanyao.cn/127.0.0.1 -address=/diuling.com/127.0.0.1 -address=/dizhonghaihotel.com/127.0.0.1 -address=/djy518.com/127.0.0.1 -address=/dkqapp.cn/127.0.0.1 -address=/dleke.com/127.0.0.1 -address=/dlhygj.com/127.0.0.1 -address=/dlkjgjmy.com/127.0.0.1 -address=/dlpifu.com/127.0.0.1 -address=/dlrijiaele.com/127.0.0.1 -address=/dlzjdesign.com/127.0.0.1 -address=/dnskuu.com/127.0.0.1 -address=/dnvus.com/127.0.0.1 -address=/door2new.net/127.0.0.1 -address=/dou777.com/127.0.0.1 -address=/doudao.cn/127.0.0.1 -address=/dpc6.cn/127.0.0.1 -address=/dpjszs.com/127.0.0.1 -address=/dqsft.com/127.0.0.1 -address=/dragoncent.com/127.0.0.1 -address=/dreamfull.cn/127.0.0.1 -address=/drjgjngf.com/127.0.0.1 -address=/drlsf.com/127.0.0.1 -address=/drmcmm.baidu.com/127.0.0.1 -address=/drmfslx.cn/127.0.0.1 -address=/drxrc.com/127.0.0.1 -address=/dshrx.com/127.0.0.1 -address=/dszan.com/127.0.0.1 -address=/dtrcw.cc/127.0.0.1 -address=/dugbvb.com/127.0.0.1 -address=/duiwai.baidu.com/127.0.0.1 -address=/duobaoqj.com/127.0.0.1 -address=/duoduo.icu/127.0.0.1 -address=/duoqumanhua.com/127.0.0.1 -address=/duusuu.com/127.0.0.1 -address=/duyihu.net/127.0.0.1 -address=/dvr8.com/127.0.0.1 -address=/dw998.com/127.0.0.1 -address=/dx1200.com/127.0.0.1 -address=/dxssiyi.com/127.0.0.1 -address=/dy886.cn/127.0.0.1 -address=/dy8nb.com/127.0.0.1 -address=/dyssir.com/127.0.0.1 -address=/dzjzg.com/127.0.0.1 -address=/dzletao.com/127.0.0.1 -address=/dzxwnews.com/127.0.0.1 -address=/e-demx.com/127.0.0.1 -address=/e-heater.vip/127.0.0.1 -address=/e7001.com/127.0.0.1 -address=/e7002.com/127.0.0.1 -address=/e7009.com/127.0.0.1 -address=/e701.net/127.0.0.1 -address=/e70123.com/127.0.0.1 -address=/e7015.com/127.0.0.1 -address=/e704.net/127.0.0.1 -address=/e705.net/127.0.0.1 -address=/e706.net/127.0.0.1 -address=/e708.net/127.0.0.1 -address=/e719.net/127.0.0.1 -address=/ecuc123.net/127.0.0.1 -address=/eddjf.com/127.0.0.1 -address=/edncui.net/127.0.0.1 -address=/edo5.com/127.0.0.1 -address=/eduad.baidu.com/127.0.0.1 -address=/eduzzjy.com/127.0.0.1 -address=/eeee500.com/127.0.0.1 -address=/egjq.com.cn/127.0.0.1 -address=/einsuran.com.cn/127.0.0.1 -address=/eiv.baidu.com/127.0.0.1 -address=/ekeide.com/127.0.0.1 -address=/enohb.com/127.0.0.1 -address=/erdsyzb.com/127.0.0.1 -address=/erosyndc.com/127.0.0.1 -address=/erqimall.net/127.0.0.1 -address=/ethic.vip/127.0.0.1 -address=/evefashion.cn/127.0.0.1 -address=/expo123.net/127.0.0.1 -address=/eyd77s.com/127.0.0.1 -address=/ez33.org.cn/127.0.0.1 -address=/ezucods.cn/127.0.0.1 -address=/f1190.com/127.0.0.1 -address=/f2zd.com/127.0.0.1 -address=/f6ce.com/127.0.0.1 -address=/f70123.com/127.0.0.1 -address=/facebookma.cn/127.0.0.1 -address=/family-joy.com/127.0.0.1 -address=/fanli.in/127.0.0.1 -address=/farm-cn.plista.com/127.0.0.1 -address=/fastable.com/127.0.0.1 -address=/fccxgjg.com/127.0.0.1 -address=/fcsass.org.cn/127.0.0.1 -address=/fd7c.com/127.0.0.1 -address=/fdzsmfyy.com/127.0.0.1 -address=/fecjf.cn/127.0.0.1 -address=/feisia1.cn/127.0.0.1 -address=/fenggejiaju.com/127.0.0.1 -address=/fengyelin.net/127.0.0.1 -address=/fexiaen.com/127.0.0.1 -address=/ff112244.com/127.0.0.1 -address=/ffa9.cn/127.0.0.1 -address=/ffhtek.com/127.0.0.1 -address=/fjbzjc.com/127.0.0.1 -address=/fjkst.com/127.0.0.1 -address=/fjmeyer.com/127.0.0.1 -address=/fjsjsj.com/127.0.0.1 -address=/flowcodeapp.com/127.0.0.1 -address=/fnkjj.com/127.0.0.1 -address=/focusprolight.com/127.0.0.1 -address=/foreveryoung.gz01.bdysite.com/127.0.0.1 -address=/forrerri.com/127.0.0.1 -address=/fos123.com/127.0.0.1 -address=/founseezb.cn/127.0.0.1 -address=/fqtra.com/127.0.0.1 -address=/fst360.com/127.0.0.1 -address=/fsyzcs.com/127.0.0.1 -address=/ft76531.com/127.0.0.1 -address=/fthcz.com/127.0.0.1 -address=/fu68.com/127.0.0.1 -address=/fujianryt.com/127.0.0.1 -address=/fuxunb.com/127.0.0.1 -address=/fv99.com/127.0.0.1 -address=/fwqekk.top/127.0.0.1 -address=/fwt0.com/127.0.0.1 -address=/fxmacd.com/127.0.0.1 -address=/fxtducb.cn/127.0.0.1 -address=/fydgold132.com/127.0.0.1 -address=/fytza.cn/127.0.0.1 -address=/fzglqyy.com/127.0.0.1 -address=/g1.tagtic.cn/127.0.0.1 -address=/g1c5.com/127.0.0.1 -address=/g1f5.com/127.0.0.1 -address=/gangtiebang.net/127.0.0.1 -address=/gaoxiaocup.com/127.0.0.1 -address=/garacy.cn/127.0.0.1 -address=/gasxf.com/127.0.0.1 -address=/gaycloud.cn/127.0.0.1 -address=/gdbly.com/127.0.0.1 -address=/gdgy56.com/127.0.0.1 -address=/gdskywings.com/127.0.0.1 -address=/ge95.com/127.0.0.1 -address=/geili.co/127.0.0.1 -address=/geiyujieda.com/127.0.0.1 -address=/geryi.com/127.0.0.1 -address=/gf108.com/127.0.0.1 -address=/gf1352.com/127.0.0.1 -address=/gfd80.com/127.0.0.1 -address=/gg0376.com/127.0.0.1 -address=/gg570.com/127.0.0.1 -address=/ggdoubi.com/127.0.0.1 -address=/ggdydz.com/127.0.0.1 -address=/ggweb.net/127.0.0.1 -address=/ghnmg.top/127.0.0.1 -address=/ghosttty.cn/127.0.0.1 -address=/gjghy.com/127.0.0.1 -address=/glasszz.com/127.0.0.1 -address=/gm682.com/127.0.0.1 -address=/goge365-baidu.com/127.0.0.1 -address=/goodgz.cn/127.0.0.1 -address=/googlealiyun.cn/127.0.0.1 -address=/googletakes.com/127.0.0.1 -address=/gotoniubiurl.pw/127.0.0.1 -address=/gouhei.top/127.0.0.1 -address=/gouzhibao.cn/127.0.0.1 -address=/govgift.com/127.0.0.1 -address=/gowin01.com/127.0.0.1 -address=/gqswg.com/127.0.0.1 -address=/greenbetterkids.com/127.0.0.1 -address=/gshtrl.top/127.0.0.1 -address=/gso0.com/127.0.0.1 -address=/gssxb.com/127.0.0.1 -address=/gsycdb.com/127.0.0.1 -address=/gszbba.cn/127.0.0.1 -address=/gtmucs.cn/127.0.0.1 -address=/guangzizai.com/127.0.0.1 -address=/guduopu.com/127.0.0.1 -address=/gugulonger.cn/127.0.0.1 -address=/guidashu.com/127.0.0.1 -address=/guoshennet.com/127.0.0.1 -address=/guoxintdh.com/127.0.0.1 -address=/gutouwang.net/127.0.0.1 -address=/guzijie.top/127.0.0.1 -address=/gw069.com/127.0.0.1 -address=/gwylm.com/127.0.0.1 -address=/gxejgs.com/127.0.0.1 -address=/gxgzyny.com/127.0.0.1 -address=/gxhxmy88.com/127.0.0.1 -address=/gydag.com/127.0.0.1 -address=/gygdmy.com/127.0.0.1 -address=/gzdhzb.com/127.0.0.1 -address=/gze3.cn/127.0.0.1 -address=/gzktpf.com/127.0.0.1 -address=/gzmjnx.cn/127.0.0.1 -address=/gzqudou.com/127.0.0.1 -address=/gzxiongwa.cn/127.0.0.1 -address=/gzxxty168.com/127.0.0.1 -address=/h0o33.cn/127.0.0.1 -address=/h9377c.com/127.0.0.1 -address=/haitejs.com/127.0.0.1 -address=/haiwengji.net/127.0.0.1 -address=/haiyunimg.com/127.0.0.1 -address=/haiyunpush.com/127.0.0.1 -address=/haizirv.cn/127.0.0.1 -address=/hanju18.net/127.0.0.1 -address=/hanqidq.com/127.0.0.1 -address=/hao123rt.com/127.0.0.1 -address=/hao61.net/127.0.0.1 -address=/haohaowan8.com/127.0.0.1 -address=/haolew.com/127.0.0.1 -address=/harridan.cc/127.0.0.1 -address=/hascosafety.com/127.0.0.1 -address=/hbalx.cn/127.0.0.1 -address=/hbguohua.com/127.0.0.1 -address=/hbhnwy.com/127.0.0.1 -address=/hbhtbn.com/127.0.0.1 -address=/hblinwei.com/127.0.0.1 -address=/hbngfy.com/127.0.0.1 -address=/hbssjd.cn/127.0.0.1 -address=/hbstty.com/127.0.0.1 -address=/hbyingchang.cn/127.0.0.1 -address=/hbzjht.com/127.0.0.1 -address=/hcreditx.com/127.0.0.1 -address=/hcwljy.com/127.0.0.1 -address=/heib10.top/127.0.0.1 -address=/heib12.top/127.0.0.1 -address=/hejingroup.cn/127.0.0.1 -address=/helanpinpai.com/127.0.0.1 -address=/hengshui1.com/127.0.0.1 -address=/hesxz.com/127.0.0.1 -address=/heygugu.com/127.0.0.1 -address=/hezhenzi.com/127.0.0.1 -address=/hfjuki.com/127.0.0.1 -address=/hfsteel.net/127.0.0.1 -address=/hg-labs.com/127.0.0.1 -address=/hhhhbf.com/127.0.0.1 -address=/hhly88.com/127.0.0.1 -address=/hhppyt.com/127.0.0.1 -address=/hi760.com/127.0.0.1 -address=/hiad.myweb.hinet.net/127.0.0.1 -address=/hivecn.cn/127.0.0.1 -address=/hk662.com/127.0.0.1 -address=/hkfuy.com/127.0.0.1 -address=/hktv10.com/127.0.0.1 -address=/hmnjf.com/127.0.0.1 -address=/hmp33.com/127.0.0.1 -address=/hnasd.com/127.0.0.1 -address=/hnctsm.com/127.0.0.1 -address=/hnfpgm.com/127.0.0.1 -address=/hnh-hotel.com/127.0.0.1 -address=/hnhycp.com/127.0.0.1 -address=/hntymg.com/127.0.0.1 -address=/hnyiche3.com/127.0.0.1 -address=/hnyny.com/127.0.0.1 -address=/hongchenzhilu.com/127.0.0.1 -address=/hongtefm.com/127.0.0.1 -address=/hot-eam.com/127.0.0.1 -address=/houdaolj.com/127.0.0.1 -address=/houtanyun.com/127.0.0.1 -address=/hqygz.com/127.0.0.1 -address=/hr41.cn/127.0.0.1 -address=/hr44.com/127.0.0.1 -address=/hrbpay.com/127.0.0.1 -address=/hrcmzp.cn/127.0.0.1 -address=/hskj.net/127.0.0.1 -address=/hslyqs.com/127.0.0.1 -address=/huaerduo.com/127.0.0.1 -address=/huanqiucaizhi.com/127.0.0.1 -address=/huapuzs.com/127.0.0.1 -address=/huashengtai.net/127.0.0.1 -address=/huashuowork.com/127.0.0.1 -address=/hubojd.com/127.0.0.1 -address=/huichenbz.com/127.0.0.1 -address=/huimee.net/127.0.0.1 -address=/humanding.com/127.0.0.1 -address=/hurom365.cn/127.0.0.1 -address=/hw6.com/127.0.0.1 -address=/hxadt.com/127.0.0.1 -address=/hxgccl.cn/127.0.0.1 -address=/hxlif.com/127.0.0.1 -address=/hxnzyy.com/127.0.0.1 -address=/hxscba.com/127.0.0.1 -address=/hxtwl.cn/127.0.0.1 -address=/hxyifu.com/127.0.0.1 -address=/hxyx360.com/127.0.0.1 -address=/hylyl.club/127.0.0.1 -address=/hys4.com/127.0.0.1 -address=/hysjm.cn/127.0.0.1 -address=/hystq.com/127.0.0.1 -address=/hytgj.com/127.0.0.1 -address=/hyz86.com/127.0.0.1 -address=/hzaibi.com/127.0.0.1 -address=/hzmiyou.cn/127.0.0.1 -address=/hzxma.com/127.0.0.1 -address=/i.zhuoyaju.com/127.0.0.1 -address=/i3818.com/127.0.0.1 -address=/i92xue.com/127.0.0.1 -address=/icemf.com/127.0.0.1 -address=/id528.com/127.0.0.1 -address=/idasai.com/127.0.0.1 -address=/idasui.cn/127.0.0.1 -address=/idcqi.com/127.0.0.1 -address=/idianfang.com/127.0.0.1 -address=/idoc58.com/127.0.0.1 -address=/ie8q.cn/127.0.0.1 -address=/ienkdaged.cn/127.0.0.1 -address=/iewad.net/127.0.0.1 -address=/if1512.com/127.0.0.1 -address=/ifufen.com/127.0.0.1 -address=/ihualun.com/127.0.0.1 -address=/il8r.com/127.0.0.1 -address=/ilovechenyuqian.xyz/127.0.0.1 -address=/img1122.com/127.0.0.1 -address=/img80.net/127.0.0.1 -address=/imneinei.com/127.0.0.1 -address=/inpetusgames.com/127.0.0.1 -address=/insuf.cn/127.0.0.1 -address=/iomsew.com/127.0.0.1 -address=/iqiyi.kim/127.0.0.1 -address=/iqiyi.pub/127.0.0.1 -address=/iqu-operation.com/127.0.0.1 -address=/iroby.com/127.0.0.1 -address=/isabelisa.com/127.0.0.1 -address=/ishowbg.com/127.0.0.1 -address=/italy-lottery.com/127.0.0.1 -address=/itemccmod.com/127.0.0.1 -address=/iuuff.com/127.0.0.1 -address=/iwansf.com/127.0.0.1 -address=/iyoowi.com/127.0.0.1 -address=/iyptc.cn/127.0.0.1 -address=/iyygzs.com/127.0.0.1 -address=/j94.cc/127.0.0.1 -address=/ja9377.com/127.0.0.1 -address=/jackaow.com/127.0.0.1 -address=/jbyy010.com/127.0.0.1 -address=/jcdfdhx.top/127.0.0.1 -address=/jczzjx.com/127.0.0.1 -address=/jdlcg.cn/127.0.0.1 -address=/jdlhg.com/127.0.0.1 -address=/jermr.com/127.0.0.1 -address=/jfjsp.com/127.0.0.1 -address=/jfqkj.com/127.0.0.1 -address=/jgchq.com/127.0.0.1 -address=/jghcy.com/127.0.0.1 -address=/jgwsmqx.com/127.0.0.1 -address=/jhakie.com/127.0.0.1 -address=/jhtcdj.com/127.0.0.1 -address=/jhzl001.com/127.0.0.1 -address=/jiaheyonggu.com/127.0.0.1 -address=/jiajv.net/127.0.0.1 -address=/jianbaimei.com/127.0.0.1 -address=/jianbangjiaoyu.com/127.0.0.1 -address=/jianduankm.com/127.0.0.1 -address=/jianglongjie.cn/127.0.0.1 -address=/jiangmg.com/127.0.0.1 -address=/jianjiaovip.vip/127.0.0.1 -address=/jianmei123.com/127.0.0.1 -address=/jianyousj.com/127.0.0.1 -address=/jiasdart.cn/127.0.0.1 -address=/jiehantai.com/127.0.0.1 -address=/jiekc.com/127.0.0.1 -address=/jimeilm.com/127.0.0.1 -address=/jindu179.com/127.0.0.1 -address=/jingezhao.cn/127.0.0.1 -address=/jinglongtang.cn/127.0.0.1 -address=/jinshasi.cn/127.0.0.1 -address=/jiuku.cc/127.0.0.1 -address=/jiupinshan.cn/127.0.0.1 -address=/jiyou2014.com/127.0.0.1 -address=/jjxgly.com/127.0.0.1 -address=/jjz666.cn/127.0.0.1 -address=/jk939.com/127.0.0.1 -address=/jkjjkj.top/127.0.0.1 -address=/jkmxy.com/127.0.0.1 -address=/jktopia.com/127.0.0.1 -address=/jl027.com/127.0.0.1 -address=/jlssbz.com/127.0.0.1 -address=/jlwljym.com/127.0.0.1 -address=/jnxz88.cn/127.0.0.1 -address=/jnyngg.cn/127.0.0.1 -address=/johtzj.com/127.0.0.1 -address=/josipr.com/127.0.0.1 -address=/jossuer.net/127.0.0.1 -address=/joyfuldoors.com/127.0.0.1 -address=/jozee.cn/127.0.0.1 -address=/jqsex.com/127.0.0.1 -address=/jqz9.com/127.0.0.1 -address=/js.xiao7cdn.com/127.0.0.1 -address=/js88895.net/127.0.0.1 -address=/jsadt.com/127.0.0.1 -address=/jschuangnuo.com/127.0.0.1 -address=/jscsd.cn/127.0.0.1 -address=/jsmwd.com/127.0.0.1 -address=/jsyxfdj.com/127.0.0.1 -address=/jsyzw132.com/127.0.0.1 -address=/jtdxz.top/127.0.0.1 -address=/jtkshop.net/127.0.0.1 -address=/jucaishequ.com/127.0.0.1 -address=/junfull.com/127.0.0.1 -address=/junkucm.com/127.0.0.1 -address=/jushikk.com/127.0.0.1 -address=/jutou5.com/127.0.0.1 -address=/juuhe.com/127.0.0.1 -address=/juyiqiche.com.cn/127.0.0.1 -address=/jwqj.net/127.0.0.1 -address=/jx118114.net/127.0.0.1 -address=/jxabp.com.cn/127.0.0.1 -address=/jxbjt.com/127.0.0.1 -address=/jxjzny.com/127.0.0.1 -address=/jxlqgs.com/127.0.0.1 -address=/jxsgxzx.com/127.0.0.1 -address=/jxwlkssb.com/127.0.0.1 -address=/jxxiangchu.com/127.0.0.1 -address=/jystea.com/127.0.0.1 -address=/k12shequ.com/127.0.0.1 -address=/k1815.com/127.0.0.1 -address=/k8yy.tv/127.0.0.1 -address=/ka12138.top/127.0.0.1 -address=/kan8.xyz/127.0.0.1 -address=/kawa11.space/127.0.0.1 -address=/kawinhome.com/127.0.0.1 -address=/kddtri.cn/127.0.0.1 -address=/kdqoehj.top/127.0.0.1 -address=/kehuziliaona.com/127.0.0.1 -address=/kele4.com/127.0.0.1 -address=/keyyou.net/127.0.0.1 -address=/kf3msfm.com/127.0.0.1 -address=/kfd3sm2c.com/127.0.0.1 -address=/kfi8.com/127.0.0.1 -address=/kfluoa.com/127.0.0.1 -address=/kgcj00.cn/127.0.0.1 -address=/kgcjgsa8.net/127.0.0.1 -address=/kguke.com/127.0.0.1 -address=/kh2134.com/127.0.0.1 -address=/khufaw2.com/127.0.0.1 -address=/kicnse.com/127.0.0.1 -address=/kilin.xyz/127.0.0.1 -address=/kingpolo.com.cn/127.0.0.1 -address=/kingwam.com/127.0.0.1 -address=/kitchenfurniture.cc/127.0.0.1 -address=/kjfoqi.cn/127.0.0.1 -address=/kjgen.com/127.0.0.1 -address=/kjwx8.com/127.0.0.1 -address=/kkcaicai.com/127.0.0.1 -address=/kl-toys.com/127.0.0.1 -address=/kld666.com/127.0.0.1 -address=/kldmm.com/127.0.0.1 -address=/klsdmr.com/127.0.0.1 -address=/kltces.com/127.0.0.1 -address=/kmadou.com/127.0.0.1 -address=/kmwqxqh.com/127.0.0.1 -address=/kod4pc293.com/127.0.0.1 -address=/kojwex.top/127.0.0.1 -address=/kokofits.com/127.0.0.1 -address=/kooyum.com/127.0.0.1 -address=/koukou7.com/127.0.0.1 -address=/kouwku.cn/127.0.0.1 -address=/kqy1.com/127.0.0.1 -address=/ksrsy.com/127.0.0.1 -address=/kt220.com/127.0.0.1 -address=/ktunions.com/127.0.0.1 -address=/ktv0311.com/127.0.0.1 -address=/ku9377.com/127.0.0.1 -address=/kuaipai666.cn/127.0.0.1 -address=/kuaizuoffice.com/127.0.0.1 -address=/kuwoyy.com/127.0.0.1 -address=/kwiago.com/127.0.0.1 -address=/kxrxh.com/127.0.0.1 -address=/kyouad.com/127.0.0.1 -address=/ladsblue.com/127.0.0.1 -address=/laifu365.com/127.0.0.1 -address=/lala-my.club/127.0.0.1 -address=/lamwatch.com/127.0.0.1 -address=/langchars.com/127.0.0.1 -address=/lanxiangji.com/127.0.0.1 -address=/laobei.top/127.0.0.1 -address=/laolinow.com/127.0.0.1 -address=/lashou1000.com/127.0.0.1 -address=/lc1b2.cn/127.0.0.1 -address=/lc442.com/127.0.0.1 -address=/ldgjhd.net/127.0.0.1 -address=/le4le.com/127.0.0.1 -address=/leamain.net/127.0.0.1 -address=/leeleo.top/127.0.0.1 -address=/leletuitui.com/127.0.0.1 -address=/leshigov.cn/127.0.0.1 -address=/letaojuan68.com/127.0.0.1 -address=/leztc.com/127.0.0.1 -address=/lfhnkp.com/127.0.0.1 -address=/lflili.com/127.0.0.1 -address=/lflucky.com/127.0.0.1 -address=/lhafy.com/127.0.0.1 -address=/lhengilin.com/127.0.0.1 -address=/lhusy.com/127.0.0.1 -address=/liangziweixg.com/127.0.0.1 -address=/liaoren85.com/127.0.0.1 -address=/librarymanagement.cn/127.0.0.1 -address=/lievr.cc/127.0.0.1 -address=/lifu11.com/127.0.0.1 -address=/liliwoin.top/127.0.0.1 -address=/linjiajia.cn/127.0.0.1 -address=/linkbide.com/127.0.0.1 -address=/linkpage.cn/127.0.0.1 -address=/linkwuliu.com/127.0.0.1 -address=/lintyone.top/127.0.0.1 -address=/lisaiservice.top/127.0.0.1 -address=/lishuanghao.com/127.0.0.1 -address=/litlif.net/127.0.0.1 -address=/livehapp.com/127.0.0.1 -address=/lixuanbaojie.com/127.0.0.1 -address=/ljqnbiogjp.com/127.0.0.1 -address=/llguandongyan.com/127.0.0.1 -address=/llqss.top/127.0.0.1 -address=/lnctc.net/127.0.0.1 -address=/lnfund.org.cn/127.0.0.1 -address=/loandatec.com/127.0.0.1 -address=/log.interest.mix.sina.com.cn/127.0.0.1 -address=/lolmp4.com/127.0.0.1 -address=/long88.app/127.0.0.1 -address=/loveconer.com/127.0.0.1 -address=/lovestyl.com/127.0.0.1 -address=/lovexia.top/127.0.0.1 -address=/lsper.top/127.0.0.1 -address=/lsxmg.com/127.0.0.1 -address=/ltcprtc.com/127.0.0.1 -address=/ltdnc.com/127.0.0.1 -address=/lthxz.cn/127.0.0.1 -address=/lu.sogou.com/127.0.0.1 -address=/lu.sogoucdn.com/127.0.0.1 -address=/lubosheng.cn/127.0.0.1 -address=/lucting.cn/127.0.0.1 -address=/luntan588.space/127.0.0.1 -address=/luoyuanedu.cn/127.0.0.1 -address=/lv55p.cn/127.0.0.1 -address=/lvehaisen.com/127.0.0.1 -address=/lxqcgj.com/127.0.0.1 -address=/lyadu.com/127.0.0.1 -address=/lyaeccn.com/127.0.0.1 -address=/lygshgj.com/127.0.0.1 -address=/lyhdream.com/127.0.0.1 -address=/lymstsc.com/127.0.0.1 -address=/lyraik.cn/127.0.0.1 -address=/lyrymy.com/127.0.0.1 -address=/lytubaobao.com/127.0.0.1 -address=/lyunsd.cn/127.0.0.1 -address=/lyztdz.com/127.0.0.1 -address=/lzmm8.com/127.0.0.1 -address=/lzwla.top/127.0.0.1 -address=/magictreehouse.cn/127.0.0.1 -address=/magiphone.cn/127.0.0.1 -address=/maibahe300cc.com/127.0.0.1 -address=/mainbx.com/127.0.0.1 -address=/maisoncherry.com/127.0.0.1 -address=/maizhenai.cn/127.0.0.1 -address=/mall043.com/127.0.0.1 -address=/manparis.cn/127.0.0.1 -address=/maskbaby.com.cn/127.0.0.1 -address=/maxfull.info/127.0.0.1 -address=/mcdhshlsboom.com/127.0.0.1 -address=/meicubao.cn/127.0.0.1 -address=/meilides.com/127.0.0.1 -address=/meimeidaren.com/127.0.0.1 -address=/meimeiha.com/127.0.0.1 -address=/meiti1.net/127.0.0.1 -address=/mengbingyuan.com/127.0.0.1 -address=/mengheyu.com/127.0.0.1 -address=/menghuanzs.com/127.0.0.1 -address=/mengmengdas.com/127.0.0.1 -address=/mengyuanwei.com/127.0.0.1 -address=/metmt.com/127.0.0.1 -address=/mfcvxw.cn/127.0.0.1 -address=/mglvqian.com/127.0.0.1 -address=/mgwcn.com/127.0.0.1 -address=/mieyisi.com/127.0.0.1 -address=/min1319.com/127.0.0.1 -address=/mindopu.com/127.0.0.1 -address=/mingxianshanghang.cn/127.0.0.1 -address=/mingysh.com/127.0.0.1 -address=/mjx123.com/127.0.0.1 -address=/mkaqh.cn/127.0.0.1 -address=/mlt01.com/127.0.0.1 -address=/mm-cgnews.com/127.0.0.1 -address=/mmpnierhio.com/127.0.0.1 -address=/mnxtu.com/127.0.0.1 -address=/mofun.ltd/127.0.0.1 -address=/moguozhi.com/127.0.0.1 -address=/moodoocrv.com.cn/127.0.0.1 -address=/moonwish.com.cn/127.0.0.1 -address=/motohelpr.com/127.0.0.1 -address=/moutaihotel.cn/127.0.0.1 -address=/mozist.com/127.0.0.1 -address=/mr087.cn/127.0.0.1 -address=/mrksys.com/127.0.0.1 -address=/ms758.com/127.0.0.1 -address=/mscimg.com/127.0.0.1 -address=/mskjf.com/127.0.0.1 -address=/msltzer.cn/127.0.0.1 -address=/mstzym.com/127.0.0.1 -address=/msujd.cn/127.0.0.1 -address=/mtqys.com/127.0.0.1 -address=/mu722.com/127.0.0.1 -address=/mushan.xin/127.0.0.1 -address=/mxdregs.com/127.0.0.1 -address=/mxmrt.com/127.0.0.1 -address=/mygeneclub.com/127.0.0.1 -address=/mytzdhz.cn/127.0.0.1 -address=/myzk1.com/127.0.0.1 -address=/namemek.com/127.0.0.1 -address=/nangong2.com/127.0.0.1 -address=/nbhxgjz.com/127.0.0.1 -address=/nbjjd.com/127.0.0.1 -address=/nbzq.net/127.0.0.1 -address=/ncachear.com/127.0.0.1 -address=/nchte.com/127.0.0.1 -address=/ndtzx.com/127.0.0.1 -address=/ne9377.com/127.0.0.1 -address=/newjulads.com/127.0.0.1 -address=/newsatads.com/127.0.0.1 -address=/newtech-beauty.com/127.0.0.1 -address=/newyiba.top/127.0.0.1 -address=/nextcps.com/127.0.0.1 -address=/ni87.com/127.0.0.1 -address=/nihaomama.monster/127.0.0.1 -address=/nijiua.com/127.0.0.1 -address=/niubiba.com/127.0.0.1 -address=/niuguwang.net.cn/127.0.0.1 -address=/niulail.top/127.0.0.1 -address=/niuxgame77.com/127.0.0.1 -address=/njdijiani.com/127.0.0.1 -address=/njfsk.com/127.0.0.1 -address=/njjrlf.com/127.0.0.1 -address=/njmpacc.com/127.0.0.1 -address=/njq.net/127.0.0.1 -address=/njwxh.com/127.0.0.1 -address=/nkeo.top/127.0.0.1 -address=/nkjwmb.com/127.0.0.1 -address=/nklwgj.com/127.0.0.1 -address=/nkrwxf.com/127.0.0.1 -address=/nkscdn.com/127.0.0.1 -address=/nktcw.cn/127.0.0.1 -address=/nktwpc.com/127.0.0.1 -address=/nmeithybnvik.com/127.0.0.1 -address=/nmkgs.cn/127.0.0.1 -address=/nmpcdn.com/127.0.0.1 -address=/nmqbg.com/127.0.0.1 -address=/nnedbx.com/127.0.0.1 -address=/nngft.com/127.0.0.1 -address=/noberlmall.com/127.0.0.1 -address=/nongsalei.com/127.0.0.1 -address=/notice.uchome.manyou.com/127.0.0.1 -address=/nowskip.com/127.0.0.1 -address=/nr1234.com/127.0.0.1 -address=/nsnmiaomu.cn/127.0.0.1 -address=/nterbx.com/127.0.0.1 -address=/nthtcs.com/127.0.0.1 -address=/ntxiangtai.com/127.0.0.1 -address=/nunc-china.com/127.0.0.1 -address=/nuonuo1.icu/127.0.0.1 -address=/nuxyz.cn/127.0.0.1 -address=/nvshuyun.com/127.0.0.1 -address=/nxrhs.com/127.0.0.1 -address=/nydql.com/127.0.0.1 -address=/nysita.com/127.0.0.1 -address=/nzezn.com/127.0.0.1 -address=/nzydzsw.com/127.0.0.1 -address=/o6uea.cn/127.0.0.1 -address=/oacustom.com/127.0.0.1 -address=/oaer9.cn/127.0.0.1 -address=/officeme.cn/127.0.0.1 -address=/oikxlcv.wang/127.0.0.1 -address=/okm918.com/127.0.0.1 -address=/olmall.vip/127.0.0.1 -address=/olmvkq.cn/127.0.0.1 -address=/olxt.top/127.0.0.1 -address=/omgnjvrjgpeg.com/127.0.0.1 -address=/omztf.cn/127.0.0.1 -address=/onlifjj.net/127.0.0.1 -address=/onsnv.com/127.0.0.1 -address=/openxt.cn/127.0.0.1 -address=/oq68.com/127.0.0.1 -address=/orchidscape.net/127.0.0.1 -address=/oumazg.com/127.0.0.1 -address=/overlordtea.cn/127.0.0.1 -address=/p3tt.com/127.0.0.1 -address=/p74.cc/127.0.0.1 -address=/panel-cn.com/127.0.0.1 -address=/papajia55.com/127.0.0.1 -address=/partner-safe.men/127.0.0.1 -address=/partnerwork.men/127.0.0.1 -address=/pay838.com/127.0.0.1 -address=/pcmzn.com/127.0.0.1 -address=/pdsjycm.com/127.0.0.1 -address=/pedailyu.com/127.0.0.1 -address=/penggua.com.cn/127.0.0.1 -address=/penxiangge.com/127.0.0.1 -address=/picsinfog.com/127.0.0.1 -address=/pjshw.cn/127.0.0.1 -address=/pjtymy.cn/127.0.0.1 -address=/pnhfc.com/127.0.0.1 -address=/pnxs.com/127.0.0.1 -address=/pofang.com/127.0.0.1 -address=/poijugh.top/127.0.0.1 -address=/poke88.com/127.0.0.1 -address=/polkoa.com/127.0.0.1 -address=/popeng.top/127.0.0.1 -address=/pos.baidu.com/127.0.0.1 -address=/powergg.top/127.0.0.1 -address=/poyang.com/127.0.0.1 -address=/pr00001.com/127.0.0.1 -address=/prohibited.cn/127.0.0.1 -address=/ptdrw.com/127.0.0.1 -address=/ptkhy.com/127.0.0.1 -address=/pubbirdf.com/127.0.0.1 -address=/pyzkk.com/127.0.0.1 -address=/pzrj6.top/127.0.0.1 -address=/qarsza.cn/127.0.0.1 -address=/qbyy010.com/127.0.0.1 -address=/qclcdn.cn/127.0.0.1 -address=/qcupup.com/127.0.0.1 -address=/qdchunyu.com/127.0.0.1 -address=/qdsfzz.cn/127.0.0.1 -address=/qevcxo.cn/127.0.0.1 -address=/qfs365.com/127.0.0.1 -address=/qgjapp.com/127.0.0.1 -address=/qgss8.com/127.0.0.1 -address=/qhaif.com/127.0.0.1 -address=/qi-duo.com/127.0.0.1 -address=/qiailm.com/127.0.0.1 -address=/qianfuyin.com/127.0.0.1 -address=/qianmeiby.com/127.0.0.1 -address=/qigemm.com/127.0.0.1 -address=/qilashou.com/127.0.0.1 -address=/qingqu.la/127.0.0.1 -address=/qipskd.cn/127.0.0.1 -address=/qiqivv.com/127.0.0.1 -address=/qiqiww.com/127.0.0.1 -address=/qiqiyii.com/127.0.0.1 -address=/qjjtc.com/127.0.0.1 -address=/qjyzj.cn/127.0.0.1 -address=/qmkdy.com/127.0.0.1 -address=/qmname.com/127.0.0.1 -address=/qnvih8.cn/127.0.0.1 -address=/qo26.com/127.0.0.1 -address=/qoiusky.com/127.0.0.1 -address=/qpokok.com/127.0.0.1 -address=/qqm98.com/127.0.0.1 -address=/qqtx.me/127.0.0.1 -address=/qs01.cn/127.0.0.1 -address=/qsart.cn/127.0.0.1 -address=/qsbz2011.com/127.0.0.1 -address=/qshxc.com/127.0.0.1 -address=/qsj65.com/127.0.0.1 -address=/qsmdeyz.cn/127.0.0.1 -address=/qtch888.com/127.0.0.1 -address=/qtmojo.cn/127.0.0.1 -address=/quadasdata.cn/127.0.0.1 -address=/quandangdang.net/127.0.0.1 -address=/quansj.cn/127.0.0.1 -address=/qucaigg.com/127.0.0.1 -address=/queene.cn/127.0.0.1 -address=/quw18.com/127.0.0.1 -address=/qwedcfv.com/127.0.0.1 -address=/qxfly.com/127.0.0.1 -address=/qxjdlf.com/127.0.0.1 -address=/qxxys.com/127.0.0.1 -address=/qycjrkfzx.com/127.0.0.1 -address=/qyctj.com/127.0.0.1 -address=/qytyf.com/127.0.0.1 -address=/qzdfc.com/127.0.0.1 -address=/qzkxt.com/127.0.0.1 -address=/qzmhnk.com/127.0.0.1 -address=/qzzljx.com/127.0.0.1 -address=/rainfinemalawi.com/127.0.0.1 -address=/rangeblessedness.men/127.0.0.1 -address=/rcaiv.com/127.0.0.1 -address=/rdiqt.cn/127.0.0.1 -address=/re.taotaosou.com/127.0.0.1 -address=/reliancevalve.com/127.0.0.1 -address=/remotedu.cn/127.0.0.1 -address=/rencai56.com/127.0.0.1 -address=/renminben.com/127.0.0.1 -address=/resetgey.com/127.0.0.1 -address=/rgdhct.cn/127.0.0.1 -address=/rhgyg.com/127.0.0.1 -address=/rickysblast.cn/127.0.0.1 -address=/rideraid.net/127.0.0.1 -address=/riqu2015.com/127.0.0.1 -address=/rjk1.com/127.0.0.1 -address=/rmetop.com/127.0.0.1 -address=/roay.cn/127.0.0.1 -address=/rongchengxxw.com/127.0.0.1 -address=/rongdingwl.cn/127.0.0.1 -address=/rpaulfrank.com/127.0.0.1 -address=/rqgsf.com/127.0.0.1 -address=/rrsubway.com/127.0.0.1 -address=/rscxwmj.cn/127.0.0.1 -address=/ruangkayu.cn/127.0.0.1 -address=/runiman.com/127.0.0.1 -address=/ruxianke.com/127.0.0.1 -address=/rwjfs.com/127.0.0.1 -address=/rx616.cn/127.0.0.1 -address=/s400cc.com/127.0.0.1 -address=/s9w.cc/127.0.0.1 -address=/sadobo.com/127.0.0.1 -address=/saf588.com/127.0.0.1 -address=/safe524.xyz/127.0.0.1 -address=/saferwet.com/127.0.0.1 -address=/saitef.cn/127.0.0.1 -address=/sangxi.top/127.0.0.1 -address=/sanjinma.com/127.0.0.1 -address=/sboite.cn/127.0.0.1 -address=/sbrqp.com/127.0.0.1 -address=/scenepass.com/127.0.0.1 -address=/scfatao.com/127.0.0.1 -address=/scfrwo.cn/127.0.0.1 -address=/sciencelolb.com/127.0.0.1 -address=/sclizhong.com/127.0.0.1 -address=/scriptcc.cc/127.0.0.1 -address=/scw0.com/127.0.0.1 -address=/sdagxz.xyz/127.0.0.1 -address=/sdaixz.xyz/127.0.0.1 -address=/sdhzstone.net/127.0.0.1 -address=/sdjjr.com/127.0.0.1 -address=/sdqoi2d.com/127.0.0.1 -address=/sdtbhbyb.com/127.0.0.1 -address=/sdxkdj.cn/127.0.0.1 -address=/sdycd.com/127.0.0.1 -address=/sfloushi.com/127.0.0.1 -address=/sfxl.com.cn/127.0.0.1 -address=/sfz023.com/127.0.0.1 -address=/sgbfjs.info/127.0.0.1 -address=/shama5.com/127.0.0.1 -address=/shandongkuntuo.com/127.0.0.1 -address=/shanglinli.com/127.0.0.1 -address=/sharedaddomain.com/127.0.0.1 -address=/sharrysweb.com/127.0.0.1 -address=/shbywsd.cn/127.0.0.1 -address=/shengdianwang.cc/127.0.0.1 -address=/shenglonghg.net/127.0.0.1 -address=/shentupk85.com/127.0.0.1 -address=/shenyian.net/127.0.0.1 -address=/shiftrro.com/127.0.0.1 -address=/shkywh.com/127.0.0.1 -address=/shouwangba.cn/127.0.0.1 -address=/shouyouyou.com/127.0.0.1 -address=/show.kc.taotaosou.com/127.0.0.1 -address=/shucaihangjia.com/127.0.0.1 -address=/shushijiameng123.com/127.0.0.1 -address=/shuwuzhan.com/127.0.0.1 -address=/shxinjie.cn/127.0.0.1 -address=/shypqc.com/127.0.0.1 -address=/si9377.com/127.0.0.1 -address=/sicentlife.com/127.0.0.1 -address=/sigbusa.com/127.0.0.1 -address=/sigo99.com/127.0.0.1 -address=/sina-img.club/127.0.0.1 -address=/sinaalicdn.com/127.0.0.1 -address=/sinaaliyun.cn/127.0.0.1 -address=/sinawbimg.com/127.0.0.1 -address=/sino-seve.com/127.0.0.1 -address=/sitemobia.com/127.0.0.1 -address=/sjgnskf.com/127.0.0.1 -address=/sjmwkj.cn/127.0.0.1 -address=/sjy-stone.com.cn/127.0.0.1 -address=/skatehot.net/127.0.0.1 -address=/sm077.com/127.0.0.1 -address=/smallmovieapp.com/127.0.0.1 -address=/smf82.cn/127.0.0.1 -address=/smitionsory.co/127.0.0.1 -address=/smucdn.com/127.0.0.1 -address=/smxsg.com/127.0.0.1 -address=/snnnyy.com/127.0.0.1 -address=/so9l.com/127.0.0.1 -address=/socdm.com/127.0.0.1 -address=/sos0easy.com/127.0.0.1 -address=/sp96878.com/127.0.0.1 -address=/spcode.baidu.com/127.0.0.1 -address=/spectram.pro/127.0.0.1 -address=/spxnet.com/127.0.0.1 -address=/sqext.com/127.0.0.1 -address=/sscefsol.com/127.0.0.1 -address=/ssdaili.com/127.0.0.1 -address=/ssjy168.com/127.0.0.1 -address=/ssmuse1314.cn/127.0.0.1 -address=/sstar.vip/127.0.0.1 -address=/sstc360.com/127.0.0.1 -address=/st123.info/127.0.0.1 -address=/staqnet.com/127.0.0.1 -address=/static-cn.plista.com/127.0.0.1 -address=/staticjs.cn/127.0.0.1 -address=/steadfastsystem.com/127.0.0.1 -address=/stn88.com/127.0.0.1 -address=/stocksbsc.com/127.0.0.1 -address=/stsywl.com/127.0.0.1 -address=/sucodb.com/127.0.0.1 -address=/sufficient.cn/127.0.0.1 -address=/superli666.top/127.0.0.1 -address=/suukcn.com/127.0.0.1 -address=/svsatrerbxh.com/127.0.0.1 -address=/swtkc.cn/127.0.0.1 -address=/swzhaohuo.com.cn/127.0.0.1 -address=/sxbhzs.net/127.0.0.1 -address=/sxcol.cn/127.0.0.1 -address=/sxdyrq.com/127.0.0.1 -address=/sxybjjz.cn/127.0.0.1 -address=/sxympy.com/127.0.0.1 -address=/sxz67.com/127.0.0.1 -address=/sxzmj.cn/127.0.0.1 -address=/sykty.com/127.0.0.1 -address=/syofew6o.net/127.0.0.1 -address=/sytcyf.com/127.0.0.1 -address=/sytz1288.com/127.0.0.1 -address=/szapp22.cc/127.0.0.1 -address=/szdzbx.com/127.0.0.1 -address=/szfaq.com/127.0.0.1 -address=/szggdw.com/127.0.0.1 -address=/szjianxin.net/127.0.0.1 -address=/szrk3.com/127.0.0.1 -address=/sztbjs.com/127.0.0.1 -address=/szxiuchang.com/127.0.0.1 -address=/szxpsg.com/127.0.0.1 -address=/szxzytech.com/127.0.0.1 -address=/t415n.cn/127.0.0.1 -address=/t58b.com/127.0.0.1 -address=/t70123.com/127.0.0.1 -address=/taat00889.com/127.0.0.1 -address=/tad.suning.com/127.0.0.1 -address=/tangoutianxia.com/127.0.0.1 -address=/taobaly.cn/127.0.0.1 -address=/taobaoaliyun.cn/127.0.0.1 -address=/taobaojx.com/127.0.0.1 -address=/taobayun.cn/127.0.0.1 -address=/taoguanda.com/127.0.0.1 -address=/taohanpai.com/127.0.0.1 -address=/taoyuay.top/127.0.0.1 -address=/tbaocdn.com/127.0.0.1 -address=/tc600.com/127.0.0.1 -address=/tdayi.com/127.0.0.1 -address=/techantuijian.com/127.0.0.1 -address=/tequanma.com/127.0.0.1 -address=/tg.1155t.cn/127.0.0.1 -address=/th21333.com/127.0.0.1 -address=/thescenseproject.com/127.0.0.1 -address=/thishare.com/127.0.0.1 -address=/thli43.cn/127.0.0.1 -address=/thxnr.com/127.0.0.1 -address=/thyvjboy.com/127.0.0.1 -address=/tiangu99.com/127.0.0.1 -address=/tianjieleather.com/127.0.0.1 -address=/tianjiunion.cn/127.0.0.1 -address=/tianqi777.com/127.0.0.1 -address=/tianyanzs.com/127.0.0.1 -address=/tinglian.com/127.0.0.1 -address=/tj-cmys.com/127.0.0.1 -address=/tjgxzs.com/127.0.0.1 -address=/tjhhr.com/127.0.0.1 -address=/tjqonline.cn/127.0.0.1 -address=/tjys88.com/127.0.0.1 -address=/tkd777.cn/127.0.0.1 -address=/tngmn.com/127.0.0.1 -address=/togo666.com/127.0.0.1 -address=/tongdejiayuan.com/127.0.0.1 -address=/tongqing2015.com/127.0.0.1 -address=/toourbb.com/127.0.0.1 -address=/top267.com/127.0.0.1 -address=/tpe163.com/127.0.0.1 -address=/trackingpro.pro/127.0.0.1 -address=/tradeccl.com/127.0.0.1 -address=/trourted.pro/127.0.0.1 -address=/trzina.com/127.0.0.1 -address=/tsdlp.com/127.0.0.1 -address=/tsyndolls.com/127.0.0.1 -address=/ttbaods.com/127.0.0.1 -address=/ttfgames.cn/127.0.0.1 -address=/ttlowe.com/127.0.0.1 -address=/tukeai.com/127.0.0.1 -address=/tvbyb04.com/127.0.0.1 -address=/twitterzs.com/127.0.0.1 -address=/twldmx.com/127.0.0.1 -address=/twzui6.com/127.0.0.1 -address=/txdwc.cn/127.0.0.1 -address=/txt2017.com/127.0.0.1 -address=/txt2019.cc/127.0.0.1 -address=/ty229.com/127.0.0.1 -address=/tylll.com/127.0.0.1 -address=/u.huoying666.com/127.0.0.1 -address=/uadsaa.com/127.0.0.1 -address=/ubalh.com/127.0.0.1 -address=/ubmcvideo.baidustatic.com/127.0.0.1 -address=/uc610.com/127.0.0.1 -address=/ucaliyun.cn/127.0.0.1 -address=/ucbaba.top/127.0.0.1 -address=/uchaoqiang.top/127.0.0.1 -address=/ucrzgcs.cn/127.0.0.1 -address=/ucstatic.cn/127.0.0.1 -address=/ucxgg.com/127.0.0.1 -address=/ucxxii.com/127.0.0.1 -address=/ugg66.com/127.0.0.1 -address=/uhijmv.cn/127.0.0.1 -address=/ujikdd041o.cn/127.0.0.1 -address=/ukeiae.com/127.0.0.1 -address=/uklyv.cn/127.0.0.1 -address=/umjsik.com/127.0.0.1 -address=/uneede.com/127.0.0.1 -address=/uoyrsd.com/127.0.0.1 -address=/urhu.cn/127.0.0.1 -address=/urlat.cn/127.0.0.1 -address=/uvclick.com/127.0.0.1 -address=/uvsea.cn/127.0.0.1 -address=/uw9377.com/127.0.0.1 -address=/uzpmrbek.com/127.0.0.1 -address=/v707070.com/127.0.0.1 -address=/va88p.cn/127.0.0.1 -address=/vaedan.top/127.0.0.1 -address=/vboo349.com/127.0.0.1 -address=/vdazz.net/127.0.0.1 -address=/ve001nz.com/127.0.0.1 -address=/vedeh.com/127.0.0.1 -address=/vegent.cn/127.0.0.1 -address=/vertivchina.cn/127.0.0.1 -address=/vfdxlt.cn/127.0.0.1 -address=/vhpxa.top/127.0.0.1 -address=/victorjx.com/127.0.0.1 -address=/video231.oss-cn-beijing.aliyuncs.com/127.0.0.1 -address=/videondun.com/127.0.0.1 -address=/vmjjzk.cn/127.0.0.1 -address=/vnnv777.cn/127.0.0.1 -address=/vns3359.com/127.0.0.1 -address=/vs944.cn/127.0.0.1 -address=/vt863.cn/127.0.0.1 -address=/vtale.org/127.0.0.1 -address=/vvvulqn7.com/127.0.0.1 -address=/vwws6.net/127.0.0.1 -address=/vxsnk.com/127.0.0.1 -address=/w3989.com/127.0.0.1 -address=/w4pma.cn/127.0.0.1 -address=/w65p.com/127.0.0.1 -address=/wacc888.com/127.0.0.1 -address=/waihui518.com/127.0.0.1 -address=/wanfukang.cc/127.0.0.1 -address=/wangdaizao.com/127.0.0.1 -address=/wangdddy.com/127.0.0.1 -address=/wangdq.com/127.0.0.1 -address=/wangqipu.com/127.0.0.1 -address=/wangsufast.com/127.0.0.1 -address=/wantaico.com/127.0.0.1 -address=/wantfour.com/127.0.0.1 -address=/wapadv.com/127.0.0.1 -address=/waptime.net/127.0.0.1 -address=/watchsk.com/127.0.0.1 -address=/wazero.online/127.0.0.1 -address=/wcnmd.top/127.0.0.1 -address=/wdymwzz.com/127.0.0.1 -address=/wdzsb.com.cn/127.0.0.1 -address=/webabcd.com/127.0.0.1 -address=/webofxm.cn/127.0.0.1 -address=/weihuiyungou.com/127.0.0.1 -address=/weiqiqu.cn/127.0.0.1 -address=/weixiangzu.cn/127.0.0.1 -address=/wemdsm.com/127.0.0.1 -address=/werpig.com/127.0.0.1 -address=/wf321.com/127.0.0.1 -address=/wffengtai.com.cn/127.0.0.1 -address=/wgnlz.com/127.0.0.1 -address=/wgnmp.com/127.0.0.1 -address=/whafwl.com/127.0.0.1 -address=/whhxnz.com/127.0.0.1 -address=/whpxy.com/127.0.0.1 -address=/whshangsha.com/127.0.0.1 -address=/whytoss.com/127.0.0.1 -address=/wikigifth.com/127.0.0.1 -address=/winvestern.com.cn/127.0.0.1 -address=/wjguc.com/127.0.0.1 -address=/wka8.com/127.0.0.1 -address=/wlkpa.cn/127.0.0.1 -address=/wndlkj.com/127.0.0.1 -address=/wodhid.com/127.0.0.1 -address=/wojiabaoye.com/127.0.0.1 -address=/wole.us/127.0.0.1 -address=/wowips.com/127.0.0.1 -address=/wowoyy.cc/127.0.0.1 -address=/wq42219.com/127.0.0.1 -address=/wqsph.net/127.0.0.1 -address=/wrvdmh.cn/127.0.0.1 -address=/ws341.com/127.0.0.1 -address=/ws7j.com/127.0.0.1 -address=/wsgblw.com/127.0.0.1 -address=/wstztt.com/127.0.0.1 -address=/wu36n.cn/127.0.0.1 -address=/wu65.com/127.0.0.1 -address=/wuhufengze.com.cn/127.0.0.1 -address=/wushuangjiexi.top/127.0.0.1 -address=/wuwaii.com/127.0.0.1 -address=/wuweiqx.com/127.0.0.1 -address=/wuwho.cn/127.0.0.1 -address=/wuyekanba.com/127.0.0.1 -address=/wvstatic.cn/127.0.0.1 -address=/wwlolbs.com/127.0.0.1 -address=/wxbdfm.com/127.0.0.1 -address=/wxs666.cn/127.0.0.1 -address=/wxstatic.cn/127.0.0.1 -address=/wxxfqc.com/127.0.0.1 -address=/wyhzzy.com/127.0.0.1 -address=/wyttech.cn/127.0.0.1 -address=/wywsdx.com/127.0.0.1 -address=/wzaigo.com/127.0.0.1 -address=/wzjijia.com/127.0.0.1 -address=/wzsygdl.com/127.0.0.1 -address=/x6z6.com/127.0.0.1 -address=/x9377a.com/127.0.0.1 -address=/xa9t.com/127.0.0.1 -address=/xabaitai.com/127.0.0.1 -address=/xabmjr.com/127.0.0.1 -address=/xcads.cn/127.0.0.1 -address=/xcclzs.com/127.0.0.1 -address=/xchgx.com/127.0.0.1 -address=/xcjy876.com/127.0.0.1 -address=/xcsaz.com/127.0.0.1 -address=/xcxzxc.cn/127.0.0.1 -address=/xcy8.com/127.0.0.1 -address=/xcyjzs.net/127.0.0.1 -address=/xcyrc.com/127.0.0.1 -address=/xdbwc.com/127.0.0.1 -address=/xdcqcyp.com/127.0.0.1 -address=/xdywlw.cn/127.0.0.1 -address=/xhbqczl.com/127.0.0.1 -address=/xhmrv.com/127.0.0.1 -address=/xhrxb.com/127.0.0.1 -address=/xhsxgmt.cn/127.0.0.1 -address=/xhxnkyy.com/127.0.0.1 -address=/xhydrs.cn/127.0.0.1 -address=/xi0021.com/127.0.0.1 -address=/xiadaxiong.com/127.0.0.1 -address=/xiald.com/127.0.0.1 -address=/xiang7.vip/127.0.0.1 -address=/xiaobiaoucai.cn/127.0.0.1 -address=/xiaoyang.mobi/127.0.0.1 -address=/xiaozhishi852.com/127.0.0.1 -address=/xiaxuanfu.com/127.0.0.1 -address=/xibei70.com/127.0.0.1 -address=/xidexableact.cn/127.0.0.1 -address=/xihashuale.com/127.0.0.1 -address=/xilele.com/127.0.0.1 -address=/xiliweisha.cn/127.0.0.1 -address=/xinasiaj.com/127.0.0.1 -address=/xingjuhe.com/127.0.0.1 -address=/xingyao.doubiy.com/127.0.0.1 -address=/xingyaoapi.com/127.0.0.1 -address=/xinji2.com/127.0.0.1 -address=/xinlongrubber.com/127.0.0.1 -address=/xinyijiasc.cn/127.0.0.1 -address=/xiongdong.com/127.0.0.1 -address=/xiongzhangad.com/127.0.0.1 -address=/xixiashengdian.com/127.0.0.1 -address=/xjidian.com/127.0.0.1 -address=/xjzyq.com/127.0.0.1 -address=/xk2012.com/127.0.0.1 -address=/xkwfao.com/127.0.0.1 -address=/xlwnx.com/127.0.0.1 -address=/xm9178.com/127.0.0.1 -address=/xmcmn.com/127.0.0.1 -address=/xmliw.com/127.0.0.1 -address=/xmrepair.com/127.0.0.1 -address=/xmsqz.com/127.0.0.1 -address=/xmtsyg.com/127.0.0.1 -address=/xmxxwl.com/127.0.0.1 -address=/xn--fjqz50cv5q3so.ltd/127.0.0.1 -address=/xn--fjqz50cv5q3so.online/127.0.0.1 -address=/xn--mtso8sj6menhyil.online/127.0.0.1 -address=/xn--tst552fo5s.xyz/127.0.0.1 -address=/xn--wxt79hbyb675a.online/127.0.0.1 -address=/xn--wxtr9fwyxk9c.site/127.0.0.1 -address=/xn--wxtr9fwyxk9c.top/127.0.0.1 -address=/xn--wxtr9fwyxk9c.xn--io0a7i/127.0.0.1 -address=/xn--xhq9mt12cf5v.ink/127.0.0.1 -address=/xn--xhq9mt12cf5v.ren/127.0.0.1 -address=/xn--xhq9mt12cf5v.shop/127.0.0.1 -address=/xn--xhq9mt12cf5v.site/127.0.0.1 -address=/xn--xhq9mt12cf5v.top/127.0.0.1 -address=/xn--xhq9mt12cf5v.website/127.0.0.1 -address=/xn6ffc.com/127.0.0.1 -address=/xnjpg.com/127.0.0.1 -address=/xpjis.com/127.0.0.1 -address=/xpqfc.com/127.0.0.1 -address=/xq199.com/127.0.0.1 -address=/xt2d.cn/127.0.0.1 -address=/xtianqi.com.cn/127.0.0.1 -address=/xtxa.net/127.0.0.1 -address=/xtyizilaijx.cn/127.0.0.1 -address=/xu7b.com/127.0.0.1 -address=/xuanmeiguoji.com/127.0.0.1 -address=/xuehelei.com/127.0.0.1 -address=/xueyongbao.com/127.0.0.1 -address=/xugsh.cn/127.0.0.1 -address=/xul478.com/127.0.0.1 -address=/xulizui6.com/127.0.0.1 -address=/xunlaile.com/127.0.0.1 -address=/xuqinqi.cn/127.0.0.1 -address=/xvnfyutv.com/127.0.0.1 -address=/xvtpvc.cn/127.0.0.1 -address=/xxad.cc/127.0.0.1 -address=/xxhrd.com/127.0.0.1 -address=/xxlmxsh.com/127.0.0.1 -address=/xxwkjl.com/127.0.0.1 -address=/xxyzwtsylw.com/127.0.0.1 -address=/xycnz.com/127.0.0.1 -address=/xycnzz.com/127.0.0.1 -address=/xyqptm.com/127.0.0.1 -address=/xyqxr.com/127.0.0.1 -address=/xyrhd.com/127.0.0.1 -address=/xyssp.com/127.0.0.1 -address=/xytom.com/127.0.0.1 -address=/xz6d.com/127.0.0.1 -address=/xzyituo.com/127.0.0.1 -address=/xzzyi.com/127.0.0.1 -address=/y0o1g.cn/127.0.0.1 -address=/yageben.com/127.0.0.1 -address=/yalongrope.cn/127.0.0.1 -address=/yamaidei.cn/127.0.0.1 -address=/yangdasen.cn/127.0.0.1 -address=/yanglaopt.net/127.0.0.1 -address=/yaohq.com/127.0.0.1 -address=/yaoxiaoli.com/127.0.0.1 -address=/yaoyl.com/127.0.0.1 -address=/yatemy.cn/127.0.0.1 -address=/ychml.com/127.0.0.1 -address=/ychun03.com/127.0.0.1 -address=/ydlnt.com/127.0.0.1 -address=/ydqzkj.com/127.0.0.1 -address=/yenlm.com/127.0.0.1 -address=/yeyajipp.com/127.0.0.1 -address=/yezijizhang.com/127.0.0.1 -address=/yf898.com/127.0.0.1 -address=/yfycy.com/127.0.0.1 -address=/yhsmk.com/127.0.0.1 -address=/yhtcd.com/127.0.0.1 -address=/yidulive.net/127.0.0.1 -address=/yigyx.com/127.0.0.1 -address=/yijia2009.com/127.0.0.1 -address=/yijikm.com/127.0.0.1 -address=/yingdatuofu.com/127.0.0.1 -address=/yinhaijuan.com/127.0.0.1 -address=/yinyuehu.cn/127.0.0.1 -address=/yinyuncp.com/127.0.0.1 -address=/yiran686.cn/127.0.0.1 -address=/yiranxian.cn/127.0.0.1 -address=/yishuifa.org/127.0.0.1 -address=/yitai001.com/127.0.0.1 -address=/yiwuds.com/127.0.0.1 -address=/yixui.com/127.0.0.1 -address=/yjoiunf.com/127.0.0.1 -address=/yk0712.com/127.0.0.1 -address=/ykjmy.com/127.0.0.1 -address=/ymcqb.com/127.0.0.1 -address=/ynbojie.com/127.0.0.1 -address=/yndianju.com/127.0.0.1 -address=/ynmbz.com/127.0.0.1 -address=/ynwqls.com/127.0.0.1 -address=/yofoto.ltd/127.0.0.1 -address=/yongkang6.com/127.0.0.1 -address=/youfumei.com/127.0.0.1 -address=/yousee.com/127.0.0.1 -address=/youyoumw.com/127.0.0.1 -address=/ypa.focusoftime.com/127.0.0.1 -address=/ypmob.com/127.0.0.1 -address=/yqcy988.com/127.0.0.1 -address=/yqw88.com/127.0.0.1 -address=/yrzyks.cn/127.0.0.1 -address=/ysdhe.com/127.0.0.1 -address=/ysgsq.cn/127.0.0.1 -address=/ysjwj.com/127.0.0.1 -address=/ysnj74ed.com/127.0.0.1 -address=/yuanmengbi.com/127.0.0.1 -address=/yuanyanglw.com/127.0.0.1 -address=/yueyetiyu.com/127.0.0.1 -address=/yuggcd.com/127.0.0.1 -address=/yujiangchu.com/127.0.0.1 -address=/yujyjms.cn/127.0.0.1 -address=/yule8.net/127.0.0.1 -address=/yunmowu.com/127.0.0.1 -address=/yunsoka.com/127.0.0.1 -address=/yuyanbaojie.cn/127.0.0.1 -address=/yuyue008.cn/127.0.0.1 -address=/ywadf.cn/127.0.0.1 -address=/ywjsgc.com/127.0.0.1 -address=/ywjxsp168.cn/127.0.0.1 -address=/ywxi.net/127.0.0.1 -address=/yxgfcj.com/127.0.0.1 -address=/yxjad.com/127.0.0.1 -address=/yxmspx.com/127.0.0.1 -address=/yxszy.com/127.0.0.1 -address=/yxxwyz.com/127.0.0.1 -address=/yy58ju.com/127.0.0.1 -address=/yyp17.com/127.0.0.1 -address=/yyylg.cn/127.0.0.1 -address=/yzaosite.com/127.0.0.1 -address=/yzh360.com/127.0.0.1 -address=/yzwr588.com/127.0.0.1 -address=/yzygo.com/127.0.0.1 -address=/yzytb.com/127.0.0.1 -address=/zantainet.com/127.0.0.1 -address=/zbetter.org/127.0.0.1 -address=/zcrtd.com/127.0.0.1 -address=/zdjby.cn/127.0.0.1 -address=/zencu.com.cn/127.0.0.1 -address=/zfkmw.com/127.0.0.1 -address=/zgc66.com/127.0.0.1 -address=/zgksb.com/127.0.0.1 -address=/zgktxx.com/127.0.0.1 -address=/zgrsq.cn/127.0.0.1 -address=/zgtcar.com/127.0.0.1 -address=/zgunion.cn/127.0.0.1 -address=/zgyemy.com/127.0.0.1 -address=/zgyryt.com/127.0.0.1 -address=/zh1144.com/127.0.0.1 -address=/zhaibei112.top/127.0.0.1 -address=/zhangkc.com/127.0.0.1 -address=/zhao258.com/127.0.0.1 -address=/zhengyejixie.com/127.0.0.1 -address=/zhfosenghtr.com/127.0.0.1 -address=/zhichi08.com/127.0.0.1 -address=/zhihei.com/127.0.0.1 -address=/zhinengap.com/127.0.0.1 -address=/zhiong.net/127.0.0.1 -address=/zhixiuchang.com/127.0.0.1 -address=/zhjfad.com/127.0.0.1 -address=/zhongjiangguoji.org/127.0.0.1 -address=/zhongzk.com/127.0.0.1 -address=/zhuangzhaibancai.cn/127.0.0.1 -address=/zhuba8.com/127.0.0.1 -address=/zhudiaosz.com/127.0.0.1 -address=/zhufushuo.com/127.0.0.1 -address=/zhunishunli.com/127.0.0.1 -address=/zhy333.com/127.0.0.1 -address=/zhybzp.cn/127.0.0.1 -address=/zi63m.cn/127.0.0.1 -address=/ziig.com.cn/127.0.0.1 -address=/zisu.cn.com/127.0.0.1 -address=/zitanmushu.com/127.0.0.1 -address=/ziyuantx.com/127.0.0.1 -address=/zjhim.com/127.0.0.1 -address=/zjhoudao.com/127.0.0.1 -address=/zjrtuhds.top/127.0.0.1 -address=/zl588.com/127.0.0.1 -address=/zmgod.com/127.0.0.1 -address=/zmlled.cn/127.0.0.1 -address=/zp22938576.com/127.0.0.1 -address=/zqworks.com/127.0.0.1 -address=/zrpfk.com/127.0.0.1 -address=/zry8181.com/127.0.0.1 -address=/zsdexun.com.cn/127.0.0.1 -address=/zsedu99.cn/127.0.0.1 -address=/zsjyc.top/127.0.0.1 -address=/ztidu.com/127.0.0.1 -address=/ztvx8.com/127.0.0.1 -address=/zx573.cn/127.0.0.1 -address=/zxb918.com/127.0.0.1 -address=/zxhrq.cn/127.0.0.1 -address=/zxwdw.com/127.0.0.1 -address=/zybpj.com/127.0.0.1 -address=/zydyjzw.cn/127.0.0.1 -address=/zymro.com/127.0.0.1 -address=/zyqp9.com/127.0.0.1 -address=/zyrfanli.com/127.0.0.1 -address=/zyzjpx.cn/127.0.0.1 -address=/zzbaowen.com/127.0.0.1 -address=/zzkoubei.com/127.0.0.1 -address=/zzrcz.com/127.0.0.1 -address=/zzsssy.com/127.0.0.1 -address=/zzwflxs.com/127.0.0.1 -address=/zzyonghao.com/127.0.0.1 -address=/0x013d.website/127.0.0.1 -address=/0x01e7.website/127.0.0.1 -address=/1.hao123.com/127.0.0.1 -address=/100.admin5.com/127.0.0.1 -address=/100.pncdn.cn/127.0.0.1 -address=/107.172.176.197/127.0.0.1 -address=/108.171.248.234/127.0.0.1 -address=/115.29.141.121/127.0.0.1 -address=/119.29.80.185/127.0.0.1 -address=/120.27.34.156/127.0.0.1 -address=/122.228.236.165/127.0.0.1 -address=/20150930.cf/127.0.0.1 -address=/2016.bkill.net/127.0.0.1 -address=/205.209.138.102/127.0.0.1 -address=/23.91.3.114/127.0.0.1 -address=/360safego.com/127.0.0.1 -address=/5y9nfpes.52pk.com/127.0.0.1 -address=/614514.com/127.0.0.1 -address=/69.28.57.245/127.0.0.1 -address=/7mad.7m.cn/127.0.0.1 -address=/7xsf3h.com1.z0.glb.clouddn.com/127.0.0.1 -address=/801.tianyaui.com/127.0.0.1 -address=/8jkx.com/127.0.0.1 -address=/a.baomihua.com/127.0.0.1 -address=/a.nowscore.com/127.0.0.1 -address=/a.xywy.com/127.0.0.1 -address=/a2.b310.com/127.0.0.1 -address=/a2.xinhuanet.com/127.0.0.1 -address=/abc.hkepc.com/127.0.0.1 -address=/abc.hkepc.net/127.0.0.1 -address=/acodes.b2b.cn/127.0.0.1 -address=/acv5e.cn/127.0.0.1 -address=/ad-api.cnblogs.com/127.0.0.1 -address=/ad-img.diyidan.net/127.0.0.1 -address=/ad.52av.one/127.0.0.1 -address=/ad.bobi.tw/127.0.0.1 -address=/ad.cdnjm.cn/127.0.0.1 -address=/ad.walkgame.com/127.0.0.1 -address=/ad.wurangxian.top/127.0.0.1 -address=/adadmin.house365.com/127.0.0.1 -address=/add.freeimg8.com/127.0.0.1 -address=/adf.dahe.cn/127.0.0.1 -address=/adhome.1fangchan.com/127.0.0.1 -address=/adm.265g.com/127.0.0.1 -address=/adm.52swine.com/127.0.0.1 -address=/adm.6park.com/127.0.0.1 -address=/adm.beimg.com/127.0.0.1 -address=/adm.cloud.cnfol.com/127.0.0.1 -address=/adm.xmfish.com/127.0.0.1 -address=/admd.housefun.com.tw/127.0.0.1 -address=/admd.yam.com/127.0.0.1 -address=/admsapi.businessweekly.com.tw/127.0.0.1 -address=/adnetpub.yaolan.com/127.0.0.1 -address=/adp.cnki.net/127.0.0.1 -address=/adp.cnool.net/127.0.0.1 -address=/adpai.thepaper.cn/127.0.0.1 -address=/adpub.yaolan.com/127.0.0.1 -address=/adpubs.yaolan.com/127.0.0.1 -address=/ads-union.jd.com/127.0.0.1 -address=/ads.sohu.com/127.0.0.1 -address=/adsc.wasu.tv/127.0.0.1 -address=/adsclick.yx.js.cn/127.0.0.1 -address=/adshows.21cn.com/127.0.0.1 -address=/adt.xdrig.com/127.0.0.1 -address=/adv-sv-show.focus.cn/127.0.0.1 -address=/afp.chinanews.com/127.0.0.1 -address=/afp.wasu.cn/127.0.0.1 -address=/afpcreative.wasu.cn/127.0.0.1 -address=/ahd.ruten.com.tw/127.0.0.1 -address=/ai.bioon.com/127.0.0.1 -address=/alitui.weibo.com/127.0.0.1 -address=/am.szhome.com/127.0.0.1 -address=/amradmin.5173.com/127.0.0.1 -address=/ams.fx678.com/127.0.0.1 -address=/ann5.net/127.0.0.1 -address=/appimg.0575bbs.com/127.0.0.1 -address=/apple.www.letv.com/127.0.0.1 -address=/ashow.pcpop.com/127.0.0.1 -address=/assp.sohu.com/127.0.0.1 -address=/atiws.aipai.com/127.0.0.1 -address=/atm.youku.com/127.0.0.1 -address=/ax.ifeng.com/127.0.0.1 -address=/b.tukucc.com/127.0.0.1 -address=/badding.oss-ap-southeast-1.aliyuncs.com/127.0.0.1 -address=/baifen.music.baidu.com/127.0.0.1 -address=/besc.baidustatic.com/127.0.0.1 -address=/biz.gexing.com/127.0.0.1 -address=/biz.weibo.com/127.0.0.1 -address=/bk9gun.vpser.net/127.0.0.1 -address=/boardx.huanqiu.com/127.0.0.1 -address=/btn.onlylady.com/127.0.0.1 -address=/btn.pchome.net/127.0.0.1 -address=/business.92wy.com/127.0.0.1 -address=/by8974.com/127.0.0.1 -address=/c-5uwzmx78pmca09x24aiux2euavx2ekwu.g00.msn.com/127.0.0.1 -address=/cacafly.net/127.0.0.1 -address=/cdgfa.ifeng.com/127.0.0.1 -address=/cdn.wuyou.ca/127.0.0.1 -address=/chidir.com/127.0.0.1 -address=/client.88tours.com/127.0.0.1 -address=/cmm.xmfish.com/127.0.0.1 -address=/cms.fx678.com/127.0.0.1 -address=/cms.fx678img.com/127.0.0.1 -address=/cocoawu.b0.upaiyun.com/127.0.0.1 -address=/count.ddooo.com/127.0.0.1 -address=/cp2.eastmoney.com/127.0.0.1 -address=/cpm.cm.kankan.com/127.0.0.1 -address=/d-test.39.net/127.0.0.1 -address=/d0.xcar.com.cn/127.0.0.1 -address=/d1.3158.cn/127.0.0.1 -address=/d13jhr4vol1304.cloudfront.net/127.0.0.1 -address=/da.mgtv.com/127.0.0.1 -address=/de.as.pptv.com/127.0.0.1 -address=/dehua.ixinfan.com/127.0.0.1 -address=/deliver.ifeng.com/127.0.0.1 -address=/delivery.playallvideos.com/127.0.0.1 -address=/delivery.wasu.cn/127.0.0.1 -address=/djs.baomihua.com/127.0.0.1 -address=/doubleclick.ctfile.com/127.0.0.1 -address=/dsp.ali213.net/127.0.0.1 -address=/dup.baidustatic.com/127.0.0.1 -address=/dvs.china.com/127.0.0.1 -address=/dvser.china.com/127.0.0.1 -address=/dydab.com/127.0.0.1 -address=/e.yycqc.com/127.0.0.1 -address=/eap.big5.enorth.com.cn/127.0.0.1 -address=/eap.enorth.com.cn/127.0.0.1 -address=/ebp.renren.com/127.0.0.1 -address=/ecma.bdimg.com/127.0.0.1 -address=/ecmb.bdimg.com/127.0.0.1 -address=/emdcadvertise.eastmoney.com/127.0.0.1 -address=/erebor.douban.com/127.0.0.1 -address=/ermao.sikabeila.com/127.0.0.1 -address=/ff.meikanguo.com/127.0.0.1 -address=/fun.ynet.com/127.0.0.1 -address=/g.hsw.cn/127.0.0.1 -address=/g.lznews.cn/127.0.0.1 -address=/g.mnw.cn/127.0.0.1 -address=/g.ousns.net/127.0.0.1 -address=/g2.ousns.net/127.0.0.1 -address=/ganjituiguang.ganji.com/127.0.0.1 -address=/gdt.qq.com/127.0.0.1 -address=/gg.0598yu.com/127.0.0.1 -address=/gg.4kdy.net/127.0.0.1 -address=/gg.blueidea.com/127.0.0.1 -address=/gg.cs090.com/127.0.0.1 -address=/gg.g9mi6.com/127.0.0.1 -address=/gg.getbs.com/127.0.0.1 -address=/gg.gsdlcn.com/127.0.0.1 -address=/gg.gw032.com/127.0.0.1 -address=/gg.kugou.com/127.0.0.1 -address=/gg.sonhoo.com/127.0.0.1 -address=/gg.uuu9.com/127.0.0.1 -address=/gg.yxdown.com/127.0.0.1 -address=/gg86.pinggu.org/127.0.0.1 -address=/ggcode.2345.com/127.0.0.1 -address=/ggg.zj.com/127.0.0.1 -address=/ggs.myzaker.com/127.0.0.1 -address=/ggtp-1255424916.cos.ap-chengdu.myqcloud.com/127.0.0.1 -address=/ggw.gusuwang.com/127.0.0.1 -address=/ggw.watertu.com/127.0.0.1 -address=/go.hangzhou.com.cn/127.0.0.1 -address=/goto.www.iciba.com/127.0.0.1 -address=/gotourl.xyz/127.0.0.1 -address=/gp.jstv.com/127.0.0.1 -address=/greenhouseglobal.cn/127.0.0.1 -address=/gt.duowan.com/127.0.0.1 -address=/gt.yy.com/127.0.0.1 -address=/guang.lesports.com/127.0.0.1 -address=/guess.h.qhimg.com/127.0.0.1 -address=/hades.qyer.com/127.0.0.1 -address=/hiad.vmall.com/127.0.0.1 -address=/hz.shouyoutv.com/127.0.0.1 -address=/hzhyhm.com/127.0.0.1 -address=/i.syasn.com/127.0.0.1 -address=/iads.xinmin.cn/127.0.0.1 -address=/idcot.com/127.0.0.1 -address=/img.3sjt.com/127.0.0.1 -address=/img.meipic.net/127.0.0.1 -address=/img1.126.net/127.0.0.1 -address=/img2.126.net/127.0.0.1 -address=/img2.titan007.com/127.0.0.1 -address=/img3.126.net/127.0.0.1 -address=/imgadsame.liba.com/127.0.0.1 -address=/inte.sogou.com/127.0.0.1 -address=/ivy.pconline.com.cn/127.0.0.1 -address=/iwanad.baidu.com/127.0.0.1 -address=/j.avz4.com/127.0.0.1 -address=/jmsyzj.com/127.0.0.1 -address=/js.45bubu.com/127.0.0.1 -address=/js.bju888.com/127.0.0.1 -address=/js.bxwns.com/127.0.0.1 -address=/js.duotegame.com/127.0.0.1 -address=/js.hkslg520.com/127.0.0.1 -address=/jxad.jx163.com/127.0.0.1 -address=/knnwdyou.com/127.0.0.1 -address=/libfre.obs.cn-east-3.myhuaweicloud.com/127.0.0.1 -address=/lingdian98.com/127.0.0.1 -address=/ll.gxsky.com/127.0.0.1 -address=/lxting.com/127.0.0.1 -address=/m.aty.sohu.com/127.0.0.1 -address=/m2.lelemh.com/127.0.0.1 -address=/mall0.qiyipic.com/127.0.0.1 -address=/manage.wdfans.cn/127.0.0.1 -address=/market.178.com/127.0.0.1 -address=/market.21cn.com/127.0.0.1 -address=/market.duowan.com/127.0.0.1 -address=/mini.hao123.com/127.0.0.1 -address=/miniye.xjts.cn/127.0.0.1 -address=/money.qz828.com/127.0.0.1 -address=/myad.toocle.com/127.0.0.1 -address=/nirentang.com/127.0.0.1 -address=/ok.432kkk.com/127.0.0.1 -address=/p.7060.la/127.0.0.1 -address=/p.zol-img.com.cn/127.0.0.1 -address=/p4p.sina.com.cn/127.0.0.1 -address=/p8u.hinet.net/127.0.0.1 -address=/panda.kdnet.net/127.0.0.1 -address=/partner.toutiao.com/127.0.0.1 -address=/pekingpk10.com/127.0.0.1 -address=/pg-ad-b1.nosdn.127.net/127.0.0.1 -address=/phpad.cqnews.net/127.0.0.1 -address=/pic.0597kk.com/127.0.0.1 -address=/pic.fengniao.com/127.0.0.1 -address=/pics.xgo-img.com.cn/127.0.0.1 -address=/poster.weather.com.cn/127.0.0.1 -address=/pro.iweihai.cn/127.0.0.1 -address=/pub.funshion.com/127.0.0.1 -address=/publish.ad.youth.cn/127.0.0.1 -address=/qcvf.ifeng.com/127.0.0.1 -address=/qd.wanjuanba.com/127.0.0.1 -address=/qd.x4399.com/127.0.0.1 -address=/qn.bejson.com/127.0.0.1 -address=/qt.biqugezw.com/127.0.0.1 -address=/resource.baomihua.com/127.0.0.1 -address=/rh.qq.com/127.0.0.1 -address=/sa.sina.cn/127.0.0.1 -address=/same.chinadaily.com.cn/127.0.0.1 -address=/same.eastmoney.com/127.0.0.1 -address=/script.vccoo.com/127.0.0.1 -address=/sgg.southcn.com/127.0.0.1 -address=/share.gzdsw.com/127.0.0.1 -address=/ssgg.chazidian.com/127.0.0.1 -address=/ssp.hinet.net/127.0.0.1 -address=/ssp.zf313.com/127.0.0.1 -address=/sss.sege.xxx/127.0.0.1 -address=/sssvd.china.com/127.0.0.1 -address=/static-ssp.yidianzixun.com/127.0.0.1 -address=/sub.powerapple.com/127.0.0.1 -address=/super.cat898.com/127.0.0.1 -address=/super.kdnet.net/127.0.0.1 -address=/synacast.com/127.0.0.1 -address=/tcjy66.cc/127.0.0.1 -address=/tf.360.cn/127.0.0.1 -address=/tk.504pk.com/127.0.0.1 -address=/tp.sgcn.com/127.0.0.1 -address=/tt.biquge.la/127.0.0.1 -address=/u.63kc.com/127.0.0.1 -address=/u.cnzol.com/127.0.0.1 -address=/uc.zhuici.com/127.0.0.1 -address=/union.china.com.cn/127.0.0.1 -address=/union.yihaodian.com/127.0.0.1 -address=/untitled.dwstatic.com/127.0.0.1 -address=/up.hiao.com/127.0.0.1 -address=/vupload.duowan.com/127.0.0.1 -address=/web.900.la/127.0.0.1 -address=/wew.dushiwenxue.net/127.0.0.1 -address=/wowad.wow-classic.com/127.0.0.1 -address=/wpwdf.com/127.0.0.1 -address=/wuliao.epro.sogou.com/127.0.0.1 -address=/xc.macd.cn/127.0.0.1 -address=/xc.mydrivers.com/127.0.0.1 -address=/xdyjt.com/127.0.0.1 -address=/xinzheng8.pw/127.0.0.1 -address=/xs.houyi.baofeng.net/127.0.0.1 -address=/yktj.yzz.cn/127.0.0.1 -address=/yt-adp.nosdn.127.net/127.0.0.1 -address=/yt-adp.ws.126.net/127.0.0.1 -address=/yunbofangbt.com/127.0.0.1 -address=/z.nowscore.com/127.0.0.1 -address=/zkrdy.com/127.0.0.1 -address=/zt2088.com/127.0.0.1 -address=/ztyumn.ifeng.com/127.0.0.1 -address=/immedlinkum.info/127.0.0.1 -address=/xayah.date/127.0.0.1 -address=/003store.com/127.0.0.1 -address=/06362.com/127.0.0.1 -address=/1.01fy.cn/127.0.0.1 -address=/1.1010pic.com/127.0.0.1 -address=/1.11467.com/127.0.0.1 -address=/1.15lu.com/127.0.0.1 -address=/1.201980.com/127.0.0.1 -address=/1.32xp.com/127.0.0.1 -address=/1.51sxue.cn/127.0.0.1 -address=/1.5646.cn/127.0.0.1 -address=/1.66law.cn/127.0.0.1 -address=/1.92caijing.com/127.0.0.1 -address=/1.ajiyuming.com/127.0.0.1 -address=/1.arpun.com/127.0.0.1 -address=/1.bangdan5.com/127.0.0.1 -address=/1.bh5.com.cn/127.0.0.1 -address=/1.cjcp.cn/127.0.0.1 -address=/1.cn716.com/127.0.0.1 -address=/1.codesdq.com/127.0.0.1 -address=/1.codezh.com/127.0.0.1 -address=/1.dwx365.com/127.0.0.1 -address=/1.feihua.com/127.0.0.1 -address=/1.feihua.net.cn/127.0.0.1 -address=/1.glook.cn/127.0.0.1 -address=/1.guyaheng.com/127.0.0.1 -address=/1.hnyouneng.com/127.0.0.1 -address=/1.huilv.cc/127.0.0.1 -address=/1.huobiwang.cc/127.0.0.1 -address=/1.hysou.com/127.0.0.1 -address=/1.i1766.com/127.0.0.1 -address=/1.ideng.com/127.0.0.1 -address=/1.isanxia.com/127.0.0.1 -address=/1.jeasyui.net/127.0.0.1 -address=/1.jiqie.cn/127.0.0.1 -address=/1.kuaidiwo.cn/127.0.0.1 -address=/1.lvshi567.com/127.0.0.1 -address=/1.mgff.com/127.0.0.1 -address=/1.mm100.com/127.0.0.1 -address=/1.pncdn.cn/127.0.0.1 -address=/1.proewildfire.cn/127.0.0.1 -address=/1.qjhm.net/127.0.0.1 -address=/1.qt86.com/127.0.0.1 -address=/1.rr95.com/127.0.0.1 -address=/1.sj33.net/127.0.0.1 -address=/1.snzfj.net/127.0.0.1 -address=/1.soufy.cn/127.0.0.1 -address=/1.tongquee.com/127.0.0.1 -address=/1.ttxs123.net/127.0.0.1 -address=/1.tulaoshi.com/127.0.0.1 -address=/1.tuxi.com.cn/127.0.0.1 -address=/1.uc129.com/127.0.0.1 -address=/1.ufc123.com/127.0.0.1 -address=/1.v-x.com.cn/127.0.0.1 -address=/1.vsimg.com/127.0.0.1 -address=/1.wenzhangba.cn/127.0.0.1 -address=/1.win7china.com/127.0.0.1 -address=/1.wosoni.com/127.0.0.1 -address=/1.xiaopin5.com/127.0.0.1 -address=/1.xilu.com/127.0.0.1 -address=/1.xspic.com/127.0.0.1 -address=/1.xuexi.la/127.0.0.1 -address=/1.yac8.net/127.0.0.1 -address=/1.yuexw.com/127.0.0.1 -address=/1.yxzw.com.cn/127.0.0.1 -address=/1.zhev.com.cn/127.0.0.1 -address=/1.zhuangxiu567.com/127.0.0.1 -address=/1.zou114.com/127.0.0.1 -address=/1.zuowenjun.com/127.0.0.1 -address=/1.zw3e.com/127.0.0.1 -address=/1017.cn/127.0.0.1 -address=/11.96131.com.cn/127.0.0.1 -address=/11.golang8.com/127.0.0.1 -address=/111g.yiqig.cn/127.0.0.1 -address=/11888vip.cn/127.0.0.1 -address=/12.cookcai.com/127.0.0.1 -address=/1224.dxsbb.com/127.0.0.1 -address=/123.39jz.com/127.0.0.1 -address=/123456.asia/127.0.0.1 -address=/17.huanqiu.com/127.0.0.1 -address=/177o.com/127.0.0.1 -address=/1999019.com/127.0.0.1 -address=/2.haoxue360.com/127.0.0.1 -address=/2.heiyange.com/127.0.0.1 -address=/2.rengshu.com/127.0.0.1 -address=/21.cizhibaogao.org/127.0.0.1 -address=/21.fh21static.com/127.0.0.1 -address=/22.qingsongbar.com/127.0.0.1 -address=/283.laobanfa.com/127.0.0.1 -address=/3.chuanyi5.com/127.0.0.1 -address=/3.guidaye.com/127.0.0.1 -address=/3.ssqzj.com/127.0.0.1 -address=/32.huanqiu.com/127.0.0.1 -address=/321.jintang114.org/127.0.0.1 -address=/360640.com/127.0.0.1 -address=/51dengshan.cn/127.0.0.1 -address=/51gxqm.com/127.0.0.1 -address=/52linglei.com/127.0.0.1 -address=/52lubo.cn/127.0.0.1 -address=/52m.xde6.net/127.0.0.1 -address=/5dian.org/127.0.0.1 -address=/5egk.com/127.0.0.1 -address=/644446.com/127.0.0.1 -address=/66.zx1234.com/127.0.0.1 -address=/6669667.com/127.0.0.1 -address=/7011.stia.cn/127.0.0.1 -address=/7631.com/127.0.0.1 -address=/76e.org/127.0.0.1 -address=/7car.com.cn/127.0.0.1 -address=/80juqing.com/127.0.0.1 -address=/8131.qizhihaotian.cn/127.0.0.1 -address=/8dp.net/127.0.0.1 -address=/9wushuo.com/127.0.0.1 -address=/a.4aqq.com/127.0.0.1 -address=/a.52wubi.com/127.0.0.1 -address=/a.52zxw.com/127.0.0.1 -address=/a.armystar.com/127.0.0.1 -address=/a.bake818.cn/127.0.0.1 -address=/a.bizhiku.net/127.0.0.1 -address=/a.booksir.cn/127.0.0.1 -address=/a.diaoyu.cn/127.0.0.1 -address=/a.duanmeiwen.com/127.0.0.1 -address=/a.duduji.com/127.0.0.1 -address=/a.dyjqd.com/127.0.0.1 -address=/a.epinv.com/127.0.0.1 -address=/a.exam58.com/127.0.0.1 -address=/a.fengyx.com/127.0.0.1 -address=/a.fwsir.com/127.0.0.1 -address=/a.hsbianma.com/127.0.0.1 -address=/a.icdol.com/127.0.0.1 -address=/a.ihref.com/127.0.0.1 -address=/a.imgso.cn/127.0.0.1 -address=/a.jing55.com/127.0.0.1 -address=/a.kejixun.com/127.0.0.1 -address=/a.lz13.cn/127.0.0.1 -address=/a.mfcad.net/127.0.0.1 -address=/a.nanhuwang.com/127.0.0.1 -address=/a.oh100.com/127.0.0.1 -address=/a.psxxw.cn/127.0.0.1 -address=/a.qinghua5.com/127.0.0.1 -address=/a.qsjiajiao.com/127.0.0.1 -address=/a.rensheng5.com/127.0.0.1 -address=/a.shenchuang.com/127.0.0.1 -address=/a.thn21.com/127.0.0.1 -address=/a.tiyuxiu.com/127.0.0.1 -address=/a.tvsou.com/127.0.0.1 -address=/a.umilu.com/127.0.0.1 -address=/a.ut8d8.com/127.0.0.1 -address=/a.wanzhuang.com/127.0.0.1 -address=/a.wifi33.com/127.0.0.1 -address=/a.xixiyishu.com/127.0.0.1 -address=/a.xuezizhai.com/127.0.0.1 -address=/a.xxdy8.cn/127.0.0.1 -address=/a.yangshengtang123.com/127.0.0.1 -address=/a.yixie8.com/127.0.0.1 -address=/a.yl-taikang.com/127.0.0.1 -address=/a.yuzhainan.com/127.0.0.1 -address=/a.zuowenxuan.cn/127.0.0.1 -address=/a1.0s.net.cn/127.0.0.1 -address=/a1.7down.com/127.0.0.1 -address=/a1.99933.cn/127.0.0.1 -address=/a1.99966.cn/127.0.0.1 -address=/a1.aluntan.com/127.0.0.1 -address=/a1.bestopview.com/127.0.0.1 -address=/a1.bookapka.com/127.0.0.1 -address=/a1.firefoxchina.cn/127.0.0.1 -address=/a1.firstgw.com/127.0.0.1 -address=/a1.gexing.me/127.0.0.1 -address=/a1.lshou.com/127.0.0.1 -address=/a1.mingyihui.net/127.0.0.1 -address=/a1.q6u.com/127.0.0.1 -address=/a1.qqjay.com/127.0.0.1 -address=/a1.qqtn.com/127.0.0.1 -address=/a1.shusanqi.com/127.0.0.1 -address=/a1.sumiaowang.com/127.0.0.1 -address=/a1.twtym.com/127.0.0.1 -address=/a1.vdolady.com/127.0.0.1 -address=/a1.yuuedu.com/127.0.0.1 -address=/a1.zhanzhang.net/127.0.0.1 -address=/a15d55423.5tps.xyz/127.0.0.1 -address=/a3.ikafan.com/127.0.0.1 -address=/a3.jandan.net/127.0.0.1 -address=/aa.gushiwen.org/127.0.0.1 -address=/aa.xiangxiangmf.com/127.0.0.1 -address=/ab.cnbanbao.com/127.0.0.1 -address=/ab.pincai.com/127.0.0.1 -address=/abc.douguo.com/127.0.0.1 -address=/abcj.dooccn.com/127.0.0.1 -address=/abds.pingpingw.com/127.0.0.1 -address=/ac.86huoche.com/127.0.0.1 -address=/ac.art456.com/127.0.0.1 -address=/ac1.786ip.com/127.0.0.1 -address=/ac1.faxingchina.com/127.0.0.1 -address=/ad123.ynet.com/127.0.0.1 -address=/adbd.liuxue86.com/127.0.0.1 -address=/adccoo.cn/127.0.0.1 -address=/adjb.5nd.com/127.0.0.1 -address=/aiwen.cc/127.0.0.1 -address=/al.newxue.com/127.0.0.1 -address=/as1.m.hao123.com/127.0.0.1 -address=/as1.wenku.baidu.com/127.0.0.1 -address=/b.kouke5.com/127.0.0.1 -address=/b.unjs.com/127.0.0.1 -address=/b1.51scw.net/127.0.0.1 -address=/b1.91jucai.com/127.0.0.1 -address=/b1.b2b168.com/127.0.0.1 -address=/b1.b2b168.net/127.0.0.1 -address=/b1.baomihua.com/127.0.0.1 -address=/b1.c1km4.com/127.0.0.1 -address=/b1.fengdu100.com/127.0.0.1 -address=/b17.8794.cn/127.0.0.1 -address=/b7sw62.pingshu8.xyz/127.0.0.1 -address=/baid1.okooo.com/127.0.0.1 -address=/baidu1.codejie.net/127.0.0.1 -address=/baiduada.babihu.com/127.0.0.1 -address=/baidujs.cnys.com/127.0.0.1 -address=/baiduwapjs1.chinaiiss.com/127.0.0.1 -address=/bas.boshi.tv/127.0.0.1 -address=/bd-s.baixing.net/127.0.0.1 -address=/bd.czxuexi.com/127.0.0.1 -address=/bd.ershenghuo.com/127.0.0.1 -address=/bd.hao224.com/127.0.0.1 -address=/bd.haomagujia.com/127.0.0.1 -address=/bd.scw98.com/127.0.0.1 -address=/bd1-china.6789.com/127.0.0.1 -address=/bd1.365qilu.com/127.0.0.1 -address=/bd1.52che.com/127.0.0.1 -address=/bd1.99danji.com/127.0.0.1 -address=/bd1.dopa.com/127.0.0.1 -address=/bd1.flfgw.cn/127.0.0.1 -address=/bd1.heiguang.cn/127.0.0.1 -address=/bd1.jinbaozy.com/127.0.0.1 -address=/bd1.ningboseo0574.com/127.0.0.1 -address=/bd1.nxing.cn/127.0.0.1 -address=/bd1.pipaw.com/127.0.0.1 -address=/bd1.sosg.net/127.0.0.1 -address=/bd1.szhk.com/127.0.0.1 -address=/bd1.wowoqq.com/127.0.0.1 -address=/bd1.xiby.cn/127.0.0.1 -address=/bd1.yidu.cc/127.0.0.1 -address=/bd11.nipic.com/127.0.0.1 -address=/bd3.chuiyue.com/127.0.0.1 -address=/bdad.gaotie.net/127.0.0.1 -address=/bdasd.chinabig.com.cn/127.0.0.1 -address=/bdasd.wmxa.cn/127.0.0.1 -address=/bdcm.kandianla.com/127.0.0.1 -address=/bdcode.2345.com/127.0.0.1 -address=/bdcode.35d1.com/127.0.0.1 -address=/bdcode.qinglm.com/127.0.0.1 -address=/bdcode.youke.com/127.0.0.1 -address=/bdcode1.haodou.com/127.0.0.1 -address=/bddm.58news.org/127.0.0.1 -address=/bdfpbimg.ifengimg.com/127.0.0.1 -address=/bdgg.qjy168.com/127.0.0.1 -address=/bdgg.youbian.com/127.0.0.1 -address=/bdjb.gai001.com/127.0.0.1 -address=/bdjiaoben.wmxa.cn/127.0.0.1 -address=/bdjj.bzr99.com/127.0.0.1 -address=/bdjj.makepolo.net/127.0.0.1 -address=/bdjs.163lady.com/127.0.0.1 -address=/bdjs.6822.com/127.0.0.1 -address=/bdjs.91zhuti.com/127.0.0.1 -address=/bdjs.guangyuanol.cn/127.0.0.1 -address=/bdjs.ixiumei.com/127.0.0.1 -address=/bdjs.kaixin100.com/127.0.0.1 -address=/bdjs.shangc.net/127.0.0.1 -address=/bdjs.uimg.cn/127.0.0.1 -address=/bdjs.ylq.com/127.0.0.1 -address=/bdlmggcs1.familydoctor.com.cn/127.0.0.1 -address=/bdm.911cha.com/127.0.0.1 -address=/bdmjs.xywy.com/127.0.0.1 -address=/bdu.focus.cn/127.0.0.1 -address=/bdu1.coozhi.cn/127.0.0.1 -address=/bdu1.eol.cn/127.0.0.1 -address=/bdunion1.suxiazai.com/127.0.0.1 -address=/bdwmhz.120askimages.com/127.0.0.1 -address=/bdx.playnext.cn/127.0.0.1 -address=/becode.qiushibaike.com/127.0.0.1 -address=/becode.xiao84.com/127.0.0.1 -address=/beijing.buzhi5.com/127.0.0.1 -address=/bhaoea.cn/127.0.0.1 -address=/boy.fujieace.com/127.0.0.1 -address=/bt1.patexplorer.com/127.0.0.1 -address=/bu1.duba.com/127.0.0.1 -address=/bu1.vvvdj.com/127.0.0.1 -address=/c.booksir.com.cn/127.0.0.1 -address=/c.jjkk.org/127.0.0.1 -address=/c.mnjkw.cn/127.0.0.1 -address=/c.tvsou.com/127.0.0.1 -address=/c.xiaobaipan.com/127.0.0.1 -address=/c1.4qx.net/127.0.0.1 -address=/c1.china.cn/127.0.0.1 -address=/c6.friok.com/127.0.0.1 -address=/ca.cydp5.com/127.0.0.1 -address=/car.qcmrjx.com/127.0.0.1 -address=/cbdm.weathercn.com/127.0.0.1 -address=/cby521.cn/127.0.0.1 -address=/cby521.com/127.0.0.1 -address=/cc.xiaodapei.com/127.0.0.1 -address=/cdn1.tvzhe.com/127.0.0.1 -address=/cee1.iteye.com/127.0.0.1 -address=/cgm.shicimingju.com/127.0.0.1 -address=/chicken18.com/127.0.0.1 -address=/chuangyixi.com/127.0.0.1 -address=/cj1.256.cc/127.0.0.1 -address=/ckg.vipyl.com/127.0.0.1 -address=/classic.39health.com/127.0.0.1 -address=/cm.baidu.com/127.0.0.1 -address=/cn.bidushe.com/127.0.0.1 -address=/cod.southmoney.com/127.0.0.1 -address=/code.ditiezu.net/127.0.0.1 -address=/code.ts166.net/127.0.0.1 -address=/code.tui80.com/127.0.0.1 -address=/codeym.dictall.com/127.0.0.1 -address=/cp.7y7.com/127.0.0.1 -address=/cp.greenxf.cn/127.0.0.1 -address=/cp.jfcdns.com/127.0.0.1 -address=/cp.qbaobei.com/127.0.0.1 -address=/cpro.zol.com.cn/127.0.0.1 -address=/crayon.meishichina.com/127.0.0.1 -address=/cspb1.5w5w.com/127.0.0.1 -address=/css.juqingba.cn/127.0.0.1 -address=/ctc.weather.com.cn/127.0.0.1 -address=/d.ab126.com/127.0.0.1 -address=/d.dgzj.com/127.0.0.1 -address=/d.gz2010.cn/127.0.0.1 -address=/d.gzpinda.com/127.0.0.1 -address=/d.tonghua5.com/127.0.0.1 -address=/d.xaoyo.com/127.0.0.1 -address=/d.xitongtiandi.net/127.0.0.1 -address=/d1.5h.com/127.0.0.1 -address=/d1.handdiy.com/127.0.0.1 -address=/d1.zhuangxiu6.com/127.0.0.1 -address=/d6.mobaders.com/127.0.0.1 -address=/dai.siyuetian.net/127.0.0.1 -address=/dai18.mumu01.com/127.0.0.1 -address=/dai18.shangc.net/127.0.0.1 -address=/dail01.wanmeilr.com/127.0.0.1 -address=/daima.diaoben.net/127.0.0.1 -address=/daima.huoche.net/127.0.0.1 -address=/daima.ijq.tv/127.0.0.1 -address=/daima.jiazhao.com/127.0.0.1 -address=/daima.miercn.com/127.0.0.1 -address=/daima.niubb.net/127.0.0.1 -address=/daima.ysdui.com/127.0.0.1 -address=/daima.yutou123.cn/127.0.0.1 -address=/daiwofei2019.top/127.0.0.1 -address=/data.waptime.cn/127.0.0.1 -address=/datas.tianqistatic.com/127.0.0.1 -address=/daxueshengqiandai.com/127.0.0.1 -address=/dd1.diymianmo.com/127.0.0.1 -address=/df666.pzhttaax.cn/127.0.0.1 -address=/df888.eastday.com/127.0.0.1 -address=/dm.300zi.com/127.0.0.1 -address=/dm.3454.com/127.0.0.1 -address=/dm.51okc.com/127.0.0.1 -address=/dm.66qw.net/127.0.0.1 -address=/dm.66wenshen.com/127.0.0.1 -address=/dm.aizhan.com/127.0.0.1 -address=/dm.cnbanbao.com/127.0.0.1 -address=/dm.cqdxun.cn/127.0.0.1 -address=/dm.gucheng.com/127.0.0.1 -address=/dm.haojuzi.net/127.0.0.1 -address=/dm.huochepiao.com/127.0.0.1 -address=/dm.hxzdhn.com/127.0.0.1 -address=/dm.ishuo.cn/127.0.0.1 -address=/dm.jb51.net/127.0.0.1 -address=/dm.jsyst.cn/127.0.0.1 -address=/dm.pw0.cn/127.0.0.1 -address=/dm.riji.cn/127.0.0.1 -address=/dm.sanwen.net/127.0.0.1 -address=/dm.sanwen8.com/127.0.0.1 -address=/dm.sb580.com/127.0.0.1 -address=/dm.taobaojuhuasuan.cn/127.0.0.1 -address=/dm.wenshenxiu.com/127.0.0.1 -address=/dm.zuowenku.net/127.0.0.1 -address=/dm1.3199.cn/127.0.0.1 -address=/dm1.3328.cn/127.0.0.1 -address=/dm1.yongkao.com/127.0.0.1 -address=/dm1.zjydt.com/127.0.0.1 -address=/dmm.aizhan.com/127.0.0.1 -address=/dmr.cnhoney.com/127.0.0.1 -address=/dmsz.win7sky.com/127.0.0.1 -address=/dmym.aixyy.com/127.0.0.1 -address=/du1.bbdj.com/127.0.0.1 -address=/dudm.qingsj.cn/127.0.0.1 -address=/dzais.com/127.0.0.1 -address=/e.qiaoyuwang.com/127.0.0.1 -address=/ee.shixunwang.net/127.0.0.1 -address=/ejunshi.com/127.0.0.1 -address=/emjs.mkzhan.com/127.0.0.1 -address=/ent1.12584.cn/127.0.0.1 -address=/er.5ykj.com/127.0.0.1 -address=/f.520tingshu.com/127.0.0.1 -address=/f1.06ps.com/127.0.0.1 -address=/f1.ichong123.com/127.0.0.1 -address=/f1.lutouwang.net/127.0.0.1 -address=/f1.pig66.com/127.0.0.1 -address=/f1.zaojv.com/127.0.0.1 -address=/fanyi100.com.cn/127.0.0.1 -address=/fbmjc.39yst.com/127.0.0.1 -address=/feidalu.com/127.0.0.1 -address=/ff.guidaye.com/127.0.0.1 -address=/ff.xue163.net/127.0.0.1 -address=/firefang.cn/127.0.0.1 -address=/fmgoal.com/127.0.0.1 -address=/forad1.weimeicun.com/127.0.0.1 -address=/fotao9.com/127.0.0.1 -address=/fp.jj59.com/127.0.0.1 -address=/fp.nanrenwo.net/127.0.0.1 -address=/fpb.kuhou.com/127.0.0.1 -address=/fpb.sohu.com/127.0.0.1 -address=/fpb1.apple886.com/127.0.0.1 -address=/fpb1.gxfin.com/127.0.0.1 -address=/fpbcode.onlinedown.net/127.0.0.1 -address=/fxjs.2541.com/127.0.0.1 -address=/fzb01.qiushibaike.com/127.0.0.1 -address=/g.3lian.com/127.0.0.1 -address=/g.gegeyingshi.com/127.0.0.1 -address=/g.pgu.cc/127.0.0.1 -address=/g1.pptair.com/127.0.0.1 -address=/g1.taijuba.com/127.0.0.1 -address=/gaoguai.com/127.0.0.1 -address=/gb.it1352.com/127.0.0.1 -address=/gccode.gongchang.com/127.0.0.1 -address=/gg.egouz.com/127.0.0.1 -address=/gg.jkmeishi.com/127.0.0.1 -address=/gg1.jc001.cn/127.0.0.1 -address=/gg1.mengchongzu.com/127.0.0.1 -address=/ggdm1.nhaidu.net/127.0.0.1 -address=/gk1.582582.com/127.0.0.1 -address=/gk1.zjbiz.net/127.0.0.1 -address=/godloveme.cn/127.0.0.1 -address=/gold.szonline.net/127.0.0.1 -address=/gp.zaiyunli.cn/127.0.0.1 -address=/guang.sdsgwy.com/127.0.0.1 -address=/gzcl999.cn/127.0.0.1 -address=/gzcl999.com/127.0.0.1 -address=/gzm.xzbu.com/127.0.0.1 -address=/h1.cfxinxi.cn/127.0.0.1 -address=/h1.kukuw.com/127.0.0.1 -address=/ha.zixuekaoshi.net/127.0.0.1 -address=/hao.315hyw.com/127.0.0.1 -address=/hao.360hyzj.com/127.0.0.1 -address=/hao1.loxue.com/127.0.0.1 -address=/hapic1.zhuangxiu22.com/127.0.0.1 -address=/hccms.com.cn/127.0.0.1 -address=/hdc.maxli.cn/127.0.0.1 -address=/hh.jiankang.com/127.0.0.1 -address=/hi.xiunm.cn/127.0.0.1 -address=/hi.xiunm.com/127.0.0.1 -address=/hiorange1.jobui.com/127.0.0.1 -address=/hu.xbhy.com/127.0.0.1 -address=/huhai.cdwz8.cn/127.0.0.1 -address=/hy.huangye88.com.cn/127.0.0.1 -address=/hy.huangye88.net/127.0.0.1 -address=/iia1.pikacn.com/127.0.0.1 -address=/img.263y.com/127.0.0.1 -address=/img.ferlie.net/127.0.0.1 -address=/img.xuenb.com/127.0.0.1 -address=/img.yangshengtang123.com/127.0.0.1 -address=/img.zuowen8.com/127.0.0.1 -address=/img.zuowenwang.net/127.0.0.1 -address=/img1.biyan8.com/127.0.0.1 -address=/img1.eywdf.com/127.0.0.1 -address=/img1.leyun365.com/127.0.0.1 -address=/img1.yulu99.com/127.0.0.1 -address=/img16.diyifanwen.com/127.0.0.1 -address=/img2.pengfu.net/127.0.0.1 -address=/int.w3tong.com/127.0.0.1 -address=/ios.426g.com/127.0.0.1 -address=/j.baminw.cn/127.0.0.1 -address=/j.diangon.com/127.0.0.1 -address=/j.imdb.cn/127.0.0.1 -address=/j1.piaobing.com/127.0.0.1 -address=/jb.dianshu119.com/127.0.0.1 -address=/jb.ecar168.cn/127.0.0.1 -address=/jc1.dayfund.cn/127.0.0.1 -address=/jddaw.com/127.0.0.1 -address=/jiaoben.eastday.com/127.0.0.1 -address=/jiaoben.ganji.cn/127.0.0.1 -address=/jiaoben.jucanw.com/127.0.0.1 -address=/jiaoben.webkaka.com/127.0.0.1 -address=/jibn12.jintang114.org/127.0.0.1 -address=/jinghuazhijia.com/127.0.0.1 -address=/jinhonghao.cn/127.0.0.1 -address=/jinshui2018.chalook.net/127.0.0.1 -address=/jiyan.net/127.0.0.1 -address=/jke1.jianke.com/127.0.0.1 -address=/jm1.xiao89.com/127.0.0.1 -address=/jnsz.net.cn/127.0.0.1 -address=/js.23yy.com/127.0.0.1 -address=/js.51ir.cn/127.0.0.1 -address=/js.fc090.com/127.0.0.1 -address=/js.gdyjs.com/127.0.0.1 -address=/js.itaiju.com/127.0.0.1 -address=/js.jianbihuadq.com/127.0.0.1 -address=/js.kt250.com/127.0.0.1 -address=/js.ruiwen.com/127.0.0.1 -address=/js.shangxueba.com/127.0.0.1 -address=/js.ubaike.cn/127.0.0.1 -address=/js1.sxptfw.com/127.0.0.1 -address=/js1.xbaixing.com/127.0.0.1 -address=/jsb.qianzhan.com/127.0.0.1 -address=/jscode.acg68.com/127.0.0.1 -address=/jscode.jbzj.com/127.0.0.1 -address=/jsf.cnlinfo.net/127.0.0.1 -address=/jsm.39yst.com/127.0.0.1 -address=/jss.tvzhe.com/127.0.0.1 -address=/jx.renrensousuo.com/127.0.0.1 -address=/jy.zhongxues.com/127.0.0.1 -address=/k1.dancihu.com/127.0.0.1 -address=/k1.wanwenwan.cn/127.0.0.1 -address=/ka5188.com/127.0.0.1 -address=/kc.gouchezj.com/127.0.0.1 -address=/khrtac.xiangha.com/127.0.0.1 -address=/km1.muhoujiemi.com/127.0.0.1 -address=/kpshx.douguo.com/127.0.0.1 -address=/lang.t7114.com/127.0.0.1 -address=/libs.tvmao.cn/127.0.0.1 -address=/linyao.dxsdb.com/127.0.0.1 -address=/lixiangmo.com/127.0.0.1 -address=/ll38.com/127.0.0.1 -address=/lm.ijq.tv/127.0.0.1 -address=/lm1.tuliu.com/127.0.0.1 -address=/lm1.wzpcw.com/127.0.0.1 -address=/lraa.xiaoniutui.com/127.0.0.1 -address=/luoshenbest.cn/127.0.0.1 -address=/lv.myapks.com/127.0.0.1 -address=/lyz.radio366.com/127.0.0.1 -address=/m1.100how.com/127.0.0.1 -address=/m1.27com.com/127.0.0.1 -address=/m1.51kaowang.com/127.0.0.1 -address=/m1.81312.com/127.0.0.1 -address=/m1.darfd.com/127.0.0.1 -address=/m1.dxsbb.com/127.0.0.1 -address=/m1.hapi123.net/127.0.0.1 -address=/m1.jintang114.org/127.0.0.1 -address=/m1.kuanff.com/127.0.0.1 -address=/m1.nn670.com/127.0.0.1 -address=/m1.vodjk.com/127.0.0.1 -address=/m1.we556.com/127.0.0.1 -address=/ma1.meishij.net/127.0.0.1 -address=/mad1.jirou.com/127.0.0.1 -address=/matwbp.iask.sina.com.cn/127.0.0.1 -address=/mb.gulongbbs.com/127.0.0.1 -address=/mbjb1.girl13.com/127.0.0.1 -address=/mc.tvzhe.com/127.0.0.1 -address=/mc.weather.com.cn/127.0.0.1 -address=/md.tvzhe.com/127.0.0.1 -address=/meng.360zuowen.com/127.0.0.1 -address=/mf01.zybang.com/127.0.0.1 -address=/milk.yesky.com.cn/127.0.0.1 -address=/mo-tuo.com/127.0.0.1 -address=/mountain.zhidao.baidu.com/127.0.0.1 -address=/mpb1.iteye.com/127.0.0.1 -address=/mps.yuwenba.cn/127.0.0.1 -address=/mssheng.com/127.0.0.1 -address=/mt.59wz.com/127.0.0.1 -address=/my.gz2010.cn/127.0.0.1 -address=/myunion1.qm120.com/127.0.0.1 -address=/myunion1.tupians.com/127.0.0.1 -address=/nba.emohe.com/127.0.0.1 -address=/new.htcui.com/127.0.0.1 -address=/news.jiukang.org/127.0.0.1 -address=/ns1.chinayms.com/127.0.0.1 -address=/o.jy135.com/127.0.0.1 -address=/o.phb123.com/127.0.0.1 -address=/okkkk.com/127.0.0.1 -address=/p1.zhongyoo.com/127.0.0.1 -address=/p1.zhumengwl.com/127.0.0.1 -address=/pan.keyunzhan.com/127.0.0.1 -address=/pb.okk123.com/127.0.0.1 -address=/pb.shuxigua.com/127.0.0.1 -address=/pic50.pingguolv.com/127.0.0.1 -address=/pingbi.diudou.com/127.0.0.1 -address=/pingshu365.xyz/127.0.0.1 -address=/pkk1.zuimeiniwo.com/127.0.0.1 -address=/pp.wayqq.com/127.0.0.1 -address=/ppt.tianya999.com/127.0.0.1 -address=/pss.meizhejie.com/127.0.0.1 -address=/psywed.com/127.0.0.1 -address=/ptw.la/127.0.0.1 -address=/q1.yyxwzx.com/127.0.0.1 -address=/qcjslm.com/127.0.0.1 -address=/qifake.com/127.0.0.1 -address=/qiji1.jdwx.info/127.0.0.1 -address=/qiyeb.iaskbus.com/127.0.0.1 -address=/qpb.sohu.com/127.0.0.1 -address=/qq167.com/127.0.0.1 -address=/qqhuhu.com/127.0.0.1 -address=/qujishu.com/127.0.0.1 -address=/r.99waiyu.com/127.0.0.1 -address=/rabc1.iteye.com/127.0.0.1 -address=/rbmry.com/127.0.0.1 -address=/rdbd.xsread.com/127.0.0.1 -address=/rmcxw.cn/127.0.0.1 -address=/rmcxw.net/127.0.0.1 -address=/ruan88.com/127.0.0.1 -address=/s.yaozui.com/127.0.0.1 -address=/s.zixuntop.com/127.0.0.1 -address=/s1.dapenti.com/127.0.0.1 -address=/s1.dugoogle.com/127.0.0.1 -address=/s1.hualaoye.com/127.0.0.1 -address=/s1.qiqutt.cn/127.0.0.1 -address=/s1.qiqutt.com/127.0.0.1 -address=/s1.tuzhaozhao.com/127.0.0.1 -address=/s1.wan1979.com/127.0.0.1 -address=/s1.wesiedu.com/127.0.0.1 -address=/salary.xiao84.com/127.0.0.1 -address=/sbbd1.qulishi.com/127.0.0.1 -address=/sc.csai.cn/127.0.0.1 -address=/script-bd.baixing.net/127.0.0.1 -address=/sdd.dzsc.com/127.0.0.1 -address=/sdd.hi1718.com/127.0.0.1 -address=/sh996.dftoutiao.com/127.0.0.1 -address=/shicao.icantv.cn/127.0.0.1 -address=/shili.downxia.com/127.0.0.1 -address=/shili.wanyx.com/127.0.0.1 -address=/shop265.com/127.0.0.1 -address=/show.9zwang.com/127.0.0.1 -address=/sjbaiduadv1.redou.com/127.0.0.1 -address=/sjzqu.com/127.0.0.1 -address=/sp.dnqc.com/127.0.0.1 -address=/ss.shicimingju.com/127.0.0.1 -address=/ss.ting55.com/127.0.0.1 -address=/ssb.ah499.com/127.0.0.1 -address=/static.ichehome.com/127.0.0.1 -address=/static.jiaquyi.com/127.0.0.1 -address=/t.cnscore.com/127.0.0.1 -address=/t.douyaobuy.com/127.0.0.1 -address=/t1.612.com/127.0.0.1 -address=/thetestpage.39.net/127.0.0.1 -address=/ticcdn.com/127.0.0.1 -address=/tongj.xilu.com/127.0.0.1 -address=/tt123.eastday.com/127.0.0.1 -address=/tt123.hao0202.com/127.0.0.1 -address=/tu.zx110.org/127.0.0.1 -address=/tui98.cn/127.0.0.1 -address=/u1.2048sj.com/127.0.0.1 -address=/u1.20q.cn/127.0.0.1 -address=/u1.shuaiku.com/127.0.0.1 -address=/ub1.job592.com/127.0.0.1 -address=/un1.takefoto.cn/127.0.0.1 -address=/undm.qibulo.com/127.0.0.1 -address=/union1.cnbetacdn.com/127.0.0.1 -address=/uniondm.cz88.net/127.0.0.1 -address=/usejj.wangkl.com/127.0.0.1 -address=/uu1.3gu.com/127.0.0.1 -address=/uuu.pctowap.com/127.0.0.1 -address=/v1.kwpewga.cn/127.0.0.1 -address=/v1.phb123.com/127.0.0.1 -address=/v1.taksh.cn/127.0.0.1 -address=/ve.kj-cy.cn/127.0.0.1 -address=/vi1.souid.com/127.0.0.1 -address=/vv1.pyhfxdm.cn/127.0.0.1 -address=/vvv.ieduw.com/127.0.0.1 -address=/vyule.com/127.0.0.1 -address=/w.xiaopiaoyou.com/127.0.0.1 -address=/w1.diaoyou.com/127.0.0.1 -address=/w1.wayqq.com/127.0.0.1 -address=/w11.zhongkaohelp.com/127.0.0.1 -address=/w18.9939.com/127.0.0.1 -address=/wap001.bytravel.cn/127.0.0.1 -address=/wda.ydt.com.cn/127.0.0.1 -address=/whfpbc.99.com.cn/127.0.0.1 -address=/wj.jiancai365.cn/127.0.0.1 -address=/wm.mipcdn.com/127.0.0.1 -address=/wneia.iaskhot.com/127.0.0.1 -address=/ws.wenshenxiu.com/127.0.0.1 -address=/wuliao.chzsport.cn/127.0.0.1 -address=/wuliao.juqingba.cn/127.0.0.1 -address=/wyzq.rehuwang.com/127.0.0.1 -address=/x.mtrend.cn/127.0.0.1 -address=/x1.kantu.com/127.0.0.1 -address=/xbtw.com/127.0.0.1 -address=/xc.gouchezj.com/127.0.0.1 -address=/xcf-bd-js.chuimg.com/127.0.0.1 -address=/xiaopangtao.com/127.0.0.1 -address=/xiaoyutiao.com/127.0.0.1 -address=/xinju.cc/127.0.0.1 -address=/xinkuaiyu.com/127.0.0.1 -address=/xitongku.cc/127.0.0.1 -address=/xne1ocient87zxz.360doc.cn/127.0.0.1 -address=/xue.zbyw.cn/127.0.0.1 -address=/xuexi.hydcd.com/127.0.0.1 -address=/y1.spreton.com/127.0.0.1 -address=/y66xvgo5i.chuimg.com/127.0.0.1 -address=/yhzm.cc/127.0.0.1 -address=/yi.ximizi.com/127.0.0.1 -address=/yijiuningyia.gushiwen.org/127.0.0.1 -address=/yin1.zgpingshu.com/127.0.0.1 -address=/ykxwn.com/127.0.0.1 -address=/ynzhby.com/127.0.0.1 -address=/yong.chazidian.com/127.0.0.1 -address=/ys.muhoujiemi.com/127.0.0.1 -address=/ysx8.vip/127.0.0.1 -address=/ysxywj.com/127.0.0.1 -address=/yulzs.com/127.0.0.1 -address=/yx1.managershare.com/127.0.0.1 -address=/yy1.fwccw.com/127.0.0.1 -address=/yy2018.jintonghua.com/127.0.0.1 -address=/z1.chezhuzhinan.com/127.0.0.1 -address=/z1.cyla.cn/127.0.0.1 -address=/z1hihu.xmcimg.com/127.0.0.1 -address=/z888.izhufu.net/127.0.0.1 -address=/zfds1.tianya999.com/127.0.0.1 -address=/zg.mmyuer.com/127.0.0.1 -address=/zhaoshang8.com/127.0.0.1 -address=/zhgg.dre8.com/127.0.0.1 -address=/zhihu.xmcimg.com/127.0.0.1 -address=/zk.91post.com/127.0.0.1 -address=/zoom.zshu.net/127.0.0.1 -address=/zq84.com/127.0.0.1 -address=/0377shujuhuifu.top/127.0.0.1 -address=/0531mnk.net/127.0.0.1 -address=/1711811.com/127.0.0.1 -address=/18dusun.com/127.0.0.1 -address=/2013sh.com/127.0.0.1 -address=/210189.com/127.0.0.1 -address=/258pct.com/127.0.0.1 -address=/258ydh.com/127.0.0.1 -address=/265958.com/127.0.0.1 -address=/2pmob.com/127.0.0.1 -address=/360shopping.com.cn/127.0.0.1 -address=/3dqiang.com/127.0.0.1 -address=/60608787.com/127.0.0.1 -address=/711983.com/127.0.0.1 -address=/77rog.com/127.0.0.1 -address=/910weixin.com/127.0.0.1 -address=/913vt.com/127.0.0.1 -address=/93vitui.com/127.0.0.1 -address=/ailiyou1999.com/127.0.0.1 -address=/aliguojw.com/127.0.0.1 -address=/anhuilitian.net/127.0.0.1 -address=/aodongjiaosu.com/127.0.0.1 -address=/autoyou1678.com/127.0.0.1 -address=/bihutg.com/127.0.0.1 -address=/bjwwfx001.org.cn/127.0.0.1 -address=/blossommo.com/127.0.0.1 -address=/bycxsh.com/127.0.0.1 -address=/ccbccb.cn/127.0.0.1 -address=/cdxyb.cn/127.0.0.1 -address=/chinahdcm.com/127.0.0.1 -address=/dakawm.cc/127.0.0.1 -address=/dfcwg.com/127.0.0.1 -address=/dsgy521.com/127.0.0.1 -address=/dupinpu.com/127.0.0.1 -address=/enyayinxiang.com/127.0.0.1 -address=/etg98.com/127.0.0.1 -address=/fate-xy.com/127.0.0.1 -address=/feihongjiaoyu.com/127.0.0.1 -address=/fenvm.com/127.0.0.1 -address=/fjmailia.com/127.0.0.1 -address=/fm6w.com/127.0.0.1 -address=/front99.com/127.0.0.1 -address=/fuyigo.top/127.0.0.1 -address=/gogolm.xyz/127.0.0.1 -address=/gotourls.bid/127.0.0.1 -address=/guangtui1999.com/127.0.0.1 -address=/gzhctryy.com/127.0.0.1 -address=/gzmsm.cn/127.0.0.1 -address=/h01ce.cn/127.0.0.1 -address=/harbinbaojia.net/127.0.0.1 -address=/hdjxmf.com/127.0.0.1 -address=/hechaocheng.cn/127.0.0.1 -address=/henanfs.com/127.0.0.1 -address=/hfxs01il.com/127.0.0.1 -address=/hgo7r.cn/127.0.0.1 -address=/hulemedia.com/127.0.0.1 -address=/ip.hivps.xyz/127.0.0.1 -address=/jhwj88.com/127.0.0.1 -address=/jjqyk.com/127.0.0.1 -address=/jlhygy.com/127.0.0.1 -address=/juren0.com/127.0.0.1 -address=/kkdsdlc.com/127.0.0.1 -address=/kuangtuiguoo18888.com/127.0.0.1 -address=/kuuad.com/127.0.0.1 -address=/kyad88.com/127.0.0.1 -address=/la61d.cn/127.0.0.1 -address=/lucktui.com/127.0.0.1 -address=/meizhuzhuangshi.com.cn/127.0.0.1 -address=/mengchengbao.com/127.0.0.1 -address=/miaobeichina.com/127.0.0.1 -address=/mightiger.net/127.0.0.1 -address=/mlangw.net/127.0.0.1 -address=/nettsl.com/127.0.0.1 -address=/np176.com/127.0.0.1 -address=/pp9kk.com/127.0.0.1 -address=/pr33.cn/127.0.0.1 -address=/shanghuitianxia.cn/127.0.0.1 -address=/shanxiyizhao.com/127.0.0.1 -address=/shijiezhidao.com/127.0.0.1 -address=/shongcheng.com/127.0.0.1 -address=/shunlige.com/127.0.0.1 -address=/smsksx.com/127.0.0.1 -address=/somode.net/127.0.0.1 -address=/soonyou123.com/127.0.0.1 -address=/sssgao999.com/127.0.0.1 -address=/starstar19999.com/127.0.0.1 -address=/start1999.com/127.0.0.1 -address=/startui19999.com/127.0.0.1 -address=/sy123888.com/127.0.0.1 -address=/tangeb.com/127.0.0.1 -address=/tdtsd.com/127.0.0.1 -address=/tjshuimu.com/127.0.0.1 -address=/tkssw.com/127.0.0.1 -address=/tuituiyoo999.com/127.0.0.1 -address=/tuoguang1111.com/127.0.0.1 -address=/wangketuan.com/127.0.0.1 -address=/weduoke.com/127.0.0.1 -address=/weekslw.com/127.0.0.1 -address=/weixingshexiangji.net/127.0.0.1 -address=/wjdjcjcm444.cn/127.0.0.1 -address=/wxktv.cn/127.0.0.1 -address=/xiaohui2.cn/127.0.0.1 -address=/xlsschina15.net/127.0.0.1 -address=/xueyanshan.com/127.0.0.1 -address=/xvyljkr.com/127.0.0.1 -address=/xzqxz.net/127.0.0.1 -address=/ydeprint.com/127.0.0.1 -address=/ynjkkj.com/127.0.0.1 -address=/yootui19999.com/127.0.0.1 -address=/youhm.cn/127.0.0.1 -address=/youhuomeishi.com/127.0.0.1 -address=/yttz113.com/127.0.0.1 -address=/yunpifu.cn/127.0.0.1 -address=/yuxiangrc.com/127.0.0.1 -address=/yzjlsb.com/127.0.0.1 -address=/zgdmsj.cn/127.0.0.1 -address=/zhuyuanp.club/127.0.0.1 -address=/zhybw88.com/127.0.0.1 -address=/zrwhartongroup.com/127.0.0.1 -address=/ggtg8.com/127.0.0.1 -address=/liyueao.top/127.0.0.1 -address=/lpsgc.cn/127.0.0.1 -address=/yi71.com.cn/127.0.0.1 -address=/okx7.site/127.0.0.1 -address=/runkao.net/127.0.0.1 -address=/stunninglover.com/127.0.0.1 -address=/cryptaloot.pro/127.0.0.1 -address=/01w47q.cn/127.0.0.1 -address=/0217qpineuxbcdhopswkvf.xyz/127.0.0.1 -address=/0234408.cn/127.0.0.1 -address=/02m5j.cn/127.0.0.1 -address=/03196688.com/127.0.0.1 -address=/0532ci.com.cn/127.0.0.1 -address=/0551zgz.com/127.0.0.1 -address=/05q9n.cn/127.0.0.1 -address=/0755man.cn/127.0.0.1 -address=/07kfh.cn/127.0.0.1 -address=/0851ok.com/127.0.0.1 -address=/0923csfsteibv12.xyz/127.0.0.1 -address=/0b6h.cn/127.0.0.1 -address=/0fwg.cn/127.0.0.1 -address=/0n6h.cn/127.0.0.1 -address=/0ozo.cn/127.0.0.1 -address=/0pj1f.cn/127.0.0.1 -address=/0uk9e.cn/127.0.0.1 -address=/0z5jn.cn/127.0.0.1 -address=/1115potmgabfvixqwi.top/127.0.0.1 -address=/114com.cc/127.0.0.1 -address=/118ex.cn/127.0.0.1 -address=/119cgpt.com/127.0.0.1 -address=/12381236.com/127.0.0.1 -address=/12jf3.cn/127.0.0.1 -address=/12rge.xyz/127.0.0.1 -address=/12rng.cn/127.0.0.1 -address=/1314sss.top/127.0.0.1 -address=/1494.top/127.0.0.1 -address=/168xiazai.com/127.0.0.1 -address=/17bqg.top/127.0.0.1 -address=/17zheng.cn/127.0.0.1 -address=/183pu.cn/127.0.0.1 -address=/1fv3b.cn/127.0.0.1 -address=/1h4ig.cn/127.0.0.1 -address=/1j2h31.cn/127.0.0.1 -address=/1k4vd.cn/127.0.0.1 -address=/1mb034.cn/127.0.0.1 -address=/1r49n.cn/127.0.0.1 -address=/1x26q3.cn/127.0.0.1 -address=/215to.cn/127.0.0.1 -address=/216pu.cn/127.0.0.1 -address=/21u8f.cn/127.0.0.1 -address=/21xsk.com/127.0.0.1 -address=/228pu.cn/127.0.0.1 -address=/24haitao.net/127.0.0.1 -address=/258580w.cn/127.0.0.1 -address=/282l1.cn/127.0.0.1 -address=/28mcw1.cn/127.0.0.1 -address=/2fnrc.cn/127.0.0.1 -address=/2hqd0b.cn/127.0.0.1 -address=/2ktd0.cn/127.0.0.1 -address=/2p1ih.cn/127.0.0.1 -address=/2r3485.cn/127.0.0.1 -address=/2scjbg.com/127.0.0.1 -address=/2shoushi.com/127.0.0.1 -address=/2st5ne.cn/127.0.0.1 -address=/2txt.cc:8862/127.0.0.1 -address=/2v0ni.cn/127.0.0.1 -address=/2v9ml.cn/127.0.0.1 -address=/2wxb5.cn/127.0.0.1 -address=/2zm4.cn/127.0.0.1 -address=/365syt.cn/127.0.0.1 -address=/365yigou.cn/127.0.0.1 -address=/38ursg.cn/127.0.0.1 -address=/3ql1pb.cn/127.0.0.1 -address=/3s1xk.cn/127.0.0.1 -address=/3vn52l.cn/127.0.0.1 -address=/42rca.cn/127.0.0.1 -address=/47dx0c.cn/127.0.0.1 -address=/47n209.com/127.0.0.1 -address=/482hb.cn/127.0.0.1 -address=/49lkc.cn/127.0.0.1 -address=/4a3zf.cn/127.0.0.1 -address=/4df5ef.xyz/127.0.0.1 -address=/4ekx.cn/127.0.0.1 -address=/4excel.cn/127.0.0.1 -address=/4py3oe.cn/127.0.0.1 -address=/4qn1k.cn/127.0.0.1 -address=/4x9te.cn/127.0.0.1 -address=/4z5o27.cn/127.0.0.1 -address=/519397.com/127.0.0.1 -address=/51fishplace.com/127.0.0.1 -address=/51gpt.com/127.0.0.1 -address=/51posuiji.org.cn/127.0.0.1 -address=/51xvc.cn/127.0.0.1 -address=/52homie.cn/127.0.0.1 -address=/52tushuo.com/127.0.0.1 -address=/555b2b.com/127.0.0.1 -address=/57m1j.cn/127.0.0.1 -address=/58scx.com/127.0.0.1 -address=/58xmgys.com/127.0.0.1 -address=/5dydk.com/127.0.0.1 -address=/5kmm.top/127.0.0.1 -address=/5mbd2.com/127.0.0.1 -address=/5pb266.com/127.0.0.1 -address=/5q80n.cn/127.0.0.1 -address=/5tbiec.cn/127.0.0.1 -address=/5x0f.cn/127.0.0.1 -address=/5yv2e.cn/127.0.0.1 -address=/5yw4n.cn/127.0.0.1 -address=/605296.com/127.0.0.1 -address=/606w.cn/127.0.0.1 -address=/609623.com/127.0.0.1 -address=/63xs.com:8016/127.0.0.1 -address=/64si.com/127.0.0.1 -address=/678sky.com/127.0.0.1 -address=/688ct.com/127.0.0.1 -address=/6945k6.cn/127.0.0.1 -address=/69u0t.cn/127.0.0.1 -address=/69yll.cn/127.0.0.1 -address=/6c4t5.cn/127.0.0.1 -address=/6fai2.cn/127.0.0.1 -address=/6l1967.cn/127.0.0.1 -address=/6nzev.cn/127.0.0.1 -address=/6o87d.cn/127.0.0.1 -address=/6ou47b.cn/127.0.0.1 -address=/6shuge.com/127.0.0.1 -address=/6yush.cn/127.0.0.1 -address=/6yw7j.cn/127.0.0.1 -address=/70e.me/127.0.0.1 -address=/71mxc6.cn/127.0.0.1 -address=/71zrh.cn/127.0.0.1 -address=/73cm.com/127.0.0.1 -address=/74p030.cn/127.0.0.1 -address=/757g7g.cn/127.0.0.1 -address=/7ef4d.cn/127.0.0.1 -address=/7ez4.cn/127.0.0.1 -address=/7gbca.cn/127.0.0.1 -address=/7ia9h.cn/127.0.0.1 -address=/7m307.cn/127.0.0.1 -address=/7n3e8o.com/127.0.0.1 -address=/7x3mh.cn/127.0.0.1 -address=/805zx.cn/127.0.0.1 -address=/80f31.cn/127.0.0.1 -address=/81ngn1.cn/127.0.0.1 -address=/85rvq.cn/127.0.0.1 -address=/85wa.cn/127.0.0.1 -address=/88android.com/127.0.0.1 -address=/88k73d.cn/127.0.0.1 -address=/89tyge.top/127.0.0.1 -address=/8byu.cn/127.0.0.1 -address=/8fiv9a.cn/127.0.0.1 -address=/8hpay.cn/127.0.0.1 -address=/8i1xc.cn/127.0.0.1 -address=/8j24h.cn/127.0.0.1 -address=/8ls3n.cn/127.0.0.1 -address=/8p30k.cn/127.0.0.1 -address=/8t5vd.cn/127.0.0.1 -address=/8v61j.cn/127.0.0.1 -address=/8v7wg.com/127.0.0.1 -address=/91byy.cn/127.0.0.1 -address=/922x7c.cn/127.0.0.1 -address=/958so.cn/127.0.0.1 -address=/979067.com/127.0.0.1 -address=/97kuaixiu.com/127.0.0.1 -address=/97paa.com/127.0.0.1 -address=/996f3d.cn/127.0.0.1 -address=/99hg.wang/127.0.0.1 -address=/9a6wb.cn/127.0.0.1 -address=/9d7in.cn/127.0.0.1 -address=/9pb0h.cn/127.0.0.1 -address=/9x6lr.cn/127.0.0.1 -address=/9y88.com/127.0.0.1 -address=/9yyg.cn/127.0.0.1 -address=/a9v8.cn/127.0.0.1 -address=/aa.wenxue6.com/127.0.0.1 -address=/aaan.xyz/127.0.0.1 -address=/aaaw.xyz/127.0.0.1 -address=/aabbccddeeffgg.cn/127.0.0.1 -address=/aabku.cn/127.0.0.1 -address=/aauisg64017.cn/127.0.0.1 -address=/abc656.today/127.0.0.1 -address=/abckzo.cn/127.0.0.1 -address=/abeij.com/127.0.0.1 -address=/abfirst.cn/127.0.0.1 -address=/abuse8.com/127.0.0.1 -address=/acaog.com/127.0.0.1 -address=/acaox.com/127.0.0.1 -address=/acaoz.com/127.0.0.1 -address=/achig.com/127.0.0.1 -address=/actingidekex.cn/127.0.0.1 -address=/adaog.com/127.0.0.1 -address=/admddc.com/127.0.0.1 -address=/aduic.com/127.0.0.1 -address=/aercxy.com/127.0.0.1 -address=/afefw.com/127.0.0.1 -address=/affiliate6.com/127.0.0.1 -address=/afoux.com/127.0.0.1 -address=/aganj.com/127.0.0.1 -address=/agurl.top/127.0.0.1 -address=/ahuac.com/127.0.0.1 -address=/ahw3.com/127.0.0.1 -address=/aibangzs.com/127.0.0.1 -address=/aicydb.com/127.0.0.1 -address=/aikan6.com/127.0.0.1 -address=/ailezhai.cn/127.0.0.1 -address=/ailiby.cn/127.0.0.1 -address=/aimiyz.com/127.0.0.1 -address=/aiode.cn/127.0.0.1 -address=/aishake.cn/127.0.0.1 -address=/aishowbger.com/127.0.0.1 -address=/aiyyu.com/127.0.0.1 -address=/ajiez.com/127.0.0.1 -address=/ajkdg3.xyz/127.0.0.1 -address=/alksdh.com/127.0.0.1 -address=/allluck.cn/127.0.0.1 -address=/alryo.cn/127.0.0.1 -address=/anmeilai.net/127.0.0.1 -address=/anyysz.com/127.0.0.1 -address=/aomde.com/127.0.0.1 -address=/apjiangte.com/127.0.0.1 -address=/apmengxin.com/127.0.0.1 -address=/applequan.com/127.0.0.1 -address=/apxyz.com/127.0.0.1 -address=/archrug.com/127.0.0.1 -address=/autobedo.com.cn/127.0.0.1 -address=/avsmt.cn/127.0.0.1 -address=/awqsaged.cn/127.0.0.1 -address=/awtks.com/127.0.0.1 -address=/awyys.com/127.0.0.1 -address=/axizb.cn/127.0.0.1 -address=/axkxy.com/127.0.0.1 -address=/axsrq.cn/127.0.0.1 -address=/axuns.com/127.0.0.1 -address=/aykcic.com/127.0.0.1 -address=/ayues.com/127.0.0.1 -address=/b0lc.cn/127.0.0.1 -address=/b25ku.cn/127.0.0.1 -address=/b54ah.cn/127.0.0.1 -address=/baful.net/127.0.0.1 -address=/baidu.cmxsw.com/127.0.0.1 -address=/baiduspider1.cn/127.0.0.1 -address=/baitaoidc.com/127.0.0.1 -address=/baiyangzs.com/127.0.0.1 -address=/baolutongwuye.cn/127.0.0.1 -address=/bapkt.com/127.0.0.1 -address=/barnfps.com/127.0.0.1 -address=/bbbr8.com/127.0.0.1 -address=/bbbx.xyz/127.0.0.1 -address=/bbeyay41026.cn/127.0.0.1 -address=/bbvjs.com/127.0.0.1 -address=/bchur.com/127.0.0.1 -address=/bcunr.com/127.0.0.1 -address=/bdaor.com/127.0.0.1 -address=/bdiae.com/127.0.0.1 -address=/beifmu.com/127.0.0.1 -address=/bentengcn.com/127.0.0.1 -address=/berfd.xyz/127.0.0.1 -address=/bgcse.cn/127.0.0.1 -address=/bgj216.cn/127.0.0.1 -address=/bgtrtv.top/127.0.0.1 -address=/bhuak.com/127.0.0.1 -address=/bianxianwu.com/127.0.0.1 -address=/biboi.cn/127.0.0.1 -address=/biluzhang.cn/127.0.0.1 -address=/bingdiantao.com/127.0.0.1 -address=/bixuyao.com.cn/127.0.0.1 -address=/bjbrtc.com/127.0.0.1 -address=/bjdianyue.com/127.0.0.1 -address=/bjeai.com/127.0.0.1 -address=/bjhengdiao.com/127.0.0.1 -address=/bjqftcty.com/127.0.0.1 -address=/bjygfd.com/127.0.0.1 -address=/bjzcbx.com/127.0.0.1 -address=/blfyquz.cn/127.0.0.1 -address=/bmfwwz.top/127.0.0.1 -address=/bmgan.com/127.0.0.1 -address=/bmuju.com/127.0.0.1 -address=/bninc2.cn/127.0.0.1 -address=/bnzxc.xyz/127.0.0.1 -address=/bobotune.com/127.0.0.1 -address=/bodapet.com/127.0.0.1 -address=/bokanedu.net/127.0.0.1 -address=/boomgamescloud-cdn.cn/127.0.0.1 -address=/boweineng.cn/127.0.0.1 -address=/bpdffh.cn/127.0.0.1 -address=/bqhnj.cn/127.0.0.1 -address=/bqqsdv73724.cn/127.0.0.1 -address=/bslmw.com/127.0.0.1 -address=/bsmakeup.com.cn/127.0.0.1 -address=/bueson.com/127.0.0.1 -address=/bugcreator.cn/127.0.0.1 -address=/bulkeach.com/127.0.0.1 -address=/bvoer.com/127.0.0.1 -address=/bvosv.com/127.0.0.1 -address=/bx9000.top/127.0.0.1 -address=/bym03.cn/127.0.0.1 -address=/byujf.cn/127.0.0.1 -address=/c19f2.cn/127.0.0.1 -address=/c6z85.cn/127.0.0.1 -address=/c82d5.cn/127.0.0.1 -address=/ca88b.cn/127.0.0.1 -address=/caduka.cn/127.0.0.1 -address=/caichenguang.cn/127.0.0.1 -address=/caiji.wiki/127.0.0.1 -address=/cailawyer.cn/127.0.0.1 -address=/caiwanhui.top/127.0.0.1 -address=/calculated.cn/127.0.0.1 -address=/car156.net/127.0.0.1 -address=/casbanlly.com/127.0.0.1 -address=/cbvjddh.23txt.com/127.0.0.1 -address=/cccab.club/127.0.0.1 -address=/cchfjz.com/127.0.0.1 -address=/ccjxybj.cn/127.0.0.1 -address=/ccmdgg.com/127.0.0.1 -address=/ccouv.com/127.0.0.1 -address=/ccunf.com/127.0.0.1 -address=/cdfzcz.com/127.0.0.1 -address=/cdgxq.com/127.0.0.1 -address=/cdhenfan.com/127.0.0.1 -address=/cdiah.com/127.0.0.1 -address=/cdjkngs.cn/127.0.0.1 -address=/cdn.m.okdd.net/127.0.0.1 -address=/cdntlz.cn/127.0.0.1 -address=/cdouj.com/127.0.0.1 -address=/cdqjmc.com/127.0.0.1 -address=/ceiyo.com/127.0.0.1 -address=/cepegas.com/127.0.0.1 -address=/ceyiuy.com/127.0.0.1 -address=/cezezo.top/127.0.0.1 -address=/cfdanet.com/127.0.0.1 -address=/cfenl.com/127.0.0.1 -address=/cfhijdsb.cn/127.0.0.1 -address=/cgaij.com/127.0.0.1 -address=/cgoiiq.com/127.0.0.1 -address=/cgoul.com/127.0.0.1 -address=/cgxxmy.com/127.0.0.1 -address=/changhehengqi.com/127.0.0.1 -address=/chaojilamei.cn/127.0.0.1 -address=/chendjiangxing.cn/127.0.0.1 -address=/chengboke.cn/127.0.0.1 -address=/chenxiangqian.cn/127.0.0.1 -address=/chersc.com/127.0.0.1 -address=/chexiw.com/127.0.0.1 -address=/chfuw.com/127.0.0.1 -address=/chgdf.cn/127.0.0.1 -address=/china-waters.com.cn/127.0.0.1 -address=/chinaairs.cn/127.0.0.1 -address=/chinaqirun.cn/127.0.0.1 -address=/chinaweian.com/127.0.0.1 -address=/chinawms.cn/127.0.0.1 -address=/chrommotor.com/127.0.0.1 -address=/chuangxinfa.cn/127.0.0.1 -address=/chuhul.cn/127.0.0.1 -address=/chutangpu.cn/127.0.0.1 -address=/cike666.com/127.0.0.1 -address=/cindy17club.com/127.0.0.1 -address=/city009.com/127.0.0.1 -address=/cjh9.cn/127.0.0.1 -address=/cjieh.com/127.0.0.1 -address=/ckaiv.com/127.0.0.1 -address=/ckikq.com/127.0.0.1 -address=/claiks.com/127.0.0.1 -address=/clandia.cn/127.0.0.1 -address=/classicgir.cn/127.0.0.1 -address=/clmmw.com/127.0.0.1 -address=/cn-3drp.com/127.0.0.1 -address=/cni58.com/127.0.0.1 -address=/cniuv.com/127.0.0.1 -address=/cnlhg.cn/127.0.0.1 -address=/cnshef.com/127.0.0.1 -address=/cnxmyb.cn/127.0.0.1 -address=/cnyibs.com/127.0.0.1 -address=/cnzhqs.com/127.0.0.1 -address=/coccccc.cc/127.0.0.1 -address=/codejumps.com/127.0.0.1 -address=/codlw.com/127.0.0.1 -address=/coenr.com/127.0.0.1 -address=/cojia.net/127.0.0.1 -address=/comberry.cn/127.0.0.1 -address=/comesgo.com/127.0.0.1 -address=/continuedsys.cn/127.0.0.1 -address=/coolpadrom.cn/127.0.0.1 -address=/cornplus.cn/127.0.0.1 -address=/couas.com/127.0.0.1 -address=/countersys.cn/127.0.0.1 -address=/coveredsys.cn/127.0.0.1 -address=/cpxkvc.com/127.0.0.1 -address=/cqbaitong.cn/127.0.0.1 -address=/cqgya.com/127.0.0.1 -address=/cqhhct.com/127.0.0.1 -address=/cqlxscdc.top/127.0.0.1 -address=/cqytjzgc.com/127.0.0.1 -address=/crzytm.com/127.0.0.1 -address=/cs12d.com/127.0.0.1 -address=/cshwhy.cn/127.0.0.1 -address=/ctiev.com/127.0.0.1 -address=/cuoas.com/127.0.0.1 -address=/cuoss.com/127.0.0.1 -address=/cwj2h.cn/127.0.0.1 -address=/cwpush.com/127.0.0.1 -address=/cxaerp.com/127.0.0.1 -address=/cxb4.cn/127.0.0.1 -address=/cxcxt.com/127.0.0.1 -address=/cxrjl.cn/127.0.0.1 -address=/cxslchkb.cn/127.0.0.1 -address=/cyboke.cn/127.0.0.1 -address=/cyto-biotherapy.com/127.0.0.1 -address=/cyylove.com/127.0.0.1 -address=/cz345.cn/127.0.0.1 -address=/czhcloud.cn/127.0.0.1 -address=/czlhgz.com/127.0.0.1 -address=/czxjx.cn/127.0.0.1 -address=/czyiming.club/127.0.0.1 -address=/czzdf.com/127.0.0.1 -address=/d08kfa.cn/127.0.0.1 -address=/d5a5a.xyz/127.0.0.1 -address=/d72l4.com/127.0.0.1 -address=/d93nzb.cn/127.0.0.1 -address=/dachadu.cn/127.0.0.1 -address=/dadawm.cc/127.0.0.1 -address=/dailiq.cn/127.0.0.1 -address=/daishuxy.com/127.0.0.1 -address=/daizhankj.cn/127.0.0.1 -address=/dajean.com/127.0.0.1 -address=/dake.net.cn/127.0.0.1 -address=/damiren.com/127.0.0.1 -address=/daokejs.com/127.0.0.1 -address=/dasheducation.cn/127.0.0.1 -address=/daskm.com/127.0.0.1 -address=/dawanjiahn.com/127.0.0.1 -address=/dbaij.com/127.0.0.1 -address=/dbaof.com/127.0.0.1 -address=/dbeii.com/127.0.0.1 -address=/dbeij.com/127.0.0.1 -address=/dbiej.com/127.0.0.1 -address=/dbwmjj.com/127.0.0.1 -address=/dcaij.com/127.0.0.1 -address=/dceni.com/127.0.0.1 -address=/dcuom.com/127.0.0.1 -address=/ddanq.com/127.0.0.1 -address=/ddg1277.com/127.0.0.1 -address=/ddhuangchao.com/127.0.0.1 -address=/ddpxhq.cn/127.0.0.1 -address=/de093o.cn/127.0.0.1 -address=/dengfenzhang.cn/127.0.0.1 -address=/dependablewood.com/127.0.0.1 -address=/deyidesign.com/127.0.0.1 -address=/dezfu.com/127.0.0.1 -address=/dgaoz.com/127.0.0.1 -address=/dglscm.cn/127.0.0.1 -address=/dgxzwj.com/127.0.0.1 -address=/dhaof.com/127.0.0.1 -address=/dhbo4t.cn/127.0.0.1 -address=/dhgdp.cn/127.0.0.1 -address=/dhuhui.cn/127.0.0.1 -address=/dierqingchun.com/127.0.0.1 -address=/dinglixuan.cn/127.0.0.1 -address=/djhbxz.com/127.0.0.1 -address=/djhhy.com/127.0.0.1 -address=/dkdlsj.com/127.0.0.1 -address=/dkmnn.top/127.0.0.1 -address=/dldsrs.com/127.0.0.1 -address=/dlouf.com/127.0.0.1 -address=/dlvnxf.cn/127.0.0.1 -address=/dmouy.cn/127.0.0.1 -address=/dmpsj.cn/127.0.0.1 -address=/dn189.com/127.0.0.1 -address=/dnfeu.com/127.0.0.1 -address=/doowe.cn/127.0.0.1 -address=/doryhome.com/127.0.0.1 -address=/dqgpb.com/127.0.0.1 -address=/drc6i.cn/127.0.0.1 -address=/dreamrecord.cn/127.0.0.1 -address=/drevozone.com.cn/127.0.0.1 -address=/drgykb.cn/127.0.0.1 -address=/dscry.com/127.0.0.1 -address=/dsjcfw.com/127.0.0.1 -address=/dsjre.com/127.0.0.1 -address=/dsjyjj.cn/127.0.0.1 -address=/dssdr.top/127.0.0.1 -address=/dtzysm.com/127.0.0.1 -address=/duoyidd.com/127.0.0.1 -address=/dxcssc.cn/127.0.0.1 -address=/dxmci.com/127.0.0.1 -address=/dydyhg.com/127.0.0.1 -address=/dyfzyg.com/127.0.0.1 -address=/dzisou.com/127.0.0.1 -address=/dzrenju2.cn/127.0.0.1 -address=/e647ob.cn/127.0.0.1 -address=/e9emh.cn/127.0.0.1 -address=/ecuwa.cn/127.0.0.1 -address=/ediun.com/127.0.0.1 -address=/edumsys.com/127.0.0.1 -address=/edysn.cn/127.0.0.1 -address=/egqiyw.com/127.0.0.1 -address=/ehxyz.com/127.0.0.1 -address=/ei4f.cn/127.0.0.1 -address=/ejeenews.com/127.0.0.1 -address=/ejiur.com/127.0.0.1 -address=/ejwmc.cn/127.0.0.1 -address=/eloer.cn/127.0.0.1 -address=/elvx.top/127.0.0.1 -address=/emgwq.com/127.0.0.1 -address=/emshx.cn/127.0.0.1 -address=/enjuk.com/127.0.0.1 -address=/enjuw.com/127.0.0.1 -address=/eou01a.cn/127.0.0.1 -address=/epanr.com/127.0.0.1 -address=/eqiuy.com/127.0.0.1 -address=/erocw.com/127.0.0.1 -address=/eshuy.com/127.0.0.1 -address=/esuzm.cn/127.0.0.1 -address=/esyzdb.com/127.0.0.1 -address=/ew740.cn/127.0.0.1 -address=/ewphm.cn/127.0.0.1 -address=/exusr.com/127.0.0.1 -address=/eyaor.com/127.0.0.1 -address=/eysmaa.pw/127.0.0.1 -address=/ezfashion.com.cn/127.0.0.1 -address=/ezuon.com/127.0.0.1 -address=/fangdalaw.gd.cn/127.0.0.1 -address=/fangjslc.com/127.0.0.1 -address=/fanglinwang.cn/127.0.0.1 -address=/fangzhanla.cn/127.0.0.1 -address=/fangzi2.top/127.0.0.1 -address=/fanzhuang.net.cn/127.0.0.1 -address=/fbaot.com/127.0.0.1 -address=/fbieq.com/127.0.0.1 -address=/fcaot.com/127.0.0.1 -address=/fccay.cn/127.0.0.1 -address=/fchio.com/127.0.0.1 -address=/fcrdb.com/127.0.0.1 -address=/fcuit.com/127.0.0.1 -address=/fcunq.com/127.0.0.1 -address=/fdaoo.com/127.0.0.1 -address=/fdoun.com/127.0.0.1 -address=/feifish66.com/127.0.0.1 -address=/feipaihehuoren.cn/127.0.0.1 -address=/fenbengpan.cn/127.0.0.1 -address=/ffanq.com/127.0.0.1 -address=/ffychb.com/127.0.0.1 -address=/fgaon.com/127.0.0.1 -address=/fgzba.com/127.0.0.1 -address=/fhbv.cn/127.0.0.1 -address=/fipipo.cn/127.0.0.1 -address=/fj95560.com/127.0.0.1 -address=/fjhanmei.com/127.0.0.1 -address=/fjmrxys.com/127.0.0.1 -address=/fjshxzyyxgs.cn/127.0.0.1 -address=/fjtzjy.com/127.0.0.1 -address=/fjxyo.com/127.0.0.1 -address=/fkikij.cn/127.0.0.1 -address=/fkkse.com/127.0.0.1 -address=/fkogs.com/127.0.0.1 -address=/fninin.cn/127.0.0.1 -address=/fnxmyx.cn/127.0.0.1 -address=/focuscat.com/127.0.0.1 -address=/foshou.pw/127.0.0.1 -address=/fouas.com/127.0.0.1 -address=/foumm.com/127.0.0.1 -address=/fowpq.top/127.0.0.1 -address=/fqzds.com/127.0.0.1 -address=/friend17.net/127.0.0.1 -address=/frjxdv.cn/127.0.0.1 -address=/fshet.com/127.0.0.1 -address=/fstaw.com/127.0.0.1 -address=/fszhxd.com/127.0.0.1 -address=/ftrp4.cn/127.0.0.1 -address=/fuhuikang360.com/127.0.0.1 -address=/futengbao.com.cn/127.0.0.1 -address=/fuwosi.cn/127.0.0.1 -address=/fuxin-tech.com/127.0.0.1 -address=/fw.zhuaji.org/127.0.0.1 -address=/fwjoi.com/127.0.0.1 -address=/fwyang.com/127.0.0.1 -address=/fx6j3.cn/127.0.0.1 -address=/fxfhjs.com/127.0.0.1 -address=/fxunn.com/127.0.0.1 -address=/fy4zb.cn/127.0.0.1 -address=/fyehare.com/127.0.0.1 -address=/fyjyhm.com/127.0.0.1 -address=/fzdfwy.com/127.0.0.1 -address=/fzxrjx.com/127.0.0.1 -address=/fzyda.com/127.0.0.1 -address=/g3ao2q.cn/127.0.0.1 -address=/g4rre.xyz/127.0.0.1 -address=/gadhx.cn/127.0.0.1 -address=/gadwhy.com/127.0.0.1 -address=/gagkf.top/127.0.0.1 -address=/gaihunuo.cn/127.0.0.1 -address=/galaxyns.com/127.0.0.1 -address=/gameriew.com/127.0.0.1 -address=/ganggao123456.com/127.0.0.1 -address=/gaochaolian.cn/127.0.0.1 -address=/gaohuduo.cn/127.0.0.1 -address=/gaykes.com/127.0.0.1 -address=/gazoeft.cn/127.0.0.1 -address=/gb686.cn/127.0.0.1 -address=/gbeik.com/127.0.0.1 -address=/gbieg.com/127.0.0.1 -address=/gc8fjz.cn/127.0.0.1 -address=/gcaij.com/127.0.0.1 -address=/gcaog.com/127.0.0.1 -address=/gcfx777.com/127.0.0.1 -address=/gcheg.com/127.0.0.1 -address=/gcouh.com/127.0.0.1 -address=/gdaii.com/127.0.0.1 -address=/gdeih.com/127.0.0.1 -address=/gdfc0563.com/127.0.0.1 -address=/gdhdfs.com/127.0.0.1 -address=/gdlbdzkj.com/127.0.0.1 -address=/gdlvbiaokeji.cn/127.0.0.1 -address=/gdsqwy.org/127.0.0.1 -address=/gdunt.com/127.0.0.1 -address=/gedus.cn/127.0.0.1 -address=/gelinboer.cn/127.0.0.1 -address=/georgias.cn/127.0.0.1 -address=/gerunsenbo.cn/127.0.0.1 -address=/gghh486.cn/127.0.0.1 -address=/gghh493.cn/127.0.0.1 -address=/ggouh.com/127.0.0.1 -address=/ggz55268.com/127.0.0.1 -address=/giroud.top/127.0.0.1 -address=/gj632.cn/127.0.0.1 -address=/gjiai.com/127.0.0.1 -address=/gjiak.com/127.0.0.1 -address=/gjkpo.com/127.0.0.1 -address=/gjuet.com/127.0.0.1 -address=/gk277.cn/127.0.0.1 -address=/gky73.cn/127.0.0.1 -address=/globbiz.cn/127.0.0.1 -address=/glpen08.com/127.0.0.1 -address=/glvej.com/127.0.0.1 -address=/gmxyorg.cn/127.0.0.1 -address=/gnmbd.top/127.0.0.1 -address=/gobali.cn/127.0.0.1 -address=/gongfanglong.cn/127.0.0.1 -address=/googlespider1.cn/127.0.0.1 -address=/gou1zhe.com/127.0.0.1 -address=/goulanmeng.cn/127.0.0.1 -address=/gringrin.cn/127.0.0.1 -address=/grjs02.com/127.0.0.1 -address=/gtaih.com/127.0.0.1 -address=/gtchong.com/127.0.0.1 -address=/gtifund.cn/127.0.0.1 -address=/gtiou.com/127.0.0.1 -address=/gtnde.com/127.0.0.1 -address=/guaas.com/127.0.0.1 -address=/guangsss1999.com/127.0.0.1 -address=/guannin.com/127.0.0.1 -address=/guanqinjie.cn/127.0.0.1 -address=/guansenff.cn/127.0.0.1 -address=/guanzistory.com/127.0.0.1 -address=/guxiaom.cn/127.0.0.1 -address=/gwdqp.com/127.0.0.1 -address=/gxklsftz.cn/127.0.0.1 -address=/gxkyl.com/127.0.0.1 -address=/gxssjz.com/127.0.0.1 -address=/gxunj.com/127.0.0.1 -address=/gybdtg.com/127.0.0.1 -address=/gyeet.com/127.0.0.1 -address=/gyhzr.com/127.0.0.1 -address=/gyrtg.com/127.0.0.1 -address=/gyt168.com.cn/127.0.0.1 -address=/gz-bz.cn/127.0.0.1 -address=/gzjingm.cn/127.0.0.1 -address=/gzmxybg.com/127.0.0.1 -address=/gzmzts.com/127.0.0.1 -address=/gznsyh.com/127.0.0.1 -address=/gzrljx.cn/127.0.0.1 -address=/gzzena.com/127.0.0.1 -address=/h2pzh.cn/127.0.0.1 -address=/h5e6d5.xyz/127.0.0.1 -address=/hainufamliy.top/127.0.0.1 -address=/hajuwang.cn/127.0.0.1 -address=/hanmiyong.com/127.0.0.1 -address=/haoxianyangrouye.com/127.0.0.1 -address=/haoxinq.top/127.0.0.1 -address=/hawbfa.com/127.0.0.1 -address=/hbaog.com/127.0.0.1 -address=/hbbww.com/127.0.0.1 -address=/hbhxqcw.com/127.0.0.1 -address=/hblanghun.cn/127.0.0.1 -address=/hbnygj.com/127.0.0.1 -address=/hbttcc.com/127.0.0.1 -address=/hbyyzm.com/127.0.0.1 -address=/hc29x.cn/127.0.0.1 -address=/hcaig.com/127.0.0.1 -address=/hcenc.com/127.0.0.1 -address=/hchig.com/127.0.0.1 -address=/hchik.com/127.0.0.1 -address=/hdfdm.com/127.0.0.1 -address=/hdminfeng.com/127.0.0.1 -address=/hdswgc.com/127.0.0.1 -address=/hduic.com/127.0.0.1 -address=/headwell.cn/127.0.0.1 -address=/heavenwil.top/127.0.0.1 -address=/hebhec.cn/127.0.0.1 -address=/hebzycw.com/127.0.0.1 -address=/hehmy.cn/127.0.0.1 -address=/hehongmei.top/127.0.0.1 -address=/heib2.top/127.0.0.1 -address=/heizundg.cn/127.0.0.1 -address=/hellogalaxy.cn/127.0.0.1 -address=/helpinfo.cn/127.0.0.1 -address=/henanlinyu.cn/127.0.0.1 -address=/henduoqian.com/127.0.0.1 -address=/heylookhere.top/127.0.0.1 -address=/hfyxdl.com/127.0.0.1 -address=/hgdanbas.cn/127.0.0.1 -address=/hgrqp.com/127.0.0.1 -address=/hguac.com/127.0.0.1 -address=/hguas.com/127.0.0.1 -address=/hhslbz.cn/127.0.0.1 -address=/hiffyl.com/127.0.0.1 -address=/higoo4.com/127.0.0.1 -address=/hihifenxiang.com/127.0.0.1 -address=/hihufu.cn/127.0.0.1 -address=/hissq.com/127.0.0.1 -address=/hixili.top/127.0.0.1 -address=/hjiec.com/127.0.0.1 -address=/hjjnpx.com/127.0.0.1 -address=/hjkrlc.cn/127.0.0.1 -address=/hjryl.com/127.0.0.1 -address=/hjues.com/127.0.0.1 -address=/hjyll.top/127.0.0.1 -address=/hjzndq.com/127.0.0.1 -address=/hk7799.net/127.0.0.1 -address=/hk9600.com/127.0.0.1 -address=/hkdyys.cn/127.0.0.1 -address=/hkmqp.com/127.0.0.1 -address=/hldwmly.com/127.0.0.1 -address=/hlhulu.com/127.0.0.1 -address=/hljhufengling.cn/127.0.0.1 -address=/hmhqp.com/127.0.0.1 -address=/hmttoly.com/127.0.0.1 -address=/hmyangshengji.com/127.0.0.1 -address=/hnfxty.cn/127.0.0.1 -address=/hnhgw.cn/127.0.0.1 -address=/hnkuangshan.cn/127.0.0.1 -address=/hnwjlhg.cn/127.0.0.1 -address=/hnzyfs.com/127.0.0.1 -address=/hogyp.com/127.0.0.1 -address=/hondajd.cn/127.0.0.1 -address=/hongshikai.com/127.0.0.1 -address=/hongyangbg.com/127.0.0.1 -address=/how5.cn/127.0.0.1 -address=/hp-china.biz/127.0.0.1 -address=/hpzyl.com/127.0.0.1 -address=/hqgjcm.com/127.0.0.1 -address=/hqsjc.com/127.0.0.1 -address=/hs1s1.cn/127.0.0.1 -address=/hsbkr.com/127.0.0.1 -address=/htfmbt.com/127.0.0.1 -address=/htjsk.com/127.0.0.1 -address=/huayange.com/127.0.0.1 -address=/huayi65.com/127.0.0.1 -address=/huician.cn/127.0.0.1 -address=/huigoushop.com/127.0.0.1 -address=/huixingcheng.cn/127.0.0.1 -address=/hunpp.com/127.0.0.1 -address=/huoyiad1.cn/127.0.0.1 -address=/huzhanbin.cn/127.0.0.1 -address=/hwertd.xyz/127.0.0.1 -address=/hxiak.com/127.0.0.1 -address=/hycfxdc.com/127.0.0.1 -address=/hyjyjc.com/127.0.0.1 -address=/hypzv.com/127.0.0.1 -address=/hytcsh.cn/127.0.0.1 -address=/hyxca.top/127.0.0.1 -address=/hzht666.com/127.0.0.1 -address=/hzuok.com/127.0.0.1 -address=/hzuvw.com/127.0.0.1 -address=/hzxfmc.com/127.0.0.1 -address=/hzzfan.com/127.0.0.1 -address=/i-components.net/127.0.0.1 -address=/i05h.cn/127.0.0.1 -address=/i36mf.cn/127.0.0.1 -address=/ia22.com/127.0.0.1 -address=/iamqqo85467.cn/127.0.0.1 -address=/iangp.com/127.0.0.1 -address=/iangs.com/127.0.0.1 -address=/iauqwe.com/127.0.0.1 -address=/iavfta8090.com/127.0.0.1 -address=/ibaop.com/127.0.0.1 -address=/ibeiling.cn/127.0.0.1 -address=/ibeip.com/127.0.0.1 -address=/ibinp.com/127.0.0.1 -address=/icebeatuy.com/127.0.0.1 -address=/icyrd.com/127.0.0.1 -address=/idanmei.cn/127.0.0.1 -address=/identified.cn/127.0.0.1 -address=/ienkdaccessible.cn/127.0.0.1 -address=/ienkdago.cn/127.0.0.1 -address=/ieqmeq.com/127.0.0.1 -address=/ifeib.com/127.0.0.1 -address=/ihais.com/127.0.0.1 -address=/ihear123.com/127.0.0.1 -address=/ihhii.xyz/127.0.0.1 -address=/iigushi.com/127.0.0.1 -address=/ijieo.com/127.0.0.1 -address=/ijo5g.cn/127.0.0.1 -address=/ijuns.com/127.0.0.1 -address=/ijuny.com/127.0.0.1 -address=/imanchu.cn/127.0.0.1 -address=/imiek.com/127.0.0.1 -address=/imykgs.com/127.0.0.1 -address=/inccnd.com/127.0.0.1 -address=/increased.cn/127.0.0.1 -address=/infvb.com/127.0.0.1 -address=/internerl.com/127.0.0.1 -address=/intxt.cn/127.0.0.1 -address=/iq24ne.cn/127.0.0.1 -address=/iqiyi.space/127.0.0.1 -address=/irauz.com/127.0.0.1 -address=/irkuj.com/127.0.0.1 -address=/iruad.com/127.0.0.1 -address=/isgow.com/127.0.0.1 -address=/ishowms.com/127.0.0.1 -address=/itcoder.top/127.0.0.1 -address=/iyaos.com/127.0.0.1 -address=/iyouhu.cn/127.0.0.1 -address=/iyuey.com/127.0.0.1 -address=/izouo.com/127.0.0.1 -address=/izuis.com/127.0.0.1 -address=/j200d3.cn/127.0.0.1 -address=/j6y54.xyz/127.0.0.1 -address=/j6yh5.xyz/127.0.0.1 -address=/jaat3ax.site/127.0.0.1 -address=/jajattt.com/127.0.0.1 -address=/jbanb.com/127.0.0.1 -address=/jbbath.cn/127.0.0.1 -address=/jcaik.com/127.0.0.1 -address=/jcaip.com/127.0.0.1 -address=/jcboloni.cn/127.0.0.1 -address=/jcdb88.com/127.0.0.1 -address=/jcwwxn.com/127.0.0.1 -address=/jdaot.com/127.0.0.1 -address=/jdf494.cn/127.0.0.1 -address=/jdflower.cn/127.0.0.1 -address=/jdgsgl.com/127.0.0.1 -address=/jduiv.com/127.0.0.1 -address=/jdzlxtc.com/127.0.0.1 -address=/jgkto.com/127.0.0.1 -address=/jh99s.cn/127.0.0.1 -address=/jhbrc.xyz/127.0.0.1 -address=/jhf2e.cn/127.0.0.1 -address=/jia-huan.cn/127.0.0.1 -address=/jiangchunli.cn/127.0.0.1 -address=/jiaofulin.cn/127.0.0.1 -address=/jiaqingli.cn/127.0.0.1 -address=/jieyixiu.com/127.0.0.1 -address=/jifeidandar.com/127.0.0.1 -address=/jiguangyi.com.cn/127.0.0.1 -address=/jiirz.com/127.0.0.1 -address=/jim86d.cn/127.0.0.1 -address=/jinchaoyu.com/127.0.0.1 -address=/jingdayiyuan.com/127.0.0.1 -address=/jingoulong.cn/127.0.0.1 -address=/jingxiangyalvji.cn/127.0.0.1 -address=/jioeg.com/127.0.0.1 -address=/jiumishow.com/127.0.0.1 -address=/jixiby.cn/127.0.0.1 -address=/jiyuanzixun.com/127.0.0.1 -address=/jkert.com/127.0.0.1 -address=/jlkja.com/127.0.0.1 -address=/jlvskg.cn/127.0.0.1 -address=/jlxzt.com/127.0.0.1 -address=/jmxlaser.com/127.0.0.1 -address=/jndczg.com/127.0.0.1 -address=/jnmqym4.cn/127.0.0.1 -address=/jnsdkjzs.com/127.0.0.1 -address=/jollyspring.com/127.0.0.1 -address=/jotrening.com/127.0.0.1 -address=/jpenk.com/127.0.0.1 -address=/jpg1.oss-cn-beijing.aliyuncs.com/127.0.0.1 -address=/jrdkc.com/127.0.0.1 -address=/jsaik.com/127.0.0.1 -address=/jskang.cn/127.0.0.1 -address=/jssumei.cn/127.0.0.1 -address=/jstdjq.com/127.0.0.1 -address=/jsth999.com/127.0.0.1 -address=/jsyjwj.com/127.0.0.1 -address=/jullycn.com/127.0.0.1 -address=/jundazulin.com/127.0.0.1 -address=/just9229.cn/127.0.0.1 -address=/justincao84.cn/127.0.0.1 -address=/juyzr.com/127.0.0.1 -address=/jwhfn.cn/127.0.0.1 -address=/jwiyr.com/127.0.0.1 -address=/jxhcyc.com/127.0.0.1 -address=/jxinyue.top/127.0.0.1 -address=/jxnrfx.com/127.0.0.1 -address=/jxxcfd.com/127.0.0.1 -address=/jxyufa.com/127.0.0.1 -address=/jyhwt.cn/127.0.0.1 -address=/jyjhkz.com/127.0.0.1 -address=/jzntxs.com/127.0.0.1 -address=/k2n0f.cn/127.0.0.1 -address=/k5ai3c.cn/127.0.0.1 -address=/k7tju.xyz/127.0.0.1 -address=/k859n.cn/127.0.0.1 -address=/k9wi2d.cn/127.0.0.1 -address=/kafka8.com/127.0.0.1 -address=/kaihutai.cn/127.0.0.1 -address=/kakappp.com/127.0.0.1 -address=/kanghuaixin.cn/127.0.0.1 -address=/kanjiaqun.cn/127.0.0.1 -address=/kbstyn.com/127.0.0.1 -address=/kcenu.com/127.0.0.1 -address=/kchaq.com/127.0.0.1 -address=/kcooy.com/127.0.0.1 -address=/kdieu.com/127.0.0.1 -address=/kdzbg.xyz/127.0.0.1 -address=/ketaoke.com/127.0.0.1 -address=/kexigia.com/127.0.0.1 -address=/kfand.com/127.0.0.1 -address=/kfeiu.com/127.0.0.1 -address=/kfuih.cn/127.0.0.1 -address=/kg962.cn/127.0.0.1 -address=/kguaq.com/127.0.0.1 -address=/khuoy.com/127.0.0.1 -address=/kjdw.com.cn/127.0.0.1 -address=/kjfhe.com/127.0.0.1 -address=/kjhfy.com/127.0.0.1 -address=/kl6636.net/127.0.0.1 -address=/klgzzs.cn/127.0.0.1 -address=/klorn.cn/127.0.0.1 -address=/klsadm.com/127.0.0.1 -address=/kltent.cn/127.0.0.1 -address=/kmfnkj.com/127.0.0.1 -address=/kofcq5.cn/127.0.0.1 -address=/kongssew.com/127.0.0.1 -address=/koudaichaoshi.cn/127.0.0.1 -address=/kqiaq.com/127.0.0.1 -address=/ks67.com/127.0.0.1 -address=/ksdsuzhou.com/127.0.0.1 -address=/kshks5.site/127.0.0.1 -address=/ksylsh.cn/127.0.0.1 -address=/kteyz.com/127.0.0.1 -address=/ktzte.cn/127.0.0.1 -address=/kuaipaobiaoju.com/127.0.0.1 -address=/kuaituisss.com/127.0.0.1 -address=/kueofwt.cn/127.0.0.1 -address=/kuptmf.cn/127.0.0.1 -address=/kwjkd.com/127.0.0.1 -address=/kwp79i.cn/127.0.0.1 -address=/kxhie.com/127.0.0.1 -address=/kyxnz.cn/127.0.0.1 -address=/kz8tr2.cn/127.0.0.1 -address=/l30od.cn/127.0.0.1 -address=/l4elb.cn/127.0.0.1 -address=/l7g4e.cn/127.0.0.1 -address=/l93stb.cn/127.0.0.1 -address=/l9c4s.cn/127.0.0.1 -address=/la71f.cn/127.0.0.1 -address=/laiye315.top/127.0.0.1 -address=/laksdn.com/127.0.0.1 -address=/lanhouhou.cn/127.0.0.1 -address=/laojiayoufang.com/127.0.0.1 -address=/lawumi.cn/127.0.0.1 -address=/layyi.com/127.0.0.1 -address=/lbaij.com/127.0.0.1 -address=/lbaoj.com/127.0.0.1 -address=/lchar.com/127.0.0.1 -address=/lcrmm.top/127.0.0.1 -address=/legozu.com/127.0.0.1 -address=/lerenzx.cn/127.0.0.1 -address=/lesanmo.top/127.0.0.1 -address=/let83.cn/127.0.0.1 -address=/lfdydk.com/127.0.0.1 -address=/lfouz.com/127.0.0.1 -address=/lfzxcp.com/127.0.0.1 -address=/lgjygg.com/127.0.0.1 -address=/lglady.cn/127.0.0.1 -address=/lglkqm.cn/127.0.0.1 -address=/lguir.com/127.0.0.1 -address=/lhcyii.cn/127.0.0.1 -address=/lhhxlj.com/127.0.0.1 -address=/lianfuhuang.cn/127.0.0.1 -address=/lianyicq.cn/127.0.0.1 -address=/liaoruochen.cn/127.0.0.1 -address=/liaotian4.com/127.0.0.1 -address=/lifuzhubao.com/127.0.0.1 -address=/lihongdou.cn/127.0.0.1 -address=/lijie1010.top/127.0.0.1 -address=/linghangshouji.com/127.0.0.1 -address=/linwukui.cn/127.0.0.1 -address=/linyankm.cn/127.0.0.1 -address=/listenother.com/127.0.0.1 -address=/liufang1994.top/127.0.0.1 -address=/liujiaqi.top/127.0.0.1 -address=/lixianze.top/127.0.0.1 -address=/liyelaowu.cn/127.0.0.1 -address=/ljuer.com/127.0.0.1 -address=/lletd.cn/127.0.0.1 -address=/llvez.com/127.0.0.1 -address=/lnenz.com/127.0.0.1 -address=/lolvsdota.cn/127.0.0.1 -address=/longkoupeanut.cn/127.0.0.1 -address=/louisan.cn/127.0.0.1 -address=/lousivency.com.cn/127.0.0.1 -address=/lpaoz.com/127.0.0.1 -address=/lr96.top/127.0.0.1 -address=/lsiwd.cn/127.0.0.1 -address=/lusrg.cn/127.0.0.1 -address=/luxoshopde.com/127.0.0.1 -address=/luyouxi.cn/127.0.0.1 -address=/lvyishengtai.com/127.0.0.1 -address=/lwhsdfc.cn/127.0.0.1 -address=/lxind.cn/127.0.0.1 -address=/ly5200.cn/127.0.0.1 -address=/lybczlsb.com/127.0.0.1 -address=/lychangxu.cn/127.0.0.1 -address=/lyczhb.com/127.0.0.1 -address=/lyjz001.com/127.0.0.1 -address=/lyshengtu.cn/127.0.0.1 -address=/lzida.com/127.0.0.1 -address=/lzjycy.com/127.0.0.1 -address=/lzkjsj.com/127.0.0.1 -address=/lzytt.com/127.0.0.1 -address=/m19ud.cn/127.0.0.1 -address=/m216j.cn/127.0.0.1 -address=/m4ztka.cn/127.0.0.1 -address=/m652a.cn/127.0.0.1 -address=/m72r.cn/127.0.0.1 -address=/mammina.cn/127.0.0.1 -address=/mao1.jsnovel.com/127.0.0.1 -address=/maoyumao.net/127.0.0.1 -address=/matchjia.cn/127.0.0.1 -address=/maxoi.cn/127.0.0.1 -address=/mbaik.com/127.0.0.1 -address=/mbiek.com/127.0.0.1 -address=/mbusdw.cn/127.0.0.1 -address=/mcaik.com/127.0.0.1 -address=/md0z4dh.com/127.0.0.1 -address=/mdous.com/127.0.0.1 -address=/mdsfzh.cn/127.0.0.1 -address=/medprofile.cn/127.0.0.1 -address=/meizhuli365.cn/127.0.0.1 -address=/mendoc.cn/127.0.0.1 -address=/mengpr.com/127.0.0.1 -address=/meooe.com/127.0.0.1 -address=/mgldzcls.com/127.0.0.1 -address=/mgsue.cn/127.0.0.1 -address=/mhuos.com/127.0.0.1 -address=/miaiche.cn/127.0.0.1 -address=/miaos11.com/127.0.0.1 -address=/micreative-china.cn/127.0.0.1 -address=/mid5in.top/127.0.0.1 -address=/miiuv.com/127.0.0.1 -address=/mindrook.com/127.0.0.1 -address=/mingbangzichan.com/127.0.0.1 -address=/mjita.cn/127.0.0.1 -address=/ml44.cn/127.0.0.1 -address=/mlion.cn/127.0.0.1 -address=/mmfusheng.com/127.0.0.1 -address=/mmhhjt.com/127.0.0.1 -address=/mmkvi.com/127.0.0.1 -address=/mmpuh.cn/127.0.0.1 -address=/mmwdwg.cn/127.0.0.1 -address=/mnptinibfbv.com/127.0.0.1 -address=/mobiorg8.com/127.0.0.1 -address=/morningpiggy.com/127.0.0.1 -address=/moshangflower.cn/127.0.0.1 -address=/mouaa.com/127.0.0.1 -address=/movii-loft.cn/127.0.0.1 -address=/moxiaoyang.top/127.0.0.1 -address=/mqcwr.cn/127.0.0.1 -address=/mqgpo.com/127.0.0.1 -address=/mqies.com/127.0.0.1 -address=/mreod.cn/127.0.0.1 -address=/msdfd.cn/127.0.0.1 -address=/msuik.cn/127.0.0.1 -address=/mtcat.cn/127.0.0.1 -address=/mubite.cn/127.0.0.1 -address=/mujiangdashi.cn/127.0.0.1 -address=/mukkkoi.cn/127.0.0.1 -address=/mukqeq.cn/127.0.0.1 -address=/muqsad.xyz/127.0.0.1 -address=/muusn.cn/127.0.0.1 -address=/mwjpk.com/127.0.0.1 -address=/mx.biquge.info/127.0.0.1 -address=/mxtailor.com/127.0.0.1 -address=/mysty.com.cn/127.0.0.1 -address=/myuf6.xyz/127.0.0.1 -address=/myycrw.com/127.0.0.1 -address=/mzclass.club/127.0.0.1 -address=/n0h8g.cn/127.0.0.1 -address=/nabeghlavi.com.cn/127.0.0.1 -address=/nanyangqiaoxiang.cn/127.0.0.1 -address=/nashlin.top/127.0.0.1 -address=/nbaob.com/127.0.0.1 -address=/nbhotpo.com/127.0.0.1 -address=/ncoyqc.com/127.0.0.1 -address=/nd59w.cn/127.0.0.1 -address=/nduop.com/127.0.0.1 -address=/ndusa.cn/127.0.0.1 -address=/neijh.com/127.0.0.1 -address=/nernv.com/127.0.0.1 -address=/netko0o.com/127.0.0.1 -address=/newknowledge.cn/127.0.0.1 -address=/nfkos.com/127.0.0.1 -address=/ngceq.cn/127.0.0.1 -address=/ngsaang.top/127.0.0.1 -address=/nickarini.com/127.0.0.1 -address=/niegg.com/127.0.0.1 -address=/nihao987654.top/127.0.0.1 -address=/ningbojipiao.com/127.0.0.1 -address=/ningxiayy.com/127.0.0.1 -address=/nixiclothing.com/127.0.0.1 -address=/njguluyu.cn/127.0.0.1 -address=/njhuashidai.cn/127.0.0.1 -address=/njjmp.com/127.0.0.1 -address=/njxczy.com/127.0.0.1 -address=/njyyk.com/127.0.0.1 -address=/nk295.cn/127.0.0.1 -address=/nkwwbg.com/127.0.0.1 -address=/nkyyls.cn/127.0.0.1 -address=/nmmdzq.cn/127.0.0.1 -address=/nmqdnykj.com/127.0.0.1 -address=/nmtouzi.com/127.0.0.1 -address=/nnfiy.com/127.0.0.1 -address=/nongshengyi.cn/127.0.0.1 -address=/nq37f.cn/127.0.0.1 -address=/nqfwx.cn/127.0.0.1 -address=/nsjpu.com/127.0.0.1 -address=/nsxtob.cn/127.0.0.1 -address=/nthfds.xyz/127.0.0.1 -address=/ntpddq.com/127.0.0.1 -address=/nv43.com/127.0.0.1 -address=/nwwap.com/127.0.0.1 -address=/nwxzs.com/127.0.0.1 -address=/nxh2h.cn/127.0.0.1 -address=/nxkycx.com/127.0.0.1 -address=/nxwly.com/127.0.0.1 -address=/nxypz.com/127.0.0.1 -address=/nydjsm.cn/127.0.0.1 -address=/nyhnx.com/127.0.0.1 -address=/nykps.com/127.0.0.1 -address=/nyyxyx.com.cn/127.0.0.1 -address=/oangm.com/127.0.0.1 -address=/obeip.com/127.0.0.1 -address=/obj9.cn/127.0.0.1 -address=/octopuszyw.cn/127.0.0.1 -address=/oende.cn/127.0.0.1 -address=/oeocriaq.cn/127.0.0.1 -address=/oesnw.com/127.0.0.1 -address=/ohuam.com/127.0.0.1 -address=/oir85.cn/127.0.0.1 -address=/ojues.com/127.0.0.1 -address=/okshishi.com/127.0.0.1 -address=/okuis.com/127.0.0.1 -address=/okwan.cn/127.0.0.1 -address=/okx6.site/127.0.0.1 -address=/olc0.cn/127.0.0.1 -address=/on68xf.cn/127.0.0.1 -address=/once88.cn/127.0.0.1 -address=/onlyshow.top/127.0.0.1 -address=/oomyv.com/127.0.0.1 -address=/opengam.com/127.0.0.1 -address=/opqsr.com/127.0.0.1 -address=/orlandomp.com/127.0.0.1 -address=/osaws.com/127.0.0.1 -address=/osidf.xyz/127.0.0.1 -address=/osimym.com/127.0.0.1 -address=/osndy.com/127.0.0.1 -address=/osvp2.cn/127.0.0.1 -address=/ou15r.cn/127.0.0.1 -address=/oul78c.cn/127.0.0.1 -address=/oulvtrip.com/127.0.0.1 -address=/panwenjun.top/127.0.0.1 -address=/paochala.net/127.0.0.1 -address=/passwz.com/127.0.0.1 -address=/pbino.com/127.0.0.1 -address=/pcaoo.com/127.0.0.1 -address=/pd3a.cn/127.0.0.1 -address=/pdfbs.com/127.0.0.1 -address=/pdkuai.com/127.0.0.1 -address=/petsfairy.com/127.0.0.1 -address=/petsheying.com/127.0.0.1 -address=/phpape.com/127.0.0.1 -address=/pi920.com/127.0.0.1 -address=/pianyi95.top/127.0.0.1 -address=/piaogj.com/127.0.0.1 -address=/picbr.com/127.0.0.1 -address=/pieaa.com/127.0.0.1 -address=/piliangzhuce.cn/127.0.0.1 -address=/pincidao.cn/127.0.0.1 -address=/pinkmore.cn/127.0.0.1 -address=/pipysoft.cn/127.0.0.1 -address=/pitena.top/127.0.0.1 -address=/pjbjzf.com/127.0.0.1 -address=/pjxna.xyz/127.0.0.1 -address=/pkbook.com.cn/127.0.0.1 -address=/pkbrxja.cn/127.0.0.1 -address=/pkesports.cn/127.0.0.1 -address=/plerv.com/127.0.0.1 -address=/plokr.com/127.0.0.1 -address=/pmshy.cn/127.0.0.1 -address=/pochengweiyuan.com/127.0.0.1 -address=/pomhz.com/127.0.0.1 -address=/pomkl.com/127.0.0.1 -address=/pos68.cn/127.0.0.1 -address=/pougg.com/127.0.0.1 -address=/pptte.com/127.0.0.1 -address=/pqnlorg.cn/127.0.0.1 -address=/pqwtrq.xyz/127.0.0.1 -address=/prazpf.cn/127.0.0.1 -address=/psgch.xyz/127.0.0.1 -address=/pstarv.cn/127.0.0.1 -address=/ptgezc.com/127.0.0.1 -address=/ptummn.cn/127.0.0.1 -address=/ptuoa.com/127.0.0.1 -address=/puzwb.cn/127.0.0.1 -address=/pwjhg.com/127.0.0.1 -address=/px69z.cn/127.0.0.1 -address=/pxyvb.cn/127.0.0.1 -address=/pyerc.com/127.0.0.1 -address=/pyhuiyu.com/127.0.0.1 -address=/pzhygu.cn/127.0.0.1 -address=/pzuth.cn/127.0.0.1 -address=/pzvlnh.cn/127.0.0.1 -address=/q0uz4c.cn/127.0.0.1 -address=/q671e.cn/127.0.0.1 -address=/q7ms.cn/127.0.0.1 -address=/qaqact.cn/127.0.0.1 -address=/qcgkd322.vip/127.0.0.1 -address=/qd836.cn/127.0.0.1 -address=/qdiut.com/127.0.0.1 -address=/qdyazc.com/127.0.0.1 -address=/qflwh.cn/127.0.0.1 -address=/qgana.com/127.0.0.1 -address=/qgaot.com/127.0.0.1 -address=/qhdmqzc.cn/127.0.0.1 -address=/qhdop.com/127.0.0.1 -address=/qhuik.com/127.0.0.1 -address=/qhxcdmfj.cn/127.0.0.1 -address=/qi-shi.top/127.0.0.1 -address=/qiaopiguniang.com/127.0.0.1 -address=/qilungroup.cn/127.0.0.1 -address=/qinchugudao.com/127.0.0.1 -address=/qingzhencai.net/127.0.0.1 -address=/qiruidea.com/127.0.0.1 -address=/qjueu.com/127.0.0.1 -address=/qkptx.com/127.0.0.1 -address=/qlaot.com/127.0.0.1 -address=/qldua.cn/127.0.0.1 -address=/qloer.com/127.0.0.1 -address=/qlonglong.com/127.0.0.1 -address=/qlssbq.cn/127.0.0.1 -address=/qneit.com/127.0.0.1 -address=/qq0au.cn/127.0.0.1 -address=/qqdashabi.top/127.0.0.1 -address=/qqiat.com/127.0.0.1 -address=/qrdqbe.cn/127.0.0.1 -address=/qsove.com/127.0.0.1 -address=/qtpngov.cn/127.0.0.1 -address=/quanjiapp.cn/127.0.0.1 -address=/quldu.com/127.0.0.1 -address=/quyejianzhan.tech/127.0.0.1 -address=/qxyu.top/127.0.0.1 -address=/qyttl.cn/127.0.0.1 -address=/qzbxfs.com/127.0.0.1 -address=/qzdag.com/127.0.0.1 -address=/qzdaren.com/127.0.0.1 -address=/qzyiming.cn/127.0.0.1 -address=/raeqqe.cn/127.0.0.1 -address=/rbign.cn/127.0.0.1 -address=/rbywg.com/127.0.0.1 -address=/rcaiu.com/127.0.0.1 -address=/rcynoe.cn/127.0.0.1 -address=/rdtylx.cn/127.0.0.1 -address=/rdxhrd.com/127.0.0.1 -address=/relaxspace.com.cn/127.0.0.1 -address=/renshengyiyi.com/127.0.0.1 -address=/represented.cn/127.0.0.1 -address=/requested.cn/127.0.0.1 -address=/rerwe.cn/127.0.0.1 -address=/rfese.com/127.0.0.1 -address=/ricqo.com/127.0.0.1 -address=/rishenglaw.cn/127.0.0.1 -address=/rjiau.com/127.0.0.1 -address=/rl972.cn/127.0.0.1 -address=/rmwdn.com/127.0.0.1 -address=/romgv.com/127.0.0.1 -address=/rongnews.com/127.0.0.1 -address=/rrkykn.cn/127.0.0.1 -address=/rrrwwwa.com/127.0.0.1 -address=/rtslgov.cn/127.0.0.1 -address=/ruiyufangchan.cn/127.0.0.1 -address=/ruxmc.cn/127.0.0.1 -address=/ruyidk.com/127.0.0.1 -address=/ruyiqufu.com/127.0.0.1 -address=/rxxdq.cn/127.0.0.1 -address=/s06th.cn/127.0.0.1 -address=/s2mvd.cn/127.0.0.1 -address=/sanitwealth.com/127.0.0.1 -address=/sbenx.com/127.0.0.1 -address=/sbiim.com/127.0.0.1 -address=/sbinx.com/127.0.0.1 -address=/sceyv.com/127.0.0.1 -address=/scouc.com/127.0.0.1 -address=/scoue.com/127.0.0.1 -address=/scqajt.cn/127.0.0.1 -address=/sczhilong.cn/127.0.0.1 -address=/sdabfw.cn/127.0.0.1 -address=/sdahxz.xyz/127.0.0.1 -address=/sdaiv.com/127.0.0.1 -address=/sdakxz.xyz/127.0.0.1 -address=/sdgdtz.cn/127.0.0.1 -address=/sdkdm.com/127.0.0.1 -address=/sdsqyyc.com/127.0.0.1 -address=/sdytsh.com/127.0.0.1 -address=/seawayz.com.cn/127.0.0.1 -address=/sec-cloud.cn/127.0.0.1 -address=/seerpiu002.com/127.0.0.1 -address=/self-study-service.com.cn/127.0.0.1 -address=/sezvc.com/127.0.0.1 -address=/sfanf.com/127.0.0.1 -address=/sguac.com/127.0.0.1 -address=/sgzs999.com/127.0.0.1 -address=/she-ke.cn/127.0.0.1 -address=/shenbimall.com/127.0.0.1 -address=/shengchaopiao.cn/127.0.0.1 -address=/shenhao258.top/127.0.0.1 -address=/shenyunkeji.com/127.0.0.1 -address=/shffcy.cn/127.0.0.1 -address=/shidailw.com/127.0.0.1 -address=/shjsxx.com/127.0.0.1 -address=/shsnjj.top/127.0.0.1 -address=/shuaixu.site/127.0.0.1 -address=/signstu.top/127.0.0.1 -address=/siguatv.cn/127.0.0.1 -address=/simon184.cn/127.0.0.1 -address=/sincetrade.com/127.0.0.1 -address=/sixgen.cn/127.0.0.1 -address=/sjaidu.com/127.0.0.1 -address=/sjczsc.com/127.0.0.1 -address=/sjuqc.com/127.0.0.1 -address=/slivercommander.cn/127.0.0.1 -address=/slvtx.com/127.0.0.1 -address=/slygzsc.cn/127.0.0.1 -address=/smckii.cn/127.0.0.1 -address=/smdhek58726.cn/127.0.0.1 -address=/smpdth.cn/127.0.0.1 -address=/smvip8.cn/127.0.0.1 -address=/smxay.com/127.0.0.1 -address=/sokoyo-fq.com/127.0.0.1 -address=/sonomoyo.com/127.0.0.1 -address=/sonsang.cn/127.0.0.1 -address=/sosjyx.com/127.0.0.1 -address=/soso.ws/127.0.0.1 -address=/spahelani.com/127.0.0.1 -address=/sqa4e.xyz/127.0.0.1 -address=/sqwscy.com/127.0.0.1 -address=/srrux.com/127.0.0.1 -address=/ssdoi.com/127.0.0.1 -address=/starlizard.com.cn/127.0.0.1 -address=/statstat888.com/127.0.0.1 -address=/stdst.cn/127.0.0.1 -address=/stevenblue.cn/127.0.0.1 -address=/stuoe.com/127.0.0.1 -address=/subshall.cn/127.0.0.1 -address=/suehy.com/127.0.0.1 -address=/sugajo.cn/127.0.0.1 -address=/suitmatters.cn/127.0.0.1 -address=/suolaka.23txt.com/127.0.0.1 -address=/suoooi.cn/127.0.0.1 -address=/suwo0n.com/127.0.0.1 -address=/svfwer.top/127.0.0.1 -address=/swhgd.com/127.0.0.1 -address=/swq48b.cn/127.0.0.1 -address=/sxjkc.cn/127.0.0.1 -address=/sxjxhg.com/127.0.0.1 -address=/sxlczj.cn/127.0.0.1 -address=/sxmdxy.com/127.0.0.1 -address=/sxmutan.com/127.0.0.1 -address=/sxtyhl.top/127.0.0.1 -address=/sxxca.com/127.0.0.1 -address=/sxying.top/127.0.0.1 -address=/sxzzhj.com/127.0.0.1 -address=/sycbbs.com/127.0.0.1 -address=/symaa.cn/127.0.0.1 -address=/symab.cn/127.0.0.1 -address=/symad.cn/127.0.0.1 -address=/symae.cn/127.0.0.1 -address=/symag.cn/127.0.0.1 -address=/symah.cn/127.0.0.1 -address=/sysadult.cn/127.0.0.1 -address=/sysal.cn/127.0.0.1 -address=/sytsr.com/127.0.0.1 -address=/syxchj.cn/127.0.0.1 -address=/syxsa.cn/127.0.0.1 -address=/szqifu.com/127.0.0.1 -address=/szshouzhai.com/127.0.0.1 -address=/szwzjk.cn/127.0.0.1 -address=/szyuke.cn/127.0.0.1 -address=/tabwl.com/127.0.0.1 -address=/tajxgs.com/127.0.0.1 -address=/tatahn.com/127.0.0.1 -address=/tbaia.com/127.0.0.1 -address=/tbenq.com/127.0.0.1 -address=/tbieq.com/127.0.0.1 -address=/tbinq.com/127.0.0.1 -address=/tchep.com/127.0.0.1 -address=/tcnmf.com/127.0.0.1 -address=/tctakoh.com/127.0.0.1 -address=/tdain.com/127.0.0.1 -address=/tdoup.com/127.0.0.1 -address=/tenh2.cn/127.0.0.1 -address=/testself.vip/127.0.0.1 -address=/tgbrfv.cn/127.0.0.1 -address=/themecat.cn/127.0.0.1 -address=/themee.cn/127.0.0.1 -address=/thuyki.cn/127.0.0.1 -address=/tianhelife.com/127.0.0.1 -address=/tianhuafund.cn/127.0.0.1 -address=/tiankongzudui.com/127.0.0.1 -address=/tianxiazhenji.com/127.0.0.1 -address=/tiaopimiao.net/127.0.0.1 -address=/tiaoweiyou.cn/127.0.0.1 -address=/tick0.com/127.0.0.1 -address=/tinwong.cn/127.0.0.1 -address=/tiojk.com/127.0.0.1 -address=/tiwom.com/127.0.0.1 -address=/tjiaa.com/127.0.0.1 -address=/tk59n.cn/127.0.0.1 -address=/tkshyp.com/127.0.0.1 -address=/tl875f.cn/127.0.0.1 -address=/tmmjgcp.cn/127.0.0.1 -address=/tmrmixer.cn/127.0.0.1 -address=/tochgw.com/127.0.0.1 -address=/toissue.cn/127.0.0.1 -address=/tongjiwo.com/127.0.0.1 -address=/tp74ym.cn/127.0.0.1 -address=/travel-together.cn/127.0.0.1 -address=/travlcen.com/127.0.0.1 -address=/tsgyg.cn/127.0.0.1 -address=/tsrc8.com/127.0.0.1 -address=/tuadong.com/127.0.0.1 -address=/tukexiu.com/127.0.0.1 -address=/tuoxintrade.cn/127.0.0.1 -address=/txstatic.cn/127.0.0.1 -address=/txtxr.com/127.0.0.1 -address=/txwhds.com.cn/127.0.0.1 -address=/tymsyx.com/127.0.0.1 -address=/tyrghj.cn/127.0.0.1 -address=/tyyjzs.cn/127.0.0.1 -address=/u372q.cn/127.0.0.1 -address=/u7qy3e.cn/127.0.0.1 -address=/ubaii.com/127.0.0.1 -address=/uc4a.cn/127.0.0.1 -address=/ucaii.com/127.0.0.1 -address=/uchij.com/127.0.0.1 -address=/ucsmqq.site/127.0.0.1 -address=/udbyv8918.com/127.0.0.1 -address=/ueaeqqi.cn/127.0.0.1 -address=/uhor8.cn/127.0.0.1 -address=/uissm.com/127.0.0.1 -address=/uksnyf.cn/127.0.0.1 -address=/umbbs.cn/127.0.0.1 -address=/umm6.cn/127.0.0.1 -address=/umyai.com/127.0.0.1 -address=/unilz588.com/127.0.0.1 -address=/uo12.com/127.0.0.1 -address=/uqpfh.cn/127.0.0.1 -address=/urlet.cn/127.0.0.1 -address=/usty357a.site/127.0.0.1 -address=/uuopp.com/127.0.0.1 -address=/uxyrl.cn/127.0.0.1 -address=/uzhaj.com/127.0.0.1 -address=/uzyid.cn/127.0.0.1 -address=/v3iy0h.cn/127.0.0.1 -address=/v44i.cn/127.0.0.1 -address=/v5b99.cn/127.0.0.1 -address=/vb4rvq.cn/127.0.0.1 -address=/vbaiu.com/127.0.0.1 -address=/vbanm.com/127.0.0.1 -address=/vbaof.com/127.0.0.1 -address=/vbaou.com/127.0.0.1 -address=/vbieu.com/127.0.0.1 -address=/vbinu.com/127.0.0.1 -address=/vcaif.com/127.0.0.1 -address=/vchim.com/127.0.0.1 -address=/vchiy.com/127.0.0.1 -address=/vcuor.com/127.0.0.1 -address=/vdlha.cn/127.0.0.1 -address=/ve6j.cn/127.0.0.1 -address=/vers80.com/127.0.0.1 -address=/vf5yb4.cn/127.0.0.1 -address=/vgaom.com/127.0.0.1 -address=/vhuay.com/127.0.0.1 -address=/vichc.com/127.0.0.1 -address=/viiqx.com/127.0.0.1 -address=/viptv91.cn/127.0.0.1 -address=/vjuer.com/127.0.0.1 -address=/vkjnd.com/127.0.0.1 -address=/vkuay.com/127.0.0.1 -address=/vmiua.com/127.0.0.1 -address=/vnanf.com/127.0.0.1 -address=/vouky.com/127.0.0.1 -address=/vsxet.com/127.0.0.1 -address=/vvnna.com/127.0.0.1 -address=/vvocm.com/127.0.0.1 -address=/vwb4p.cn/127.0.0.1 -address=/vweit.com/127.0.0.1 -address=/vy74i.cn/127.0.0.1 -address=/vz71j.cn/127.0.0.1 -address=/w13qh.cn/127.0.0.1 -address=/w859u.cn/127.0.0.1 -address=/waby66.cn/127.0.0.1 -address=/wagenlux.cn/127.0.0.1 -address=/wanfcc.com/127.0.0.1 -address=/wangliqin.top/127.0.0.1 -address=/wangqing7.top/127.0.0.1 -address=/wanrenshe.com/127.0.0.1 -address=/wao24.com/127.0.0.1 -address=/warron.cn/127.0.0.1 -address=/wbanz.com/127.0.0.1 -address=/wbaor.com/127.0.0.1 -address=/wbies.com/127.0.0.1 -address=/wbiev.com/127.0.0.1 -address=/wcail.com/127.0.0.1 -address=/wcaos.com/127.0.0.1 -address=/wcjup.com/127.0.0.1 -address=/wdeie.com/127.0.0.1 -address=/wdiur.com/127.0.0.1 -address=/webenginner.com/127.0.0.1 -address=/webkooo.com/127.0.0.1 -address=/weboser.com/127.0.0.1 -address=/wechatpu.com/127.0.0.1 -address=/weikefanli.com/127.0.0.1 -address=/weimeicar.cn/127.0.0.1 -address=/weiziqiang.top/127.0.0.1 -address=/wenbangsh.com.cn/127.0.0.1 -address=/wenzhougy.cn/127.0.0.1 -address=/wervp.com/127.0.0.1 -address=/wfxoi.xyz/127.0.0.1 -address=/wfyqc.com/127.0.0.1 -address=/wgaoe.com/127.0.0.1 -address=/wghjq.cn/127.0.0.1 -address=/whrles.com/127.0.0.1 -address=/whsjg.cn/127.0.0.1 -address=/whxhhjx.com/127.0.0.1 -address=/wjdfv.com/127.0.0.1 -address=/wjier.com/127.0.0.1 -address=/wjyljl.cn/127.0.0.1 -address=/wkjava.top/127.0.0.1 -address=/wkjhd.com/127.0.0.1 -address=/wksrx.cn/127.0.0.1 -address=/wl963.com/127.0.0.1 -address=/wlshotel.cn/127.0.0.1 -address=/wnbfw.com/127.0.0.1 -address=/wo-x.cn/127.0.0.1 -address=/wokekk.com/127.0.0.1 -address=/wonwg.com/127.0.0.1 -address=/workbizs.com/127.0.0.1 -address=/woshiyunying.com/127.0.0.1 -address=/wotto.cn/127.0.0.1 -address=/woyvk.cn/127.0.0.1 -address=/wq19w.cn/127.0.0.1 -address=/wsoue.com/127.0.0.1 -address=/wsxxu.com/127.0.0.1 -address=/wuwuhh.top/127.0.0.1 -address=/wuyanauto.com/127.0.0.1 -address=/wuylp.com/127.0.0.1 -address=/wvcdn.cn/127.0.0.1 -address=/wvver.com/127.0.0.1 -address=/wwetjy.com/127.0.0.1 -address=/wxhdwy.com/127.0.0.1 -address=/wxhh678.com/127.0.0.1 -address=/wxhltd.com/127.0.0.1 -address=/wxmg2016.com/127.0.0.1 -address=/wxvsj.com.cn/127.0.0.1 -address=/wywna.cn/127.0.0.1 -address=/wzn4.cn/127.0.0.1 -address=/wzxw7.com/127.0.0.1 -address=/x3e2c.cn/127.0.0.1 -address=/x5cc5z.cn/127.0.0.1 -address=/xabtx.com/127.0.0.1 -address=/xacqp.com/127.0.0.1 -address=/xafxs.cn/127.0.0.1 -address=/xamaky.top/127.0.0.1 -address=/xamiqi.top/127.0.0.1 -address=/xavingtsun.com/127.0.0.1 -address=/xb29h.cn/127.0.0.1 -address=/xbaiv.com/127.0.0.1 -address=/xberu.com/127.0.0.1 -address=/xcbmwx.com/127.0.0.1 -address=/xcdzsw.com/127.0.0.1 -address=/xdkje.com/127.0.0.1 -address=/xdunv.com/127.0.0.1 -address=/xdyszx.com/127.0.0.1 -address=/xeihy.com/127.0.0.1 -address=/xfytjx.cn/127.0.0.1 -address=/xhaiu.com/127.0.0.1 -address=/xhct66.com/127.0.0.1 -address=/xhera.cn/127.0.0.1 -address=/xiakelea.com/127.0.0.1 -address=/xiangchim0.com/127.0.0.1 -address=/xiangshiw.net/127.0.0.1 -address=/xiansenmeng.cn/127.0.0.1 -address=/xieyanmin.com.cn/127.0.0.1 -address=/xindelin.cn/127.0.0.1 -address=/xinghao89.com/127.0.0.1 -address=/xingsky.cn/127.0.0.1 -address=/xingtai0.com/127.0.0.1 -address=/xingtaiju.cn/127.0.0.1 -address=/xinterface.cn/127.0.0.1 -address=/xinuocp666.com/127.0.0.1 -address=/xjtxcj.com/127.0.0.1 -address=/xk0x.cn/127.0.0.1 -address=/xkanf.com/127.0.0.1 -address=/xkena.com/127.0.0.1 -address=/xkqpco.com/127.0.0.1 -address=/xkunn.com/127.0.0.1 -address=/xmcxz.com/127.0.0.1 -address=/xmgdfb.cn/127.0.0.1 -address=/xmgysweb.com/127.0.0.1 -address=/xmljx.cn/127.0.0.1 -address=/xmndrx.cn/127.0.0.1 -address=/xn--2qux23confgml.club/127.0.0.1 -address=/xn--mtsr39cnql.video/127.0.0.1 -address=/xn--wxtr44c.video/127.0.0.1 -address=/xncgroup.cn/127.0.0.1 -address=/xnghmc.com/127.0.0.1 -address=/xnjzsn.com/127.0.0.1 -address=/xrain.net/127.0.0.1 -address=/xroun.com/127.0.0.1 -address=/xrpva.cn/127.0.0.1 -address=/xsyouwei.cn/127.0.0.1 -address=/xt725.cn/127.0.0.1 -address=/xtzxmy.com/127.0.0.1 -address=/xuehongxs.com:8862/127.0.0.1 -address=/xujx8.com/127.0.0.1 -address=/xunhuaji.cn/127.0.0.1 -address=/xurizhongguo.cn/127.0.0.1 -address=/xxkio.com/127.0.0.1 -address=/xxlywl.cn/127.0.0.1 -address=/xznykf.org/127.0.0.1 -address=/xztms.com/127.0.0.1 -address=/y05zw.cn/127.0.0.1 -address=/y12f.com/127.0.0.1 -address=/yajiuwz.xyz/127.0.0.1 -address=/yanbenji.cn/127.0.0.1 -address=/yangzhenpeng.top/127.0.0.1 -address=/yanjunbo.com/127.0.0.1 -address=/yantairuide.com/127.0.0.1 -address=/ybaih.com/127.0.0.1 -address=/ybaiu.com/127.0.0.1 -address=/ybanj.com/127.0.0.1 -address=/ybaoh.com/127.0.0.1 -address=/ybeih.com/127.0.0.1 -address=/ybfwmm.cn/127.0.0.1 -address=/ybhypt.com/127.0.0.1 -address=/ybrex.cn/127.0.0.1 -address=/ybtianxi.com/127.0.0.1 -address=/ychap.com/127.0.0.1 -address=/ycypzx.cn/127.0.0.1 -address=/ydfz.org/127.0.0.1 -address=/ydouu.com/127.0.0.1 -address=/yetaiguang.cn/127.0.0.1 -address=/yexfes.com/127.0.0.1 -address=/yfano.com/127.0.0.1 -address=/ygblogtag.cn/127.0.0.1 -address=/ygqczh.com/127.0.0.1 -address=/yguap.com/127.0.0.1 -address=/yicang8.com/127.0.0.1 -address=/yicixingjinkou.com/127.0.0.1 -address=/yicuntian.cn/127.0.0.1 -address=/yierheng.top/127.0.0.1 -address=/yijieweizf.com/127.0.0.1 -address=/yijuxie.com/127.0.0.1 -address=/yikuaiqian.com.cn/127.0.0.1 -address=/yimai51.cn/127.0.0.1 -address=/yimeize.cn/127.0.0.1 -address=/yingkepj.cn/127.0.0.1 -address=/yinlt.com/127.0.0.1 -address=/yinzantouzi.com/127.0.0.1 -address=/yiqima.xyz/127.0.0.1 -address=/yisloda.com/127.0.0.1 -address=/yitiaoyu.top/127.0.0.1 -address=/yiyuantian.com/127.0.0.1 -address=/yizhijin.cn/127.0.0.1 -address=/yjiaj.com/127.0.0.1 -address=/ymmdpk.cn/127.0.0.1 -address=/ynbzxh.com/127.0.0.1 -address=/yndushi.cn/127.0.0.1 -address=/ynizdm.cn/127.0.0.1 -address=/ynjczy.net/127.0.0.1 -address=/ynjyhm.com/127.0.0.1 -address=/ynmhg.cn/127.0.0.1 -address=/ynnke.com/127.0.0.1 -address=/ynp0h.cn/127.0.0.1 -address=/ynzby.cn/127.0.0.1 -address=/yo34b.cn/127.0.0.1 -address=/yoiur.com/127.0.0.1 -address=/youtui456.com/127.0.0.1 -address=/youweiprint.com/127.0.0.1 -address=/youyoukou.cn/127.0.0.1 -address=/yoxus.cn/127.0.0.1 -address=/ypzhwf.cn/127.0.0.1 -address=/yr29r.cn/127.0.0.1 -address=/ys6ot.cn/127.0.0.1 -address=/ysjweb.com/127.0.0.1 -address=/yssbi.net/127.0.0.1 -address=/ytbnm.cn/127.0.0.1 -address=/ytdksb.com/127.0.0.1 -address=/ytmaitian.com/127.0.0.1 -address=/ytmaksim.cn/127.0.0.1 -address=/yuanhangpiju.cn/127.0.0.1 -address=/yueduyy.com/127.0.0.1 -address=/yueyelive.com/127.0.0.1 -address=/yunanfuwuqi.com/127.0.0.1 -address=/yunxiufang.net/127.0.0.1 -address=/yuxiny.com/127.0.0.1 -address=/yuxyz.com/127.0.0.1 -address=/ywbwsm.com/127.0.0.1 -address=/ywqum.cn/127.0.0.1 -address=/ywrjgzs.com/127.0.0.1 -address=/yxhxs.com/127.0.0.1 -address=/yxsnf.cn/127.0.0.1 -address=/yybos.com.cn/127.0.0.1 -address=/yyeks.com/127.0.0.1 -address=/yyhqch.com/127.0.0.1 -address=/yyjhf.com/127.0.0.1 -address=/yymmsd.cn/127.0.0.1 -address=/z3uk6.cn/127.0.0.1 -address=/z41vm.cn/127.0.0.1 -address=/zabxb.com/127.0.0.1 -address=/zbeic.com/127.0.0.1 -address=/zbieo.com/127.0.0.1 -address=/zcand.com/127.0.0.1 -address=/zcaod.com/127.0.0.1 -address=/zcdor.com/127.0.0.1 -address=/zcpap.cn/127.0.0.1 -address=/zcpnq.cn/127.0.0.1 -address=/zenffs.cn/127.0.0.1 -address=/zenwq.com/127.0.0.1 -address=/zesod.cn/127.0.0.1 -address=/zfanc.com/127.0.0.1 -address=/zfood029.com/127.0.0.1 -address=/zfrgkm.cn/127.0.0.1 -address=/zgbsny.com/127.0.0.1 -address=/zgclmw.cn/127.0.0.1 -address=/zgfszs.com/127.0.0.1 -address=/zgjjkk.com/127.0.0.1 -address=/zgjkv.com/127.0.0.1 -address=/zgncpjyw.cn/127.0.0.1 -address=/zgsxhx.com/127.0.0.1 -address=/zhamm.cn/127.0.0.1 -address=/zhfyws.com/127.0.0.1 -address=/zhivalley.cn/127.0.0.1 -address=/zhiyaowan.cn/127.0.0.1 -address=/zhongchengzp.com/127.0.0.1 -address=/zhongfujiaoyu.cn/127.0.0.1 -address=/zhongwangmy.cn/127.0.0.1 -address=/zhouqin520.top/127.0.0.1 -address=/zhuanyule.cn/127.0.0.1 -address=/zhuifood.top/127.0.0.1 -address=/zhujiafangchan.cn/127.0.0.1 -address=/zhuyuanp.shop/127.0.0.1 -address=/zhuyuanp.top/127.0.0.1 -address=/zhywyl.cn/127.0.0.1 -address=/zizcy.com/127.0.0.1 -address=/zjhrondo.cn/127.0.0.1 -address=/zjkdaikuan.com/127.0.0.1 -address=/zjksgl.com/127.0.0.1 -address=/zjuwjdc.com/127.0.0.1 -address=/zjxrg.top/127.0.0.1 -address=/zkba9.cn/127.0.0.1 -address=/zkfborg.cn/127.0.0.1 -address=/zkwsdf.com/127.0.0.1 -address=/zlauk.cn/127.0.0.1 -address=/zm-bulu.cn/127.0.0.1 -address=/zmlfk.com/127.0.0.1 -address=/zmyuer.com/127.0.0.1 -address=/zougg.com/127.0.0.1 -address=/zpoder.com/127.0.0.1 -address=/zpyfsj.cn/127.0.0.1 -address=/zreder.com/127.0.0.1 -address=/zstjy.com/127.0.0.1 -address=/zsxpx.com/127.0.0.1 -address=/ztxbd.com/127.0.0.1 -address=/zu08e.cn/127.0.0.1 -address=/zunss.com/127.0.0.1 -address=/zuopp.com/127.0.0.1 -address=/zutodu.cn/127.0.0.1 -address=/zwkssb.com/127.0.0.1 -address=/zwsteel.cn/127.0.0.1 -address=/zwychain.cn/127.0.0.1 -address=/zx-jsp.com/127.0.0.1 -address=/zxhymh.com/127.0.0.1 -address=/zxin131.cn/127.0.0.1 -address=/zxjjzx.com/127.0.0.1 -address=/zywhjd.com/127.0.0.1 -address=/zyxwpj.com/127.0.0.1 -address=/zzalkk.com/127.0.0.1 -address=/zzhszj.com/127.0.0.1 -address=/zzkfs.xyz/127.0.0.1 -address=/zzmmkj.com/127.0.0.1 -address=/zzmtfz.com/127.0.0.1 -address=/zzqqhb.com/127.0.0.1 -address=/zzsdjq.com/127.0.0.1 -address=/zzsno1.com/127.0.0.1 -address=/corechina.net/127.0.0.1 -address=/diogv.com/127.0.0.1 -address=/iierq.com/127.0.0.1 -address=/jbflil.cn/127.0.0.1 -address=/shyanche.net/127.0.0.1 -address=/yljiaoluo.com/127.0.0.1 -address=/yqjxzw.com/127.0.0.1 -address=/assume8.com/127.0.0.1 -address=/kfdqwo.top/127.0.0.1 -address=/tianjin4.com/127.0.0.1 -address=/hy-dy.cn/127.0.0.1 -address=/liveappgirl.net/127.0.0.1 -address=/69lm.com.cn/127.0.0.1 -address=/qhdfxkj.com/127.0.0.1 -address=/shxqeps.com/127.0.0.1 -address=/hnpjshop.com/127.0.0.1 -address=/lopostone.com/127.0.0.1 -address=/qyqc4s.com/127.0.0.1 -address=/vuahb.com/127.0.0.1 -address=/103.49.209.27/127.0.0.1 -address=/146.148.85.61/127.0.0.1 -address=/172.81.246.180/127.0.0.1 -address=/212.64.34.17/127.0.0.1 -address=/45.126.123.80/127.0.0.1 -address=/815ff.com/127.0.0.1 -address=/chaogej.com/127.0.0.1 -address=/hdapp1003-a.akamaihd.net/127.0.0.1 -address=/hdapp1008-a.akamaihd.net/127.0.0.1 -address=/hdsrc-a.akamaihd.net/127.0.0.1 -address=/journalforum.org/127.0.0.1 -address=/nvsea.com/127.0.0.1 -address=/qhdbfjx.com/127.0.0.1 -address=/sohu999.com/127.0.0.1 -address=/tcmdz.com/127.0.0.1 -address=/withad.cn/127.0.0.1 -address=/1getbestf1le3.xyz/127.0.0.1 -address=/4t6u1amm3t3n.com/127.0.0.1 -address=/9t5.me/127.0.0.1 -address=/abgligarchan.com/127.0.0.1 -address=/acmsg.online/127.0.0.1 -address=/acticgreasonsc.info/127.0.0.1 -address=/adfrastingathles.info/127.0.0.1 -address=/adsrv.me/127.0.0.1 -address=/adziondin.club/127.0.0.1 -address=/aggravedgaree.info/127.0.0.1 -address=/agrammemarg.info/127.0.0.1 -address=/agreenikeru.site/127.0.0.1 -address=/aickeeho.com/127.0.0.1 -address=/ailaskarc.club/127.0.0.1 -address=/ailwayssteverin.info/127.0.0.1 -address=/aimassare.club/127.0.0.1 -address=/aimrawwas.site/127.0.0.1 -address=/airsanguages.info/127.0.0.1 -address=/airstossiplarge.info/127.0.0.1 -address=/albalbant.com/127.0.0.1 -address=/alealebag.site/127.0.0.1 -address=/aleapeact.club/127.0.0.1 -address=/alhistoriousg.info/127.0.0.1 -address=/aliticalpassister.info/127.0.0.1 -address=/alldeveldefinite.info/127.0.0.1 -address=/allycollegedstrie.info/127.0.0.1 -address=/ampallall.site/127.0.0.1 -address=/aniashboy.club/127.0.0.1 -address=/anybagant.club/127.0.0.1 -address=/anycadark.site/127.0.0.1 -address=/armashair.site/127.0.0.1 -address=/artantash.club/127.0.0.1 -address=/arthwhilearthu.info/127.0.0.1 -address=/artneesrparkete.info/127.0.0.1 -address=/ashaidart.site/127.0.0.1 -address=/ashamparm.site/127.0.0.1 -address=/askaspalb.online/127.0.0.1 -address=/atelovesinothic.info/127.0.0.1 -address=/atesbrothereso.info/127.0.0.1 -address=/atoultou.com/127.0.0.1 -address=/augnuxun.net/127.0.0.1 -address=/aujaujoa.net/127.0.0.1 -address=/aurdeert.net/127.0.0.1 -address=/authornernsa.pro/127.0.0.1 -address=/auxml.com/127.0.0.1 -address=/avwincall.info/127.0.0.1 -address=/awehobrasp.live/127.0.0.1 -address=/aweinkbum.com/127.0.0.1 -address=/awhootoa.net/127.0.0.1 -address=/awhoufob.com/127.0.0.1 -address=/ayrovalcontain.info/127.0.0.1 -address=/bathibsa.com/127.0.0.1 -address=/bauthair.net/127.0.0.1 -address=/bebreloomr.com/127.0.0.1 -address=/beewanuk.net/127.0.0.1 -address=/beiven.pw/127.0.0.1 -address=/bestvideo2019.xyz/127.0.0.1 -address=/bidiology.com/127.0.0.1 -address=/binsatbee.club/127.0.0.1 -address=/bityah-sym.com/127.0.0.1 -address=/bloglife24.com/127.0.0.1 -address=/boratestfishke.info/127.0.0.1 -address=/boubeeth.com/127.0.0.1 -address=/boursnormaticm.info/127.0.0.1 -address=/bupserge.com/127.0.0.1 -address=/cadslimz.com/127.0.0.1 -address=/camantasp.club/127.0.0.1 -address=/canonch.pro/127.0.0.1 -address=/casinohacksforyou.com/127.0.0.1 -address=/cauthuny.net/127.0.0.1 -address=/cdnads.com/127.0.0.1 -address=/ceincreatedaughtcha.info/127.0.0.1 -address=/ceparateauab.info/127.0.0.1 -address=/certakesime.site/127.0.0.1 -address=/cespousseluniv.info/127.0.0.1 -address=/changement.pro/127.0.0.1 -address=/chengaib.net/127.0.0.1 -address=/choorgiw.net/127.0.0.1 -address=/chugagre.com/127.0.0.1 -address=/ckardwithinktab.info/127.0.0.1 -address=/clickathere.com/127.0.0.1 -address=/clickcdn.co/127.0.0.1 -address=/collectpush.com/127.0.0.1 -address=/compensions.pro/127.0.0.1 -address=/counevan.pro/127.0.0.1 -address=/countertrck.com/127.0.0.1 -address=/cpalabtracking.com/127.0.0.1 -address=/cpcmart.com/127.0.0.1 -address=/criminglynuk.pro/127.0.0.1 -address=/cryartarm.online/127.0.0.1 -address=/cssimplicanab.info/127.0.0.1 -address=/ctsjackupspete.info/127.0.0.1 -address=/culreelt.com/127.0.0.1 -address=/cupallask.site/127.0.0.1 -address=/cutopportings.info/127.0.0.1 -address=/cyneburg-yam.com/127.0.0.1 -address=/dacoloment.pro/127.0.0.1 -address=/dainaith.net/127.0.0.1 -address=/dardwebertoha.info/127.0.0.1 -address=/dating2cloud.org/127.0.0.1 -address=/dcontonalscho.info/127.0.0.1 -address=/dddomainccc.com/127.0.0.1 -address=/decisionediv.site/127.0.0.1 -address=/delainlygoverhe.info/127.0.0.1 -address=/denotatorum.site/127.0.0.1 -address=/desigactinific.pro/127.0.0.1 -address=/dgafgadsgkjg.top/127.0.0.1 -address=/diantcummiere.info/127.0.0.1 -address=/dimessing-parker.com/127.0.0.1 -address=/dingsincernett.info/127.0.0.1 -address=/discoverapp.xyz/127.0.0.1 -address=/ditookry.com/127.0.0.1 -address=/dmastescaugh.info/127.0.0.1 -address=/dolsoste.com/127.0.0.1 -address=/domisesvivin.info/127.0.0.1 -address=/dooptoug.net/127.0.0.1 -address=/dorthuredwardles.info/127.0.0.1 -address=/dortoolr.com/127.0.0.1 -address=/duchoono.com/127.0.0.1 -address=/duhochid.net/127.0.0.1 -address=/duxumpou.com/127.0.0.1 -address=/e2ertt.com/127.0.0.1 -address=/echoazou.com/127.0.0.1 -address=/edcritessuspi.info/127.0.0.1 -address=/edencourtbrita.info/127.0.0.1 -address=/edoutoam.net/127.0.0.1 -address=/edvforeveretest.info/127.0.0.1 -address=/eeltaung.com/127.0.0.1 -address=/eengaums.com/127.0.0.1 -address=/eergurty.net/127.0.0.1 -address=/eforeantheirma.info/127.0.0.1 -address=/egroacho.com/127.0.0.1 -address=/elastinabuker.site/127.0.0.1 -address=/eleasuredfas.info/127.0.0.1 -address=/ememoricane.info/127.0.0.1 -address=/encountryf.pro/127.0.0.1 -address=/enormitteen.pro/127.0.0.1 -address=/enseptedsome.info/127.0.0.1 -address=/entstronicsform.info/127.0.0.1 -address=/entualagreetsd.info/127.0.0.1 -address=/epresententifi.info/127.0.0.1 -address=/eralsstroying.info/127.0.0.1 -address=/eraltradiansid.info/127.0.0.1 -address=/erkhxw.com/127.0.0.1 -address=/erversarycompa.info/127.0.0.1 -address=/esauwoan.com/127.0.0.1 -address=/estionexperime.info/127.0.0.1 -address=/eunformeranothe.info/127.0.0.1 -address=/eyhempsedinte.info/127.0.0.1 -address=/fadsans.com/127.0.0.1 -address=/fadsanz.com/127.0.0.1 -address=/fadsecs.com/127.0.0.1 -address=/fadsims.com/127.0.0.1 -address=/fadsips.com/127.0.0.1 -address=/fadslims.com/127.0.0.1 -address=/fadsoks.com/127.0.0.1 -address=/fadspmz.com/127.0.0.1 -address=/fagmomqua.site/127.0.0.1 -address=/fazoumee.net/127.0.0.1 -address=/feed.r-tb.com/127.0.0.1 -address=/feed777.me/127.0.0.1 -address=/feelineweatyeng.info/127.0.0.1 -address=/ffortyimagist.info/127.0.0.1 -address=/fishkekcamp.info/127.0.0.1 -address=/fixsirrod.site/127.0.0.1 -address=/flowwiththetide.xyz/127.0.0.1 -address=/fufoatch.com/127.0.0.1 -address=/fuyuap.xyz/127.0.0.1 -address=/g2afse.com/127.0.0.1 -address=/gadsans.com/127.0.0.1 -address=/gadsanz.com/127.0.0.1 -address=/gadsats.com/127.0.0.1 -address=/gadsecz.com/127.0.0.1 -address=/gadsimz.com/127.0.0.1 -address=/gadsipz.com/127.0.0.1 -address=/gadskis.com/127.0.0.1 -address=/gadsokz.com/127.0.0.1 -address=/gapsfartrely.best/127.0.0.1 -address=/gardoult.com/127.0.0.1 -address=/gdmconvtrck.com/127.0.0.1 -address=/gebralefukim.site/127.0.0.1 -address=/gedspecificano.info/127.0.0.1 -address=/gleergie.net/127.0.0.1 -address=/global-surveys.co/127.0.0.1 -address=/globwo.online/127.0.0.1 -address=/glomseci.com/127.0.0.1 -address=/gludraus.com/127.0.0.1 -address=/go2.global/127.0.0.1 -address=/gobovoul.net/127.0.0.1 -address=/gongeeta.net/127.0.0.1 -address=/gragliapastri.info/127.0.0.1 -address=/grampouz.net/127.0.0.1 -address=/graunada.com/127.0.0.1 -address=/grementessenti.info/127.0.0.1 -address=/grexoacu.com/127.0.0.1 -address=/groackam.com/127.0.0.1 -address=/grubsoan.com/127.0.0.1 -address=/h3btqpy2abc3.com/127.0.0.1 -address=/haftobso.net/127.0.0.1 -address=/hamadotax.site/127.0.0.1 -address=/haypaydig.club/127.0.0.1 -address=/heckagny.com/127.0.0.1 -address=/himselvepostly.site/127.0.0.1 -address=/hoosorie.com/127.0.0.1 -address=/hounicuy.com/127.0.0.1 -address=/housandady.site/127.0.0.1 -address=/housopsi.net/127.0.0.1 -address=/huckauhy.com/127.0.0.1 -address=/hwhiffonprotect.info/127.0.0.1 -address=/ideliv.net/127.0.0.1 -address=/iglaique.net/127.0.0.1 -address=/imounsos.com/127.0.0.1 -address=/ingdaughtexam.info/127.0.0.1 -address=/ingprographyt.info/127.0.0.1 -address=/inpagepush.com/127.0.0.1 -address=/instantresp.com/127.0.0.1 -address=/inwig3aqg9xq.com/127.0.0.1 -address=/ionrefreshotsev.info/127.0.0.1 -address=/ipsoorel.com/127.0.0.1 -address=/iulianus-mon.com/127.0.0.1 -address=/jahediretictho.info/127.0.0.1 -address=/jamestop.xyz/127.0.0.1 -address=/jaugloup.com/127.0.0.1 -address=/jechesmacaltont.info/127.0.0.1 -address=/jicmutse.com/127.0.0.1 -address=/jinsoopt.net/127.0.0.1 -address=/joawapti.net/127.0.0.1 -address=/justookr.net/127.0.0.1 -address=/katerigordas.pro/127.0.0.1 -address=/kaukoany.net/127.0.0.1 -address=/kcampairsang.info/127.0.0.1 -address=/keepaira.net/127.0.0.1 -address=/kegpoihat.club/127.0.0.1 -address=/ketstheralinver.info/127.0.0.1 -address=/kitferdog.site/127.0.0.1 -address=/knottishhuntilc.info/127.0.0.1 -address=/koocaucy.com/127.0.0.1 -address=/koutobey.net/127.0.0.1 -address=/kudzuphloemgunk.tech/127.0.0.1 -address=/kumanaun.net/127.0.0.1 -address=/labortiontrifee.info/127.0.0.1 -address=/ladsdown.com/127.0.0.1 -address=/laichaim.net/127.0.0.1 -address=/lassistslegisten.info/127.0.0.1 -address=/ldevillaechildren.info/127.0.0.1 -address=/leathtexactlycin.info/127.0.0.1 -address=/lebkeresxa.ml/127.0.0.1 -address=/leontius-eli.com/127.0.0.1 -address=/lessite.pro/127.0.0.1 -address=/linkev.com/127.0.0.1 -address=/loaphour.com/127.0.0.1 -address=/locothet.com/127.0.0.1 -address=/loobusir.com/127.0.0.1 -address=/lutachechu.pro/127.0.0.1 -address=/lynormationpas.info/127.0.0.1 -address=/lyzenoti.pro/127.0.0.1 -address=/madplypie.club/127.0.0.1 -address=/madsans.com/127.0.0.1 -address=/maihaimo.com/127.0.0.1 -address=/maipoted.com/127.0.0.1 -address=/mauzobou.net/127.0.0.1 -address=/mbethnarrowe.info/127.0.0.1 -address=/mbledeparatea.info/127.0.0.1 -address=/meehaina.net/127.0.0.1 -address=/megmobpoi.club/127.0.0.1 -address=/melo.space/127.0.0.1 -address=/metricfast.com/127.0.0.1 -address=/mewnetwag.site/127.0.0.1 -address=/mibsooks.net/127.0.0.1 -address=/mikrairs.com/127.0.0.1 -address=/mirafaren.pw/127.0.0.1 -address=/moapteeg.net/127.0.0.1 -address=/mob1ledev1ces.com/127.0.0.1 -address=/moderningvigil.pro/127.0.0.1 -address=/monadplug.com/127.0.0.1 -address=/mopushy.com/127.0.0.1 -address=/mozgvya.com/127.0.0.1 -address=/mprisedluxemb.info/127.0.0.1 -address=/mptedcazdep.info/127.0.0.1 -address=/nadjustifygas.info/127.0.0.1 -address=/nailowhe.net/127.0.0.1 -address=/nbasicalbuffere.info/127.0.0.1 -address=/nbf9b5aurl.com/127.0.0.1 -address=/ncefoundanges.info/127.0.0.1 -address=/ncylegiatede.info/127.0.0.1 -address=/nelsdecademi.info/127.0.0.1 -address=/neltoole.net/127.0.0.1 -address=/nesoaghu.net/127.0.0.1 -address=/nessendencec.info/127.0.0.1 -address=/netcatx.com/127.0.0.1 -address=/netpatas.com/127.0.0.1 -address=/newvideos.xyz/127.0.0.1 -address=/nfarmerlycompa.info/127.0.0.1 -address=/ngholishingsm.info/127.0.0.1 -address=/niebrundveepursuede.info/127.0.0.1 -address=/nishathlessharr.info/127.0.0.1 -address=/nishfarmerlypas.info/127.0.0.1 -address=/nlzz7a3md4sx.com/127.0.0.1 -address=/noagloot.net/127.0.0.1 -address=/noaloheb.com/127.0.0.1 -address=/noclef.com/127.0.0.1 -address=/noglolra.com/127.0.0.1 -address=/norakseemlyntr.info/127.0.0.1 -address=/notification-centar.com/127.0.0.1 -address=/notifysrv.com/127.0.0.1 -address=/noutstancerewe.info/127.0.0.1 -address=/ntsartingaccura.info/127.0.0.1 -address=/ntsimprovide.info/127.0.0.1 -address=/oajujirg.net/127.0.0.1 -address=/obaukads.com/127.0.0.1 -address=/obefjbb4mykw.com/127.0.0.1 -address=/od0gddq27wkk.com/127.0.0.1 -address=/officultpolicit.pro/127.0.0.1 -address=/ohmchoicechi.online/127.0.0.1 -address=/olicyconsendsi.info/127.0.0.1 -address=/ommodatesjoin.info/127.0.0.1 -address=/omoaxaus.net/127.0.0.1 -address=/onalentressionw.info/127.0.0.1 -address=/onindexicowillio.info/127.0.0.1 -address=/onscribedpastrong.info/127.0.0.1 -address=/ooxoatse.com/127.0.0.1 -address=/ophoahik.net/127.0.0.1 -address=/optvx.com/127.0.0.1 -address=/oratedencourse.info/127.0.0.1 -address=/oratorsresente.info/127.0.0.1 -address=/orcjagpox.com/127.0.0.1 -address=/ortantchangem.info/127.0.0.1 -address=/oselyprepartie.info/127.0.0.1 -address=/osmondards.pro/127.0.0.1 -address=/otsurvedchange.info/127.0.0.1 -address=/oughgoalityabo.info/127.0.0.1 -address=/ountapaveralle.info/127.0.0.1 -address=/ouzoadru.net/127.0.0.1 -address=/overribleintena.info/127.0.0.1 -address=/oweverycanvas.info/127.0.0.1 -address=/padsabz.com/127.0.0.1 -address=/padsatz.com/127.0.0.1 -address=/padsecs.com/127.0.0.1 -address=/pagiwp.com/127.0.0.1 -address=/pagnookr.net/127.0.0.1 -address=/parketbedde.info/127.0.0.1 -address=/pasaigul.com/127.0.0.1 -address=/paula-secundinus.com/127.0.0.1 -address=/paveralleycoun.info/127.0.0.1 -address=/peethobo.com/127.0.0.1 -address=/performanceonclick.com/127.0.0.1 -address=/petchesa.net/127.0.0.1 -address=/pgradualirelev.info/127.0.0.1 -address=/phabsoun.net/127.0.0.1 -address=/pharougn.com/127.0.0.1 -address=/pheekrie.com/127.0.0.1 -address=/pheevoug.com/127.0.0.1 -address=/phookree.com/127.0.0.1 -address=/plyvitablesagree.info/127.0.0.1 -address=/poleonaryprac.info/127.0.0.1 -address=/portedlysarcatc.info/127.0.0.1 -address=/possipationd.info/127.0.0.1 -address=/poubotem.com/127.0.0.1 -address=/poudeeri.com/127.0.0.1 -address=/powerapp.download/127.0.0.1 -address=/poxeemso.com/127.0.0.1 -address=/prevealhealth.info/127.0.0.1 -address=/productorbash.info/127.0.0.1 -address=/productorsy.pro/127.0.0.1 -address=/provisituske.site/127.0.0.1 -address=/pryrhoohs.site/127.0.0.1 -address=/psoaksoo.com/127.0.0.1 -address=/psoanouy.net/127.0.0.1 -address=/ptaivain.net/127.0.0.1 -address=/ptiftoud.com/127.0.0.1 -address=/ptogheeb.net/127.0.0.1 -address=/ptoulsey.com/127.0.0.1 -address=/puntoenun.site/127.0.0.1 -address=/push.house/127.0.0.1 -address=/pushpush.net/127.0.0.1 -address=/pushworldtool.com/127.0.0.1 -address=/rdsb2.club/127.0.0.1 -address=/realsrv.com/127.0.0.1 -address=/realtime-bid.com/127.0.0.1 -address=/reasonalattracke.info/127.0.0.1 -address=/redads.biz/127.0.0.1 -address=/redappeneticfr.info/127.0.0.1 -address=/redewdit.pro/127.0.0.1 -address=/redirect2719.ws/127.0.0.1 -address=/refunsiy.net/127.0.0.1 -address=/replentcautiful.info/127.0.0.1 -address=/resbargarettybe.info/127.0.0.1 -address=/returnessety.site/127.0.0.1 -address=/revolutelyplan.info/127.0.0.1 -address=/rexadvert.xyz/127.0.0.1 -address=/rgvqcsxqge.com/127.0.0.1 -address=/rheaddelainlyco.info/127.0.0.1 -address=/riahungardedig.info/127.0.0.1 -address=/ridgelorridorsag.info/127.0.0.1 -address=/rinedcountilconsiden.info/127.0.0.1 -address=/rintellsfundrew.info/127.0.0.1 -address=/ripslifestassoci.info/127.0.0.1 -address=/riptukri.net/127.0.0.1 -address=/rizeintellingente.info/127.0.0.1 -address=/robjamguy.club/127.0.0.1 -address=/ronoutom.net/127.0.0.1 -address=/roustast.net/127.0.0.1 -address=/routeme.one/127.0.0.1 -address=/routeserve.info/127.0.0.1 -address=/rsleaderingmu.info/127.0.0.1 -address=/runmeethoomes.info/127.0.0.1 -address=/rydresa.info/127.0.0.1 -address=/sadorsagreeng.info/127.0.0.1 -address=/sadsecz.com/127.0.0.1 -address=/santrateduk.site/127.0.0.1 -address=/sapsixysho.pro/127.0.0.1 -address=/searchmulty.com/127.0.0.1 -address=/securecloud-dt.com/127.0.0.1 -address=/seepsocu.net/127.0.0.1 -address=/sexagogal.site/127.0.0.1 -address=/sgftrrs.com/127.0.0.1 -address=/shenouth.com/127.0.0.1 -address=/shiptoud.com/127.0.0.1 -address=/shoawhom.com/127.0.0.1 -address=/silsfrastinggove.info/127.0.0.1 -address=/singthouthappi.info/127.0.0.1 -address=/sisewepod.com/127.0.0.1 -address=/sisterncoalitical.info/127.0.0.1 -address=/smenqskfmpfxnb.bid/127.0.0.1 -address=/soagrist.net/127.0.0.1 -address=/soofeest.net/127.0.0.1 -address=/sousaira.com/127.0.0.1 -address=/spentalwithinga.info/127.0.0.1 -address=/ssqualismother.info/127.0.0.1 -address=/stargoug.com/127.0.0.1 -address=/stoassod.com/127.0.0.1 -address=/stonseeb.net/127.0.0.1 -address=/streamclub.best/127.0.0.1 -address=/streamclub.fun/127.0.0.1 -address=/styheremo.site/127.0.0.1 -address=/supertrackingz.com/127.0.0.1 -address=/surfacecharo.info/127.0.0.1 -address=/taifouwo.com/127.0.0.1 -address=/tamechangekn.info/127.0.0.1 -address=/tarawerap.com/127.0.0.1 -address=/tartoals.net/127.0.0.1 -address=/taryarguestio.info/127.0.0.1 -address=/televeniesuc.pro/127.0.0.1 -address=/tentdinationgab.info/127.0.0.1 -address=/terialnevitiesini.info/127.0.0.1 -address=/thamsais.com/127.0.0.1 -address=/theeburs.com/127.0.0.1 -address=/thefastpush.com/127.0.0.1 -address=/thefuncoolstuff.com/127.0.0.1 -address=/themselvebu.site/127.0.0.1 -address=/thigeeph.com/127.0.0.1 -address=/thighiny.com/127.0.0.1 -address=/thimoaph.net/127.0.0.1 -address=/thitegnu.net/127.0.0.1 -address=/thodsserentlya.info/127.0.0.1 -address=/thomagejut.site/127.0.0.1 -address=/tifybecausingp.info/127.0.0.1 -address=/tionpronomyim.info/127.0.0.1 -address=/tiveacquisitsprett.info/127.0.0.1 -address=/toapsira.net/127.0.0.1 -address=/tonewithough.info/127.0.0.1 -address=/totogetica.com/127.0.0.1 -address=/trackingzen.com/127.0.0.1 -address=/trackspeeder.com/127.0.0.1 -address=/trkunited.com/127.0.0.1 -address=/tujestimater.pro/127.0.0.1 -address=/uagesspecifica.info/127.0.0.1 -address=/ufoukolt.com/127.0.0.1 -address=/ugoupams.com/127.0.0.1 -address=/uinelypresse.info/127.0.0.1 -address=/ukcomparends.pro/127.0.0.1 -address=/ummerciseha.info/127.0.0.1 -address=/untridrisa.cf/127.0.0.1 -address=/upush.co/127.0.0.1 -address=/uremechangec.info/127.0.0.1 -address=/urgwritishimpos.info/127.0.0.1 -address=/ushooque.net/127.0.0.1 -address=/uthworkreaseu.info/127.0.0.1 -address=/utpenedwritted.info/127.0.0.1 -address=/utstancecaricit.info/127.0.0.1 -address=/veewakim.net/127.0.0.1 -address=/veremund-hon.com/127.0.0.1 -address=/viatepigan.com/127.0.0.1 -address=/viebitgreasy.email/127.0.0.1 -address=/vimdiebid.club/127.0.0.1 -address=/virashux.net/127.0.0.1 -address=/vixirtab.com/127.0.0.1 -address=/vknrfwwxhxaxupqp.pro/127.0.0.1 -address=/voluumtracker.com/127.0.0.1 -address=/wacucmiy.net/127.0.0.1 -address=/wadsotch.com/127.0.0.1 -address=/wagoapse.com/127.0.0.1 -address=/wahamtou.net/127.0.0.1 -address=/waitingpresen.info/127.0.0.1 -address=/warsalsintrol.site/127.0.0.1 -address=/watchingssui.info/127.0.0.1 -address=/waugeboa.net/127.0.0.1 -address=/weegebul.net/127.0.0.1 -address=/weethery.com/127.0.0.1 -address=/whadaupo.net/127.0.0.1 -address=/whaustou.net/127.0.0.1 -address=/wheessoo.com/127.0.0.1 -address=/whoshood.com/127.0.0.1 -address=/wimsocou.com/127.0.0.1 -address=/wizwarsum.site/127.0.0.1 -address=/woogoust.com/127.0.0.1 -address=/woovooza.net/127.0.0.1 -address=/wrongerababan.info/127.0.0.1 -address=/xmlppcbuzz.com/127.0.0.1 -address=/yeprimlax.club/127.0.0.1 -address=/yinsterkneeline.info/127.0.0.1 -address=/z501lpfg9x8v.com/127.0.0.1 -address=/zaivikuk.com/127.0.0.1 -address=/zaugroaw.net/127.0.0.1 -address=/zaushegi.net/127.0.0.1 -address=/zrnedsainsteady.info/127.0.0.1 -address=/zudrurta.com/127.0.0.1 -address=/46.165.197.153/127.0.0.1 -address=/46.165.197.231/127.0.0.1 -address=/74.117.182.77/127.0.0.1 -address=/78.140.131.214/127.0.0.1 -address=/apopgo.com/127.0.0.1 -address=/arrowbucket.co/127.0.0.1 -address=/burporess.pro/127.0.0.1 -address=/clearadnetwork.com/127.0.0.1 -address=/clkrev.com/127.0.0.1 -address=/shillivee.pro/127.0.0.1 -address=/steepto.com/127.0.0.1 -address=/adminpromotion.com/127.0.0.1 -address=/adsalesforce.com/127.0.0.1 -address=/amazingfunnvideos.com/127.0.0.1 -address=/automationeventually.com/127.0.0.1 -address=/blissfulonline.com/127.0.0.1 -address=/capsuledaily.com/127.0.0.1 -address=/chanelets-aurning.com/127.0.0.1 -address=/clickercollections.com/127.0.0.1 -address=/clubpenguinclub.com/127.0.0.1 -address=/commercedirections.com/127.0.0.1 -address=/dialgold.com/127.0.0.1 -address=/effectivelyreport.com/127.0.0.1 -address=/gangidance.com/127.0.0.1 -address=/gladiatorbugs.com/127.0.0.1 -address=/greenmentioned.com/127.0.0.1 -address=/gunnersalmighty.com/127.0.0.1 -address=/happylifebab.com/127.0.0.1 -address=/hilltopgo.com/127.0.0.1 -address=/hugexdeal.com/127.0.0.1 -address=/includeinthebox.com/127.0.0.1 -address=/jasonsvid.com/127.0.0.1 -address=/libreriamedina.com/127.0.0.1 -address=/magararepublic.com/127.0.0.1 -address=/manorparty.com/127.0.0.1 -address=/menuexamples.com/127.0.0.1 -address=/myaarzoo.com/127.0.0.1 -address=/naughtyxparty.com/127.0.0.1 -address=/pennyotcstock.com/127.0.0.1 -address=/requestingreview.com/127.0.0.1 -address=/robovoiz.com/127.0.0.1 -address=/romeoforum.com/127.0.0.1 -address=/safeonlinesites.com/127.0.0.1 -address=/salemyticket.com/127.0.0.1 -address=/softxbutt.com/127.0.0.1 -address=/taodropship.com/127.0.0.1 -address=/thegreenzoneblog.com/127.0.0.1 -address=/ticktockhealth.com/127.0.0.1 -address=/topgreatxoffers.com/127.0.0.1 -address=/trackmackweldon.com/127.0.0.1 -address=/trafficshirts.com/127.0.0.1 -address=/travelstool.com/127.0.0.1 -address=/upcum.com/127.0.0.1 -address=/wallpapersfacts.com/127.0.0.1 -address=/wholesomehealthshop.com/127.0.0.1 -address=/167.206.10.148/127.0.0.1 -address=/acrabakasaka.com/127.0.0.1 -address=/ajkelra.com/127.0.0.1 -address=/akailoparzapi.com/127.0.0.1 -address=/akrazappi.com/127.0.0.1 -address=/alabardak.com/127.0.0.1 -address=/albertonne.com/127.0.0.1 -address=/arganostrella.com/127.0.0.1 -address=/atarshaboor.com/127.0.0.1 -address=/avalhukof.com/127.0.0.1 -address=/badokal.com/127.0.0.1 -address=/banomago.com/127.0.0.1 -address=/bapalolo.com/127.0.0.1 -address=/bapaquac.com/127.0.0.1 -address=/beglorena.com/127.0.0.1 -address=/bidoraln.com/127.0.0.1 -address=/bobarilla.com/127.0.0.1 -address=/boerilav.com/127.0.0.1 -address=/boiceta.com/127.0.0.1 -address=/bokilora.com/127.0.0.1 -address=/bolkazoopa.com/127.0.0.1 -address=/bondinra.com/127.0.0.1 -address=/borazita.com/127.0.0.1 -address=/bulbazoa.com/127.0.0.1 -address=/camtinolc.com/127.0.0.1 -address=/carutinv.com/127.0.0.1 -address=/chukalapopi.com/127.0.0.1 -address=/chukalorqa.com/127.0.0.1 -address=/ciridola.com/127.0.0.1 -address=/civitik.com/127.0.0.1 -address=/dagasaka.com/127.0.0.1 -address=/daghashmal.com/127.0.0.1 -address=/dbvault.net/127.0.0.1 -address=/dinovala.com/127.0.0.1 -address=/dodatova.com/127.0.0.1 -address=/dokaboka.com/127.0.0.1 -address=/dorapodorasham.com/127.0.0.1 -address=/dragolosa.com/127.0.0.1 -address=/drogomet.com/127.0.0.1 -address=/durazopa.com/127.0.0.1 -address=/egolina.com/127.0.0.1 -address=/erogaliv.com/127.0.0.1 -address=/foditgoz.com/127.0.0.1 -address=/forkitz.com/127.0.0.1 -address=/forkizata.com/127.0.0.1 -address=/forkmola.com/127.0.0.1 -address=/fulhudhoo.com/127.0.0.1 -address=/gamzetov.com/127.0.0.1 -address=/godibarl.com/127.0.0.1 -address=/golizoli.com/127.0.0.1 -address=/golokavi.com/127.0.0.1 -address=/haklopar.com/127.0.0.1 -address=/hariqavi.com/127.0.0.1 -address=/hirovivi.com/127.0.0.1 -address=/horheloopo.com/127.0.0.1 -address=/jerotidv.com/127.0.0.1 -address=/jilabukurlabu.com/127.0.0.1 -address=/jingavot.com/127.0.0.1 -address=/jojilabola.com/127.0.0.1 -address=/joribobo.com/127.0.0.1 -address=/jorjodika.com/127.0.0.1 -address=/kaidop.com/127.0.0.1 -address=/kalmloda.com/127.0.0.1 -address=/kilomansa.com/127.0.0.1 -address=/kilorama.com/127.0.0.1 -address=/kirilaboola.com/127.0.0.1 -address=/kofpag.com/127.0.0.1 -address=/kokilopi.com/127.0.0.1 -address=/kolimanq.com/127.0.0.1 -address=/koltruah.com/127.0.0.1 -address=/kompilukabalazooka.com/127.0.0.1 -address=/korketople.com/127.0.0.1 -address=/korkilazoopi.com/127.0.0.1 -address=/krakeshlaja.com/127.0.0.1 -address=/ktoloto.com/127.0.0.1 -address=/kuchebraska.com/127.0.0.1 -address=/kulkaridoopi.com/127.0.0.1 -address=/kulkerbolda.com/127.0.0.1 -address=/kulkulta.com/127.0.0.1 -address=/kullalabulla.com/127.0.0.1 -address=/kurkizraka.com/127.0.0.1 -address=/kurlikburlik.com/127.0.0.1 -address=/kuzalooza.com/127.0.0.1 -address=/liktirov.com/127.0.0.1 -address=/lokipodi.com/127.0.0.1 -address=/lokspeedarma.com/127.0.0.1 -address=/lulpolopolo.com/127.0.0.1 -address=/majosita.com/127.0.0.1 -address=/maokdata.com/127.0.0.1 -address=/measurementaz.com/127.0.0.1 -address=/megahrepsh.com/127.0.0.1 -address=/melahorgani.com/127.0.0.1 -address=/milparota.com/127.0.0.1 -address=/mitotach.com/127.0.0.1 -address=/mojigaga.com/127.0.0.1 -address=/monijorb.com/127.0.0.1 -address=/moninosa.com/127.0.0.1 -address=/morbitempus.com/127.0.0.1 -address=/moritava.com/127.0.0.1 -address=/mujilora.com/127.0.0.1 -address=/namitol.com/127.0.0.1 -address=/nanuyalailai.com/127.0.0.1 -address=/nepohita.com/127.0.0.1 -address=/nidorivo.com/127.0.0.1 -address=/niholaev.com/127.0.0.1 -address=/nimdinb.com/127.0.0.1 -address=/nitigoly.com/127.0.0.1 -address=/oddomane.com/127.0.0.1 -address=/opaalopaa.com/127.0.0.1 -address=/opjalajamak.com/127.0.0.1 -address=/paholita.com/127.0.0.1 -address=/perahbashmama.com/127.0.0.1 -address=/pipilazipi.com/127.0.0.1 -address=/pipilida.com/127.0.0.1 -address=/pitatagata.com/127.0.0.1 -address=/pompazilla.com/127.0.0.1 -address=/poratav.com/127.0.0.1 -address=/prikolizdesa.com/127.0.0.1 -address=/pukrazopchatka.com/127.0.0.1 -address=/pypozeqi.com/127.0.0.1 -address=/qaquzakalaka.com/127.0.0.1 -address=/qawiman.com/127.0.0.1 -address=/qewisoti.com/127.0.0.1 -address=/quavomi.com/127.0.0.1 -address=/rapizoda.com/127.0.0.1 -address=/ratkalol.com/127.0.0.1 -address=/reqpostanza.com/127.0.0.1 -address=/rewapala.com/127.0.0.1 -address=/rezilopompa.com/127.0.0.1 -address=/ripalazc.com/127.0.0.1 -address=/rodirola.com/127.0.0.1 -address=/rolkakuksa.com/127.0.0.1 -address=/scrappykoko.com/127.0.0.1 -address=/senolati.com/127.0.0.1 -address=/shmonekisot.com/127.0.0.1 -address=/shokala.com/127.0.0.1 -address=/shoxyloxi.com/127.0.0.1 -address=/tantella.com/127.0.0.1 -address=/tenlokif.com/127.0.0.1 -address=/tijorari.com/127.0.0.1 -address=/tikrailijorj.com/127.0.0.1 -address=/tilosman.com/127.0.0.1 -address=/tinkerta.com/127.0.0.1 -address=/tokaripupsi.com/127.0.0.1 -address=/tollibolli.com/127.0.0.1 -address=/totachrl.com/127.0.0.1 -address=/trasholita.com/127.0.0.1 -address=/trikroacha.com/127.0.0.1 -address=/udorik.com/127.0.0.1 -address=/ufraton.com/127.0.0.1 -address=/ukatoe.com/127.0.0.1 -address=/ulajilala.com/127.0.0.1 -address=/upnorma.com/127.0.0.1 -address=/uralap.com/127.0.0.1 -address=/utazwa.com/127.0.0.1 -address=/utorido.com/127.0.0.1 -address=/uzekrs.com/127.0.0.1 -address=/uzotarak.com/127.0.0.1 -address=/venonita.com/127.0.0.1 -address=/wakapita.com/127.0.0.1 -address=/wodipaca.com/127.0.0.1 -address=/wodizapt.com/127.0.0.1 -address=/xeozir.com/127.0.0.1 -address=/yaboshadi.com/127.0.0.1 -address=/yallboen.com/127.0.0.1 -address=/yeshhaod.com/127.0.0.1 -address=/yuituityula.com/127.0.0.1 -address=/zarazazapolaza.com/127.0.0.1 -address=/zepozipo.com/127.0.0.1 -address=/zilzolachi.com/127.0.0.1 -address=/zinovila.com/127.0.0.1 -address=/zipovoma.com/127.0.0.1 -address=/zirobata.com/127.0.0.1 -address=/zogzogolla.com/127.0.0.1 -address=/zonolali.com/127.0.0.1 -address=/zorbikala.com/127.0.0.1 -address=/zortinah.com/127.0.0.1 -address=/zozolilla.com/127.0.0.1 -address=/zukabota.com/127.0.0.1 -address=/arana.pw/127.0.0.1 -address=/beiren.xyz/127.0.0.1 -address=/daecan.xyz/127.0.0.1 -address=/daero.pw/127.0.0.1 -address=/daethana.pw/127.0.0.1 -address=/elabalar.pw/127.0.0.1 -address=/elmenor.xyz/127.0.0.1 -address=/farpeiros.pw/127.0.0.1 -address=/galiowen.com/127.0.0.1 -address=/gilzana.pw/127.0.0.1 -address=/glynzumin.pw/127.0.0.1 -address=/grebanise.pw/127.0.0.1 -address=/ianhice.pw/127.0.0.1 -address=/ianxalim.pw/127.0.0.1 -address=/iarfina.pw/127.0.0.1 -address=/iarvyre.pw/127.0.0.1 -address=/ilinan.xyz/127.0.0.1 -address=/inaharice.pw/127.0.0.1 -address=/inastina.pw/127.0.0.1 -address=/jomys.xyz/127.0.0.1 -address=/keaven.pw/127.0.0.1 -address=/kelris.pw/127.0.0.1 -address=/keymaris.com/127.0.0.1 -address=/liacyne.pw/127.0.0.1 -address=/miakalyn.pw/127.0.0.1 -address=/miastina.pw/127.0.0.1 -address=/miracan.pw/127.0.0.1 -address=/naetoris.pw/127.0.0.1 -address=/nornelis.pw/127.0.0.1 -address=/ololen.pw/127.0.0.1 -address=/omaceran.pw/127.0.0.1 -address=/omafaren.pw/127.0.0.1 -address=/omaris.pw/127.0.0.1 -address=/perkas.pw/127.0.0.1 -address=/ralozorwyn.pw/127.0.0.1 -address=/sarjor.pw/127.0.0.1 -address=/thefaren.pw/127.0.0.1 -address=/thenelis.pw/127.0.0.1 -address=/urifiel.pw/127.0.0.1 -address=/valkrana.xyz/127.0.0.1 -address=/wysara.pw/127.0.0.1 -address=/yinmyar.xyz/127.0.0.1 -address=/yllanala.pw/127.0.0.1 -address=/yllasatra.xyz/127.0.0.1 -address=/zinlar.pw/127.0.0.1 -address=/zumhice.pw/127.0.0.1 -address=/459517eb349739b.com/127.0.0.1 -address=/551f044b1a3f4ef.com/127.0.0.1 -address=/ae7c783736eb2ff.com/127.0.0.1 -address=/abrsamar.com/127.0.0.1 -address=/aclickads.com/127.0.0.1 -address=/adbidgo.com/127.0.0.1 -address=/adplexo.com/127.0.0.1 -address=/adservi.com/127.0.0.1 -address=/aebadu.com/127.0.0.1 -address=/bebadu.com/127.0.0.1 -address=/billionpops.com/127.0.0.1 -address=/cebadu.com/127.0.0.1 -address=/clcknpop.com/127.0.0.1 -address=/clickadin.com/127.0.0.1 -address=/clickbigo.com/127.0.0.1 -address=/clmcom.com/127.0.0.1 -address=/coocopop.com/127.0.0.1 -address=/crptgate.com/127.0.0.1 -address=/debadu.com/127.0.0.1 -address=/dlsear.com/127.0.0.1 -address=/doubledeepclick.com/127.0.0.1 -address=/doublelimpup.com/127.0.0.1 -address=/dsp.wtf/127.0.0.1 -address=/earnbigo.com/127.0.0.1 -address=/eoredi.com/127.0.0.1 -address=/fastpopclick.com/127.0.0.1 -address=/fastpopunder.com/127.0.0.1 -address=/febadu.com/127.0.0.1 -address=/fedsit.com/127.0.0.1 -address=/foxypp.com/127.0.0.1 -address=/fsitel.com/127.0.0.1 -address=/furmnas.com/127.0.0.1 -address=/gebadu.com/127.0.0.1 -address=/goredi.com/127.0.0.1 -address=/hebadu.com/127.0.0.1 -address=/hiblcom.com/127.0.0.1 -address=/horedi.com/127.0.0.1 -address=/hypoot.com/127.0.0.1 -address=/iddpop.com/127.0.0.1 -address=/iendoo.com/127.0.0.1 -address=/ioredi.com/127.0.0.1 -address=/isupopc.com/127.0.0.1 -address=/iupot.com/127.0.0.1 -address=/jebadu.com/127.0.0.1 -address=/joredi.com/127.0.0.1 -address=/joredii.com/127.0.0.1 -address=/koncbabae.com/127.0.0.1 -address=/koradu.com/127.0.0.1 -address=/lupoot.com/127.0.0.1 -address=/mdlsite.com/127.0.0.1 -address=/moomoopop.com/127.0.0.1 -address=/moradu.com/127.0.0.1 -address=/nebadu.com/127.0.0.1 -address=/nkmsite.com/127.0.0.1 -address=/nupoot.com/127.0.0.1 -address=/oebadu.com/127.0.0.1 -address=/oktpage.com/127.0.0.1 -address=/ooredi.com/127.0.0.1 -address=/pebadu.com/127.0.0.1 -address=/platado.com/127.0.0.1 -address=/popcain.com/127.0.0.1 -address=/popuexo.com/127.0.0.1 -address=/poredii.com/127.0.0.1 -address=/ppcashpop.com/127.0.0.1 -address=/profbigo.com/127.0.0.1 -address=/propbigo.com/127.0.0.1 -address=/pttsite.com/127.0.0.1 -address=/qebodu.com/127.0.0.1 -address=/qoredi.com/127.0.0.1 -address=/revbigo.com/127.0.0.1 -address=/roredi.com/127.0.0.1 -address=/sebadu.com/127.0.0.1 -address=/shareitpp.com/127.0.0.1 -address=/sitegoto.com/127.0.0.1 -address=/sitemnk.com/127.0.0.1 -address=/siterdm.com/127.0.0.1 -address=/sitetoway.com/127.0.0.1 -address=/soonbigo.com/127.0.0.1 -address=/sscashpop.com/127.0.0.1 -address=/svsub.com/127.0.0.1 -address=/syndicpop.com/127.0.0.1 -address=/syndopop.com/127.0.0.1 -address=/tebadu.com/127.0.0.1 -address=/terroppop.com/127.0.0.1 -address=/thterras.com/127.0.0.1 -address=/tosfeed.com/127.0.0.1 -address=/tplpages.com/127.0.0.1 -address=/trmnsite.com/127.0.0.1 -address=/tsandycateup.com/127.0.0.1 -address=/uebadu.com/127.0.0.1 -address=/uoredi.com/127.0.0.1 -address=/vebadu.com/127.0.0.1 -address=/voradu.com/127.0.0.1 -address=/voredi.com/127.0.0.1 -address=/vvcashpop.com/127.0.0.1 -address=/webodu.com/127.0.0.1 -address=/whalepp.com/127.0.0.1 -address=/woredi.com/127.0.0.1 -address=/xebadu.com/127.0.0.1 -address=/xoredi.com/127.0.0.1 -address=/xxladu.com/127.0.0.1 -address=/xxlargepop.com/127.0.0.1 -address=/xxssyndic.com/127.0.0.1 -address=/xxxadu.com/127.0.0.1 -address=/yebadu.com/127.0.0.1 -address=/yoredi.com/127.0.0.1 -address=/zavrotfro.com/127.0.0.1 -address=/abbp1.space./127.0.0.1 -address=/a.livesportmedia.eu/127.0.0.1 -address=/a.ucoz.net/127.0.0.1 -address=/a04296f070c0146f314d-0dcad72565cb350972beb3666a86f246.r50.cf5.rackcdn.com/127.0.0.1 -address=/ad.about.co.kr/127.0.0.1 -address=/ad.bitmedia.io/127.0.0.1 -address=/ad.edugram.com/127.0.0.1 -address=/ad.flux.com/127.0.0.1 -address=/ad.foxnetworks.com/127.0.0.1 -address=/ad.jamba.net/127.0.0.1 -address=/ad.livere.co.kr/127.0.0.1 -address=/ad.mesomorphosis.com/127.0.0.1 -address=/ad.netmedia.hu/127.0.0.1 -address=/ad.openmultimedia.biz/127.0.0.1 -address=/ad.outsidehub.com/127.0.0.1 -address=/ad.pickple.net/127.0.0.1 -address=/ad.proxy.sh/127.0.0.1 -address=/ad.rambler.ru/127.0.0.1 -address=/ad.reklamport.com/127.0.0.1 -address=/ad.sensismediasmart.com.au/127.0.0.1 -address=/ad.smartclip.net/127.0.0.1 -address=/ad.winningpartner.com/127.0.0.1 -address=/adingo.jp.eimg.jp/127.0.0.1 -address=/adn.ebay.com/127.0.0.1 -address=/ads.mp.mydas.mobi/127.0.0.1 -address=/ads.servebom.com/127.0.0.1 -address=/ads.tremorhub.com/127.0.0.1 -address=/adss.dotdo.net/127.0.0.1 -address=/advice-ads-cdn.vice.com/127.0.0.1 -address=/adz.zwee.ly/127.0.0.1 -address=/aff.eteachergroup.com/127.0.0.1 -address=/aff.marathonbet.com/127.0.0.1 -address=/aff.svjump.com/127.0.0.1 -address=/affiliate.heureka.cz/127.0.0.1 -address=/affiliateprogram.keywordspy.com/127.0.0.1 -address=/affiliates.allposters.com/127.0.0.1 -address=/affiliatesmedia.sbobet.com/127.0.0.1 -address=/affiliation.fotovista.com/127.0.0.1 -address=/affiliationjs.s3.amazonaws.com/127.0.0.1 -address=/airpushmarketing.s3.amazonaws.com/127.0.0.1 -address=/analytics.disneyinternational.com/127.0.0.1 -address=/ao-freegeoip.herokuapp.com/127.0.0.1 -address=/appnext-a.akamaihd.net/127.0.0.1 -address=/ard.ihookup.com/127.0.0.1 -address=/award.sitekeuring.net/127.0.0.1 -address=/b.babylon.com/127.0.0.1 -address=/banner.101xp.com/127.0.0.1 -address=/banner.3ddownloads.com/127.0.0.1 -address=/banner.europacasino.com/127.0.0.1 -address=/banner.titancasino.com/127.0.0.1 -address=/bl.wavecdn.de/127.0.0.1 -address=/blamads-assets.s3.amazonaws.com/127.0.0.1 -address=/bluhostedbanners.blucigs.com/127.0.0.1 -address=/btr.domywife.com/127.0.0.1 -address=/c.netu.tv/127.0.0.1 -address=/cas.clickability.com/127.0.0.1 -address=/cash.neweramediaworks.com/127.0.0.1 -address=/clarity.abacast.com/127.0.0.1 -address=/click.eyk.net/127.0.0.1 -address=/connect.summit.co.uk/127.0.0.1 -address=/content.livesportmedia.eu/127.0.0.1 -address=/cpm.amateurcommunity.de/127.0.0.1 -address=/creatives.inmotionhosting.com/127.0.0.1 -address=/ct.verticalhealth.net/127.0.0.1 -address=/d10lv7w3g0jvk9.cloudfront.net/127.0.0.1 -address=/d11tybz5ul8vel.cloudfront.net/127.0.0.1 -address=/d140sbu1b1m3h0.cloudfront.net/127.0.0.1 -address=/d144jmuhz9kvbq.cloudfront.net/127.0.0.1 -address=/d158nafix8anfs.cloudfront.net/127.0.0.1 -address=/d15gt9gwxw5wu0.cloudfront.net/127.0.0.1 -address=/d15kdpgjg3unno.cloudfront.net/127.0.0.1 -address=/d162nnmwf9bggr.cloudfront.net/127.0.0.1 -address=/d18xeipe1243h6.cloudfront.net/127.0.0.1 -address=/d1aezk8tun0dhm.cloudfront.net/127.0.0.1 -address=/d1aqvw7cn4ydzo.cloudfront.net/127.0.0.1 -address=/d1crt12zco2cvf.cloudfront.net/127.0.0.1 -address=/d1ebha2k07asm5.cloudfront.net/127.0.0.1 -address=/d1grtyyel8f1mh.cloudfront.net/127.0.0.1 -address=/d1i9kr6k34lyp.cloudfront.net/127.0.0.1 -address=/d1il9t8pu4dsoj.cloudfront.net/127.0.0.1 -address=/d1mbgf0ge24riu.cloudfront.net/127.0.0.1 -address=/d1n3tk65esqc4k.cloudfront.net/127.0.0.1 -address=/d1nmxiiewlx627.cloudfront.net/127.0.0.1 -address=/d1pdpbxj733bb1.cloudfront.net/127.0.0.1 -address=/d1qc76gneygidm.cloudfront.net/127.0.0.1 -address=/d1qggq1at2gusn.cloudfront.net/127.0.0.1 -address=/d1qk9ujrmkucbl.cloudfront.net/127.0.0.1 -address=/d1r90st78epsag.cloudfront.net/127.0.0.1 -address=/d1rguclfwp7nc8.cloudfront.net/127.0.0.1 -address=/d1rkf0bq85yx06.cloudfront.net/127.0.0.1 -address=/d1v99qnc7usc0g.cloudfront.net/127.0.0.1 -address=/d1wjz6mrey9f5v.cloudfront.net/127.0.0.1 -address=/d1zgderxoe1a.cloudfront.net/127.0.0.1 -address=/d21j20wsoewvjq.cloudfront.net/127.0.0.1 -address=/d22lo5bcpq2fif.cloudfront.net/127.0.0.1 -address=/d23guct4biwna6.cloudfront.net/127.0.0.1 -address=/d25dfknw9ghxs6.cloudfront.net/127.0.0.1 -address=/d25xkbr68qqtcn.cloudfront.net/127.0.0.1 -address=/d26c6kzavi5zwd.cloudfront.net/127.0.0.1 -address=/d29dbajta0the9.cloudfront.net/127.0.0.1 -address=/d29i6o40xcgdai.cloudfront.net/127.0.0.1 -address=/d2b560qq58menv.cloudfront.net/127.0.0.1 -address=/d2bgg7rjywcwsy.cloudfront.net/127.0.0.1 -address=/d2c4ylitp1qu24.cloudfront.net/127.0.0.1 -address=/d2cgumzzqhgmdu.cloudfront.net/127.0.0.1 -address=/d2d8qsxiai9qwj.cloudfront.net/127.0.0.1 -address=/d2edfzx4ay42og.cloudfront.net/127.0.0.1 -address=/d2focgxak1cn74.cloudfront.net/127.0.0.1 -address=/d2g9nmtuil60cb.cloudfront.net/127.0.0.1 -address=/d2ghscazvn398x.cloudfront.net/127.0.0.1 -address=/d2hvwfg7vv4mhf.cloudfront.net/127.0.0.1 -address=/d2izls9pm2f64q.cloudfront.net/127.0.0.1 -address=/d2kr2fnkbj2h4c.cloudfront.net/127.0.0.1 -address=/d2mic0r0bo3i6z.cloudfront.net/127.0.0.1 -address=/d2muzdhs7lpmo0.cloudfront.net/127.0.0.1 -address=/d2nlytvx51ywh9.cloudfront.net/127.0.0.1 -address=/d2nz8k4xyoudsx.cloudfront.net/127.0.0.1 -address=/d2o307dm5mqftz.cloudfront.net/127.0.0.1 -address=/d2oa97wrxvxm7y.cloudfront.net/127.0.0.1 -address=/d2pxbld8wrqyrk.cloudfront.net/127.0.0.1 -address=/d2qz7ofajpstv5.cloudfront.net/127.0.0.1 -address=/d2szg1g41jt3pq.cloudfront.net/127.0.0.1 -address=/d2taktuuo4oqx.cloudfront.net/127.0.0.1 -address=/d2va1d0hpla18n.cloudfront.net/127.0.0.1 -address=/d31vxm9ubutrmw.cloudfront.net/127.0.0.1 -address=/d32r9jwgeu9dzx.cloudfront.net/127.0.0.1 -address=/d33otidwg56k90.cloudfront.net/127.0.0.1 -address=/d34rdvn2ky3gnm.cloudfront.net/127.0.0.1 -address=/d355vwft2pa8h6.cloudfront.net/127.0.0.1 -address=/d359wjs9dpy12d.cloudfront.net/127.0.0.1 -address=/d3a42c7xs4vn3.cloudfront.net/127.0.0.1 -address=/d3ahinqqx1dy5v.cloudfront.net/127.0.0.1 -address=/d3aiy6aqoa3ykz.cloudfront.net/127.0.0.1 -address=/d3al52d8cojds7.cloudfront.net/127.0.0.1 -address=/d3dytsf4vrjn5x.cloudfront.net/127.0.0.1 -address=/d3hitamb7drqut.cloudfront.net/127.0.0.1 -address=/d3hs51abvkuanv.cloudfront.net/127.0.0.1 -address=/d3l320urli0p1u.cloudfront.net/127.0.0.1 -address=/d3lvr7yuk4uaui.cloudfront.net/127.0.0.1 -address=/d3nvrqlo8rj1kw.cloudfront.net/127.0.0.1 -address=/d3pe8wzpurrzss.cloudfront.net/127.0.0.1 -address=/d3pkae9owd2lcf.cloudfront.net/127.0.0.1 -address=/d3q33rbmdkxzj.cloudfront.net/127.0.0.1 -address=/d3uqm14ppr8tkw.cloudfront.net/127.0.0.1 -address=/d3vpf6i51y286p.cloudfront.net/127.0.0.1 -address=/d4ngwggzm3w7j.cloudfront.net/127.0.0.1 -address=/d5pb47xzjz3fc.cloudfront.net/127.0.0.1 -address=/d63a3au5lqmtu.cloudfront.net/127.0.0.1 -address=/d6sav80kktzcx.cloudfront.net/127.0.0.1 -address=/da3uf5ucdz00u.cloudfront.net/127.0.0.1 -address=/dal9hkyfi0m0n.cloudfront.net/127.0.0.1 -address=/dart.clearchannel.com/127.0.0.1 -address=/dasfdasfasdf.no-ip.info/127.0.0.1 -address=/data.neuroxmedia.com/127.0.0.1 -address=/dbam.dashbida.com/127.0.0.1 -address=/dbcdqp72lzmvj.cloudfront.net/127.0.0.1 -address=/ddvfoj5yrl2oi.cloudfront.net/127.0.0.1 -address=/deacon.ghfkk.com/127.0.0.1 -address=/delivery-dev.thebloggernetwork.com/127.0.0.1 -address=/delivery.thebloggernetwork.com/127.0.0.1 -address=/dew9ckzjyt2gn.cloudfront.net/127.0.0.1 -address=/display.digitalriver.com/127.0.0.1 -address=/djr4k68f8n55o.cloudfront.net/127.0.0.1 -address=/djz9es32qen64.cloudfront.net/127.0.0.1 -address=/dm0acvguygm9h.cloudfront.net/127.0.0.1 -address=/dmkdtkad2jyb9.cloudfront.net/127.0.0.1 -address=/dojx47ab4dyxi.cloudfront.net/127.0.0.1 -address=/dpsq2uzakdgqz.cloudfront.net/127.0.0.1 -address=/dqhi3ea93ztgv.cloudfront.net/127.0.0.1 -address=/dr3k6qonw2kee.cloudfront.net/127.0.0.1 -address=/dr8pk6ovub897.cloudfront.net/127.0.0.1 -address=/drf8e429z5jzt.cloudfront.net/127.0.0.1 -address=/ds02gfqy6io6i.cloudfront.net/127.0.0.1 -address=/dsh7ky7308k4b.cloudfront.net/127.0.0.1 -address=/dsie7h4lo9wxu.cloudfront.net/127.0.0.1 -address=/dtakdb1z5gq7e.cloudfront.net/127.0.0.1 -address=/dtrk.slimcdn.com/127.0.0.1 -address=/dtto8zfzskfoa.cloudfront.net/127.0.0.1 -address=/du2uh7rq0r0d3.cloudfront.net/127.0.0.1 -address=/duzt6rhr7wo8p.cloudfront.net/127.0.0.1 -address=/dv7t7qyvgyrt5.cloudfront.net/127.0.0.1 -address=/dvc8653ec6uyk.cloudfront.net/127.0.0.1 -address=/dvnafl0qtqz9k.cloudfront.net/127.0.0.1 -address=/dvt4pepo9om3r.cloudfront.net/127.0.0.1 -address=/dxprljqoay4rt.cloudfront.net/127.0.0.1 -address=/dybxezbel1g44.cloudfront.net/127.0.0.1 -address=/epowernetworktrackerimages.s3.amazonaws.com/127.0.0.1 -address=/euwidget.imshopping.com/127.0.0.1 -address=/events.kalooga.com/127.0.0.1 -address=/ff.doubleclick.net/127.0.0.1 -address=/gateway.fortunelounge.com/127.0.0.1 -address=/gateways.s3.amazonaws.com/127.0.0.1 -address=/geo.connexionsecure.com/127.0.0.1 -address=/geobanner.passion.com/127.0.0.1 -address=/gfaf-banners.s3.amazonaws.com/127.0.0.1 -address=/gg.caixin.com/127.0.0.1 -address=/homad-global-configs.schneevonmorgen.com/127.0.0.1 -address=/im.ov.yahoo.co.jp/127.0.0.1 -address=/indieclick.3janecdn.com/127.0.0.1 -address=/karma.mdpcdn.com/127.0.0.1 -address=/kbnetworkz.s3.amazonaws.com/127.0.0.1 -address=/leaddyno-client-images.s3.amazonaws.com/127.0.0.1 -address=/marketing.888.com/127.0.0.1 -address=/mb.zam.com/127.0.0.1 -address=/mbid.marfeelrev.com/127.0.0.1 -address=/medrx.telstra.com.au/127.0.0.1 -address=/network.aufeminin.com/127.0.0.1 -address=/network.business.com/127.0.0.1 -address=/ntvcld-a.akamaihd.net/127.0.0.1 -address=/oas.luxweb.com/127.0.0.1 -address=/odin.goo.mx/127.0.0.1 -address=/on.maxspeedcdn.com/127.0.0.1 -address=/ox-i.cordillera.tv/127.0.0.1 -address=/partner.bargaindomains.com/127.0.0.1 -address=/partner.catchy.com/127.0.0.1 -address=/partner.premiumdomains.com/127.0.0.1 -address=/partners.fshealth.com/127.0.0.1 -address=/partners.optiontide.com/127.0.0.1 -address=/partners.rochen.com/127.0.0.1 -address=/partners.sportingbet.com.au/127.0.0.1 -address=/partners.vouchedfor.co.uk/127.0.0.1 -address=/partners.xpertmarket.com/127.0.0.1 -address=/pb.s3wfg.com/127.0.0.1 -address=/priceinfo.comuv.com/127.0.0.1 -address=/promos.fling.com/127.0.0.1 -address=/promote.pair.com/127.0.0.1 -address=/promotions.iasbet.com/127.0.0.1 -address=/pub.admedia.io/127.0.0.1 -address=/pub.betclick.com/127.0.0.1 -address=/pubportal.brkmd.com/127.0.0.1 -address=/pubs.hiddennetwork.com/127.0.0.1 -address=/rack.bauermedia.co.uk/127.0.0.1 -address=/res3.feedsportal.com/127.0.0.1 -address=/rotabanner.kulichki.net/127.0.0.1 -address=/rotator.tradetracker.net/127.0.0.1 -address=/s-yoolk-banner-assets.yoolk.com/127.0.0.1 -address=/s-yoolk-billboard-assets.yoolk.com/127.0.0.1 -address=/secretmedia.s3.amazonaws.com/127.0.0.1 -address=/servedby.keygamesnetwork.com/127.0.0.1 -address=/sitescout-video-cdn.edgesuite.net/127.0.0.1 -address=/slot.union.ucweb.com/127.0.0.1 -address=/smart.styria-digital.com/127.0.0.1 -address=/smblock.s3.amazonaws.com/127.0.0.1 -address=/squarespace.evyy.net/127.0.0.1 -address=/stats.hosting24.com/127.0.0.1 -address=/stats.sitesuite.org/127.0.0.1 -address=/streaming.rtbiddingplatform.com/127.0.0.1 -address=/stuff-nzwhistleout.s3.amazonaws.com/127.0.0.1 -address=/survey.g.doubleclick.net/127.0.0.1 -address=/syndication.jsadapi.com/127.0.0.1 -address=/syndication1.viraladnetwork.net/127.0.0.1 -address=/tags.sprizzy.com/127.0.0.1 -address=/tags2.adshell.net/127.0.0.1 -address=/tap.more-results.net/127.0.0.1 -address=/ti.tradetracker.net/127.0.0.1 -address=/track.bcvcmedia.com/127.0.0.1 -address=/twinplan.com/127.0.0.1 -address=/utility.rogersmedia.com/127.0.0.1 -address=/vice-publishers-cdn.vice.com/127.0.0.1 -address=/web-jp.ad-v.jp/127.0.0.1 -address=/whistleout.s3.amazonaws.com/127.0.0.1 -address=/widget.crowdignite.com/127.0.0.1 -address=/widget.kelkoo.com/127.0.0.1 -address=/widget.raaze.com/127.0.0.1 -address=/widget.searchschoolsnetwork.com/127.0.0.1 -address=/widget.shopstyle.com.au/127.0.0.1 -address=/widget.solarquotes.com.au/127.0.0.1 -address=/widgets.fie-data.co.uk/127.0.0.1 -address=/widgets.realestate.com.au/127.0.0.1 -address=/wlpinnaclesports.eacdn.com/127.0.0.1 -address=/wtpn.twenga.co.uk/127.0.0.1 -address=/wtpn.twenga.de/127.0.0.1 -address=/yb.torchbrowser.com/127.0.0.1 -address=/yeas.yahoo.co.jp/127.0.0.1 -address=/yield-op-idsync.live.streamtheworld.com/127.0.0.1 -address=/zapads.zapak.com/127.0.0.1 -address=/d141wsrw9m4as6.cloudfront.net/127.0.0.1 -address=/d1bxkgbbc428vi.cloudfront.net/127.0.0.1 -address=/d1ilwohzbe4ao6.cloudfront.net/127.0.0.1 -address=/d1jnvfp2m6fzvq.cloudfront.net/127.0.0.1 -address=/d1ks8roequxbwa.cloudfront.net/127.0.0.1 -address=/d1n1ppeppre6d4.cloudfront.net/127.0.0.1 -address=/d1nkvehlw5hmj4.cloudfront.net/127.0.0.1 -address=/d1rjzrtsxlzawf.cloudfront.net/127.0.0.1 -address=/d1w24oanovvxvg.cloudfront.net/127.0.0.1 -address=/d22z575k8abudv.cloudfront.net/127.0.0.1 -address=/d2e30rravz97d4.cloudfront.net/127.0.0.1 -address=/d2glav2919q4cw.cloudfront.net/127.0.0.1 -address=/d31mxuhvwrofft.cloudfront.net/127.0.0.1 -address=/d347nuc6bd1dvs.cloudfront.net/127.0.0.1 -address=/d3a49eam5ump99.cloudfront.net/127.0.0.1 -address=/d3b2hhehkqd158.cloudfront.net/127.0.0.1 -address=/d3hj4iyx6t1waz.cloudfront.net/127.0.0.1 -address=/d3kpkrgd3aj4o7.cloudfront.net/127.0.0.1 -address=/d3qu0b872n4q3x.cloudfront.net/127.0.0.1 -address=/d3t3lxfqz2g5hs.cloudfront.net/127.0.0.1 -address=/d3vnm1492fpnm2.cloudfront.net/127.0.0.1 -address=/dc5k8fg5ioc8s.cloudfront.net/127.0.0.1 -address=/dn3uy6cx65ujf.cloudfront.net/127.0.0.1 -address=/dpd9yiocsyy6p.cloudfront.net/127.0.0.1 -address=/du01z5hhojprz.cloudfront.net/127.0.0.1 -address=/dw9uc6c6b8nwx.cloudfront.net/127.0.0.1 -address=/dxkkb5tytkivf.cloudfront.net/127.0.0.1 -address=/iadc.qwapi.com/127.0.0.1 -address=/d3jgr4uve1d188.cloudfront.net/127.0.0.1 -address=/d3ujids68p6xmq.cloudfront.net/127.0.0.1 -address=/ad.duga.jp/127.0.0.1 -address=/ad.iloveinterracial.com/127.0.0.1 -address=/ads.videosz.com/127.0.0.1 -address=/affiliates.thrixxx.com/127.0.0.1 -address=/ard.sweetdiscreet.com/127.0.0.1 -address=/bannershotlink.perfectgonzo.com/127.0.0.1 -address=/blaaaa12.googlecode.com/127.0.0.1 -address=/br.blackfling.com/127.0.0.1 -address=/br.fling.com/127.0.0.1 -address=/br.realitykings.com/127.0.0.1 -address=/core-queerclick.netdna-ssl.com/127.0.0.1 -address=/cpm.amateurcommunity.com/127.0.0.1 -address=/d1mib12jcgwmnv.cloudfront.net/127.0.0.1 -address=/d3ud741uvs727m.cloudfront.net/127.0.0.1 -address=/dailyvideo.securejoin.com/127.0.0.1 -address=/desk.cmix.org/127.0.0.1 -address=/feeds.videosz.com/127.0.0.1 -address=/freexxxvideoclip.aebn.net/127.0.0.1 -address=/gashot.yurivideos.com/127.0.0.1 -address=/geo.cliphunter.com/127.0.0.1 -address=/geo.frtya.com/127.0.0.1 -address=/geo.frtyd.com/127.0.0.1 -address=/geobanner.adultfriendfinder.com/127.0.0.1 -address=/geobanner.alt.com/127.0.0.1 -address=/geobanner.socialflirt.com/127.0.0.1 -address=/in.zog.link/127.0.0.1 -address=/partners.pornerbros.com/127.0.0.1 -address=/pub.nakedreel.com/127.0.0.1 -address=/s1magnettvcom.maynemyltf.netdna-cdn.com/127.0.0.1 -address=/surv.xbizmedia.com/127.0.0.1 -address=/sweet.game-rust.ru/127.0.0.1 -address=/tm-offers.gamingadult.com/127.0.0.1 -address=/tool.acces-vod.com/127.0.0.1 -address=/widgets.comcontent.net/127.0.0.1 -address=/widgetssec.cam-content.com/127.0.0.1 -address=/wt.adtrue24.com/127.0.0.1 -address=/a.w3techs.com/127.0.0.1 -address=/ad.9animes.ru/127.0.0.1 -address=/ad.digitimes.com.tw/127.0.0.1 -address=/ad.itweb.co.za/127.0.0.1 -address=/ad.khan.co.kr/127.0.0.1 -address=/ad.kisscartoon.is/127.0.0.1 -address=/ad.search.ch/127.0.0.1 -address=/ad.spreaker.com/127.0.0.1 -address=/addirector.vindicosuite.com/127.0.0.1 -address=/ads.yahoo.com/127.0.0.1 -address=/ads.zynga.com/127.0.0.1 -address=/adserver.pandora.com/127.0.0.1 -address=/adss.yahoo.com/127.0.0.1 -address=/aggnr.groovesharks.org/127.0.0.1 -address=/as.inbox.com/127.0.0.1 -address=/ban.seriesonlinex.org/127.0.0.1 -address=/beap.gemini.yahoo.com/127.0.0.1 -address=/cad.donga.com/127.0.0.1 -address=/click.livedoor.com/127.0.0.1 -address=/collector.viki.io/127.0.0.1 -address=/content.streamplay.to/127.0.0.1 -address=/creatives.livejasmin.com/127.0.0.1 -address=/d10lumateci472.cloudfront.net/127.0.0.1 -address=/d2fbkzyicji7c4.cloudfront.net/127.0.0.1 -address=/d2na2p72vtqyok.cloudfront.net/127.0.0.1 -address=/d2uepos3ef6db0.cloudfront.net/127.0.0.1 -address=/d3asksgk2foh5m.cloudfront.net/127.0.0.1 -address=/dash.tmearn.com/127.0.0.1 -address=/dbs.autolatest.ro/127.0.0.1 -address=/delivery.smashing.services/127.0.0.1 -address=/djv99sxoqpv11.cloudfront.net/127.0.0.1 -address=/dkm6b5q0h53z4.cloudfront.net/127.0.0.1 -address=/fontent.streamp1ay.me/127.0.0.1 -address=/fun.wormania.io/127.0.0.1 -address=/fun1.arcadeprehacks.com/127.0.0.1 -address=/gen.etherscan.io/127.0.0.1 -address=/hawk.pcgamer.com/127.0.0.1 -address=/imgcache.sythe.org/127.0.0.1 -address=/iurhxzmr.ga.gfycat.com/127.0.0.1 -address=/mail-ads.google.com/127.0.0.1 -address=/mms.graziadaily.co.uk/127.0.0.1 -address=/nas1.flashx.net/127.0.0.1 -address=/nicoad.nicovideo.jp/127.0.0.1 -address=/pmm.people.com.cn/127.0.0.1 -address=/ssa.1337x.to/127.0.0.1 -address=/tag.vlitag.com/127.0.0.1 -address=/tradecraft.s.llnwi.net/127.0.0.1 -address=/urs.zdnet.com/127.0.0.1 -address=/wall.vgr.com/127.0.0.1 -address=/web.tmearn.com/127.0.0.1 -address=/ww2.gestyy.com/127.0.0.1 -address=/x.castanet.net/127.0.0.1 -address=/gontent.steamplay.me/127.0.0.1 -address=/hontent.steamplay.me/127.0.0.1 -address=/vontent.powvideo.net/127.0.0.1 -address=/wontent.powvideo.net/127.0.0.1 -address=/yontent.powvideo.net/127.0.0.1 -address=/meta.streamcloud.eu/127.0.0.1 -address=/pub1.cope.es/127.0.0.1 -address=/a.eporner.com/127.0.0.1 -address=/a.heavy-r.com/127.0.0.1 -address=/a3.hotpornfile.org/127.0.0.1 -address=/ad.eporner.com/127.0.0.1 -address=/ad.thisav.com/127.0.0.1 -address=/affiliates.goodvibes.com/127.0.0.1 -address=/ashot.txxx.com/127.0.0.1 -address=/b.boyfriendtv.com/127.0.0.1 -address=/b.pornoxo.com/127.0.0.1 -address=/b.xcafe.com/127.0.0.1 -address=/banner1.pornhost.com/127.0.0.1 -address=/banners.cams.com/127.0.0.1 -address=/bnnr.pornpics.com/127.0.0.1 -address=/brcache.madthumbs.com/127.0.0.1 -address=/cf1c0.thisav.com/127.0.0.1 -address=/creatives.cliphunter.com/127.0.0.1 -address=/creatives.pichunter.com/127.0.0.1 -address=/d1wi563t0137vz.cloudfront.net/127.0.0.1 -address=/d2q52i8yx3j68p.cloudfront.net/127.0.0.1 -address=/d39hdzmeufnl50.cloudfront.net/127.0.0.1 -address=/delivery.porn.com/127.0.0.1 -address=/dildo.tnaflix.com/127.0.0.1 -address=/dot.eporner.com/127.0.0.1 -address=/dot2.eporner.com/127.0.0.1 -address=/dyn.empflix.com/127.0.0.1 -address=/dyn.tnaflix.com/127.0.0.1 -address=/exit.macandbumble.com/127.0.0.1 -address=/go.pornav.net/127.0.0.1 -address=/go.sexu.tv/127.0.0.1 -address=/go.strpjmp.com/127.0.0.1 -address=/lw1.cdmediaworld.com/127.0.0.1 -address=/madmen.alastonsuomi.com/127.0.0.1 -address=/myashot.txxx.com/127.0.0.1 -address=/partners.keezmovies.com/127.0.0.1 -address=/plx.porndig.com/127.0.0.1 -address=/pr-static.empflix.com/127.0.0.1 -address=/pr-static.tnaflix.com/127.0.0.1 -address=/px.boundhub.com/127.0.0.1 -address=/r.radikal.ru/127.0.0.1 -address=/rev.fapdu.com/127.0.0.1 -address=/site.img.4tube.com/127.0.0.1 -address=/static.kinghost.com/127.0.0.1 -address=/sub.avgle.com/127.0.0.1 -address=/tkn.4tube.com/127.0.0.1 -address=/tkn.fux.com/127.0.0.1 -address=/tkn.pornerbros.com/127.0.0.1 -address=/tkn.porntube.com/127.0.0.1 -address=/uuvm.pornpics.com/127.0.0.1 -address=/x.eroticity.net/127.0.0.1 -address=/x.vipergirls.to/127.0.0.1 diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.ssr/appoint_list.conf b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.ssr/appoint_list.conf deleted file mode 100644 index ead84b1efd..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.ssr/appoint_list.conf +++ /dev/null @@ -1,143 +0,0 @@ -server=/.1test.cn/119.29.29.29#53 -server=/.360wzb.cn/119.29.29.29#53 -server=/.51cdn.com/119.29.29.29#53 -server=/.5test.cn/119.29.29.29#53 -server=/.aicdn.com/119.29.29.29#53 -server=/.alikunlun.com/119.29.29.29#53 -server=/.alikunlun.net/119.29.29.29#53 -server=/.b2r.com.cn/119.29.29.29#53 -server=/.baiduyundns.cn/119.29.29.29#53 -server=/.baiduyundns.com/119.29.29.29#53 -server=/.baiduyundns.net/119.29.29.29#53 -server=/.bcedns.cn/119.29.29.29#53 -server=/.bcedns.com/119.29.29.29#53 -server=/.bcedns.net/119.29.29.29#53 -server=/.bdydns.cn/119.29.29.29#53 -server=/.bdydns.com/119.29.29.29#53 -server=/.bdydns.net/119.29.29.29#53 -server=/.blueit.com/119.29.29.29#53 -server=/.blueit.org.cn/119.29.29.29#53 -server=/.cachecn.com/119.29.29.29#53 -server=/.cachecn.net/119.29.29.29#53 -server=/.cc-1.com/119.29.29.29#53 -server=/.cc-cps.cn/119.29.29.29#53 -server=/.cc-cps.com.cn/119.29.29.29#53 -server=/.cc-cps.com/119.29.29.29#53 -server=/.cc-cps.mobi/119.29.29.29#53 -server=/.cc-cps.net/119.29.29.29#53 -server=/.ccbench.com/119.29.29.29#53 -server=/.ccgslb.cn/119.29.29.29#53 -server=/.ccgslb.com.cn/119.29.29.29#53 -server=/.ccgslb.com/119.29.29.29#53 -server=/.ccgslb.net.cn/119.29.29.29#53 -server=/.ccgslb.net/119.29.29.29#53 -server=/.ccindex.cn/119.29.29.29#53 -server=/.ccindex.com.cn/119.29.29.29#53 -server=/.ccmplus.cn/119.29.29.29#53 -server=/.ccmplus.com.cn/119.29.29.29#53 -server=/.ccmplus.net/119.29.29.29#53 -server=/.cdn2cdn.net/119.29.29.29#53 -server=/.cdnetworks.net/119.29.29.29#53 -server=/.cdngc.net/119.29.29.29#53 -server=/.cdnsvc.cn/119.29.29.29#53 -server=/.cdnsvc.com.cn/119.29.29.29#53 -server=/.cdnsvc.com/119.29.29.29#53 -server=/.cdnsvc.net.cn/119.29.29.29#53 -server=/.cdnsvc.net/119.29.29.29#53 -server=/.cdntip.com/119.29.29.29#53 -server=/.cdnudns.com/119.29.29.29#53 -server=/.chinacache.com.cn/119.29.29.29#53 -server=/.chinacache.com/119.29.29.29#53 -server=/.chinacache.net/119.29.29.29#53 -server=/.chinacache.org/119.29.29.29#53 -server=/.chinanetcenter.com/119.29.29.29#53 -server=/.cloudcdn.cn/119.29.29.29#53 -server=/.cloudcdn.net/119.29.29.29#53 -server=/.clouddn.com/119.29.29.29#53 -server=/.cloudglb.com/119.29.29.29#53 -server=/.cloudglb.net/119.29.29.29#53 -server=/.cloudtcp.net/119.29.29.29#53 -server=/.cloudxns.com/119.29.29.29#53 -server=/.cloudxns.net/119.29.29.29#53 -server=/.dnspao.com/119.29.29.29#53 -server=/.fastcdn.com /119.29.29.29#53 -server=/.fastweb.com.cn/119.29.29.29#53 -server=/.fastwebcdn.com/119.29.29.29#53 -server=/.ffdns.net/119.29.29.29#53 -server=/.fsspace.cn/119.29.29.29#53 -server=/.fsspace.com.cn/119.29.29.29#53 -server=/.fsspace.com/119.29.29.29#53 -server=/.fwcdn.com/119.29.29.29#53 -server=/.fwcdn.net/119.29.29.29#53 -server=/.fwdns.net/119.29.29.29#53 -server=/.fwmob.com/119.29.29.29#53 -server=/.gccdn.net/119.29.29.29#53 -server=/.gslbsvc.cn/119.29.29.29#53 -server=/.gslbsvc.com.cn/119.29.29.29#53 -server=/.gslbsvc.com/119.29.29.29#53 -server=/.gslbsvc.net.cn/119.29.29.29#53 -server=/.gslbsvc.net/119.29.29.29#53 -server=/.hacdn.com/119.29.29.29#53 -server=/.hacdn.net/119.29.29.29#53 -server=/.hadns.net/119.29.29.29#53 -server=/.hdslb.com/119.29.29.29#53 -server=/.hdslb.net/119.29.29.29#53 -server=/.hd-cdn.com/119.29.29.29#53 -server=/.igslb.net/119.29.29.29#53 -server=/.kunlunaq.com/119.29.29.29#53 -server=/.kunlunar.com/119.29.29.29#53 -server=/.kunlunca.com/119.29.29.29#53 -server=/.kunluncan.com/119.29.29.29#53 -server=/.kunlunea.com/119.29.29.29#53 -server=/.kunlungem.com/119.29.29.29#53 -server=/.kunlungr.com/119.29.29.29#53 -server=/.kunlunhuf.com/119.29.29.29#53 -server=/.kunlunle.com/119.29.29.29#53 -server=/.kunlunli.com/119.29.29.29#53 -server=/.kunlunno.com/119.29.29.29#53 -server=/.kunlunpi.com/119.29.29.29#53 -server=/.kunlunra.com/119.29.29.29#53 -server=/.kunlunsa.com/119.29.29.29#53 -server=/.kunlunsc.com/119.29.29.29#53 -server=/.kunlunsl.com/119.29.29.29#53 -server=/.kunlunso.com/119.29.29.29#53 -server=/.kunlunta.com/119.29.29.29#53 -server=/.kunlunvi.com/119.29.29.29#53 -server=/.kunlunwe.com/119.29.29.29#53 -server=/.lxdns.com/119.29.29.29#53 -server=/.lxdns.net/119.29.29.29#53 -server=/.lxsvc.cn /119.29.29.29#53 -server=/.lxsvc.cn/119.29.29.29#53 -server=/.lxsvc.net/119.29.29.29#53 -server=/.myqcloud.com/119.29.29.29#53 -server=/.myxns.cn/119.29.29.29#53 -server=/.myxns.com.cn/119.29.29.29#53 -server=/.myxns.net.cn/119.29.29.29#53 -server=/.myxns.org/119.29.29.29#53 -server=/.netcenter.com.cn/119.29.29.29#53 -server=/.newdefend.cn/119.29.29.29#53 -server=/.newdefend.com.cn/119.29.29.29#53 -server=/.newdefend.com/119.29.29.29#53 -server=/.newdefend.net.cn/119.29.29.29#53 -server=/.newdefend.net/119.29.29.29#53 -server=/.newdefend.org.cn/119.29.29.29#53 -server=/.newdefend.org/119.29.29.29#53 -server=/.ourglb0.com/119.29.29.29#53 -server=/.ourwebat.com/119.29.29.29#53 -server=/.ourwebcdn.com/119.29.29.29#53 -server=/.qbox.me/119.29.29.29#53 -server=/.qcloud.com/119.29.29.29#53 -server=/.qingcdn.com/119.29.29.29#53 -server=/.qiniudn.com/119.29.29.29#53 -server=/.qiniudns.com/119.29.29.29#53 -server=/.speedupchina.com/119.29.29.29#53 -server=/.speedupchina.net/119.29.29.29#53 -server=/.sz-dns.net/119.29.29.29#53 -server=/.tcdn.qq.com/119.29.29.29#53 -server=/.tlgslb.com /119.29.29.29#53 -server=/.wangsu.com/119.29.29.29#53 -server=/.webluker.com/119.29.29.29#53 -server=/.wscdns.com/119.29.29.29#53 -server=/.wsngb.com/119.29.29.29#53 -server=/.xgslb.net/119.29.29.29#53 -server=/.yunjiasu-cdn.net/119.29.29.29#53 \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.ssr/custom_forward.conf b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.ssr/custom_forward.conf deleted file mode 100644 index a283733e0d..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/dnsmasq.ssr/custom_forward.conf +++ /dev/null @@ -1,106 +0,0 @@ -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=/.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=/.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/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/hotplug.d/iface/98-shadowsocksr b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/hotplug.d/iface/98-shadowsocksr deleted file mode 100644 index 547225b2e9..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/hotplug.d/iface/98-shadowsocksr +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh -# Copyright (C) 2007 OpenWrt.org - -/etc/init.d/shadowsocksr enabled && { - - [ "$ACTION" = "ifup" ] && { - local_server=`uci get shadowsocksr.@global[0].global_server 2>/dev/null` - - if [ "$local_server" = "nil" ] ;then - echo "$(date "+%Y-%m-%d %H:%M:%S") Shadowsocks/ShadowsocksR/v2ray not running!" >> /tmp/ssrplus.log - else - icount=`ps -w | grep ssr-retcp |grep -v grep| wc -l` - if [ $icount = 0 ] ;then - echo "$(date "+%Y-%m-%d %H:%M:%S") Shadowsocks/ShadowsocksR/v2ray error.restart!" >> /tmp/ssrplus.log - /etc/init.d/shadowsocksr restart - exit 0 - fi - fi - } - -} \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/init.d/shadowsocksr b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/init.d/shadowsocksr deleted file mode 100755 index 8e0d2df8c3..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/init.d/shadowsocksr +++ /dev/null @@ -1,1163 +0,0 @@ -#!/bin/sh /etc/rc.common -# -# Copyright (C) 2017 openwrt-ssr -# Copyright (C) 2017 yushi studio -# Copyright (C) 2018 lean -# -# This is free software, licensed under the GNU General Public License v3. -# See /LICENSE for more information. -# - -START=99 -STOP=15 - -SERVICE_DAEMONIZE=1 -NAME=shadowsocksr -EXTRA_COMMANDS=rules -CONFIG_FILE=/var/etc/${NAME}.json -CONFIG_UDP_FILE=/var/etc/${NAME}_u.json -CONFIG_SOCK5_FILE=/var/etc/${NAME}_s.json -server_count=0 -redir_tcp=0 -redir_udp=0 -tunnel_enable=0 -local_enable=0 -kcp_enable_flag=0 -kcp_flag=0 -pdnsd_enable_flag=0 -dnsforwarder_enable_flag=0 -chinadns_enable_flag=0 -switch_enable=0 -ssserver_enable=0 -ssrserver_enable=0 -v2rayserver_enable=0 -haproxy_enable=0 -privoxy_enable=0 -switch_server=$1 -MAXFD=32768 -CRON_FILE=/etc/crontabs/root -threads=1 - -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} -} - -add_cron() -{ - sed -i '/ssrplus.log/d' $CRON_FILE - [ -n "$(grep -w "/usr/share/shadowsocksr/subscribe.sh" $CRON_FILE)" ] && sed -i '/\/usr\/share\/shadowsocksr\/subscribe.sh/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/subscribe.sh" >> $CRON_FILE - [ -n "$(grep -w "/usr/share/shadowsocksr/v2ray_update.sh" $CRON_FILE)" ] && sed -i '/\/usr\/share\/shadowsocksr\/v2ray_update.sh/d' $CRON_FILE - [ $(uci_get_by_type server_subscribe v2ray_update 0) -eq 1 ] && echo "0 4 * * * /usr/share/shadowsocksr/v2ray_update.sh" >> $CRON_FILE - [ -z "$(grep -w "/usr/share/shadowsocksr/update.sh" $CRON_FILE)" ] && echo "0 5 * * 0 /usr/share/shadowsocksr/update.sh" >> $CRON_FILE - crontab $CRON_FILE -} - -del_cron() -{ - sed -i '/shadowsocksr/d' $CRON_FILE - sed -i '/ssrplus.log/d' $CRON_FILE - /etc/init.d/cron restart -} - -run_mode=$(uci_get_by_type global run_mode) -v2ray_path=$(uci_get_by_type server_subscribe v2ray_path) - -gen_config_file() { - local use_conf_file=$(uci_get_by_name $1 use_conf_file) - local conf_file_path=$(uci_get_by_name $1 conf_file_path) - local host=$(uci_get_by_name $1 server) - if echo $host|grep -E "^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$">/dev/null; then - hostip=${host} - elif [ "$host" != "${host#*:[0-9a-fA-F]}" ] ;then - hostip=${host} - else - hostip=`nslookup ${host} | grep 'Address 1' | sed 's/Address 1: //g'` - if echo $hostip|grep -E "^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$">/dev/null; then - hostip=${hostip} - else - hostip=`cat /etc/ssr_ip` - fi - fi - - [ $2 = "0" -a $kcp_flag = "1" ] && hostip="127.0.0.1" - - if [ $2 = "0" ] ;then - config_file=$CONFIG_FILE - elif [ $2 = "1" ]; then - config_file=$CONFIG_UDP_FILE - else - config_file=$CONFIG_SOCK5_FILE - fi - - if [ $(uci_get_by_name $1 fast_open 0) = "1" ] ;then - fastopen="true"; - else - fastopen="false"; - fi - - local port=$(uci_get_by_name $1 server_port) - - if [ $HAPROXY_MODE = "1" ]; then - hostip="0.0.0.0" - port="4433" - fi - - local local_port=$(uci_get_by_name $1 local_port) - iptables -A SS_WAN_DROP -p tcp --dport $local_port -j DROP - - local stype=$(uci_get_by_name $1 type) - local plugin=$(uci_get_by_name $1 plugin) - if [ "$stype" == "ss" ] ;then - if [ "$plugin" == "none" ] ;then - cat <<-EOF >$config_file - { - "server": "$hostip", - "server_port": $port, - "local_address": "0.0.0.0", - "local_port": $local_port, - "password": "$(uci_get_by_name $1 password)", - "timeout": $(uci_get_by_name $1 timeout 60), - "method": "$(uci_get_by_name $1 encrypt_method_ss)", - "reuse_port": true, - "fast_open": $fastopen - } -EOF - else - cat <<-EOF >$config_file - { - "server": "$hostip", - "server_port": $port, - "local_address": "0.0.0.0", - "local_port": $local_port, - "password": "$(uci_get_by_name $1 password)", - "timeout": $(uci_get_by_name $1 timeout 60), - "method": "$(uci_get_by_name $1 encrypt_method_ss)", - "plugin": "$(uci_get_by_name $1 plugin)", - "plugin_opts": "$(uci_get_by_name $1 plugin_opts)", - "reuse_port": true, - "fast_open": $fastopen - } -EOF - fi - elif [ "$stype" == "ssr" ] ;then - cat <<-EOF >$config_file - { - - "server": "$hostip", - "server_port": $port, - "local_address": "0.0.0.0", - "local_port": $local_port, - "password": "$(uci_get_by_name $1 password)", - "timeout": $(uci_get_by_name $1 timeout 60), - "method": "$(uci_get_by_name $1 encrypt_method)", - "protocol": "$(uci_get_by_name $1 protocol)", - "protocol_param": "$(uci_get_by_name $1 protocol_param)", - "obfs": "$(uci_get_by_name $1 obfs)", - "obfs_param": "$(uci_get_by_name $1 obfs_param)", - "reuse_port": true, - "fast_open": $fastopen - } -EOF - elif [ "$stype" == "v2ray" ] ;then - if [ "$use_conf_file" -eq 1 ] ;then - cp $conf_file_path /var/etc/v2-ssr-retcp.json - else - global_server=$(uci_get_by_type global global_server) - if [ "$global_server" = "__haproxy__" ]; then - local haproxy_server=$(uci -X show shadowsocksr | grep servers | awk -F'[.=]' '{print $2}' | sed -n 2p) - lua /usr/share/shadowsocksr/genv2config_haproxy.lua $haproxy_server tcp $local_port > /var/etc/v2-ssr-retcp.json - else - lua /usr/share/shadowsocksr/genv2config.lua $GLOBAL_SERVER tcp $(uci_get_by_name $1 local_port) > /var/etc/v2-ssr-retcp.json - fi - sed -i 's/\\//g' /var/etc/v2-ssr-retcp.json - fi - elif [ "$stype" == "trojan" ] ;then - lua /usr/share/shadowsocksr/gentrojanconfig.lua $GLOBAL_SERVER tcp $(uci_get_by_name $1 local_port) > /var/etc/trojan-ssr-retcp.json - sed -i 's/\\//g' /var/etc/trojan-ssr-retcp.json - fi -} - -get_arg_out() { - case "$(uci_get_by_type access_control router_proxy 1)" in - 1) echo "-o";; - 2) echo "-O";; - esac -} - -start_rules() { - local server=$(uci_get_by_name $GLOBAL_SERVER server) - [ $HAPROXY_MODE = "1" ] && server="0.0.0.0" - #resolve name - if echo $server|grep -E "^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$">/dev/null; then - server=${server} - elif [ "$server" != "${server#*:[0-9a-fA-F]}" ] ;then - server=${server} - else - server=`nslookup ${server} | grep 'Address 1' | sed 's/Address 1: //g'` - if echo $server|grep -E "^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$">/dev/null; then - echo $server >/etc/ssr_ip - else - server=`cat /etc/ssr_ip` - fi - fi - - kcp_server=$server - - local kcp_enable=$(uci_get_by_name $GLOBAL_SERVER kcp_enable 0) - if [ $kcp_enable = "1" ] ;then - kcp_flag=1 - fi - - 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="b" - local router_proxy=$(uci_get_by_type access_control router_proxy) - if [ "$GLOBAL_SERVER" = "$UDP_RELAY_SERVER" -a $kcp_flag = 0 ]; then - ARG_UDP="-u" - elif [ -n "$UDP_RELAY_SERVER" ]; then - ARG_UDP="-U" - local udp_server=$(uci_get_by_name $UDP_RELAY_SERVER server) - local udp_local_port=$(uci_get_by_name $UDP_RELAY_SERVER local_port) - 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 - -#deal gfw firewall rule - local gfwmode="" - if [ "$run_mode" = "gfw" ]; then - gfwmode="-g" - elif [ "$run_mode" = "router" ]; then - gfwmode="-r" - elif [ "$run_mode" = "routers" ]; then - gfwmode="-R" - elif [ "$run_mode" = "oversea" ]; then - gfwmode="-c" - elif [ "$run_mode" = "all" ]; then - gfwmode="-z" - fi - - local dports=$(uci_get_by_type global dports 1) - if [ $dports = "1" ] ;then - proxyport=" " - else - proxyport="-m multiport --dports 22,53,587,465,995,993,143,80,443 " - fi - - /usr/bin/ssr-rules \ - -s "$server" \ - -l "$local_port" \ - -S "$udp_server" \ - -L "$udp_local_port" \ - -a "$ac_ips" \ - -i "$(uci_get_by_type access_control wan_bp_list)" \ - -b "$(uci_get_by_type access_control wan_bp_ips)" \ - -w "$(uci_get_by_type access_control wan_fw_ips)" \ - -p "$(uci_get_by_type access_control lan_fp_ips)" \ - -G "$(uci_get_by_type access_control lan_gm_ips)" \ - -D "$proxyport" \ - -k "$(uci_get_by_type access_control wan_fk_ips)" \ - $(get_arg_out) $gfwmode $ARG_UDP - - return $? -} - -start_pdnsd() { - local usr_dns="$1" - local usr_port="$2" - local dns_port="5335" - - local tcp_dns_list="208.67.222.222,208.67.220.220" - [ -z "$usr_dns" ] && usr_dns="8.8.8.8" - [ -z "$usr_port" ] && usr_port="53" - - if [ "$(uci_get_by_type global pdnsd_enable)" = "1" ] ;then - tcp_only="tcp_only" - elif [ "$(uci_get_by_type global pdnsd_enable)" = "2" ] ;then - tcp_only="udp_only" - fi - - if [ "$(uci_get_by_type global pdnsd_enable)" = "6" ] ;then - if [ "$(uci_get_by_type global chinadns_enable)" = "0" ] ;then - dns_port="5335" - else - dns_port="5337" - fi - if [ "$(uci_get_by_type global chinadns_enable)" = "1" ] ;then - tcp_only="tcp_only" - elif [ "$(uci_get_by_type global chinadns_enable)" = "2" ] ;then - tcp_only="udp_only" - fi - fi - - kill $(pidof pdnsd) >/dev/null 2>&1 || killall -9 pdnsd >/dev/null 2>&1 - kill $(pidof dnsparsing) >/dev/null 2>&1 || killall -9 dnsparsing >/dev/null 2>&1 - /etc/init.d/dnscrypt-proxy disable - /etc/init.d/dnscrypt-proxy stop - - [ -d /var/etc ] || mkdir -p /var/etc - - if [ ! -d /var/pdnsd ];then - mkdir -p /var/pdnsd - echo -ne "pd13\000\000\000\000" >/var/pdnsd/pdnsd.cache - chown -R nobody:nogroup /var/pdnsd - fi - - cat > /var/etc/pdnsd.conf </dev/null 2>&1 || killall -9 pdnsd >/dev/null 2>&1 - kill $(pidof dnsparsing) >/dev/null 2>&1 || killall -9 dnsparsing >/dev/null 2>&1 - /etc/init.d/dnscrypt-proxy disable - /etc/init.d/dnscrypt-proxy stop - rm -rf /var/run/dnsparsing - - [ ! -f /usr/sbin/dnsparsing ] && ln /usr/bin/dnsforwarder /usr/sbin/dnsparsing - DNSCACHE_CONF=/var/run/dnsparsing/dnsparsing.conf - PID_PATH=/var/run/dnsparsing - PID_FILE=dns.pid - mkdir -p $PID_PATH - pid=$(pidof dnsparsing) - - cat > /var/run/dnsparsing/dnsparsing.conf < $PID_PATH/$PID_FILE - -} - -dnscrypt_config_file() { - local dnsstr="$(uci_get_by_type global tunnel_forward 8.8.4.4:53)" - local dns_port="5335" - if [ "$(uci_get_by_type global pdnsd_enable)" = "6" ] ;then - if [ "$(uci_get_by_type global chinadns_enable)" = "0" ] ;then - dns_port="5335" - else - dns_port="5337" - fi - fi - kill $(pidof pdnsd) >/dev/null 2>&1 || killall -9 pdnsd >/dev/null 2>&1 - kill $(pidof dnsparsing) >/dev/null 2>&1 || killall -9 dnsparsing >/dev/null 2>&1 - /etc/init.d/dnscrypt-proxy disable - /etc/init.d/dnscrypt-proxy stop - - cat > /etc/dnscrypt-proxy/dnscrypt-proxy.toml < /etc/config/privoxy </var/etc/haproxy.cfg </var/etc/haproxy.cfg <>/var/etc/haproxy.cfg </dev/null 2>&1 - done - echo "$(date "+%Y-%m-%d %H:%M:%S") Shadowsocks/ShadowsocksR $threads Threads Started!" >> /tmp/ssrplus.log - elif [ "$stype" == "trojan" ] ;then - for i in $(seq 1 $threads); do - $sscmd --config /var/etc/trojan-ssr-retcp.json >/dev/null 2>&1 & - done - echo "$(date "+%Y-%m-%d %H:%M:%S") $($sscmd --version 2>&1 | head -1) $threads Threads Started!" >> /tmp/ssrplus.log - - elif [ "$stype" == "v2ray" ] ;then - for i in $(seq 1 $threads); do - $sscmd -config /var/etc/v2-ssr-retcp.json >/dev/null 2>&1 & - done - echo "$(date "+%Y-%m-%d %H:%M:%S") $($sscmd -version | head -1) $threads Threads Started!" >> /tmp/ssrplus.log - elif [ "$stype" == "socks5" ]; then - for i in $(seq 1 $threads); do - if [ "$(uci_get_by_name $GLOBAL_SERVER auth_enable 0)" == "0" ]; then - $sscmd -T -4 -b 0.0.0.0 -s $(uci_get_by_name $GLOBAL_SERVER server) -p $(uci_get_by_name $GLOBAL_SERVER server_port) -l $(uci_get_by_name $GLOBAL_SERVER local_port) -R ssr-retcp >/dev/null 2>&1 & - else - $sscmd -T -4 -b 0.0.0.0 -s $(uci_get_by_name $GLOBAL_SERVER server) -p $(uci_get_by_name $GLOBAL_SERVER server_port) -a $(uci_get_by_name $GLOBAL_SERVER username) \ - -k $(uci_get_by_name $GLOBAL_SERVER password) -l $(uci_get_by_name $GLOBAL_SERVER local_port) -R ssr-retcp >/dev/null 2>&1 & - fi - done - echo "$(date "+%Y-%m-%d %H:%M:%S") Socks5 REDIRECT/TPROXY, $threads 线程 已启动!" >>/tmp/ssrplus.log - - fi - - if [ -n "$UDP_RELAY_SERVER" ] ;then - redir_udp=1 - if [ "$utype" == "ss" -o "$utype" == "ssr" ] ;then - case "$(uci_get_by_name $UDP_RELAY_SERVER auth_enable)" in - 1|on|true|yes|enabled) ARG_OTA="-A";; - *) ARG_OTA="";; - esac - gen_config_file $UDP_RELAY_SERVER 1 - last_config_file=$CONFIG_UDP_FILE - pid_file="/var/run/ssr-reudp.pid" - $ucmd -c $last_config_file $ARG_OTA -U -f /var/run/ssr-reudp.pid >/dev/null 2>&1 - elif [ "$stype" == "trojan" ] ;then - lua /usr/share/shadowsocksr/gentrojanconfig.lua $GLOBAL_SERVER client 10801 > /var/etc/trojan-ssr-reudp.json - sed -i 's/\\//g' /var/etc/trojan-ssr-reudp.json - $ucmd --config /var/etc/trojan-ssr-reudp.json >/dev/null 2>&1 & - ipt2socks -U -4 -b 0.0.0.0 -s 127.0.0.1 -p 10801 -l $(uci_get_by_name $UDP_RELAY_SERVER local_port) >/dev/null 2>&1 & - elif [ "$utype" == "v2ray" ] ; then - lua /usr/share/shadowsocksr/genv2config.lua $UDP_RELAY_SERVER udp $(uci_get_by_name $UDP_RELAY_SERVER local_port) > /var/etc/v2-ssr-reudp.json - sed -i 's/\\//g' /var/etc/v2-ssr-reudp.json - $ucmd -config /var/etc/v2-ssr-reudp.json >/dev/null 2>&1 & - elif [ "$utype" == "socks5" ]; then - if [ "$(uci_get_by_name $GLOBAL_SERVER auth_enable 0)" == "0" ]; then - $ucmd -4 -b 0.0.0.0 -s $(uci_get_by_name $UDP_RELAY_SERVER server) -p $(uci_get_by_name $UDP_RELAY_SERVER server_port) -l $(uci_get_by_name $UDP_RELAY_SERVER local_port) -U ssr-reudp >/dev/null 2>&1 & - else - $ucmd -4 -b 0.0.0.0 -s $(uci_get_by_name $UDP_RELAY_SERVER server) -p $(uci_get_by_name $UDP_RELAY_SERVER server_port) -a $(uci_get_by_name $GLOBAL_SERVER username) \ - -k $(uci_get_by_name $GLOBAL_SERVER password) -l $(uci_get_by_name $UDP_RELAY_SERVER local_port) -U ssr-reudp >/dev/null 2>&1 & - - fi - fi - fi - - #deal with dns - - if [ "$(uci_get_by_type global pdnsd_enable)" -ne "0" ] ;then - 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}'` - if [ "$dnsserver" = "0.0.0.0" ]; then - echo "$(date "+%Y-%m-%d %H:%M:%S") dns="$dnsstr"" >> /tmp/ssrplus.log - else - if [ "$run_mode" = "gfw" ]; then - ipset add gfwlist $dnsserver 2>/dev/null - elif [ "$run_mode" = "oversea" ]; then - ipset add oversea $dnsserver 2>/dev/null - else - ipset add ss_spec_wan_ac $dnsserver nomatch 2>/dev/null - fi - fi - - if [ "$(uci_get_by_type global pdnsd_enable)" = "1" ] || [ "$(uci_get_by_type global pdnsd_enable)" = "2" ] ;then - start_pdnsd $dnsserver $dnsport - pdnsd_enable_flag=1 - elif [ "$(uci_get_by_type global pdnsd_enable)" = "3" ] || [ "$(uci_get_by_type global pdnsd_enable)" = "4" ] ;then - start_dnsforwarder $dnsserver $dnsport - dnsforwarder_enable_flag=1 - elif [ "$(uci_get_by_type global pdnsd_enable)" = "5" ] ;then - dnscrypt_config_file - /etc/init.d/dnscrypt-proxy enable && /etc/init.d/dnscrypt-proxy start - elif [ "$(uci_get_by_type global pdnsd_enable)" = "6" ] ;then - if [ "$(uci_get_by_type global chinadns_enable)" = "1" ] || [ "$(uci_get_by_type global chinadns_enable)" = "2" ] ;then - start_pdnsd $dnsserver $dnsport - pdnsd_enable_flag=1 - dnsstrs="0.0.0.0:5337" - elif [ "$(uci_get_by_type global chinadns_enable)" = "3" ] || [ "$(uci_get_by_type global chinadns_enable)" = "4" ] ;then - start_dnsforwarder $dnsserver $dnsport - dnsforwarder_enable_flag=1 - dnsstrs="0.0.0.0:5337" - elif [ "$(uci_get_by_type global chinadns_enable)" = "5" ] ;then - dnscrypt_config_file - /etc/init.d/dnscrypt-proxy enable && /etc/init.d/dnscrypt-proxy start - dnsstrs="0.0.0.0:5337" - else - dnsstrs="$(uci_get_by_type global tunnel_forward 8.8.4.4:53)" - fi - nohup /usr/bin/chinadns -p 5335 -c /etc/china_ssr.txt -m -d -s $dnsstrs >/dev/null 2>&1 & - chinadns_enable_flag=1 - fi - - fi - - if [ "$(uci_get_by_type global enable_switch)" = "1" ] && [ $HAPROXY_MODE = "0" ]; then - if [ "$(uci_get_by_name $GLOBAL_SERVER switch_enable)" = "1" ] ;then - if [ -z "$switch_server" ] ;then - local switch_time=$(uci_get_by_type global switch_time) - local switch_timeout=$(uci_get_by_type global switch_timeout) - service_start /usr/bin/ssr-switch start $switch_time $switch_timeout - switch_enable=1 - fi - fi - fi - add_cron - - return $? -} -start_udp2raw() { - cat > /var/etc/udp2raw.conf </dev/null 2>&1 & -} - -start_udpspeeeder() { - /usr/bin/udpspeeder -c -l0.0.0.0:$(uci_get_by_type udpspeeder local_port) \ - -r$(uci_get_by_type udpspeeder server):$(uci_get_by_type udpspeeder server_port) \ - -k $(uci_get_by_type udpspeeder key) \ - --mode $(uci_get_by_type udpspeeder speeder_mode) \ - --mtu $(uci_get_by_type udpspeeder mtu) \ - -f$(uci_get_by_type udpspeeder fec) \ - -q$(uci_get_by_type udpspeeder queue_len) \ - --timeout $(uci_get_by_type udpspeeder timeout) \ - >/dev/null 2>&1 & -} - -gen_service_file() { - if [ $(uci_get_by_name $1 fast_open) = "1" ] ;then - fastopen="true"; - else - fastopen="false"; - fi - - local sertype=$(uci_get_by_name $1 type) - local plugin=$(uci_get_by_name $1 plugin) - if [ $(uci_get_by_name $1 ipv4_ipv6) = "1" ] ;then - ipv4_ipv6="::"; - else - ipv4_ipv6="0.0.0.0"; - fi - - if [ "$sertype" == "ss" ] ;then - if [ "$plugin" == "none" ] ;then - cat <<-EOF >$2 - { - "server": "$ipv4_ipv6", - "server_port": $(uci_get_by_name $1 server_port), - "password": "$(uci_get_by_name $1 password)", - "timeout": $(uci_get_by_name $1 timeout 60), - "method": "$(uci_get_by_name $1 encrypt_method)", - "fast_open": $fastopen - } -EOF - else - cat <<-EOF >$2 - { - "server": "$ipv4_ipv6", - "server_port": $(uci_get_by_name $1 server_port), - "password": "$(uci_get_by_name $1 password)", - "timeout": $(uci_get_by_name $1 timeout 60), - "method": "$(uci_get_by_name $1 encrypt_method)", - "plugin": "$(uci_get_by_name $1 plugin)", - "plugin_opts": "$(uci_get_by_name $1 plugin_opts)", - "fast_open": $fastopen - } -EOF - fi - elif [ "$sertype" == "ssr" ] ;then - cat <<-EOF >$2 - { - "server": "$ipv4_ipv6", - "server_port": $(uci_get_by_name $1 server_port), - "password": "$(uci_get_by_name $1 password)", - "timeout": $(uci_get_by_name $1 timeout 60), - "method": "$(uci_get_by_name $1 encrypt_method)", - "protocol": "$(uci_get_by_name $1 protocol)", - "protocol_param": "$(uci_get_by_name $1 protocol_param)", - "obfs": "$(uci_get_by_name $1 obfs)", - "obfs_param": "$(uci_get_by_name $1 obfs_param)", - "fast_open": $fastopen - } -EOF - fi - -} - -start_service() { - local conf_file_path=$(uci_get_by_name $1 conf_file_path) - local use_conf_file=$(uci_get_by_name $1 use_conf_file) - local conf_file_path=$(uci_get_by_name $1 conf_file_path) - [ $(uci_get_by_name $1 enable) = "0" ] && return 1 - let server_count=server_count+1 - if [ $server_count = 1 ] ;then - iptables -N SSR-SERVER-RULE && \ - iptables -t filter -I INPUT -j SSR-SERVER-RULE - fi - - local sertype=$(uci_get_by_name $1 type) - if [ "$sertype" == "ss" ] ;then - sercmd="ss-server" - ssserver_enable=1 - elif [ "$sertype" == "ssr" ] ;then - sercmd="ssr-server" - ssrserver_enable=1 - fi - - if [ "$sertype" == "ss" -o "$sertype" == "ssr" ] ;then - gen_service_file $1 /var/etc/${NAME}_${server_count}.json - /usr/bin/$sercmd -c /var/etc/${NAME}_${server_count}.json -u -f /var/run/$sercmd${server_count}.pid >/dev/null 2>&1 - 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 - elif [ "$sertype" == "v2ray" ] ; then - if [ "$use_conf_file" -eq 1 ] ;then - cp $conf_file_path /var/etc/v2ray-server-${server_count}.json - else - lua /usr/share/shadowsocksr/genv2config_server.lua $1 > /var/etc/v2ray-server-${server_count}.json - fi - sed -i 's/\\//g' /var/etc/v2-ssr-retcp.json - /usr/bin/v2ray/v2ray -config /var/etc/v2ray-server-${server_count}.json >/dev/null 2>&1 & - - 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 - v2rayserver_enable=1 - fi - return 0 -} - -gen_serv_include() { - 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 - -} -start_server() { - SERVER_ENABLE=$(uci_get_by_type server_global enable_server) - [ "$SERVER_ENABLE" = 0 ] && return 0 - mkdir -p /var/run /var/etc - - config_load $NAME - config_foreach start_service server_config - gen_serv_include - return 0 -} - -start_local() { - local local_server=$(uci_get_by_type socks5_proxy server) - local http_enable=$(uci_get_by_type socks5_proxy http_enable) - local stype=$(uci_get_by_name $local_server type) - [ "$local_server" = "nil" ] && return 1 - mkdir -p /var/run /var/etc - gen_config_file $local_server 2 - if [ "$stype" == "ssr" ] ;then - /usr/bin/ssr-local -c $CONFIG_SOCK5_FILE -u \ - -l $(uci_get_by_type socks5_proxy local_port 1080) \ - -b $(uci_get_by_type socks5_proxy local_address 0.0.0.0) \ - -f /var/run/ssr-local.pid >/dev/null 2>&1 - local_enable=1 - elif [ "$stype" == "ss" ] ;then - /usr/bin/ss-local -c $CONFIG_SOCK5_FILE -u \ - -l $(uci_get_by_type socks5_proxy local_port 1080) \ - -b $(uci_get_by_type socks5_proxy local_address 0.0.0.0) \ - -f /var/run/ss-local.pid >/dev/null 2>&1 - local_enable=2 - elif [ "$stype" == "v2ray" ] ;then - lua /usr/share/shadowsocksr/genv2config_local.lua $local_server tcp $(uci_get_by_name $local_server local_port) $(uci_get_by_type socks5_proxy local_port 1080) > /var/etc/v2-ssr-local.json - sed -i 's/\\//g' /var/etc/v2-ssr-local.json - /usr/bin/v2ray/v2ray -config /var/etc/v2-ssr-local.json >/dev/null 2>&1 & - local_enable=3 - fi - - if [ "$http_enable" -eq 1 ] ;then - privoxy_config_file - /etc/init.d/privoxy enable && /etc/init.d/privoxy start - privoxy_enable=1 - fi - -} - -rules() { - [ "$GLOBAL_SERVER" = "nil" ] && return 1 - mkdir -p /var/run /var/etc - UDP_RELAY_SERVER=$(uci_get_by_type global udp_relay_server) - [ "$UDP_RELAY_SERVER" = "same" ] && UDP_RELAY_SERVER=$GLOBAL_SERVER - if start_rules ;then - return 0 - else - return 1 - fi -} - -start() { - case "$(uci_get_by_type udp2raw udp2raw_enable)" in - 1|on|true|yes|enabled) - start_udp2raw - ;; - esac - case "$(uci_get_by_type udpspeeder udpspeeder_enable)" in - 1|on|true|yes|enabled) - start_udpspeeeder - ;; - esac - - if [ -z "$switch_server" ] ;then - GLOBAL_SERVER=$(uci_get_by_type global global_server) - else - GLOBAL_SERVER=$switch_server - switch_enable=1 - fi - - HAPROXY_MODE="0" - if [ "$GLOBAL_SERVER" = "__haproxy__" ]; then - GLOBAL_SERVER=$(uci -X show shadowsocksr | grep servers | awk -F'[.=]' '{print $2}' | head -n 1) - HAPROXY_MODE="1" - fi - - if rules ;then - [ $HAPROXY_MODE = "1" ] && start_haproxy && haproxy_enable=1 - - start_redir - - mkdir -p /tmp/dnsmasq.d - - if ! [ "$run_mode" = "oversea" ]; then -# for domain_names in $(uci -X show shadowsocksr | grep domain_white_list | awk -F'[.=]' '{print $2}'); do -# local DOMAIN_NANES=$(uci_get_by_name $domain_names domain_names) -# -# sed -i "/$DOMAIN_NANES/d" /etc/dnsmasq.ssr/custom_forward.conf -# sed -i "/$DOMAIN_NANES/d" /etc/dnsmasq.ssr/gfw_base.conf -# sed -i "/$DOMAIN_NANES/d" /etc/dnsmasq.ssr/gfw_list.conf -# done - - sleep 2 - - cat > /tmp/dnsmasq.d/dnsmasq-ssr.conf < /tmp/dnsmasq.d/dnsmasq-ssr.conf </dev/null 2>&1 - fi - - start_server - start_local - - if [ $(uci_get_by_type global monitor_enable) = 1 ] ;then - let total_count=server_count+redir_tcp+redir_udp+tunnel_enable+kcp_enable_flag+local_enable+pdnsd_enable_flag+dnsforwarder_enable_flag+switch_enable+ssserver_enable+ssrserver_enable+v2rayserver_enable+haproxy_enable+privoxy_enable+chinadns_enable_flag - - if [ $total_count -gt 0 ] ;then - #param:server(count) redir_tcp(0:no,1:yes) redir_udp tunnel kcp local gfw - service_start /usr/bin/ssr-monitor $server_count $redir_tcp $redir_udp $tunnel_enable $kcp_enable_flag $local_enable $pdnsd_enable_flag $dnsforwarder_enable_flag $switch_enable $ssserver_enable $ssrserver_enable $v2rayserver_enable $haproxy_enable $privoxy_enable $chinadns_enable_flag - fi - fi - - ENABLE_SERVER=$(uci_get_by_type global global_server) - [ "$ENABLE_SERVER" = "nil" ] && return 1 -} - -boot() { - (/usr/share/shadowsocksr/chinaipset.sh && sleep 5 && start >/dev/null 2>&1) & -} - -stop() { - /usr/bin/ssr-rules -f - 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 - - iptables -t nat -F HAPROXY 2>/dev/null - iptables -t nat -D OUTPUT -j HAPROXY 2>/dev/null - iptables -t nat -X HAPROXY 2>/dev/null - - if [ -z "$switch_server" ] ;then - kill -9 $(ps | grep ssr-switch | grep -v "grep" | awk '{print $1}') >/dev/null 2>&1 - fi - - if [ $(uci_get_by_type global monitor_enable) = 1 ] ;then - kill -9 $(ps | grep ssr-monitor | grep -v "grep" | awk '{print $1}') >/dev/null 2>&1 - fi - - killall -q -9 ssr-monitor - killall -q -9 ss-redir - killall -q -9 ssr-redir - killall -q -9 trojan - killall -q -9 v2ray - killall -q -9 ssr-server - killall -q -9 ss-server - killall -q -9 kcptun-client - killall -q -9 ssr-local - killall -q -9 ss-local - killall -q -9 haproxy - killall -q -9 privoxy - killall -q -9 v2ray-plugin - killall -q -9 gq-client - killall -q -9 gq-server - killall -q -9 obfs-local - killall -q -9 ipt2socks - killall -q -9 obfs-server - killall -q -9 chinadns - killall -q -9 udp2raw - killall -q -9 udpspeeder - /usr/bin/udp2raw --clear >/dev/null - if [ -f /var/run/pdnsd.pid ] ;then - kill $(cat /var/run/pdnsd.pid) >/dev/null 2>&1 - else - - kill -9 $(ps | grep pdnsd | grep -v "grep" | awk '{print $1}') >/dev/null 2>&1 - fi - - kill $(pidof dnsparsing) >/dev/null 2>&1 || killall -9 dnsparsing >/dev/null 2>&1 - rm -rf /var/run/dnsparsing - - if [ -f "/tmp/dnsmasq.d/dnsmasq-ssr.conf" ]; then - rm -f /tmp/dnsmasq.d/dnsmasq-ssr.conf - - if [ -d "/var/dnsmasq.ssr" ]; then - rm -rf /var/etc/dnsmasq.ssr - fi - - if [ -d "/var/dnsmasq.oversea" ]; then - rm -rf /var/etc/dnsmasq.oversea - fi - /etc/init.d/dnsmasq restart >/dev/null 2>&1 - fi - /etc/init.d/dnscrypt-proxy disable - /etc/init.d/dnscrypt-proxy stop - /etc/init.d/privoxy disable - /etc/init.d/privoxy stop - - - del_cron -} - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/uci-defaults/luci-ssr-plus b/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/uci-defaults/luci-ssr-plus deleted file mode 100755 index af00163cbf..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/etc/uci-defaults/luci-ssr-plus +++ /dev/null @@ -1,23 +0,0 @@ -#!/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 - -/etc/init.d/dnscrypt-proxy stop -/etc/init.d/dnscrypt-proxy disable -/etc/init.d/privoxy stop -/etc/init.d/privoxy disable -killall -q -9 v2ray-plugin - -/usr/share/shadowsocksr/gfw2ipset.sh -rm -f /tmp/luci-indexcache -exit 0 diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-ad b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-ad deleted file mode 100755 index 668a262664..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-ad +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh -e - -if [ -f /tmp/adnew.conf ]; then - cat /tmp/adnew.conf | grep ^\|\|[^\*]*\^$ | sed -e 's:||:address\=\/:' -e 's:\^:/0\.0\.0\.0:' > /tmp/ad.conf -fi - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-gfw b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-gfw deleted file mode 100755 index 22eb487ed8..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-gfw +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh -e - -generate_china_banned() -{ - - cat $1 | base64 -d > /tmp/gfwlist.txt - rm -f $1 - - sed -i '/^@@|/d' /tmp/gfwlist.txt - - cat /tmp/gfwlist.txt | sort -u | - sed 's#!.\+##; s#|##g; s#@##g; s#http:\/\/##; s#https:\/\/##;' | - sed '/\*/d; /apple\.com/d; /sina\.cn/d; /sina\.com\.cn/d; /baidu\.com/d; /byr\.cn/d; /jlike\.com/d; /weibo\.com/d; /zhongsou\.com/d; /youdao\.com/d; /sogou\.com/d; /so\.com/d; /soso\.com/d; /aliyun\.com/d; /taobao\.com/d; /jd\.com/d; /qq\.com/d' | - sed '/^[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+$/d' | - grep '^[0-9a-zA-Z\.-]\+$' | grep '\.' | sed 's#^\.\+##' | sort -u | - awk ' -BEGIN { prev = "________"; } { - cur = $0; - if (index(cur, prev) == 1 && substr(cur, 1 + length(prev) ,1) == ".") { - } else { - print cur; - prev = cur; - } -}' | sort -u - -} - -generate_china_banned /tmp/gfw.b64 > /tmp/gfw.txt -rm -f /tmp/gfwlist.txt -sed '/.*/s/.*/server=\/\.&\/127.0.0.1#5335\nipset=\/\.&\/gfwlist/' /tmp/gfw.txt >/tmp/gfwnew.txt -rm -f /tmp/gfw.txt - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-monitor b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-monitor deleted file mode 100755 index 78121e524a..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-monitor +++ /dev/null @@ -1,277 +0,0 @@ -#!/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. -# - - -NAME=shadowsocksr -logfile="/tmp/ssrplus.log" - -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} -} - -server_process_count=$1 -redir_tcp_process=$2 -redir_udp_process=$3 -tunnel_process=$4 -kcp_process=$5 -local_process=$6 -pdnsd_process=$7 -dnsforwarder_process=$8 -ssserver_process=$10 -ssrserver_process=$11 -v2rayserver_process=$12 -haproxy_process=$13 -privoxy_process=$14 -chinadns_process=$15 -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} - -sock5_port=$(uci_get_by_type socks5_proxy local_port 1080) - -if [ "$(uci_get_by_type global chinadns_enable)" = "0" ] ;then - dnsstrs="$(uci_get_by_type global tunnel_forward 8.8.4.4:53)" -else - dnsstrs="0.0.0.0:5337" -fi - -if echo $server|grep -E "^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$">/dev/null; then - server=${server} -else - server=`cat /etc/ssr_ip` -fi - -while [ "1" = "1" ] #死循环 -do - sleep 30 -#redir tcp - if [ $redir_tcp_process -gt 0 ] ;then - icount=`ps -w | grep ssr-retcp |grep -v grep| wc -l` - if [ $icount = 0 ] ;then - logger -t "$NAME" "ssr redir tcp error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") redir tcp error.restart!" >> ${logfile} - /etc/init.d/shadowsocksr restart - exit 0 - fi - fi -#redir udp - if [ $redir_udp_process -gt 0 ] ;then - icount=`ps -w | grep ssr-reudp|grep -v grep| wc -l` - if [ $icount = 0 ] ;then - logger -t "$NAME" "ssr redir udp error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") redir udp error.restart!" >> ${logfile} - /etc/init.d/shadowsocksr restart - exit 0 - fi - fi -#tunnel - if [ $tunnel_process -gt 0 ] ;then - icount=`ps -w | grep ssr-tunnel |grep -v grep| wc -l` - if [ $icount = 0 ] ;then - logger -t "$NAME" "ssr tunnel error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") tunnel error.restart!" >> ${logfile} - /etc/init.d/shadowsocksr restart - exit 0 - fi - fi -#server -#ssr_server - if [ $server_process_count -gt 0 ] ;then - if [ $ssrserver_process -gt 0 ] ;then - icount=`ps -w | grep ssr-server |grep -v grep| wc -l` - if [ $icount -lt $ssrserver_process ] #如果进程挂掉就重启它 - then - logger -t "$NAME" "ssr server error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") ssr server error.restart!" >> ${logfile} - killall -q -9 ssr-server - for i in `seq $ssrserver_process` - do - /usr/bin/ssr-server -c /var/etc/shadowsocksr_$i.json -u -f /var/run/ssr-server$i.pid - done - fi - fi -#ss_server - if [ $ssserver_process -gt 0 ] ;then - icount=`ps -w | grep ss-server |grep -v grep| wc -l` - if [ $icount -lt $ssserver_process ] #如果进程挂掉就重启它 - then - logger -t "$NAME" "ss server error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") ss server error.restart!" >> ${logfile} - killall -q -9 ss-server - for i in `seq $ssserver_process` - do - /usr/bin/ss-server -c /var/etc/shadowsocksr_$i.json -u -f /var/run/ss-server$i.pid - done - fi - fi -#v2ray_server - if [ v2rayserver_process -gt 0 ] ;then - icount=`ps -w | grep ss-server |grep -v grep| wc -l` - if [ $icount -lt $v2rayserver_process ] #如果进程挂掉就重启它 - then - logger -t "$NAME" "v2ray server error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") v2ray server error.restart!" >> ${logfile} - kill -9 $(ps | grep v2ray-server | grep -v grep | awk '{print $1}') >/dev/null 2>&1 - for i in `seq $v2rayserver_process` - do - ( /usr/bin/v2ray/v2ray -config /var/etc/v2ray-server-$i.json >/dev/null 2>&1 &) - done - fi - fi - fi -#kcptun - if [ $kcp_process -gt 0 ] ;then - icount=`ps -w | grep kcptun-client |grep -v grep| wc -l` - if [ $icount -lt $kcp_process ] #如果进程挂掉就重启它 - then - logger -t "$NAME" "ssr kcptun error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") ssr kcptun error.restart!" >> ${logfile} - killall -q -9 kcptun-client - - ( /usr/bin/kcptun-client -r $server:$kcp_port -l :$server_port $password $kcp_param &) - fi - fi -#local - if [ $local_process -eq 1 ] ;then - icount=`ps -w | grep ssr-local |grep -v grep| wc -l` - if [ $icount -lt $local_process ] #如果进程挂掉就重启它 - then - logger -t "$NAME" "ssr local error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") ssr local error.restart!" >> ${logfile} - killall -q -9 ssr-local - - ( /usr/bin/ssr-local -c /var/etc/shadowsocksr_s.json -u -l $sock5_port -f /var/run/ssr-local.pid &) - fi - fi -#local - if [ $local_process -eq 2 ] ;then - local_processs=1 - icount=`ps -w | grep ss-local |grep -v grep| wc -l` - if [ $icount -lt $local_processs ] #如果进程挂掉就重启它 - then - logger -t "$NAME" "ss local error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") ss local error.restart!" >> ${logfile} - killall -q -9 ss-local - - ( /usr/bin/ss-local -c /var/etc/shadowsocksr_s.json -u -l $sock5_port -f /var/run/ss-local.pid &) - fi - fi -#local - if [ $local_process -eq 3 ] ;then - local_processs=1 - icount=`ps -w | grep v2-ssr-local |grep -v grep| wc -l` - if [ $icount -lt $local_processs ] #如果进程挂掉就重启它 - then - logger -t "$NAME" "v2ray local error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") v2ray local error.restart!" >> ${logfile} - kill -9 $(ps | grep v2-ssr-local | grep -v grep | awk '{print $1}') >/dev/null 2>&1 - - ( /usr/bin/v2ray/v2ray -config /var/etc/v2-ssr-local.json >/dev/null 2>&1 &) - fi - fi -#privoxy - if [ $privoxy_process -gt 0 ] ;then - icount=`ps -w | grep privoxy |grep -v grep| wc -l` - if [ $icount -lt $privoxy_process ]; then - logger -t "$NAME" "privoxy http local error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") privoxy http loca error.restart!" >> ${logfile} - kill -9 $(ps | grep privoxy | grep -v grep | awk '{print $1}') >/dev/null 2>&1 - - /etc/init.d/privoxy restart - fi - fi -#dnsforwarder - if [ $dnsforwarder_process -gt 0 ] ;then - icount=`ps -w | grep dnsparsing |grep -v grep| wc -l` - if [ $icount -lt $dnsforwarder_process ]; then - logger -t "$NAME" "dnsforwarder tunnel error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") dnsforwarder tunnel error.restart!" >> ${logfile} - kill -9 $(ps | grep dnsparsing | grep -v grep | awk '{print $1}') >/dev/null 2>&1 - - ( dnsparsing -f /var/run/dnsparsing/dnsparsing.conf -d &) - fi - fi -#pdnsd - if [ $pdnsd_process -gt 0 ] ;then - icount=`ps -w | grep pdnsd |grep -v grep| wc -l` - if [ $icount -lt $pdnsd_process ] #如果进程挂掉就重启它 - then - logger -t "$NAME" "pdnsd tunnel error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") pdnsd tunnel error.restart!" >> ${logfile} - if [ -f /var/run/pdnsd.pid ] ;then - kill $(cat /var/run/pdnsd.pid) >/dev/null 2>&1 - else - kill -9 $(ps | grep pdnsd | grep -v grep | awk '{print $1}') >/dev/null 2>&1 - fi - - ( /usr/sbin/pdnsd -c /var/etc/pdnsd.conf -d &) - fi - fi -#chiandns - if [ $chinadns_process -gt 0 ] ;then - icount=`ps -w | grep chinadns |grep -v grep| wc -l` - if [ $icount -lt $chinadns_process ]; then - logger -t "$NAME" "chinadns tunnel error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") chinadns tunnel error.restart!" >> ${logfile} - kill -9 $(ps | grep chinadns | grep -v grep | awk '{print $1}') >/dev/null 2>&1 - - (nohup /usr/bin/chinadns -p 5335 -c /etc/china_ssr.txt -m -d -s $dnsstrs >/dev/null 2>&1 &) - fi - fi -#haproxy - if [ $haproxy_process -gt 0 ] ;then - icount=`ps -w | grep haproxy |grep -v grep| wc -l` - if [ $icount -lt $haproxy_process ] #如果进程挂掉就重启它 - then - logger -t "$NAME" "haproxy error.restart!" - echo "$(date "+%Y-%m-%d %H:%M:%S") haproxy error.restart!" >> ${logfile} - /etc/init.d/shadowsocksr restart - fi - fi -#udp2raw - if [ $(uci_get_by_type udp2raw udp2raw_enable) = 1 ] ;then - ucount=`ps -w | grep udp2raw |grep -v grep| wc -l` - if [ $ucount = 0 ] ;then - /usr/bin/udp2raw --clear >/dev/null - /usr/bin/udp2raw --conf-file /var/etc/udp2raw.conf >/dev/null 2>&1 & - fi - fi -#udpspeeder - if [ $(uci_get_by_type udpspeeder udpspeeder_enable) = 1 ] ;then - scount=`ps -w | grep udpspeeder |grep -v grep| wc -l` - if [ $scount = 0 ] ;then - /usr/bin/udpspeeder -c -l0.0.0.0:$(uci_get_by_type udpspeeder local_port) \ - -r$(uci_get_by_type udpspeeder server):$(uci_get_by_type udpspeeder server_port) \ - -k $(uci_get_by_type udpspeeder key) \ - --mode $(uci_get_by_type udpspeeder speeder_mode) \ - --mtu $(uci_get_by_type udpspeeder mtu) \ - -f$(uci_get_by_type udpspeeder fec) \ - -q$(uci_get_by_type udpspeeder queue_len) \ - --timeout $(uci_get_by_type udpspeeder timeout) \ - >/dev/null 2>&1 & - fi - fi -done - diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-rules b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-rules deleted file mode 100755 index 1764424553..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-rules +++ /dev/null @@ -1,424 +0,0 @@ -#!/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 - -p lan ip of will be global proxy - -G lan ip of will be game mode proxy - -D proxy ports - -k wan ip of will be forwarded - -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 gfw list mode - -R returns china mode - -r return china 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 gmlan 2>/dev/null - ipset -X oversea 2>/dev/null - ipset -X whitelist 2>/dev/null - ipset -X blacklist 2>/dev/null - [ -n "$FWI" ] && echo '#!/bin/sh' >$FWI - return 0 -} - -ipset_r() { - ipset -N gmlan hash:net 2>/dev/null - for ip in $LAN_GM_IP; do ipset -! add gmlan $ip ; done - - if [ "$RUNMODE" = "router" ] ;then - ipset -! -R <<-EOF || return 1 - create ss_spec_wan_ac hash:net - $(gen_iplist | sed -e "s/^/add ss_spec_wan_ac /") - $(for ip in $WAN_FW_IP; do echo "add ss_spec_wan_ac $ip nomatch"; done) -EOF - ipset -N gfwlist hash:net 2>/dev/null - $IPT -N SS_SPEC_WAN_AC - $IPT -I SS_SPEC_WAN_AC -d $server -j RETURN - $IPT -A SS_SPEC_WAN_AC -m set --match-set ss_spec_wan_ac dst -j RETURN - $IPT -A SS_SPEC_WAN_AC -j SS_SPEC_WAN_FW - - elif [ "$RUNMODE" = "gfw" ] ;then - ipset -N gfwlist hash:net 2>/dev/null - for ip in $WAN_FW_IP; do ipset -! add gfwlist $ip ; done - $IPT -N SS_SPEC_WAN_AC - $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 - $IPT -I SS_SPEC_WAN_AC -d $server -j RETURN - - elif [ "$RUNMODE" = "oversea" ] ;then - ipset -N oversea hash:net 2>/dev/null - for ip in $WAN_FK_IP; do ipset -! add oversea $ip ; done - $IPT -N SS_SPEC_WAN_AC - $IPT -A SS_SPEC_WAN_AC -m set --match-set oversea dst -j SS_SPEC_WAN_FW - ipset -N gmlan hash:net 2>/dev/null - - for ip in $LAN_GM_IP; do ipset -! add gmlan $ip ; done - $IPT -A SS_SPEC_WAN_AC -m set --match-set gmlan src -m set --match-set china dst -j SS_SPEC_WAN_FW - $IPT -I SS_SPEC_WAN_AC -d $server -j RETURN - - elif [ "$RUNMODE" = "routers" ] ;then - ipset -! -R <<-EOF || return 1 - create ss_spec_wan_ac hash:net - $(gen_iplist | sed -e "s/^/add ss_spec_wan_ac /") - $(for ip in $WAN_FK_IP; do echo "add ss_spec_wan_ac $ip nomatch"; done) -EOF - ipset -N oversea hash:net 2>/dev/null - $IPT -N SS_SPEC_WAN_AC - $IPT -I SS_SPEC_WAN_AC -d $server -j RETURN - $IPT -A SS_SPEC_WAN_AC -m set ! --match-set ss_spec_wan_ac dst -j RETURN - $IPT -A SS_SPEC_WAN_AC -j SS_SPEC_WAN_FW - - elif [ "$RUNMODE" = "all" ] ;then - $IPT -N SS_SPEC_WAN_AC - $IPT -A SS_SPEC_WAN_AC -j SS_SPEC_WAN_FW - $IPT -I SS_SPEC_WAN_AC -d $server -j RETURN - - fi - - 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 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 src -j SS_SPEC_WAN_FW - $IPT -I SS_SPEC_WAN_AC -m set --match-set whitelist dst -j RETURN - - for ip in $WAN_BP_IP; do ipset -! add whitelist $ip; done - for ip in $WAN_FW_IP; do ipset -! add blacklist $ip; done - - 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 - IFNAME=$(uci get -P/var/state network.lan.ifname 2>/dev/null) - 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 - $IPT -I PREROUTING 1 ${IFNAME:+-i $IFNAME} -p tcp $EXT_ARGS $MATCH_SET \ - -m comment --comment "$TAG" -j SS_SPEC_WAN_AC - if [ "$OUTPUT" = 1 ]; then - $IPT -I OUTPUT 1 -p tcp $EXT_ARGS \ - -m comment --comment "$TAG" -j SS_SPEC_WAN_AC - elif [ "$OUTPUT" = 2 ]; then - 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 - fi - 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 -d $SERVER -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 - - if [ "$RUNMODE" = "router" ] ;then - $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 - - elif [ "$RUNMODE" = "gfw" ] ;then - $ipt -A SS_SPEC_TPROXY -p udp -m set --match-set china dst -j RETURN - $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 -m set $PROXY_PORTS --match-set gfwlist dst \ - -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 - - elif [ "$RUNMODE" = "oversea" ] ;then - $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 -m set $PROXY_PORTS --match-set gfwlist dst \ - -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 - - elif [ "$RUNMODE" = "routers" ] ;then - $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 - - elif [ "$RUNMODE" = "all" ] ;then - $ipt -A SS_SPEC_TPROXY -p udp $PROXY_PORTS -j TPROXY --on-port "$LOCAL_PORT" --tproxy-mark 0x01/0x01 - fi - - $ipt -I PREROUTING 1 ${IFNAME:+-i $IFNAME} -p udp $EXT_ARGS $MATCH_SET \ - -m comment --comment "$TAG" -j SS_SPEC_TPROXY - - return $? -} - -get_wan_ip() { - cat <<-EOF | grep -E "^([0-9]{1,3}\.){3}[0-9]{1,3}" - $server - $SERVER - $WAN_BP_IP -EOF -} - -gen_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) - $(cat ${IGNORE_LIST:=/dev/null} 2>/dev/null) -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 ":s:l:S:L:i:e:a:b:w:p:G:D:k:oOuUfgrRczh" arg; do - case "$arg" in - 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) - 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 - ;; - k) - WAN_FK_IP=$OPTARG - ;; - o) - OUTPUT=1 - ;; - O) - OUTPUT=2 - ;; - u) - TPROXY=1 - ;; - U) - TPROXY=2 - ;; - g) - RUNMODE=gfw - ;; - r) - RUNMODE=router - ;; - R) - RUNMODE=routers - ;; - 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 - -if [ "$TPROXY" = 1 ]; then - SERVER=$server - LOCAL_PORT=$local_port -elif [ "$TPROXY" = 2 ]; then - : ${SERVER:?"You must assign an ip for the udp relay server."} - : ${LOCAL_PORT:?"You must assign a port for the udp relay server."} -fi - -flush_r && fw_rule && ipset_r && ac_rule && tp_rule && gen_include -[ "$?" = 0 ] || loger 3 "Start failed!" -exit $? -de -[ "$?" = 0 ] || loger 3 "Start failed!" -exit $? diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-switch b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-switch deleted file mode 100755 index 281d0f851e..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/bin/ssr-switch +++ /dev/null @@ -1,175 +0,0 @@ -#!/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. -# - -cycle_time=60 -switch_time=3 -normal_flag=0 -server_locate=0 -server_count=0 -NAME=shadowsocksr -ENABLE_SERVER=nil -CONFIG_SWTICH_FILE=/var/etc/${NAME}_t.json - - -[ -n "$1" ] && cycle_time=$1 -[ -n "$2" ] && switch_time=$2 - -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} -} - -DEFAULT_SERVER=$(uci_get_by_type global global_server) -CURRENT_SERVER=$DEFAULT_SERVER - -#判断代理是否正常 -check_proxy() { -/usr/bin/ssr-check www.google.com 80 $switch_time 1 -if [ "$?" == "0" ]; then - return 0 -else - /usr/bin/ssr-check www.baidu.com 80 $switch_time 1 - if [ "$?" == "0" ]; then - #goole不通baidu通则不正常 - return 1 - else - return 2 - fi -fi -return 0 -} - - -test_proxy() { -local servername=$(uci_get_by_name $1 server) -local serverport=$(uci_get_by_name $1 server_port) -ret=$(ping -c 3 $servername | grep 'loss' | awk -F ',' '{ print $3 }' | awk -F "%" '{ print $1 }') -[ -z "$ret" ] && return 1 -[ "$ret" -gt "50" ] && return 1 -ipset add ss_spec_wan_ac $servername 2>/dev/null -ret=$? -/usr/bin/ssr-check $servername $serverport $switch_time -local ret2=$? -if [ "$ret" = "0" ] ;then -ipset del ss_spec_wan_ac $servername 2>/dev/null -fi -if [ "$ret2" = "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)" != "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 ss_spec_wan_ac $servername 2>/dev/null -ret=$? - /usr/bin/ssr-check $servername $serverport $switch_time - local ret2=$? -if [ "$ret" = "0" ] ;then -ipset del ss_spec_wan_ac $servername 2>/dev/null -fi -if [ "$ret2" = "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 $cycle_time - - LOGTIME=$(date "+%Y-%m-%d %H:%M:%S") - - - #判断当前代理是否为缺省服务器 - if [ "$CURRENT_SERVER" != "$DEFAULT_SERVER" ] ;then - #echo "not default proxy" - echo "$(date "+%Y-%m-%d %H:%M:%S") Current server is not default Main server, try to switch back." >> /tmp/ssrplus.log - - #检查缺省服务器是否正常 - if test_proxy $DEFAULT_SERVER ;then - #echo "switch to default proxy" - echo "$(date "+%Y-%m-%d %H:%M:%S") Main server is avilable." >> /tmp/ssrplus.log - #缺省服务器正常,切换回来 - CURRENT_SERVER=$DEFAULT_SERVER - switch_proxy $CURRENT_SERVER - echo "switch to default ["$(uci_get_by_name $CURRENT_SERVER server)"] proxy!" >> /tmp/ssrplus.log - continue - else - echo "$(date "+%Y-%m-%d %H:%M:%S") Main server is NOT avilable.Continue using current server." >> /tmp/ssrplus.log - fi - fi - - #判断当前代理是否正常 - check_proxy - current_ret=$? - - if [ "$current_ret" = "1" ] ;then - #当前代理错误,判断有无可用的服务器 - #echo "current error" - echo "$(date "+%Y-%m-%d %H:%M:%S") Current server error, try to switch another server." >> /tmp/ssrplus.log - - select_proxy - if [ "$ENABLE_SERVER" != nil ] ;then - #有其他服务器可用,进行切换 - #echo $(uci_get_by_name $new_proxy server) - echo "$(date "+%Y-%m-%d %H:%M:%S") Another server is avilable, now switching server." >> /tmp/ssrplus.log - CURRENT_SERVER=$ENABLE_SERVER - switch_proxy $CURRENT_SERVER - normal_flag=1 - echo "$(date "+%Y-%m-%d %H:%M:%S") ShadowsocksR server switch OK" >> /tmp/ssrplus.log - else - switch_proxy $CURRENT_SERVER - normal_flag=1 - echo "$(date "+%Y-%m-%d %H:%M:%S") Try restart current server." >> /tmp/ssrplus.log - fi - else - normal_flag=0 - echo "$(date "+%Y-%m-%d %H:%M:%S") ShadowsocksR No Problem." >> /tmp/ssrplus.log - fi - - -done -} diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/chinaipset.sh b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/chinaipset.sh deleted file mode 100755 index 78af938999..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/chinaipset.sh +++ /dev/null @@ -1,6 +0,0 @@ -echo "create china hash:net family inet hashsize 1024 maxelem 65536" > /tmp/china.ipset - -awk '!/^$/&&!/^#/{printf("add china %s'" "'\n",$0)}' /etc/china_ssr.txt >> /tmp/china.ipset -ipset -! flush china -ipset -! restore < /tmp/china.ipset 2>/dev/null -rm -f /tmp/china.ipset diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/gentrojanconfig.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/gentrojanconfig.lua deleted file mode 100644 index 73f28d5b29..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/gentrojanconfig.lua +++ /dev/null @@ -1,38 +0,0 @@ -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] - -local server = ucursor:get_all("shadowsocksr", server_section) - -local trojan = { - - run_type = "nat", - local_addr = "0.0.0.0", - local_port = tonumber(local_port), - remote_addr = server.server, - remote_port = tonumber(server.server_port), - -- 传入连接 - password = {server.password}, - -- 传出连接 - ssl = { - verify = true, - verify_hostname = true, - cert = (server.certificate == "1") and server.certpath or "", - cipher = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:RSA-AES128-GCM-SHA256:RSA-AES256-GCM-SHA384:RSA-AES128-SHA:RSA-AES256-SHA:RSA-3DES-EDE-SHA", - sni = server.tls_host, - alpn = {"h2", "http/1.1"}, - curve = "", - reuse_session = true, - session_ticket = true, - }, - tcp = { - no_delay = true, - keep_alive = true, - reuse_port = true, - fast_open = (server.fast_open == "1") and true or false, - fast_open_qlen = 20 - } -} -print(json.stringify(trojan, 1)) diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/genv2config_haproxy.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/genv2config_haproxy.lua deleted file mode 100644 index a1fe0719b1..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/genv2config_haproxy.lua +++ /dev/null @@ -1,95 +0,0 @@ -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] - -local server = ucursor:get_all("shadowsocksr", server_section) - -local v2ray = { - log = { - -- error = "/var/ssrplus.log", - loglevel = "warning" - }, - -- 传入连接 - inbound = { - port = local_port, - protocol = "dokodemo-door", - settings = { - network = proto, - followRedirect = true - }, - sniffing = { - enabled = true, - destOverride = { "http", "tls" } - } - }, - -- 传出连接 - outbound = { - protocol = "vmess", - settings = { - vnext = { - { - address = "0.0.0.0", - port = '4433', - users = { - { - id = server.vmess_id, - alterId = tonumber(server.alter_id), - security = server.security - } - } - } - } - }, - -- 底层传输配置 - streamSettings = { - network = server.transport, - security = (server.tls == '1') and "tls" or "none", - tlsSettings = {allowInsecure = (server.insecure == "1") and true or false,}, - 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 - } - } or nil, - wsSettings = (server.transport == "ws") and { - path = server.ws_path, - headers = (server.ws_host ~= nil) and { - Host = server.ws_host - } or nil, - } or nil, - httpSettings = (server.transport == "h2") and { - path = server.h2_path, - host = server.h2_host, - } or nil, - quicSettings = (server.transport == "quic") and { - security = server.quic_security, - key = server.quic_key, - header = { - type = server.quic_guise - } - } or nil - }, - mux = { - enabled = (server.mux == "1") and true or false, - concurrency = tonumber(server.concurrency) - } - }, - - -- 额外传出连接 - outboundDetour = { - { - protocol = "freedom", - tag = "direct", - settings = { keep = "" } - } - } -} -print(json.stringify(v2ray, 1)) diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/genv2config_local.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/genv2config_local.lua deleted file mode 100644 index 4aec403b92..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/genv2config_local.lua +++ /dev/null @@ -1,107 +0,0 @@ -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]+1 -local socks_port = arg[4] - -local server = ucursor:get_all("shadowsocksr", server_section) - -local v2ray = { - log = { - -- error = "/var/ssrplus.log", - loglevel = "warning" - }, - -- 传入连接 - inbound = { - port = local_port, - protocol = "dokodemo-door", - settings = { - network = proto, - followRedirect = true - }, - sniffing = { - enabled = true, - destOverride = { "http", "tls" } - } - }, - -- 开启 socks 和 http 代理 - inboundDetour = (proto == "tcp") and { - { - protocol = "socks", - port = socks_port, - settings = { - auth = "noauth", - udp = true - } - } - } or nil, - -- 传出连接 - outbound = { - protocol = "vmess", - settings = { - vnext = { - { - address = server.server, - port = tonumber(server.server_port), - users = { - { - id = server.vmess_id, - alterId = tonumber(server.alter_id), - security = server.security - } - } - } - } - }, - -- 底层传输配置 - streamSettings = { - network = server.transport, - security = (server.tls == '1') and "tls" or "none", - tlsSettings = {allowInsecure = (server.insecure == "1") and true or false,}, - 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 - } - } or nil, - wsSettings = (server.transport == "ws") and { - path = server.ws_path, - headers = (server.ws_host ~= nil) and { - Host = server.ws_host - } or nil, - } or nil, - httpSettings = (server.transport == "h2") and { - path = server.h2_path, - host = server.h2_host, - } or nil, - quicSettings = (server.transport == "quic") and { - security = server.quic_security, - key = server.quic_key, - header = { - type = server.quic_guise - } - } or nil - }, - mux = { - enabled = (server.mux == "1") and true or false, - concurrency = tonumber(server.concurrency) - } - }, - - -- 额外传出连接 - outboundDetour = { - { - protocol = "freedom", - tag = "direct", - settings = { keep = "" } - } - } -} -print(json.stringify(v2ray, 1)) diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/genv2config_server.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/genv2config_server.lua deleted file mode 100644 index dd71616769..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/genv2config_server.lua +++ /dev/null @@ -1,65 +0,0 @@ -local ucursor = require "luci.model.uci".cursor() -local json = require "luci.jsonc" -local server_section = arg[1] -local server = ucursor:get_all("shadowsocksr", server_section) - -local v2ray = { - log = { - --error = "/var/log/v2ray.log", - loglevel = "warning" - }, - -- 传入连接 - inbound = { - port = tonumber(server.server_port), - protocol = "vmess", - settings = { - clients = { - { - id = server.vmess_id, - alterId = tonumber(server.alter_id), - level = tonumber(server.VMess_level) - } - } - }, - -- 底层传输配置 - streamSettings = { - network = server.transport, - security = (server.tls == '1') and "tls" or "none", - 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 - } - } or nil, - httpSettings = (server.transport == "h2") and { - path = server.h2_path, - host = server.h2_host, - } or nil, - quicSettings = (server.transport == "quic") and { - security = server.quic_security, - key = server.quic_key, - header = { - type = server.quic_guise - } - } or nil - } - }, - -- 传出连接 - outbound = { - protocol = "freedom" - }, - -- 额外传出连接 - outboundDetour = { - { - protocol = "blackhole", - tag = "blocked" - } - } -} -print(json.stringify(v2ray,1)) \ No newline at end of file diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/gfw2ipset.sh b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/gfw2ipset.sh deleted file mode 100755 index 70ca116af3..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/gfw2ipset.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh - -mkdir -p /tmp/dnsmasq.ssr - -awk '!/^$/&&!/^#/{printf("ipset=/.%s/'"gfwlist"'\n",$0)}' /etc/config/gfw.list > /tmp/dnsmasq.ssr/custom_forward.conf -awk '!/^$/&&!/^#/{printf("server=/.%s/'"127.0.0.1#5335"'\n",$0)}' /etc/config/gfw.list >> /tmp/dnsmasq.ssr/custom_forward.conf - -awk '!/^$/&&!/^#/{printf("ipset=/.%s/'"blacklist"'\n",$0)}' /etc/config/black.list > /tmp/dnsmasq.ssr/blacklist_forward.conf -awk '!/^$/&&!/^#/{printf("server=/.%s/'"127.0.0.1#5335"'\n",$0)}' /etc/config/black.list >> /tmp/dnsmasq.ssr/blacklist_forward.conf - -awk '!/^$/&&!/^#/{printf("ipset=/.%s/'"whitelist"'\n",$0)}' /etc/config/white.list > /tmp/dnsmasq.ssr/whitelist_forward.conf diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/subscribe.lua b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/subscribe.lua deleted file mode 100644 index 23e8bfb410..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/subscribe.lua +++ /dev/null @@ -1,440 +0,0 @@ -#!/usr/bin/lua ------------------------------------------------- --- This file is part of the luci-app-ssr-plus subscribe.lua --- @author William Chan ------------------------------------------------- -require 'nixio' -require 'luci.util' -require 'luci.jsonc' -require 'luci.sys' - --- these global functions are accessed all the time by the event handler --- so caching them is worth the effort -local luci = luci -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 log = function(...) - print(os.date("%Y-%m-%d %H:%M:%S ") .. table.concat({ ... }, " ")) -end --- 分割字符串 -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 --- 处理数据 -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.server = info.add - result.server_port = info.port - result.transport = info.net - result.alter_id = info.aid - result.vmess_id = info.id - result.alias = info.ps - result.insecure = 1 - -- 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 - 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 - 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 - 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 = "ss" - 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 - end - else - result.server_port = host[2] - end - result.encrypt_method_ss = method - result.password = password - elseif szType == "ssd" then - result.type = "ss" - result.server = content.server - result.server_port = content.port - result.password = content.password - result.encrypt_method_ss = content.encryption - result.plugin = content.plugin - result.plugin_opts = content.plugin_options - result.alias = "[" .. content.airport .. "] " .. content.remarks - 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 = "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.peer then - -- 未指定peer(sni)默认使用remote addr - result.tls_host = params.peer - end - - if params.allowInsecure == "1" then - result.insecure = "1" - else - result.insecure = "0" - end - else - result.server_port = host[2] - end - result.password = password - end - if not result.alias then - result.alias = result.server .. ':' .. result.server_port - 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('wget-ssl --user-agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" --no-check-certificate -t 3 -T 10 -O- "' .. url .. '"') - return trim(stdout) -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 - else - -- ssd 外的格式 - nodes = split(base64Decode(raw):gsub(" ", "\n"), "\n") - end - for _, v in ipairs(nodes) do - if v then - local result - if szType == 'ssd' 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 - if dat[1] == 'ss' or dat[1] == 'trojan' then - result = processData(dat[1], dat[2]) - else - result = processData(dat[1], base64Decode(dat[2])) - end - end - else - log('跳过未知类型: ' .. szType) - end - -- log(result) - if result then - if result.alias:find("过期时间") or - result.alias:find("剩余流量") or - result.alias:find("QQ群") or - result.alias:find("官网") or - result.alias:find("防失联地址") or - not result.server or - result.server:match("[^0-9a-zA-Z%-%.%s]") -- 中文做地址的 也没有人拿中文域名搞,就算中文域也有Puny Code SB 机场 - 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("更新失败,没有可用的节点信息") - 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 - old.alias = old.server .. ':' .. old.server_port - end - log('忽略手动添加的节点: ' .. old.alias) - 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', '') - 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 - log('新增节点数量: ' ..add, '删除节点数量: ' .. del) - log("END SUBSCRIBE") - log('订阅更新成功') - end -end - -if subscribe_url and #subscribe_url > 0 then - xpcall(execute, function(e) - log(e) - log(debug.traceback()) - log("END SUBSCRIBE") - 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/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/subscribe.sh b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/subscribe.sh deleted file mode 100755 index 0e20ae7989..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/subscribe.sh +++ /dev/null @@ -1,260 +0,0 @@ -#!/bin/bash -# Copyright (C) 2017 XiaoShan https://www.mivm.cn - -. /usr/share/libubox/jshn.sh - -urlsafe_b64decode() { - local d="====" data=$(echo $1 | sed 's/_/\//g; s/-/+/g') - local mod4=$((${#data}%4)) - [ $mod4 -gt 0 ] && data=${data}${d:mod4} - echo $data | base64 -d -} - -urldecode() { : "${*//+/ }"; echo -e "${_//%/\\x}"; } - -echo_date(){ - echo $(TZ=UTC-8 date -R +%Y-%m-%d\ %X):$1 -} - -Server_Update() { - local uci_set="uci -q set $name.$1." - ${uci_set}grouphashkey="$ssr_grouphashkey" - ${uci_set}hashkey="$ssr_hashkey" - ${uci_set}alias="[$ssr_group] $ssr_remarks" - ${uci_set}auth_enable="0" - ${uci_set}switch_enable="1" - ${uci_set}type="$ssr_type" - ${uci_set}server="$ssr_host" - ${uci_set}server_port="$ssr_port" - ${uci_set}local_port="1234" - uci -q get $name.@servers[$1].timeout >/dev/null || ${uci_set}timeout="60" - ${uci_set}password="$ssr_passwd" - ${uci_set}encrypt_method="$ssr_method" - ${uci_set}protocol="$ssr_protocol" - ${uci_set}protocol_param="$ssr_protoparam" - ${uci_set}obfs="$ssr_obfs" - ${uci_set}obfs_param="$ssr_obfsparam" - ${uci_set}fast_open="0" - ${uci_set}kcp_enable="0" - ${uci_set}kcp_port="0" - ${uci_set}kcp_param="--nocomp" - - if [ "$ssr_type" = "v2ray" ]; then - #v2ray - ${uci_set}alter_id="$ssr_alter_id" - ${uci_set}vmess_id="$ssr_vmess_id" - ${uci_set}transport="$ssr_transport" - ${uci_set}tcp_guise="$ssr_tcp_guise" - ${uci_set}ws_host="$ssr_ws_host" - ${uci_set}ws_path="$ssr_ws_path" - ${uci_set}h2_host="$ssr_h2_host" - ${uci_set}h2_path="$ssr_h2_path" - ${uci_set}tls="$ssr_tls" - ${uci_set}security=$ssr_security - ${uci_set}alias="$ssr_remarks" - fi - - if [ "$ssr_type" = "ss" ]; then - ${uci_set}encrypt_method_ss="$ss_method" - ${uci_set}alias="$ssr_remarks" - fi - -} - -name=shadowsocksr -subscribe_url=($(uci get $name.@server_subscribe[0].subscribe_url)) #订阅服务器地址 -[ ${#subscribe_url[@]} -eq 0 ] && exit 1 -[ $(uci -q get $name.@server_subscribe[0].proxy || echo 0) -eq 0 ] && /etc/init.d/$name stop >/dev/null 2>&1 -log_name=${name}_subscribe -for ((o=0;o<${#subscribe_url[@]};o++)) -do - echo_date "从 ${subscribe_url[o]} 获取订阅" - echo_date "开始更新在线订阅列表..." - echo_date "尝试下载订阅链接到本地临时文件,请稍等..." - subscribe_data=$(wget-ssl --no-check-certificate -t 3 -T 30 -O- ${subscribe_url[o]}) - curl_code=$? - # 计算group的hashkey - ssr_grouphashkey=$(echo "${subscribe_url[o]}" | md5sum | cut -d ' ' -f1) - if [ ! $curl_code -eq 0 ];then - echo_date "下载订阅失败,自动重试中..." - subscribe_data=$(wget-ssl --user-agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" --no-check-certificate -t 3 -T 30 -O- ${subscribe_url[o]}) - curl_code=$? - fi - if [ $curl_code -eq 0 ];then - echo_date "下载订阅成功,开始解析节点信息..." - ssr_url=($(echo $subscribe_data | base64 -d | sed 's/\r//g')) # 解码数据并删除 \r 换行符 - subscribe_max=$(echo ${ssr_url[0]} | grep -i MAX= | awk -F = '{print $2}') - subscribe_max_x=() - if [ -n "$subscribe_max" ]; then - while [ ${#subscribe_max_x[@]} -ne $subscribe_max ] - do - if [ ${#ssr_url[@]} -ge 10 ]; then - if [ $((${RANDOM:0:2}%2)) -eq 0 ]; then - temp_x=${RANDOM:0:1} - else - temp_x=${RANDOM:0:2} - fi - else - temp_x=${RANDOM:0:1} - fi - [ $temp_x -lt ${#ssr_url[@]} -a -z "$(echo "${subscribe_max_x[*]}" | grep -w $temp_x)" ] && subscribe_max_x[${#subscribe_max_x[@]}]="$temp_x" - done - else - subscribe_max=${#ssr_url[@]} - fi - echo_date "共计$subscribe_max个节点" - - ssr_group=$(urlsafe_b64decode $(urlsafe_b64decode ${ssr_url[$((${#ssr_url[@]} - 1))]//ssr:\/\//} | sed 's/&/\n/g' | grep group= | awk -F = '{print $2}')) - if [ -z "$ssr_group" ]; then - ssr_group="default" - fi - if [ -n "$ssr_group" ]; then - subscribe_i=0 - subscribe_n=0 - subscribe_o=0 - subscribe_x="" - temp_host_o=() - curr_ssr=$(uci show $name | grep @servers | grep -c server=) - for ((x=0;x<$curr_ssr;x++)) # 循环已有服务器信息,匹配当前订阅群组 - do - temp_alias=$(uci -q get $name.@servers[$x].grouphashkey | grep "$ssr_grouphashkey") - [ -n "$temp_alias" ] && temp_host_o[${#temp_host_o[@]}]=$(uci get $name.@servers[$x].hashkey) - done - - for ((x=0;x<$subscribe_max;x++)) # 循环链接 - do - [ ${#subscribe_max_x[@]} -eq 0 ] && temp_x=$x || temp_x=${subscribe_max_x[x]} - result=$(echo ${ssr_url[temp_x]} | grep "ss") - subscribe_url_type=$(echo "$ssr_url" | awk -F ':' '{print $1}') - - if [ "$subscribe_url_type" = "ss" ]; then - temp_info=${ssr_url[temp_x]//ss:\/\//} # 解码 SS 链接 - # 计算hashkey - ssr_hashkey=$(echo "$temp_info" | md5sum | cut -d ' ' -f1) - - info=$(urlsafe_b64decode $(echo "$temp_info" | awk -F '@' '{print $1}')) - temp_info_array=(${info//:/ }) - ssr_type="ss" - ss_method=${temp_info_array[0]} - ssr_passwd=${temp_info_array[1]} - info=$(echo "$temp_info" | awk -F '@' '{print $2}' | awk -F '#' '{print $1}') - temp_info_array=(${info//:/ }) - ssr_host=${temp_info_array[0]} - ssr_port=${temp_info_array[1]} - ssr_remarks=$(urldecode $(echo "$temp_info" | awk -F '#' '{print $2}')) - fi - - if [ "$subscribe_url_type" = "ssr" ]; then - temp_info=$(urlsafe_b64decode ${ssr_url[temp_x]//ssr:\/\//}) # 解码 SSR 链接 - # 计算hashkey - ssr_hashkey=$(echo "$temp_info" | md5sum | cut -d ' ' -f1) - - info=${temp_info///?*/} - temp_info_array=(${info//:/ }) - ssr_type="ssr" - ssr_host=${temp_info_array[0]} - ssr_port=${temp_info_array[1]} - ssr_protocol=${temp_info_array[2]} - ssr_method=${temp_info_array[3]} - ssr_obfs=${temp_info_array[4]} - ssr_passwd=$(urlsafe_b64decode ${temp_info_array[5]}) - info=${temp_info:$((${#info} + 2))} - info=(${info//&/ }) - ssr_protoparam="" - ssr_obfsparam="" - ssr_remarks="$temp_x" - for ((i=0;i<${#info[@]};i++)) # 循环扩展信息 - do - temp_info=($(echo ${info[i]} | sed 's/=/ /g')) - case "${temp_info[0]}" in - protoparam) - ssr_protoparam=$(urlsafe_b64decode ${temp_info[1]});; - obfsparam) - ssr_obfsparam=$(urlsafe_b64decode ${temp_info[1]});; - remarks) - ssr_remarks=$(urlsafe_b64decode ${temp_info[1]});; - esac - done - fi - - if [ "$subscribe_url_type" = "vmess" ]; then - temp_info=$(urlsafe_b64decode ${ssr_url[temp_x]//vmess:\/\//}) # 解码 Vmess 链接 - # 计算hashkey - ssr_hashkey=$(echo "$temp_info" | md5sum | cut -d ' ' -f1) - - ssr_type="v2ray" - json_load "$temp_info" - json_get_var ssr_host add - json_get_var ssr_port port - json_get_var ssr_alter_id aid - json_get_var ssr_vmess_id id - json_get_var ssr_security security - if [ "$ssr_security" == "" ]; then - ssr_security="auto" - fi - json_get_var ssr_transport net - json_get_var ssr_remarks ps - ssr_tcp_guise="none" - json_get_var ssr_ws_host host - json_get_var ssr_ws_path path - json_get_var ssr_h2_host host - json_get_var ssr_h2_path path - json_get_var ssr_tls tls - if [ "$ssr_tls" == "tls" -o "$ssr_tls" == "1" ]; then - ssr_tls="1" - else - ssr_tls="0" - fi - fi - - if [ -z "ssr_remarks" ]; then # 没有备注的话则生成一个 - ssr_remarks="$ssr_host:$ssr_port"; - fi - - uci_name_tmp=$(uci show $name | grep -w "$ssr_hashkey" | awk -F . '{print $2}') - if [ -z "$uci_name_tmp" ]; then # 判断当前服务器信息是否存在 - uci_name_tmp=$(uci add $name servers) - subscribe_n=$(($subscribe_n + 1)) - fi - Server_Update $uci_name_tmp - subscribe_x=$subscribe_x$ssr_hashkey" " - ssrtype=$(echo $ssr_type | tr '[a-z]' '[A-Z]') - echo_date "$ssrtype节点:【$ssr_remarks】" - - # SSR - # echo "服务器地址: $ssr_host" - # echo "服务器端口 $ssr_port" - # echo "密码: $ssr_passwd" - # echo "SS加密: $ss_method" - # echo "加密: $ssr_method" - # echo "协议: $ssr_protocol" - # echo "协议参数: $ssr_protoparam" - # echo "混淆: $ssr_obfs" - # echo "混淆参数: $ssr_obfsparam" - # echo "备注: $ssr_remarks" - - done - for ((x=0;x<${#temp_host_o[@]};x++)) # 新旧服务器信息匹配,如果旧服务器信息不存在于新服务器信息则删除 - do - if [ -z "$(echo "$subscribe_x" | grep -w ${temp_host_o[x]})" ]; then - uci_name_tmp=$(uci show $name | grep ${temp_host_o[x]} | awk -F . '{print $2}') - uci delete $name.$uci_name_tmp - subscribe_o=$(($subscribe_o + 1)) - fi - done - echo_date "本次更新订阅来源 【$ssr_group】 服务器数量: ${#ssr_url[@]} 新增服务器: $subscribe_n 删除服务器: $subscribe_o" - echo_date "在线订阅列表更新完成!请等待网页自动刷新!" - subscribe_log="$ssr_group 服务器订阅更新成功 服务器数量: ${#ssr_url[@]} 新增服务器: $subscribe_n 删除服务器: $subscribe_o" - logger -st $log_name[$$] -p6 "$subscribe_log" - uci commit $name - else - echo_date "${subscribe_url[$o]} 订阅数据解析失败 无法获取 Group" - logger -st $log_name[$$] -p3 "${subscribe_url[$o]} 订阅数据解析失败 无法获取 Group" - fi - else - echo_date "${subscribe_url[$o]} 订阅数据获取失败 错误代码: $curl_code" - logger -st $log_name[$$] -p3 "${subscribe_url[$o]} 订阅数据获取失败 错误代码: $curl_code" - fi -done -echo "END SUBSCRIBE" -/etc/init.d/$name restart >/dev/null 2>&1 diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/update.sh b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/update.sh deleted file mode 100755 index a199170a5d..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/update.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh -chnroute_data=$(wget -O- -t 3 -T 3 http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest) -[ $? -eq 0 ] && { - echo "$chnroute_data" | grep ipv4 | grep CN | awk -F\| '{ printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > /tmp/china_ssr.txt -} - -if [ -s "/tmp/china_ssr.txt" ];then - if ( ! cmp -s /tmp/china_ssr.txt /etc/china_ssr.txt );then - mv /tmp/china_ssr.txt /etc/china_ssr.txt - fi -fi - -/usr/share/shadowsocksr/chinaipset.sh - -wget-ssl --no-check-certificate https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt -O /tmp/gfw.b64 -/usr/bin/ssr-gfw - -if [ -s "/tmp/gfwnew.txt" ];then - if ( ! cmp -s /tmp/gfwnew.txt /etc/dnsmasq.ssr/gfw_list.conf );then - mv /tmp/gfwnew.txt /etc/dnsmasq.ssr/gfw_list.conf - echo "copy" - fi -fi - -/etc/init.d/shadowsocksr restart diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/v2ray_update1.sh b/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/v2ray_update1.sh deleted file mode 100644 index f88f72ddcc..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/usr/share/shadowsocksr/v2ray_update1.sh +++ /dev/null @@ -1,106 +0,0 @@ -#!/bin/sh -logfile="/tmp/ssrplus.log" -dir="/usr/share/v2ray/" -v2ray_new_version=$(wget -qO- "https://github.com/v2ray/v2ray-core/tags"| grep "/v2ray/v2ray-core/releases/tag/"| head -n 1| awk -F "/tag/v" '{print $2}'| sed 's/\">//') -echo "$v2ray_new_version" > ${dir}v2ray_new_version -if [ $? -eq 0 ];then - edition=$(uci get shadowsocksr.@server_subscribe[0].edition 2>/dev/null) - if [ "$edition" = "auto_detected" ];then - v2ray_new_version=$(cat ${dir}v2ray_new_version|sed -n '1p') - else - v2ray_new_version=$edition - fi - echo "$(date "+%Y-%m-%d %H:%M:%S") v2ray自动更新启动,验证版本..." >> ${logfile} - mem_mode=$(uci get shadowsocksr.@server_subscribe[0].mem_mode 2>/dev/null) - - echo "$(date "+%Y-%m-%d %H:%M:%S") 检测到v2ray版本为$v2ray_new_version..." >> ${logfile} - - UpdateApp() { - for a in $(opkg print-architecture | awk '{print $2}'); do - case "$a" in - all|noarch) - ;; - aarch64_armv8-a|arm_arm1176jzf-s_vfp|arm_arm926ej-s|arm_cortex-a15_neon-vfpv4|arm_cortex-a5|arm_cortex-a53_neon-vfpv4|arm_cortex-a7_neon-vfpv4|arm_cortex-a8_vfpv3|arm_cortex-a9|arm_cortex-a9_neon|arm_cortex-a9_vfpv3|arm_fa526|arm_mpcore|arm_mpcore_vfp|arm_xscale|armeb_xscale) - ARCH="arm" - ;; - i386_pentium|i386_pentium4) - ARCH="32" - ;; - ar71xx|mips_24kc|mips_mips32|mips64_octeon) - ARCH="mips" - ;; - mipsel_24kc|mipsel_24kec_dsp|mipsel_74kc|mipsel_mips32|mipsel_1004kc_dsp) - ARCH="mipsle" - ;; - x86_64) - ARCH="64" - ;; - *) - exit 0 - ;; - esac - done - } - - download_binary(){ - echo "$(date "+%Y-%m-%d %H:%M:%S") 开始下载v2ray二进制文件..." >> ${logfile} - rm -rf $bin_dir/v2ray*.zip - bin_dir="/tmp" - UpdateApp - cd $bin_dir - down_url=https://github.com/v2ray/v2ray-core/releases/download/v"$v2ray_new_version"/v2ray-linux-"$ARCH".zip - - local a=0 - while [ ! -f $bin_dir/v2ray-linux-"$ARCH"*.zip ]; do - [ $a = 6 ] && exit - /usr/bin/wget -T10 $down_url - sleep 2 - let "a = a + 1" - done - - if [ -f $bin_dir/v2ray-linux-"$ARCH"*.zip ]; then - echo "$(date "+%Y-%m-%d %H:%M:%S") 成功下载v2ray二进制文件" >> ${logfile} - killall -q -9 v2ray - - if [ ! -d "/usr/bin/v2ray/" ]; then - mkdir -p /usr/bin/v2ray - fi - unzip -o v2ray-linux-"$ARCH"*.zip -d $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/ - mem_mode=$(uci get shadowsocksr.@server_subscribe[0].mem_mode 2>/dev/null) - if [ $mem_mode -eq 1 ]; then - if [ -f /usr/bin/v2ray/v2ray ]; then - rm -rf /usr/bin/v2ray/* - rm -rf $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH" - fi - chmod +x $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/v2* - ln -s $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/v2ray /usr/bin/v2ray/ - ln -s $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/v2ctl /usr/bin/v2ray/ - ln -s $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/geoip.dat /usr/bin/v2ray/ - ln -s $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/geosite.dat /usr/bin/v2ray/ - else - if [ -f /usr/bin/v2ray/v2ray ]; then - rm -rf /usr/bin/v2ray/* - fi - mv $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/v2ray /usr/bin/v2ray/ - mv $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/v2ctl /usr/bin/v2ray/ - mv $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/geoip.dat /usr/bin/v2ray/ - mv $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH"/geosite.dat /usr/bin/v2ray/ - rm -rf $bin_dir/v2ray-v"$v2ray_new_version"-linux-"$ARCH" - fi - rm -rf $bin_dir/v2ray*.zip - if [ -f "/usr/bin/v2ray/v2ray" ]; then - chmod +x /usr/bin/v2ray/v2* - /etc/init.d/shadowsocksr restart - fi - else - echo "$(date "+%Y-%m-%d %H:%M:%S") 下载v2ray二进制文件失败,请重试!" >> ${logfile} - fi - - - } - - download_binary - echo "" > ${dir}v2ray_version - echo "$v2ray_new_version" > ${dir}v2ray_version - rm -rf ${dir}v2ray_new_version -fi diff --git a/package/ctcgfw/luci-app-ssr-plus-Jo/root/www/luci-static/shadowsocksr/css/shadowsocksr.css b/package/ctcgfw/luci-app-ssr-plus-Jo/root/www/luci-static/shadowsocksr/css/shadowsocksr.css deleted file mode 100644 index d686f06b6f..0000000000 --- a/package/ctcgfw/luci-app-ssr-plus-Jo/root/www/luci-static/shadowsocksr/css/shadowsocksr.css +++ /dev/null @@ -1,704 +0,0 @@ -@import url("flag-icon.min.css"); - -/*! -Pure v1.0.1 -Copyright 2013 Yahoo! -Licensed under the BSD License. -https://github.com/pure-css/pure/blob/master/LICENSE.md -*/ - - -.pure-g { - letter-spacing: -.31em; - text-rendering: optimizespeed; - font-family: FreeSans, Arimo, "Droid Sans", Helvetica, Arial, sans-serif; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: horizontal; - -webkit-box-direction: normal; - -webkit-flex-flow: row wrap; - -ms-flex-flow: row wrap; - flex-flow: row wrap; - -webkit-align-content: flex-start; - -ms-flex-line-pack: start; - align-content: flex-start -} - -@media all and (-ms-high-contrast:none), -(-ms-high-contrast:active) { - table .pure-g { - display: block - } -} - -.opera-only :-o-prefocus, -.pure-g { - word-spacing: -.43em -} - -.pure-u { - display: inline-block; - zoom: 1; - letter-spacing: normal; - word-spacing: normal; - vertical-align: top; - text-rendering: auto -} - -.pure-g [class*=pure-u] { - font-family: sans-serif -} - -.pure-u-1, -.pure-u-1-1, -.pure-u-1-12, -.pure-u-1-2, -.pure-u-1-24, -.pure-u-1-3, -.pure-u-1-4, -.pure-u-1-5, -.pure-u-1-6, -.pure-u-1-8, -.pure-u-10-24, -.pure-u-11-12, -.pure-u-11-24, -.pure-u-12-24, -.pure-u-13-24, -.pure-u-14-24, -.pure-u-15-24, -.pure-u-16-24, -.pure-u-17-24, -.pure-u-18-24, -.pure-u-19-24, -.pure-u-2-24, -.pure-u-2-3, -.pure-u-2-5, -.pure-u-20-24, -.pure-u-21-24, -.pure-u-22-24, -.pure-u-23-24, -.pure-u-24-24, -.pure-u-3-24, -.pure-u-3-4, -.pure-u-3-5, -.pure-u-3-8, -.pure-u-4-24, -.pure-u-4-5, -.pure-u-5-12, -.pure-u-5-24, -.pure-u-5-5, -.pure-u-5-6, -.pure-u-5-8, -.pure-u-6-24, -.pure-u-7-12, -.pure-u-7-24, -.pure-u-7-8, -.pure-u-8-24, -.pure-u-9-24 { - display: inline-block; - zoom: 1; - letter-spacing: normal; - word-spacing: normal; - vertical-align: top; - text-rendering: auto -} - -.pure-u-1-24 { - width: 4.1667% -} - -.pure-u-1-12, -.pure-u-2-24 { - width: 8.3333% -} - -.pure-u-1-8, -.pure-u-3-24 { - width: 12.5% -} - -.pure-u-1-6, -.pure-u-4-24 { - width: 16.6667% -} - -.pure-u-1-5 { - width: 20% -} - -.pure-u-5-24 { - width: 20.8333% -} - -.pure-u-1-4, -.pure-u-6-24 { - width: 25% -} - -.pure-u-7-24 { - width: 29.1667% -} - -.pure-u-1-3, -.pure-u-8-24 { - width: 33.3333% -} - -.pure-u-3-8, -.pure-u-9-24 { - width: 37.5% -} - -.pure-u-2-5 { - width: 40% -} - -.pure-u-10-24, -.pure-u-5-12 { - width: 41.6667% -} - -.pure-u-11-24 { - width: 45.8333% -} - -.pure-u-1-2, -.pure-u-12-24 { - width: 50% -} - -.pure-u-13-24 { - width: 54.1667% -} - -.pure-u-14-24, -.pure-u-7-12 { - width: 58.3333% -} - -.pure-u-3-5 { - width: 60% -} - -.pure-u-15-24, -.pure-u-5-8 { - width: 62.5% -} - -.pure-u-16-24, -.pure-u-2-3 { - width: 66.6667% -} - -.pure-u-17-24 { - width: 70.8333% -} - -.pure-u-18-24, -.pure-u-3-4 { - width: 75% -} - -.pure-u-19-24 { - width: 79.1667% -} - -.pure-u-4-5 { - width: 80% -} - -.pure-u-20-24, -.pure-u-5-6 { - width: 83.3333% -} - -.pure-u-21-24, -.pure-u-7-8 { - width: 87.5% -} - -.pure-u-11-12, -.pure-u-22-24 { - width: 91.6667% -} - -.pure-u-23-24 { - width: 95.8333% -} - -.pure-u-1, -.pure-u-1-1, -.pure-u-24-24, -.pure-u-5-5 { - width: 100% -} - -.status { - margin: 1rem -0.5rem 1rem -0.5rem; -} - -.block { - margin: 0.5rem 0.5rem; - padding: 0; - font-weight: normal; - font-style: normal; - line-height: 1; - font-family: inherit; - min-width: inherit; - overflow-x: auto; - overflow-y: hidden; - border: 1px solid rgba(0, 0, 0, .05); - border-radius: .500rem; - background-color: #f4; - box-shadow: 0 0 2rem 0 rgba(136, 152, 170, .15); -} - -.img-con { - margin: 1rem; - -} -.pure-img{ - max-height: 100%; - width: auto; -} -.green { - font-size: 1.25rem; - color: #2dce89; -} - -.red { - font-size: 1.25rem; - color: #fb6340; -} - -.sk-text-success { - color: #2dce89; -} - -.sk-text-error { - color: #fb6340; -} - -.gap { - margin-right: 0.5rem; -} - -.block img { - width: 48px; - height: auto; - float: right; -} - -.pure-u-5-8 { - display: flex; - align-items: center; - -} - -.block h4 { - font-size: .8125rem; - font-weight: 600; - margin: 1rem; - color: #8898aa !important; - line-height: 1.8em; -} -.p-in5{ - padding: 8px; -} - - .cbi-section-table-row { - position: relative; - background: #f4; - margin: 10px; - padding: 8px 15px 10px 70px; - box-shadow: 0 0 1rem 0 rgba(136,152,170,.75); - border-radius: .5rem; - border: 0; - color: #fff; - text-align: left; - line-height: 1.7em; - white-space: nowrap; -     text-overflow: ellipsis; - overflow: hidden; - transition: all 0.3s; - -} -.cbi-section-table-row:hover{ - background: #fff; - -} - -.cbi-section-table-row.fast{ - background: #5e72e4; - color: #fff; -} - -.cbi-section-table-row.fast .ssr-button{ - color: #fff; -} -.cbi-section-table-row.fast .ssr-button:hover, -.cbi-section-table-row.fast .ssr-button:focus, -.cbi-section-table-row.fast .ssr-button:active { - color: #fff; - outline: 0; - text-decoration: none; - box-shadow: none; -} - -.host_con.fast { - color: #6f9a37; -} - -.host_con.nopass { - color: #dc3545; -} - -.host_con.middle { - color: #fbc658; -} - -.host_con.slow { - color: #fb6340; -} - -.loadings { - position: absolute; - width: 100%; - height: 100%; - background: rgba(255, 255, 255, 0.7); - border-radius: .5rem; - left: 0; - top: 0; - z-index: 10; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - justify-content: center; - align-items: center; - font-size: 30px; - transition: all 0.3s; -} - -.loadings.hide { - opacity: 0; - visibility: hidden; - pointer-events: none; -} - -.loadings span { - animation: anim-rotate 2s infinite linear; - height: 30px; -} - - -.alias{ - margin-bottom:1px; -} -.incon:nth-child(2) { - position: absolute; - left: 0; - top: 0; - width: 61px; - height: 100%; - border: 0; - border-right: #d1dfed 1px solid; - background-position: top; - -} -.incon:nth-child(2) .tp{ - position: absolute; - left: 0; - bottom: 0; - height: 25%; - width: 100%; - text-align: center; - font-size: 12px; - line-height: 15px; - color: #fff; - background: #525f7f; -} - -.incon:nth-child(3) { - padding-left: 0px; - text-overflow: ellipsis; - overflow: hidden; - white-space: nowrap; -} - -.incon:nth-child(5), -.incon:nth-child(6) { - display: none; -} - -.cbi-section-table-cell { - text-align: right; -} - -.ssr-button { - background: none; - color: #525f7f; - padding: 0 0 0 6px; - height: auto; - line-height: 1.5em; -} - -.ssr-button:hover, -.ssr-button:focus, -.ssr-button:active { - color: #525f7f; - outline: 0; - text-decoration: none; - box-shadow: none; -} - -.cbi-section h3 { - margin-left: 10px; - margin-top: 1rem; -} - - - .cbi-button-check { - color: #fff !important; - background-color: #336633 !important; - border-color: #2e6da4 !important; - font-size:12px; - padding:0.5rem 0.8rem; - float:right; - margin-right:10px; - margin-top:0rem; - -} - -.cbi-section-table-cell { - position: relative; -} - -.host_con { - position: absolute; - left: 0; - width: 50px; - text-align: left; - height: 22px; - font-weight: bold; -} - -.host_ok { - color: #fff; - background: #2dce89; - padding: 0.1rem 0.5rem; - border-radius: 0.2rem; -} - -.host_error { - color: #fff; - background: #f5365c; - padding: 0.1rem 0.5rem; - border-radius: 0.2rem; -} -footer.mobile-hide{ - display: block; -} -.cbi-button-add{ - position:fixed; - padding: 0.3rem 0.5rem; - z-index:1000; - width:70px !important; - height:70px; - bottom:90px; - right:55px; - font-size:20px; - border-radius:50%; - display:block; - background-color: #336633!important; - border-color: #CC6699 !important; - box-shadow: 0 0 1rem 0 rgba(136,152,170,.75); - } - - -.mar-10 {margin-left: 50px; margin-right: 10px;} - -.status-bar{ - position: fixed; - bottom: 0; - right: 0; - box-shadow: 0 0 2rem 0 rgba(136,152,170,.3); - color: #525f7f; - background: #fff; - z-index: 5; - box-sizing: border-box; -} - -.status-bar .inner{ - margin: 1em; -} - -.status-bar .inner .flag{ - height: 3em; - display: block; - float: left; - margin-right: 1em; -} -.status-bar .icon-con{ - height: 3em; - text-align: right; -} - - - -@media screen and (max-width: 1900px) { - .pure-u-1-5 { - width: 25%; - } -} - -@media screen and (max-width: 1600px) { - .pure-u-1-5 { - width: 33.33333333%; - } -} - -@media screen and (max-width: 1200px) { - .pure-u-1-5 { - width: 50%; - } - - .status .pure-u-1-5 { - width: 33.333%; - } -} - -@media screen and (max-width: 700px) { - .pure-u-1-4 { - width: 50%; - } - - .pure-u-1-2 { - width: 100%; - } - - .pure-u-1-5 { - width: 100%; - font-size: 14px; - } - - .status .pure-u-1-5 { - width: 50%; - } - - .cbi-button-add { - position: fixed; - padding: 0.3rem 0.5rem; - z-index: 1000; - width: 50px !important; - height: 50px; - bottom: 90px; - right: 5px; - font-size: 16px; - border-radius: 50%; - display: block; - background-color: #fb6340!important; - border-color: #fb6340 !important; - box-shadow: 0 0 1rem 0 rgba(136, 152, 170, .75); - } -} - -.modals-bg { - position: fixed; - z-index: 999; - width: 100%; - height: 100%; - left: 0; - top: 0; - background: rgba(255, 255, 255, 0.8); - display: none; -} - -.modals { - position: fixed; - z-index: 100; - width: 60%; - height: 500px; - background: #172b4d; - left: 20%; - top: 15%; - color: #fff; - border-radius: 10px; - padding: 20px; - - box-sizing: border-box; - -moz-box-sizing: border-box; - /* Firefox */ - -webkit-box-sizing: border-box; - /* Safari */ -} - -.modals h2 { - padding: 0 !important; -} - -.modals h3 { - font-size: 14px; - color: #f5365c !important; - background: transparent; - margin: 0; - padding: 0; -} - -#log_content3 { - border: 0; - width: 99%; - height: calc(100% - 4rem); - font-family: 'Lucida Console'; - font-size: 11px; - background: transparent; - color: #FFFFFF; - outline: none; - padding-left: 3px; - padding-right: 22px; - overflow: hidden -} - -@media screen and (max-width: 1024px) { - .modals { - position: fixed; - z-index: 100; - width: 80%; - height: 500px; - background: #172b4d; - left: 10%; - top: 15%; - color: #fff; - border-radius: 10px; - padding: 20px; - } -} - -@media screen and (max-width: 700px) { - .modals-bg { - position: fixed; - z-index: 100000; - - } - - .modals { - width: 100%; - height: 100%; - left: 0; - top: 0; - } - .status-bar .pure-u-1-2{ - width: 50%; - } - .status-bar .inner .flag{ - height: 3em; - display: block; - float: left; - margin-right: 1em; - } - .status-bar .icon-con{ - height: 2.5em; - text-align: right; - } -} diff --git a/package/ctcgfw/luci-app-vssr/Makefile b/package/ctcgfw/luci-app-vssr/Makefile index 50bb882f88..3b202a9139 100644 --- a/package/ctcgfw/luci-app-vssr/Makefile +++ b/package/ctcgfw/luci-app-vssr/Makefile @@ -1,39 +1,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-vssr -PKG_VERSION:=1.32 -PKG_RELEASE:=4-20200331 +PKG_VERSION:=1.11 +PKG_RELEASE:=20200719 -PKG_CONFIG_DEPENDS:= CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_V2ray \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Trojan \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun:kcptun \ +PKG_CONFIG_DEPENDS:= CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_V2ray \ CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Server \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Server \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Socks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Socks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ipt2socks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_microsocks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_dns2socks \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_dnscrypt_proxy \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_dnsforwarder \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_haproxy \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_udpspeeder \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_udp2raw-tunnel \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_privoxy \ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs\ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs-server\ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-client\ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-server\ - CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_v2ray-plugin + CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Socks include $(INCLUDE_DIR)/package.mk define Package/$(PKG_NAME)/config -config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks - bool "Include Shadowsocks New Version" - default y config PACKAGE_$(PKG_NAME)_INCLUDE_V2ray bool "Include V2ray" @@ -42,86 +19,14 @@ config PACKAGE_$(PKG_NAME)_INCLUDE_V2ray config PACKAGE_$(PKG_NAME)_INCLUDE_Trojan bool "Include Trojan" default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun - bool "Include Kcptun" - default y - + config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Server bool "Include ShadowsocksR Server" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Server - bool "Include Shadowsocks Server" - default y + default n config PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Socks bool "Include ShadowsocksR Socks and Tunnel" default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Socks - bool "Include Shadowsocks Socks and Tunnel" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_ipt2socks - bool "Include ipt2socks" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_microsocks - bool "Include microsocks" - default n - -config PACKAGE_$(PKG_NAME)_INCLUDE_dns2socks - bool "Include dns2socks" - default n - -config PACKAGE_$(PKG_NAME)_INCLUDE_dnscrypt_proxy - bool "Include dnscrypt-proxy-full" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_dnsforwarder - bool "Include dnsforwarder" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS - bool "Include chinadns" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_haproxy - bool "Include haproxy" - default n - -config PACKAGE_$(PKG_NAME)_INCLUDE_privoxy - bool "Include privoxy http local" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs - bool "Include simple-obfsl" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs-server - bool "Include simple-obfs-server" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_udpspeeder - bool "Include udpspeeder" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_udp2raw-tunnel - bool "Include udp2raw-tunnel" - default y - -config PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-client - bool "Include GoQuiet-client" - default n - -config PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-server - bool "Include GoQuiet-server" - default n - -config PACKAGE_$(PKG_NAME)_INCLUDE_v2ray-plugin - bool "Include v2ray-plugin" - default y endef define Package/luci-app-vssr @@ -130,30 +35,12 @@ define Package/luci-app-vssr SUBMENU:=3. Applications TITLE:=A New SS/SSR/V2Ray/Trojan LuCI interface PKGARCH:=all - DEPENDS:=+shadowsocksr-libev-alt +ipset +ip-full +iptables-mod-tproxy +dnsmasq-full +coreutils +coreutils-base64 +bash +pdnsd-alt +wget +tcpping +lua-maxminddb +lua +luasocket +jshn +lua-cjson +coreutils-nohup +curl \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks:shadowsocks-libev-ss-redir \ + DEPENDS:=+shadowsocksr-libev-alt +ipset +ip-full +iptables-mod-tproxy +dnsmasq-full +coreutils +coreutils-base64 +bash +pdnsd-alt +wget +luasocket +jshn +lua-cjson +coreutils-nohup +lua-maxminddb \ +PACKAGE_$(PKG_NAME)_INCLUDE_V2ray:v2ray \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Trojan:trojan \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Kcptun:kcptun-client \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Trojan:trojan \ + +PACKAGE_$(PKG_NAME)_INCLUDE_Trojan:ipt2socks \ +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Server:shadowsocksr-libev-server \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Server:shadowsocks-libev-ss-server \ - +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Socks:shadowsocksr-libev-ssr-local \ - +PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks_Socks:shadowsocks-libev-ss-local \ - +PACKAGE_$(PKG_NAME)_INCLUDE_ipt2socks:ipt2socks \ - +PACKAGE_$(PKG_NAME)_INCLUDE_microsocks:microsocks \ - +PACKAGE_$(PKG_NAME)_INCLUDE_dns2socks:dns2socks \ - +PACKAGE_$(PKG_NAME)_INCLUDE_dnscrypt_proxy:dnscrypt-proxy-full \ - +PACKAGE_$(PKG_NAME)_INCLUDE_dnsforwarder:dnsforwarder \ - +PACKAGE_$(PKG_NAME)_INCLUDE_ChinaDNS:openwrt_chinadns \ - +PACKAGE_$(PKG_NAME)_INCLUDE_haproxy:haproxy \ - +PACKAGE_$(PKG_NAME)_INCLUDE_privoxy:privoxy \ - +PACKAGE_$(PKG_NAME)_INCLUDE_udpspeeder:speederv2-tunnel \ - +PACKAGE_$(PKG_NAME)_INCLUDE_udp2raw-tunnel:udp2raw-tunnel \ - +PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs:simple-obfs \ - +PACKAGE_$(PKG_NAME)_INCLUDE_simple-obfs-server:simple-obfs-server \ - +PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-client:gq-client \ - +PACKAGE_$(PKG_NAME)_INCLUDE_GoQuiet-server:gq-server \ - +PACKAGE_$(PKG_NAME)_INCLUDE_v2ray-plugin:v2ray-plugin + +PACKAGE_$(PKG_NAME)_INCLUDE_ShadowsocksR_Socks:shadowsocksr-libev-ssr-local endef define Build/Prepare @@ -163,8 +50,12 @@ define Build/Compile endef define Package/luci-app-vssr/conffiles -/etc/ssr_ip -/etc/dnsmasq.vssr/gfw_list.conf + /etc/ssr_ip + /etc/dnsmasq.ssr/gfw_list.conf + /etc/china_ssr.txt + /etc/dnsmasq.ssr/gfw_list.conf + /etc/dnsmasq.ssr/gfw_base.conf + /etc/dnsmasq.oversea/oversea_list.conf endef define Package/luci-app-vssr/install @@ -180,7 +71,8 @@ define Package/luci-app-vssr/postinst #!/bin/sh if [ -z "$${IPKG_INSTROOT}" ]; then ( . /etc/uci-defaults/luci-vssr ) && rm -f /etc/uci-defaults/luci-vssr - rm -f /tmp/luci-indexcache + rm -rf /tmp/luci-indexcache + rm -rf /tmp/luci-modulecache/* chmod 755 /etc/init.d/vssr >/dev/null 2>&1 /etc/init.d/vssr enable >/dev/null 2>&1 fi @@ -197,5 +89,3 @@ exit 0 endef $(eval $(call BuildPackage,luci-app-vssr)) - - diff --git a/package/ctcgfw/luci-app-vssr/luasrc/controller/vssr.lua b/package/ctcgfw/luci-app-vssr/luasrc/controller/vssr.lua index 8dba972fac..effb95cb94 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/controller/vssr.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/controller/vssr.lua @@ -3,375 +3,292 @@ module("luci.controller.vssr", package.seeall) function index() - if not nixio.fs.access("/etc/config/vssr") then - return -end + if not nixio.fs.access("/etc/config/vssr") then return end if nixio.fs.access("/usr/bin/ssr-redir") then - entry({"admin", "vpn"}, firstchild(), "VPN", 45).dependent = false - entry({"admin", "vpn", "vssr"},alias("admin", "vpn", "vssr", "client"), _("Hello World"), 10).dependent=true - entry({"admin", "vpn", "vssr", "client"}, cbi("vssr/client"), _("SSR Client"), 10).leaf=true - entry({"admin", "vpn", "vssr", "servers"}, cbi("vssr/servers"), _("Node List"), 20).leaf=true - entry({"admin", "vpn", "vssr", "servers"}, arcombine(cbi("vssr/servers"), cbi("vssr/client-config")), _("Node List"), 20).leaf =true - entry({"admin", "vpn", "vssr", "subscription"},cbi("vssr/subscription"),_("Subscription"),30).leaf=true - entry({"admin", "vpn", "vssr", "control"}, cbi("vssr/control"), _("Access Control"), 40).leaf=true - entry({"admin", "vpn", "vssr", "servers-list"}, arcombine(cbi("vssr/servers-list"), cbi("vssr/client-config")), _("Severs Nodes"), 50).leaf =true - entry({"admin", "vpn", "vssr", "appointlist"},form("vssr/appointlist"),_("Appointlist List"),60).leaf =true - entry({"admin", "vpn", "vssr", "udp2raw"},cbi("vssr/udp2raw"),_("udp2raw tunnel"),70).leaf = true - entry({"admin", "vpn", "vssr", "advanced"}, cbi("vssr/advanced"),_("Advanced Settings"), 80).leaf =true - elseif nixio.fs.access("/usr/bin/ssr-server") then - entry({"admin", "vpn", "vssr"}, alias("admin", "vpn", "vssr", "server"), _("vssr"), 10).dependent =true - else - return - end - if nixio.fs.access("/usr/bin/ssr-server") then - entry({"admin", "vpn", "vssr", "server"},arcombine(cbi("vssr/server"), cbi("vssr/server-config")), _("SSR Server"), 85).leaf = true - end - entry({"admin", "vpn", "vssr", "status"},form("vssr/status"),_("Status"), 90).leaf = true - entry({"admin", "vpn", "vssr", "logview"}, cbi("vssr/logview", {hideapplybtn=true, hidesavebtn=true, hideresetbtn=true}), _("Log") ,100).leaf=true - entry({"admin", "vpn", "vssr", "refresh"}, call("refresh_data")) - entry({"admin", "vpn", "vssr", "checkport"}, call("check_port")) - entry({"admin", "vpn", "vssr", "checkports"}, call("check_ports")) - entry({"admin", "vpn", "vssr", "ping"}, call("act_ping")).leaf=true - entry({"admin", "vpn", "vssr", "fileread"}, call("act_read"), nil).leaf=true - entry({"admin", "vpn", "vssr", "switch"}, call("switch")) - entry({"admin", "vpn", "vssr", "run"}, call("act_status")) - entry({"admin", "vpn", "vssr", "change"}, call("change_node")) - entry({"admin", "vpn", "vssr", "allserver"}, call("get_servers")) - entry({"admin", "vpn", "vssr", "subscribe"}, call("get_subscribe")) - entry({"admin", "vpn", "vssr", "flag"}, call("get_flag")) - entry({"admin", "vpn", "vssr", "ip"}, call("check_ip")) - + entry({"admin", "services", "vssr"}, + alias("admin", "services", "vssr", "client"), _("Hello World"), 10).dependent = + true -- 首页 + entry({"admin", "services", "vssr", "client"}, cbi("vssr/client"), + _("SSR Client"), 10).leaf = true -- 基本设置 + entry({"admin", "services", "vssr", "servers"}, cbi("vssr/servers"), + _("Severs Nodes"), 11).leaf = true -- 服务器节点 + entry({"admin", "services", "vssr", "servers"}, + arcombine(cbi("vssr/servers"), cbi("vssr/client-config")), + _("Severs Nodes"), 11).leaf = true -- 编辑节点 + entry({"admin", "services", "vssr", "control"}, cbi("vssr/control"), + _("Access Control"), 12).leaf = true -- 访问控制 + if nixio.fs.access("/usr/bin/v2ray/v2ray") then + entry({"admin", "services", "vssr", "socks5"}, cbi("vssr/socks5"), + _("Socks5"), 13).leaf = true -- Socks5代理 + end + entry({"admin", "services", "vssr", "advanced"}, cbi("vssr/advanced"), + _("Advanced Settings"), 14).leaf = true -- 高级设置 + elseif nixio.fs.access("/usr/bin/ssr-server") then + entry({"admin", "services", "vssr"}, + alias("admin", "services", "vssr", "server"), _("vssr"), 10).dependent = + true + else + return end + if nixio.fs.access("/usr/bin/ssr-server") then + entry({"admin", "services", "vssr", "server"}, + arcombine(cbi("vssr/server"), cbi("vssr/server-config")), + _("SSR Server"), 20).leaf = true + end + + entry({"admin", "services", "vssr", "log"}, cbi("vssr/log"), _("Log"), 30).leaf = + true + entry({"admin", "services", "vssr", "licence"}, template("vssr/licence"), + _("Licence"), 40).leaf = true + + entry({"admin", "services", "vssr", "refresh"}, call("refresh_data")) -- 更新白名单和GFWLIST + entry({"admin", "services", "vssr", "checkport"}, call("check_port")) -- 检测单个端口并返回Ping + entry({"admin", "services", "vssr", "run"}, call("act_status")) -- 检测全局服务器状态 + entry({"admin", "services", "vssr", "change"}, call("change_node")) -- 切换节点 + entry({"admin", "services", "vssr", "allserver"}, call("get_servers")) -- 获取所有节点Json + entry({"admin", "services", "vssr", "subscribe"}, call("get_subscribe")) -- 执行订阅 + entry({"admin", "services", "vssr", "flag"}, call("get_flag")) -- 获取节点国旗 iso code + entry({"admin", "services", "vssr", "ip"}, call("check_ip")) -- 获取ip情况 + entry({"admin", "services", "vssr", "switch"}, call("switch")) -- 设置节点为自动切换 +end + -- 执行订阅 function get_subscribe() - local cjson = require "cjson" - local e = {} - local uci = luci.model.uci.cursor() - local auto_update = luci.http.formvalue("auto_update") - local auto_update_time = luci.http.formvalue("auto_update_time") - local proxy = luci.http.formvalue("proxy") - local subscribe_url = luci.http.formvalue("subscribe_url") - if subscribe_url ~= "[]" then - local cmd1 = 'uci set vssr.@server_subscribe[0].auto_update="' .. + + local cjson = require "cjson" + local e = {} + local uci = luci.model.uci.cursor() + local auto_update = luci.http.formvalue("auto_update") + local auto_update_time = luci.http.formvalue("auto_update_time") + local proxy = luci.http.formvalue("proxy") + local subscribe_url = luci.http.formvalue("subscribe_url") + if subscribe_url ~= "[]" then + local cmd1 = 'uci set vssr.@server_subscribe[0].auto_update="' .. auto_update .. '"' - local cmd2 = 'uci set vssr.@server_subscribe[0].auto_update_time="' .. + local cmd2 = 'uci set vssr.@server_subscribe[0].auto_update_time="' .. auto_update_time .. '"' - local cmd3 = 'uci set vssr.@server_subscribe[0].proxy="' .. proxy .. '"' - luci.sys.call('uci delete vssr.@server_subscribe[0].subscribe_url ') - luci.sys.call(cmd1) - luci.sys.call(cmd2) - luci.sys.call(cmd3) - for k, v in ipairs(cjson.decode(subscribe_url)) do - luci.sys.call( - 'uci add_list vssr.@server_subscribe[0].subscribe_url="' .. v .. '"') - end - luci.sys.call('uci commit vssr') - luci.sys.call( + local cmd3 = 'uci set vssr.@server_subscribe[0].proxy="' .. proxy .. '"' + luci.sys.call('uci delete vssr.@server_subscribe[0].subscribe_url ') + luci.sys.call(cmd1) + luci.sys.call(cmd2) + luci.sys.call(cmd3) + for k, v in ipairs(cjson.decode(subscribe_url)) do + luci.sys.call( + 'uci add_list vssr.@server_subscribe[0].subscribe_url="' .. v .. + '"') + end + luci.sys.call('uci commit vssr') + luci.sys.call( "nohup /usr/bin/lua /usr/share/vssr/subscribe.lua >/www/check_update.htm 2>/dev/null &") - - e.error = 0 - else - e.error = 1 + e.error = 0 + else + e.error = 1 end - luci.http.prepare_content("application/json") - luci.http.write_json(e) + luci.http.prepare_content("application/json") + luci.http.write_json(e) - end +end -- 获取所有节点 function get_servers() - local uci = luci.model.uci.cursor() - local server_table = {} - uci:foreach("vssr", "servers", function(s) - local e = {} - e["name"] = s[".name"] - local t1 = luci.sys.exec( + local uci = luci.model.uci.cursor() + local server_table = {} + uci:foreach("vssr", "servers", function(s) + local e = {} + e["name"] = s[".name"] + local t1 = luci.sys.exec( "ping -c 1 -W 1 %q 2>&1 | grep -o 'time=[0-9]*.[0-9]' | awk -F '=' '{print$2}'" % s["server"]) - e["t1"] = t1 - table.insert(server_table, e) + e["t1"] = t1 + table.insert(server_table, e) end) - luci.http.prepare_content("application/json") - luci.http.write_json(server_table) + luci.http.prepare_content("application/json") + luci.http.write_json(server_table) end -- 切换节点 function change_node() - local e = {} - local uci = luci.model.uci.cursor() - local sid = luci.http.formvalue("set") - local name = "" - uci:foreach("vssr", "global", function(s) name = s[".name"] end) - e.status = false - e.sid = sid - if sid ~= "" then - uci:set("vssr", name, "global_server", sid) - uci:commit("vssr") - luci.sys.call("/etc/init.d/vssr restart") - e.status = true - end - luci.http.prepare_content("application/json") - luci.http.write_json(e) -end - -function switch() - local e = {} - local uci = luci.model.uci.cursor() - local sid = luci.http.formvalue("node") - local isSwitch = uci:get("vssr", sid, "switch_enable") - if isSwitch == "1" then - uci:set("vssr", sid, "switch_enable","0") - e.switch = false - else - uci:set("vssr", sid, "switch_enable","1") - e.switch = true - end - uci:commit("vssr") - e.status = true - luci.http.prepare_content("application/json") - luci.http.write_json(e) - end - - --- 检测全局服务器状态 -function act_status() - math.randomseed(os.time()) - local e = {} --- 全局服务器 - e.global=luci.sys.call("ps -w | grep ssr-retcp | grep -v grep >/dev/null") == 0 --- 检测Socks5 - - if tonumber(luci.sys.exec("ps -w | grep ssr-local |grep -v grep| wc -l"))>0 then - e.socks5 = true - elseif tonumber(luci.sys.exec("ps -w | grep ss-local |grep -v grep| wc -l"))>0 then - e.socks5 = true - elseif tonumber(luci.sys.exec("ps -w | grep v2-ssr-local |grep -v grep| wc -l"))>0 then - end ---检测chinadns状态 - if tonumber(luci.sys.exec("ps -w | grep chinadns |grep -v grep| wc -l"))>0 then - e.chinadns= true - elseif tonumber(luci.sys.exec("ps -w | grep dnsparsing |grep -v grep| wc -l"))>0 then - e.chinadns= true - elseif tonumber(luci.sys.exec("ps -w | grep dnscrypt-proxy |grep -v grep| wc -l"))>0 then - e.chinadns= true - elseif tonumber(luci.sys.exec("ps -w | grep pdnsd |grep -v grep| wc -l"))>0 then - e.chinadns= true - elseif tonumber(luci.sys.exec("ps -w | grep dns2socks |grep -v grep| wc -l"))>0 then - e.chinadns= true - elseif tonumber(luci.sys.exec("ps -w | grep dnsforwarder |grep -v grep| wc -l"))>0 then - e.chinadns= true -end ---检测服务端状态 - if tonumber(luci.sys.exec("ps -w | grep ssr-server |grep -v grep| wc -l"))>0 then - e.server= true -end - if luci.sys.call("pidof ssr-server >/dev/null") == 0 then - e.ssr_server= true -end - if luci.sys.call("pidof ss-server >/dev/null") == 0 then - e.ss_server= true -end - if luci.sys.call("ps -w | grep v2ray-server | grep -v grep >/dev/null") == 0 then - e.v2_server= true - -end - - -- 检测国内通道 - e.baidu = false - sret = luci.sys.call("/usr/bin/ssr-check www.baidu.com 80 3 1") - if sret == 0 then - e.baidu = true -end - - -- 检测国外通道 - e.google = false - sret = luci.sys.call("/usr/bin/ssr-check www.google.com 80 3 1") - if sret == 0 then - e.google = true -end - - --- 检测游戏模式状态 - e.game = false - if tonumber(luci.sys.exec("ps -w | grep ssr-reudp |grep -v grep| wc -l"))>0 then - e.game= true - else - if tonumber(luci.sys.exec("ps -w | grep ssr-retcp |grep \"\\-u\"|grep -v grep| wc -l"))>0 then - e.game= true - end + local e = {} + local uci = luci.model.uci.cursor() + local sid = luci.http.formvalue("set") + local name = "" + uci:foreach("vssr", "global", function(s) name = s[".name"] end) + e.status = false + e.sid = sid + if sid ~= "" then + uci:set("vssr", name, "global_server", sid) + uci:commit("vssr") + luci.sys.call("/etc/init.d/vssr restart") + e.status = true end 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") - e.index = luci.http.formvalue("index") - local iret = luci.sys.call(" ipset add ss_spec_wan_ac " .. domain .. " 2>/dev/null") - 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 $(tcpping -c 1 -i 1 -p %s %s 2>&1 | grep -o 'ttl=[0-9]* time=[0-9]*.[0-9]' | awk -F '=' '{print$3}') 2>/dev/null",port, domain)) - 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 set ="/usr/bin/ssr-check www." .. luci.http.formvalue("set") .. ".com 80 3 1" - sret=luci.sys.call(set) - if sret== 0 then - retstring ="0" - else - retstring ="1" - end - luci.http.prepare_content("application/json") - luci.http.write_json({ ret=retstring }) +--设置节点为自动切换 +function switch() + local e = {} + local uci = luci.model.uci.cursor() + local sid = luci.http.formvalue("node") + local isSwitch = uci:get("vssr", sid, "switch_enable") + if isSwitch == "1" then + uci:set("vssr", sid, "switch_enable","0") + e.switch = false + else + uci:set("vssr", sid, "switch_enable","1") + e.switch = true + end + uci:commit("vssr") + e.status = true + luci.http.prepare_content("application/json") + luci.http.write_json(e) +end + +-- 检测全局服务器状态 +function act_status() + math.randomseed(os.time()) + local e = {} + -- 全局服务器 + e.global = luci.sys.call( + "busybox ps -w | grep vssr_t | grep -v grep >/dev/null") == 0 + -- 检测PDNSD状态 + e.pdnsd = luci.sys.call("pidof pdnsd >/dev/null") == 0 + -- 检测游戏模式状态 + e.game = luci.sys.call( + "busybox ps -w | grep vssr_u | grep -v grep >/dev/null") == 0 + + -- 检测Socks5 + e.socks5 = luci.sys.call( + "busybox ps -w | grep vssr_s | grep -v grep >/dev/null") == 0 + + luci.http.prepare_content("application/json") + luci.http.write_json(e) end -- 刷新检测文件 function refresh_data() -local set =luci.http.formvalue("set") -local icount =0 + local set = luci.http.formvalue("set") + local icount = 0 -if set == "gfw_data" then - refresh_cmd="wget-ssl --no-check-certificate https://cdn.jsdelivr.net/gh/gfwlist/gfwlist/gfwlist.txt -O /tmp/gfw.b64" - sret=luci.sys.call(refresh_cmd .. " 2>/dev/null") - if sret== 0 then - luci.sys.call("/usr/bin/vssr-gfw") - icount = luci.sys.exec("cat /tmp/gfwnew.txt | wc -l") - if tonumber(icount)>1000 then - oldcount=luci.sys.exec("cat /etc/dnsmasq.vssr/gfw_list.conf | wc -l") - if tonumber(icount) ~= tonumber(oldcount) then - luci.sys.exec("cp -f /tmp/gfwnew.txt /etc/dnsmasq.vssr/gfw_list.conf") - luci.sys.exec("cp -f /tmp/gfwnew.txt /tmp/dnsmasq.vssr/gfw_list.conf") - luci.sys.call("/etc/init.d/dnsmasq restart") - retstring=tostring(math.ceil(tonumber(icount)/2)) - else - retstring ="0" - end - else - retstring ="-1" - end - luci.sys.exec("rm -f /tmp/gfwnew.txt ") -else - retstring ="-1" -end -elseif set == "ip_data" then - if (luci.model.uci.cursor():get_first('vssr', 'global', 'chnroute', '0') == '1') then - refresh_cmd="wget-ssl --no-check-certificate -O - " .. luci.model.uci.cursor():get_first('vssr', 'global', 'chnroute_url', 'https://ispip.clang.cn/all_cn.txt') .. ' > /tmp/china_ssr.txt 2>/dev/null' - else - refresh_cmd="wget -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' 2>/dev/null| awk -F\\| '/CN\\|ipv4/ { printf(\"%s/%d\\n\", $4, 32-log($5)/log(2)) }' > /tmp/china_ssr.txt" - end - sret=luci.sys.call(refresh_cmd) - icount = luci.sys.exec("cat /tmp/china_ssr.txt | wc -l") - if sret== 0 and tonumber(icount)>1000 then - oldcount=luci.sys.exec("cat /etc/china_ssr.txt | wc -l") - if tonumber(icount) ~= tonumber(oldcount) then - luci.sys.exec("cp -f /tmp/china_ssr.txt /etc/china_ssr.txt") - retstring=tostring(tonumber(icount)) - else - retstring ="0" - end - else - retstring ="-1" - end - luci.sys.exec("rm -f /tmp/china_ssr.txt ") -else -if nixio.fs.access("/usr/bin/wget-ssl") then - refresh_cmd="wget-ssl --no-check-certificate -O - ".. luci.model.uci.cursor():get_first('vssr', 'global', 'adblock_url','https://easylist-downloads.adblockplus.org/easylistchina+easylist.txt') .." > /tmp/adnew.conf" -end -sret=luci.sys.call(refresh_cmd .. " 2>/dev/null") -if sret== 0 then - luci.sys.call("/usr/bin/vssr-ad") - icount = luci.sys.exec("cat /tmp/ad.conf | wc -l") - if tonumber(icount)>1000 then - if nixio.fs.access("/etc/dnsmasq.vssr/ad.conf") then - oldcount=luci.sys.exec("cat /etc/dnsmasq.vssr/ad.conf | wc -l") - else - oldcount=0 - end - if tonumber(icount) ~= tonumber(oldcount) then - luci.sys.exec("cp -f /tmp/ad.conf /etc/dnsmasq.vssr/ad.conf") - luci.sys.exec("cp -f /tmp/ad.conf /tmp/dnsmasq.vssr/ad.conf") - luci.sys.call("/etc/init.d/dnsmasq restart") - retstring=tostring(math.ceil(tonumber(icount))) - else - retstring ="0" - end - else - retstring ="-1" - end - luci.sys.exec("rm -f /tmp/ad.conf") -else - retstring ="-1" -end -end -luci.http.prepare_content("application/json") -luci.http.write_json({ ret=retstring ,retcount=icount}) -end - --- 检测所有服务器 -function check_ports() - local set = "" - local retstring = "

" - local s - local server_name = "" - local vssr = "vssr" - local uci = luci.model.uci.cursor() - local iret = 1 - - uci:foreach( - vssr, - "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 + if set == "gfw_data" then + if nixio.fs.access("/usr/bin/wget-ssl") then + refresh_cmd = + "wget-ssl --no-check-certificate https://cdn.jsdelivr.net/gh/gfwlist/gfwlist/gfwlist.txt -O /tmp/gfw.b64" + else + refresh_cmd = "wget -O /tmp/gfw.b64 http://iytc.net/tools/list.b64" end - ) - + sret = luci.sys.call(refresh_cmd .. " 2>/dev/null") + if sret == 0 then + luci.sys.call("/usr/bin/vssr-gfw") + icount = luci.sys.exec("cat /tmp/gfwnew.txt | wc -l") + if tonumber(icount) > 1000 then + oldcount = luci.sys.exec( + "cat /etc/dnsmasq.ssr/gfw_list.conf | wc -l") + if tonumber(icount) ~= tonumber(oldcount) then + luci.sys.exec( + "cp -f /tmp/gfwnew.txt /etc/dnsmasq.ssr/gfw_list.conf") + retstring = tostring(math.ceil(tonumber(icount) / 2)) + else + retstring = "0" + end + else + retstring = "-1" + end + luci.sys.exec("rm -f /tmp/gfwnew.txt ") + else + retstring = "-1" + end + elseif set == "ip_data" then + refresh_cmd = + "wget -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' 2>/dev/null| awk -F\\| '/CN\\|ipv4/ { printf(\"%s/%d\\n\", $4, 32-log($5)/log(2)) }' > /tmp/china_ssr.txt" + sret = luci.sys.call(refresh_cmd) + icount = luci.sys.exec("cat /tmp/china_ssr.txt | wc -l") + if sret == 0 and tonumber(icount) > 1000 then + oldcount = luci.sys.exec("cat /etc/china_ssr.txt | wc -l") + if tonumber(icount) ~= tonumber(oldcount) then + luci.sys.exec("cp -f /tmp/china_ssr.txt /etc/china_ssr.txt") + retstring = tostring(tonumber(icount)) + else + retstring = "0" + end + else + retstring = "-1" + end + luci.sys.exec("rm -f /tmp/china_ssr.txt ") + else + local need_process = 0 + if nixio.fs.access("/usr/bin/wget-ssl") then + refresh_cmd = + "wget-ssl --no-check-certificate -O - https://easylist-downloads.adblockplus.org/easylistchina+easylist.txt > /tmp/adnew.conf" + need_process = 1 + else + refresh_cmd = "wget -O /tmp/ad.conf http://iytc.net/tools/ad.conf" + end + sret = luci.sys.call(refresh_cmd .. " 2>/dev/null") + if sret == 0 then + if need_process == 1 then + luci.sys.call("/usr/bin/vssr-ad") + end + icount = luci.sys.exec("cat /tmp/ad.conf | wc -l") + if tonumber(icount) > 1000 then + if nixio.fs.access("/etc/dnsmasq.ssr/ad.conf") then + oldcount = luci.sys.exec( + "cat /etc/dnsmasq.ssr/ad.conf | wc -l") + else + oldcount = 0 + end + if tonumber(icount) ~= tonumber(oldcount) then + luci.sys.exec("cp -f /tmp/ad.conf /etc/dnsmasq.ssr/ad.conf") + retstring = tostring(math.ceil(tonumber(icount))) + if oldcount == 0 then + luci.sys.call("/etc/init.d/dnsmasq restart") + end + else + retstring = "0" + end + else + retstring = "-1" + end + luci.sys.exec("rm -f /tmp/ad.conf") + else + retstring = "-1" + end + end luci.http.prepare_content("application/json") - luci.http.write_json({ret = retstring}) + luci.http.write_json({ret = retstring, retcount = icount}) end -- 检测单个节点状态并返回连接速度 function check_port() - local e = {} - -- e.index=luci.http.formvalue("host") - local t1 = luci.sys.exec( - "ping -c 1 -W 1 %q 2>&1 | grep -o 'time=[0-9]*.[0-9]' | awk -F '=' '{print$2}'" % - luci.http.formvalue("host")) + local sockets = require "socket" + local set = luci.http.formvalue("host") + local port = luci.http.formvalue("port") + local retstring = "" + local iret = 1 + iret = luci.sys.call(" ipset add ss_spec_wan_ac " .. set .. " 2>/dev/null") + socket = nixio.socket("inet", "stream") + socket:setopt("socket", "rcvtimeo", 2) + socket:setopt("socket", "sndtimeo", 2) + local t0 = sockets.gettime() + ret = socket:connect(set, port) + socket:close() + local t1 = sockets.gettime() + if tostring(ret) == "true" then + retstring = "1" + else + retstring = "0" + end + if iret == 0 then + luci.sys.call(" ipset del ss_spec_wan_ac " .. set) + end + + local tt = t1 - t0 luci.http.prepare_content("application/json") - luci.http.write_json({ret = 1, used = t1}) + luci.http.write_json({ret = retstring , used = math.floor(tt*1000 + 0.5)}) end @@ -418,18 +335,19 @@ end -- 检测 当前节点ip 和 网站访问情况 function check_ip() --- 获取当前的ip和国家 + + -- 获取当前的ip和国家 local e = {} local d = {} local mm = require 'maxminddb' local db = mm.open('/usr/share/vssr/GeoLite2-Country.mmdb') - local ip = string.gsub(luci.sys.exec("curl -s https://api.ip.sb/ip"), "\n", "") + local ip = string.gsub(luci.sys.exec("content=`wget --no-check-certificate -q -O - https://api.ip.sb/ip`;echo $content"), "\n", "") local res = db:lookup(ip) d.flag = string.lower(res:get("country", "iso_code")) d.country = res:get("country", "names", "zh-CN") e.outboard = ip e.outboardip = d - + -- 检测国内通道 e.baidu = false sret1 = luci.sys.call("/usr/bin/ssr-check www.baidu.com 80 3 1") @@ -463,16 +381,3 @@ function get_flag() luci.http.prepare_content("application/json") luci.http.write_json(e) end - -function act_read(lfile) - local NXFS = require "nixio.fs" - local HTTP = require "luci.http" - local lfile = HTTP.formvalue("lfile") - local ldata={} - ldata[#ldata+1] = NXFS.readfile(lfile) or "_nofile_" - if ldata[1] == "" then - ldata[1] = "_nodata_" - end - HTTP.prepare_content("application/json") - HTTP.write_json(ldata) -end diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/advanced.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/advanced.lua index 15c2ba747b..c938774732 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/advanced.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/advanced.lua @@ -1,25 +1,52 @@ local vssr = "vssr" local uci = luci.model.uci.cursor() local server_table = {} + +local gfwmode = 0 +local gfw_count = 0 +local ip_count = 0 +local ad_count = 0 + +if nixio.fs.access("/etc/dnsmasq.ssr/gfw_list.conf") then gfwmode = 1 end + +local sys = require "luci.sys" + +if gfwmode == 1 then + gfw_count = + tonumber(sys.exec("cat /etc/dnsmasq.ssr/gfw_list.conf | wc -l")) / 2 + if nixio.fs.access("/etc/dnsmasq.ssr/ad.conf") then + ad_count = tonumber(sys.exec("cat /etc/dnsmasq.ssr/ad.conf | wc -l")) + end +end + +if nixio.fs.access("/etc/china_ssr.txt") then + ip_count = sys.exec("cat /etc/china_ssr.txt | wc -l") +end + uci:foreach(vssr, "servers", function(s) - if s.alias then - server_table[s[".name"]] = "[%s]:%s" %{string.upper(s.type), s.alias} - elseif s.server and s.server_port then - server_table[s[".name"]] = "[%s]:%s:%s" %{string.upper(s.type), s.server, s.server_port} - end + if s["type"] == "v2ray" then + if s.alias then + server_table[s[".name"]] = "[%s]:%s" % + {string.upper(s.type), s.alias} + elseif s.server and s.server_port then + server_table[s[".name"]] = "[%s]:%s:%s" % + { + string.upper(s.type), s.server, s.server_port + } + end + end end) -local key_table = {} -for key,_ in pairs(server_table) do - table.insert(key_table,key) -end +local key_table = {} +for key, _ in pairs(server_table) do table.insert(key_table, key) end table.sort(key_table) m = Map(vssr) -- [[ 服务器节点故障自动切换设置 ]]-- -s = m:section(TypedSection, "global", translate("Server failsafe auto swith settings")) +s = m:section(TypedSection, "global", + translate("Server failsafe auto swith settings")) s.anonymous = true o = s:option(Flag, "monitor_enable", translate("Enable Process Deamon")) @@ -28,16 +55,6 @@ o.rmempty = false o = s:option(Flag, "enable_switch", translate("Enable Auto Switch")) o.rmempty = false --- [[ adblock ]]-- -o = s:option(Flag, "adblock", translate("Enable adblock")) -o.rmempty = false - -o = s:option(Value, "adblock_url", translate("adblock_url")) -o:value("https://gitee.com/privacy-protection-tools/anti-ad/raw/master/anti-ad-for-dnsmasq.conf", translate("anti-AD")) -o.default = "https://gitee.com/privacy-protection-tools/anti-ad/raw/master/anti-ad-for-dnsmasq.conf" -o:depends("adblock", "1") -o.description = translate("Support AdGuardHome and DNSMASQ format list") - o = s:option(Value, "switch_time", translate("Switch check cycly(second)")) o.datatype = "uinteger" o:depends("enable_switch", "1") @@ -53,64 +70,71 @@ o.datatype = "uinteger" o:depends("enable_switch", "1") o.default = 3 --- [[ SOCKS5 Proxy ]]-- -if nixio.fs.access("/usr/bin/ssr-local") then -s = m:section(TypedSection, "socks5_proxy", translate("SOCKS5 Proxy")) +-- [[ 节点订阅 ]]-- + +s = m:section(TypedSection, "server_subscribe", + translate("Servers subscription and manage")) s.anonymous = true -o = s:option(ListValue, "server", translate("Server")) -o:value("nil", translate("Disable")) -for _,key in pairs(key_table) do o:value(key,server_table[key]) end -o.default = "nil" +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(Value, "local_port", translate("Local Port")) -o.datatype = "port" -o.default = 1080 -o.rmempty = false +o = s:option(DynamicList, "subscribe_url", translate("Subscribe URL")) +o.rmempty = true --- [[ HTTP Proxy ]]-- -if nixio.fs.access("/usr/sbin/privoxy") then -o = s:option(Flag, "http_enable", translate("Enable HTTP Proxy")) +o = s:option(Flag, "proxy", translate("Through proxy update")) o.rmempty = false +o.description = translate("Through proxy update list, Not Recommended ") -o = s:option(Value, "http_port", translate("HTTP Port")) -o.datatype = "port" -o.default = 1081 -o.rmempty = false +o = s:option(DummyValue, "", "") +o.rawhtml = true +o.template = "vssr/update_subscribe" + +o = s:option(Button, "delete", translate("Delete all severs")) +o.inputstyle = "reset" +o.write = function() + uci:delete_all("vssr", "servers", function(s) return true end) + uci:commit("vssr") + luci.sys.call("/etc/init.d/vssr stop") + luci.http.redirect(luci.dispatcher.build_url("admin", "services", "vssr", + "advanced")) end --- [[ chnroute ]] -s = m:section(TypedSection, "global", translate("Chnroute Setting")) +-- [[ adblock ]]-- +s = m:section(TypedSection, "global", translate("adblock settings")) s.anonymous = true -o = s:option(Flag, "chnroute", translate("Enable custom chnroute")) +o = s:option(Flag, "adblock", translate("Enable adblock")) o.rmempty = false -o = s:option(Value, "chnroute_url", translate("Update url")) -o.default = "https://ispip.clang.cn/all_cn.txt" +-- [[ 更新设置 ]]-- --- [[ haProxy ]]-- - -s = m:section(TypedSection, "global_haproxy", translate("haProxy settings")) +s = m:section(TypedSection, "socks5_proxy", translate("Update Setting")) s.anonymous = true -o = s:option(Flag, "admin_enable", translate("Enabling the Management Console")) -o.rmempty = false -o.default = 1 +o = s:option(Button, "gfw_data", translate("GFW List Data")) +o.rawhtml = true +o.template = "vssr/refresh" +o.value = tostring(math.ceil(gfw_count)) .. " " .. translate("Records") -o = s:option(Value, "admin_port", translate("Service Port")) -o.datatype = "uinteger" -o.default = 1111 - -o = s:option(Value, "admin_user", translate("User name")) -o.default = "admin" - -o = s:option(Value, "admin_password", translate("Password")) -o.default = "root" +o = s:option(Button, "ip_data", translate("China IP Data")) +o.rawhtml = true +o.template = "vssr/refresh" +o.value = ip_count .. " " .. translate("Records") +if uci:get_first('vssr', 'global', 'adblock', '') == '1' then + o = s:option(Button, "ad_data", translate("Advertising Data")) + o.rawhtml = true + o.template = "vssr/refresh" + o.value = ad_count .. " " .. translate("Records") end + return m - - - diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/appointlist.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/appointlist.lua deleted file mode 100644 index d6bbdf8743..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/appointlist.lua +++ /dev/null @@ -1,23 +0,0 @@ -local fs = require "nixio.fs" -local conffile = "/etc/dnsmasq.vssr/appoint_list.conf" - -f = SimpleForm("custom", translate("Appoint dns List")) - -t = f:field(TextValue, "conf") -t.rmempty = true -t.rows = 13 -function t.cfgvalue() - return fs.readfile(conffile) or "" -end - -function f.handle(self, state, data) - if state == FORM_VALID then - if data.conf then - fs.writefile(conffile, data.conf:gsub("\r\n", "\n")) - luci.sys.call("/etc/init.d/dnsmasq restart") - end - end - return true -end - -return f \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/client-config.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/client-config.lua index a4708735c2..5bf65762f1 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/client-config.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/client-config.lua @@ -41,14 +41,14 @@ local protocol = { "auth_chain_d", "auth_chain_e", "auth_chain_f" } -local obfs = { +obfs = { "plain", "http_simple", "http_post", "random_head", "tls1.2_ticket_auth" } local securitys = {"auto", "none", "aes-128-gcm", "chacha20-poly1305"} m = Map(vssr, translate("Edit vssr Server")) -m.redirect = luci.dispatcher.build_url("admin/vpn/vssr/servers") +m.redirect = luci.dispatcher.build_url("admin/services/vssr/servers") if m.uci:get(vssr, sid) ~= "servers" then luci.http.redirect(m.redirect) return @@ -65,29 +65,24 @@ o.template = "vssr/ssrurl" o.value = sid o = s:option(ListValue, "type", translate("Server Node Type")) -if nixio.fs.access("/usr/sbin/trojan") then -o:value("trojan", translate("Trojan")) -end - -if nixio.fs.access("/usr/bin/v2ray/v2ray") then -o:value("v2ray", translate("V2Ray")) -end o:value("ssr", translate("ShadowsocksR")) -if nixio.fs.access("/usr/bin/ss-redir") then -o:value("ss", translate("Shadowsocks")) + +if nixio.fs.access("/usr/bin/v2ray/v2ray") or nixio.fs.access("/usr/bin/v2ray") then + o:value("ss", translate("Shadowsocks New Version")) + o:value("v2ray", translate("V2Ray")) end -if nixio.fs.access("/usr/bin/ipt2socks") then -o:value("socks5", translate("Socks5")) +if nixio.fs.access("/usr/sbin/trojan") then + o:value("trojan", translate("Trojan")) 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(Value, "flag", translate("Country")) -o.description = translate( - "请自己指定。格式:cn us hk 等") +o = s:option(Value, "flag", translate("Area")) +o.description = translate("请自己指定。格式:cn us hk 等") o.rmempty = true o = s:option(Value, "server", translate("Server Address")) @@ -103,24 +98,17 @@ o.rmempty = false -- o.default = 60 -- o.rmempty = false -o = s:option(Flag, "auth_enable", translate("Enable Authentication")) -o.rmempty = false -o.default = "0" -o:depends("type", "socks5") - -o = s:option(Value, "username", translate("Username")) -o.rmempty = true -o:depends("type", "socks5") - - 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", "socks5") +o = s:option(Value, "peer", translate("Peer")) +o.datatype = "host" +o.rmempty = true +o:depends("type", "trojan") o = s:option(ListValue, "encrypt_method", translate("Encrypt Method")) for _, v in ipairs(encrypt_methods) do o:value(v) end @@ -132,29 +120,6 @@ for _, v in ipairs(encrypt_methods_ss) do o:value(v) end o.rmempty = true o:depends("type", "ss") --- Shadowsocks Plugin - -o = s:option(ListValue, "plugin", translate("plugin")) -o:value("none", "None") -if nixio.fs.access("/usr/bin/v2ray-plugin") then -o:value("/usr/bin/v2ray-plugin", "v2ray-plugin") -end -if nixio.fs.access("/usr/bin/obfs-local") then -o:value("/usr/bin/obfs-local", "obfs-local") -end -if nixio.fs.access("/usr/bin/goquiet-client") then -o:value("/usr/bin/goquiet-client", "GoQuiet") -end -o.rmempty = false -o.default = "none" -o:depends("type", "ss") - -o = s:option(Value, "plugin_opts", translate("Plugin Opts")) -o.rmempty = true -o:depends("plugin", "/usr/bin/v2ray-plugin") -o:depends("plugin", "/usr/bin/obfs-local") -o:depends("plugin", "/usr/bin/goquiet-client") - o = s:option(ListValue, "protocol", translate("Protocol")) for _, v in ipairs(protocol) do o:value(v) end o.rmempty = true @@ -168,6 +133,27 @@ for _, v in ipairs(obfs) do o:value(v) end o.rmempty = true o:depends("type", "ssr") +o = s:option(Flag, "v2ray_plugin", translate("V2ray-plugin")) +o.rmempty = false +o:depends("type", "ss") + +o = s:option(Value, "obfs_transport", translate("V2ray-plugin-transport")) +o.rmempty = true +o.default = "ws" +o:depends("v2ray_plugin", "1") + +o = s:option(Value, "obfs_host", translate("V2ray-plugin-host")) +o.rmempty = true +o:depends("v2ray_plugin", "1") + +o = s:option(Value, "obfs_path", translate("V2ray-plugin-path")) +o.rmempty = true +o:depends("v2ray_plugin", "1") + +o = s:option(Flag, "obfs_opts", translate("TLS")) +o.rmempty = false +o:depends("v2ray_plugin", "1") + o = s:option(Value, "obfs_param", translate("Obfs param(optional)")) o:depends("type", "ssr") @@ -265,7 +251,6 @@ o:value("utp", translate("BitTorrent (uTP)")) o:value("wechat-video", translate("WechatVideo")) o:value("dtls", "DTLS 1.2") o:value("wireguard", "WireGuard") - -- [[ mKCP部分 ]]-- o = s:option(ListValue, "kcp_guise", translate("Camouflage Type")) @@ -331,12 +316,6 @@ o.default = "0" o:depends("type", "v2ray") o:depends("type", "trojan") -o = s:option(Value, "tls_host", translate("TLS Host")) ---o:depends("type", "trojan") -o:depends("tls", "1") -o.rmempty = true - - -- [[ Mux ]]-- o = s:option(Flag, "mux", translate("Mux")) o.rmempty = true diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/client.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/client.lua index fbdf81fc38..66f7bc7511 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/client.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/client.lua @@ -4,33 +4,17 @@ local m, s, sec, o, kcp_enable local vssr = "vssr" -local gfw_count=0 -local ad_count=0 -local ip_count=0 local gfwmode=0 -if nixio.fs.access("/etc/dnsmasq.vssr/gfw_list.conf") then +if nixio.fs.access("/etc/dnsmasq.ssr/gfw_list.conf") then gfwmode=1 end local uci = luci.model.uci.cursor() -local sys = require "luci.sys" - -if gfwmode==1 then - gfw_count = tonumber(sys.exec("cat /etc/dnsmasq.vssr/gfw_list.conf | wc -l"))/2 - if nixio.fs.access("/etc/dnsmasq.vssr/ad.conf") then - ad_count=tonumber(sys.exec("cat /etc/dnsmasq.vssr/ad.conf | wc -l")) - end -end - -if nixio.fs.access("/etc/china_ssr.txt") then - ip_count = sys.exec("cat /etc/china_ssr.txt | wc -l") -end - m = Map(vssr) -m:section(SimpleSection).template = "vssr/status" +m:section(SimpleSection).template = "vssr/status_top" local server_table = {} local v2ray_table = {} @@ -40,7 +24,8 @@ uci:foreach(vssr, "servers", function(s) elseif s.server and s.server_port then server_table[s[".name"]] = "[%s]:%s:%s" %{string.upper(s.type), s.server, s.server_port} end -if s.type == "v2ray" then + + if s.type == "v2ray" then if s.alias then v2ray_table[s[".name"]] = "[%s]:%s" %{string.upper(s.type), s.alias} elseif s.server and s.server_port then @@ -49,12 +34,12 @@ if s.type == "v2ray" then end end) -local key_table = {} +local key_table = {} for key,_ in pairs(server_table) do table.insert(key_table,key) end -table.sort(key_table) +table.sort(key_table) local key_table_v2 = {} for key,_ in pairs(v2ray_table) do @@ -64,16 +49,11 @@ end table.sort(key_table_v2) -- [[ Global Setting ]]-- -s = m:section(TypedSection, "global", translate("Basic Settings")) +s = m:section(TypedSection, "global",translate("Basic Settings [SS(R)|V2ray|Trojan]")) s.anonymous = true - - o = s:option(ListValue, "global_server", translate("Main Server")) o:value("nil", translate("Disable")) -if nixio.fs.access("/usr/sbin/haproxy")then - o:value("__haproxy__", translate("Load Balancing")) -end for _,key in pairs(key_table) do o:value(key,server_table[key]) end o.default = "nil" o.rmempty = false @@ -83,9 +63,9 @@ 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 -o = s:option(Flag, "v2ray_flow", translate("Open v2ray split-flow") .."") +o = s:option(Flag, "v2ray_flow", translate("Open v2ray split-flow")) o.rmempty = false -o.description = ("" ..translate("When open v2ray split-flow,your main server must be a v2ray server").."") +o.description = translate("When open v2ray split-flow,your main server must be a v2ray server") o = s:option(ListValue, "youtube_server", translate("Youtube Proxy")) o:value("nil", translate("Same as Global Server")) @@ -93,96 +73,62 @@ for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end o:depends("v2ray_flow", "1") o.default = "nil" + + o = s:option(ListValue, "tw_video_server", translate("TaiWan Video Proxy")) o:value("nil", translate("Same as Global Server")) for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end o:depends("v2ray_flow", "1") o.default = "nil" + o = s:option(ListValue, "netflix_server", translate("Netflix Proxy")) o:value("nil", translate("Same as Global Server")) for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end o:depends("v2ray_flow", "1") o.default = "nil" + o = s:option(ListValue, "disney_server", translate("Diseny+ Proxy")) o:value("nil", translate("Same as Global Server")) for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end o:depends("v2ray_flow", "1") o.default = "nil" + o = s:option(ListValue, "prime_server", translate("Prime Video Proxy")) o:value("nil", translate("Same as Global Server")) for _,key in pairs(key_table_v2) do o:value(key,v2ray_table[key]) end o:depends("v2ray_flow", "1") o.default = "nil" + 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("routers", translate("Oversea IP Route Mode")) -o:value("oversea", translate("Oversea GFW List Mode")) o:value("all", translate("Global Mode")) -o.default = gfw - +o:value("oversea", translate("Oversea Mode")) +o.default = "router" 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.default = 1 o = s:option(ListValue, "pdnsd_enable", translate("Resolve Dns Mode")) +o:value("1", translate("Use Pdnsd tcp query and cache")) o:value("0", translate("Use Local DNS Service listen port 5335")) -o:value("1", translate("Use Pdnsd tcp query and cache")) -if nixio.fs.access("/usr/bin/dnsforwarder") then -o:value("3", translate("Use dnsforwarder tcp query and cache")) -end -if nixio.fs.access("/usr/bin/dnscrypt-proxy") then -o:value("5", translate("Use dnscrypt-proxy query and cache")) -end -if nixio.fs.access("/usr/bin/chinadns") then -o:value("6", translate("Use chinadns query and cache")) -end -if nixio.fs.access("/usr/bin/dns2socks") then -o:value("7", translate("Use DNS2SOCKS query and cache")) -end o.default = 1 -o = s:option(ListValue, "chinadns_enable", translate("Chiadns Resolve Dns Mode")) -o:value("0", translate("Use Local DNS Service")) -o:value("1", translate("Use Pdnsd tcp query and cache")) -if nixio.fs.access("/usr/bin/dnsforwarder") then -o:value("3", translate("Use dnsforwarder tcp query and cache")) -end -if nixio.fs.access("/usr/bin/dnscrypt-proxy") then -o:value("5", translate("Use dnscrypt-proxy query and cache")) -end - -if nixio.fs.access("/usr/sbin/smartdns") then -o:value("6", translate("Use smartdns query and cache")) -end - -if nixio.fs.access("/usr/sbin/https_dns_proxy") then -o:value("7", translate("Use https_dns_proxy query and cache")) -end -o.default = 1 -o:depends("pdnsd_enable", "6") - o = s:option(Value, "tunnel_forward", translate("Anti-pollution DNS Server")) -o:value("0.0.0.0:53", translate("Using System Default DNS")) -o:value("0.0.0.0:5333", translate("Using acceleration center DNS")) 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)")) @@ -197,33 +143,6 @@ 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:depends("pdnsd_enable", "3") -o:depends("pdnsd_enable", "4") -o:depends("pdnsd_enable", "5") -o:depends("pdnsd_enable", "6") -o:depends("pdnsd_enable", "7") -o.default = "8.8.4.4:53" - - -o = s:option(Button,"gfw_data",translate("GFW List Data")) -o.rawhtml = true -o.template = "vssr/refresh" -o.value =tostring(math.ceil(gfw_count)) .. " " .. translate("Records") - -o = s:option(Button,"ad_data",translate("Advertising Data")) -o .rawhtml = true -o .template = "vssr/refresh" -o .value =tostring(math.ceil(ad_count)) .. " " .. translate("Records") - -o = s:option(Button,"ip_data",translate("China IP Data")) -o.rawhtml = true -o.template = "vssr/refresh" -o.value =ip_count .. " " .. translate("Records") - -o = s:option(Button,"check_port",translate("Check Server Port")) -o.template = "vssr/checkport" -o.value =translate("No Check") -m:section(SimpleSection).template = "vssr/status2" +m:section(SimpleSection).template = "vssr/status_bottom" return m diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/control.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/control.lua index 67d326ee6c..8be1a49c3b 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/control.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/control.lua @@ -18,44 +18,28 @@ 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 = s:taboption("lan_ac", DynamicList, "lan_ac_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: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 + 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 + 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 + if entry.reachable then + o:value(entry.dest:string()) + end end) -- Part of Self @@ -66,9 +50,7 @@ end) -- o:value("2", translatef("Forwarded Proxy")) -- o.rmempty = false -s:tab("esc", translate("Bypass Domain List"), "" .. - translate("Join the white list of domain names will not go agent.") .. - "") +s:tab("esc", translate("Bypass Domain List")) local escconf = "/etc/config/white.list" o = s:taboption("esc", TextValue, "escconf") @@ -86,10 +68,7 @@ o.remove = function(self, section, value) end -s:tab("block", translate("Black Domain List"), - "" .. 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.") .. - "") +s:tab("block", translate("Black Domain List")) local blockconf = "/etc/config/black.list" o = s:taboption("block", TextValue, "blockconf") @@ -106,4 +85,4 @@ o.remove = function(self, section, value) NXFS.writefile(blockconf, "") end -return m +return m \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/list.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/list.lua deleted file mode 100644 index 4a7220fee3..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/list.lua +++ /dev/null @@ -1,23 +0,0 @@ -local fs = require "nixio.fs" -local conffile = "/etc/config/gfw.list" - -f = SimpleForm("custom", translate("GFW Custom List"), translate("Please refer to the following writing")) - -t = f:field(TextValue, "conf") -t.rmempty = true -t.rows = 13 -function t.cfgvalue() - return fs.readfile(conffile) or "" -end - -function f.handle(self, state, data) - if state == FORM_VALID then - if data.conf then - fs.writefile(conffile, data.conf:gsub("\r\n", "\n")) - luci.sys.call("/usr/share/vssr/gfw2ipset.sh && /etc/init.d/dnsmasq restart") - end - end - return true -end - -return f \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/logview.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/logview.lua deleted file mode 100644 index 11586ff3a9..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/logview.lua +++ /dev/null @@ -1,48 +0,0 @@ --- Copyright 2009 Steven Barth --- Licensed to the public under the Apache License 2.0. - -local NXFS = require "nixio.fs" -local DISP = require "luci.dispatcher" -local HTTP = require "luci.http" -local UCI = luci.model.uci.cursor() - -m = Map("vssr") - --- log directory -log_dir = UCI:get_first(m.config, "global", "log_dir") or "/tmp" -run_dir = UCI:get_first(m.config, "global", "run_dir") or "/var/etc" -local logfile_list = {} - -for path in (NXFS.glob("%s/vssr*" % log_dir) or function() end) do - logfile_list[#logfile_list+1] = path -end -for path in (NXFS.glob("%s/*.*" % run_dir) or function() end) do - logfile_list[#logfile_list+1] = path -end - -ns = m:section(TypedSection, "_dummy", translate("File Viewer")) -ns.addremove = false -ns.anonymous = true -function ns.cfgsections() - return{"_exrules"} -end - -lv = ns:option(DynamicList, "logfiles") -lv.template = "vssr/logview" -lv.inputtitle = translate("Read / Reread log file") -lv.rows = 25 -lv.default = "" -for _, lfile in ipairs(logfile_list) do lv:value(lfile, lfile) end -function lv.cfgvalue(self, section) - if logfile_list[1] then - local lfile=logfile_list[1] - if NXFS.access(lfile) then - return lfile .. "\n" .. translate("Please press [Read] button") - end - return lfile .. "\n" .. translate("File not found or empty") - else - return log_dir .. "\/\n" .. translate("No files found") - end -end - -return m diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/server-config.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/server-config.lua index 448b9f6933..79a4d3eb23 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/server-config.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/server-config.lua @@ -3,21 +3,13 @@ local m, s, o local vssr = "vssr" -local uci = luci.model.uci.cursor() -local fs = require "nixio.fs" -local sys = require "luci.sys" local sid = arg[1] -local uuid = luci.sys.exec("cat /proc/sys/kernel/random/uuid") -local http = luci.http -local ucursor = require "luci.model.uci".cursor() -local server_table = {} local encrypt_methods = { - "none", - "table", - "rc4", - "rc4-md5-6", "rc4-md5", + "rc4-md5-6", + "rc4", + "table", "aes-128-cfb", "aes-192-cfb", "aes-256-cfb", @@ -38,72 +30,19 @@ local encrypt_methods = { "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", - "auth_chain_b", - "auth_chain_c", - "auth_chain_d", - "auth_chain_e", - "auth_chain_f", } obfs = { "plain", "http_simple", "http_post", - "random_head", - "tls1.2_ticket_auth", } -local obfs_opts = { - "none", - "http", - "tls", -} - -local securitys = { - "auto", - "none", - "aes-128-gcm", - "chacha20-poly1305" -} - - - m = Map(vssr, translate("Edit vssr Server")) -m.redirect = luci.dispatcher.build_url("admin/vpn/vssr/server") +m.redirect = luci.dispatcher.build_url("admin/services/vssr/server") if m.uci:get(vssr, sid) ~= "server_config" then luci.http.redirect(m.redirect) return @@ -121,24 +60,6 @@ o = s:option(Flag, "enable", translate("Enable")) o.default = 1 o.rmempty = false -o = s:option(ListValue, "type", translate("Server Node Type")) -if nixio.fs.access("/usr/bin/ssr-server") then -o:value("ssr", translate("ShadowsocksR")) -end -if nixio.fs.access("/usr/bin/ss-server") then -o:value("ss", translate("Shadowsocks New Version")) -end -if nixio.fs.access("/usr/bin/v2ray/v2ray") then -o:value("v2ray", translate("V2Ray")) -end -o.description = translate("Using incorrect encryption mothod may causes service fail to start") - - - -o = s:option(Flag, "ipv4_ipv6", translate("Enabling IPv6 server")) -o.default = 0 -o.rmempty = false - o = s:option(Value, "server_port", translate("Server Port")) o.datatype = "port" o.default = 8388 @@ -151,228 +72,24 @@ o.rmempty = false o = s:option(Value, "password", translate("Password")) o.password = true -o.rmempty = true -o:depends("type", "ssr") -o:depends("type", "ss") +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 = true -o:depends("type", "ssr") -o:depends("type", "ss") - - - -o = s:option(ListValue, "plugin", translate("plugin")) -o:value("none", "None") -if nixio.fs.access("/usr/bin/v2ray-plugin") then -o:value("/usr/bin/v2ray-plugin", "v2ray-plugin") -end -if nixio.fs.access("/usr/bin/obfs-server") then -o:value("/usr/bin/obfs-server", "obfs-server") -end -if nixio.fs.access("/usr/bin/gq-server") then -o:value("/usr/bin/gq-server", "GoQuiet") -end o.rmempty = false -o.default = "none" -o:depends("type", "ss") - -o = s:option(Value, "plugin_opts", translate("Plugin Opts")) -o.rmempty = true -o:depends("plugin", "/usr/bin/v2ray-plugin") -o:depends("plugin", "/usr/bin/obfs-server") -o:depends("plugin", "/usr/bin/gq-server") 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.rmempty = false + 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.rmempty = false o = s:option(Value, "obfs_param", translate("Obfs param(optional)")) -o:depends("type", "ssr") - - --- AlterId -o = s:option(Value, "alter_id", translate("AlterId")) -o.default = 100 -o.rmempty = true -o:depends("type", "v2ray") - -o=s:option(Value,"VMess_level",translate("User Level")) -o.default=1 -o:depends("type", "v2ray") - --- VmessId -o = s:option(Value, "vmess_id", translate("VmessId (UUID)")) -o.rmempty = true -o.default = uuid -o:depends("type", "v2ray") - --- 加密方式 -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") - --- 传输协议 -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.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(DynamicList, "http_host", translate("HTTP Host")) -o:depends("tcp_guise", "http") -o.rmempty = true - --- HTTP路径 -o = s:option(DynamicList, "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") -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(DynamicList, "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 - --- [[ QUIC部分 ]]-- - -o = s:option(ListValue, "quic_security", translate("QUIC Security")) -o:depends("transport", "quic") -o.rmempty = true -o:value("none", translate("None")) -o:value("aes-128-gcm", translate("aes-128-gcm")) -o:value("chacha20-poly1305", translate("chacha20-poly1305")) - -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", "DTLS 1.2") -o:value("wireguard", "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", "DTLS 1.2") -o:value("wireguard", "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 = 50 -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(Flag, "congestion", translate("Congestion")) -o:depends("transport", "kcp") -o.rmempty = true - --- [[ allowInsecure ]]-- -o = s:option(Flag, "insecure", translate("allowInsecure")) -o.rmempty = true -o:depends("type", "v2ray") - --- [[ TLS ]]-- -o = s:option(Flag, "tls", translate("TLS")) -o.rmempty = true -o.default = "0" -o:depends("type", "v2ray") - --- [[ Mux ]]-- -o = s:option(Flag, "mux", translate("Mux")) -o.rmempty = true -o.default = "0" -o:depends("type", "v2ray") - -o = s:option(Value, "concurrency", translate("Concurrency")) -o.datatype = "uinteger" -o.rmempty = true -o.default = "8" -o:depends("mux", "1") o = s:option(Flag, "fast_open", translate("TCP Fast Open")) -o.rmempty = true -o:depends("type", "ssr") +o.rmempty = false return m diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/server.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/server.lua index 7bbbfabe50..19cbe2ef6f 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/server.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/server.lua @@ -6,13 +6,8 @@ local vssr = "vssr" local uci = luci.model.uci.cursor() local ipkg = require("luci.model.ipkg") -m = Map(vssr, translate("SS/SSR/V2RAY Server")) -m:section(SimpleSection).template = "vssr/status3" -local type = { - "ssr", - "ss", - "v2ray", -} + +m = Map(vssr, translate("vssr Server")) local encrypt_methods = { "table", @@ -24,10 +19,7 @@ local encrypt_methods = { "aes-256-cfb", "aes-128-ctr", "aes-192-ctr", - "aes-256-ctr", - "aes-128-gcm", - "aes-192-gcm", - "aes-256-gcm", + "aes-256-ctr", "bf-cfb", "camellia-128-cfb", "camellia-192-cfb", @@ -40,8 +32,6 @@ local encrypt_methods = { "salsa20", "chacha20", "chacha20-ietf", - "chacha20-ietf-poly1305", - "xchacha20-ietf-poly1305", } local protocol = { @@ -53,7 +43,7 @@ local protocol = { "auth_chain_a", } -local obfs = { +obfs = { "plain", "http_simple", "http_post", @@ -64,10 +54,14 @@ local obfs = { + + -- [[ 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 @@ -75,9 +69,8 @@ o.rmempty = false sec = m:section(TypedSection, "server_config", translate("Server Setting")) sec.anonymous = true sec.addremove = true -sec.sortable = true sec.template = "cbi/tblsection" -sec.extedit = luci.dispatcher.build_url("admin/vpn/vssr/server/%s") +sec.extedit = luci.dispatcher.build_url("admin/services/vssr/server/%s") function sec.create(...) local sid = TypedSection.create(...) if sid then @@ -92,28 +85,30 @@ function o.cfgvalue(...) end o.rmempty = false - - -o = sec:option(DummyValue, "type", translate("Server Node Type")) -function o.cfgvalue(...) - return Value.cfgvalue(...) or "?" -end - o = sec:option(DummyValue, "server_port", translate("Server Port")) function o.cfgvalue(...) return Value.cfgvalue(...) or "?" end -o = sec:option(DummyValue,"vmess_id",translate("ID")) -o.width="10%" o = sec:option(DummyValue, "encrypt_method", translate("Encrypt Method")) -o.width="10%" +function o.cfgvalue(...) + local v = Value.cfgvalue(...) + return v and v:upper() or "?" +end o = sec:option(DummyValue, "protocol", translate("Protocol")) -o.width="10%" +function o.cfgvalue(...) + return Value.cfgvalue(...) or "?" +end + + o = sec:option(DummyValue, "obfs", translate("Obfs")) -o.width="10%" -m:append(Template("vssr/server_list")) +function o.cfgvalue(...) + return Value.cfgvalue(...) or "?" +end + + + return m diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/servers-list.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/servers-list.lua deleted file mode 100644 index f4207d44cf..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/servers-list.lua +++ /dev/null @@ -1,76 +0,0 @@ --- Licensed to the public under the GNU General Public License v3. -local d = require "luci.dispatcher" -local fs = require "nixio.fs" -local sys = require "luci.sys" -local uci = require "luci.model.uci".cursor() -local m, s, o -local vssr = "vssr" - - -local uci = luci.model.uci.cursor() -local server_count = 0 -uci:foreach("vssr", "servers", function(s) - server_count = server_count + 1 -end) - - - -m = Map(vssr, translate("Node List")) -m:section(SimpleSection).template = "vssr/status1" - - --- [[ Servers Manage ]]-- -s = m:section(TypedSection, "servers") -s.anonymous = true -s.addremove = true -s.description = string.format(translate("Server Count") .. ": %d", server_count) -s.sortable = true -s.template = "cbi/tblsection" -s.extedit = luci.dispatcher.build_url("admin/vpn/vssr/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, "alias", translate("Alias")) -o.width="10%" -o = s:option(DummyValue, "type", translate("Type")) -o.width="15%" - -o = s:option(DummyValue, "server", translate("Server Address")) -o.width="10%" - -o = s:option(DummyValue, "server_port", translate("Server Port")) -o.width="10%" - -o = s:option(DummyValue, "encrypt_method", translate("Encrypt Method")) -o.width="10%" - -o = s:option(DummyValue, "protocol", translate("Protocol")) -o.width="10%" -o = s:option(DummyValue, "obfs", translate("Obfs")) -o.width="10%" - -o = s:option(Flag, "switch_enable", translate("Enable Auto Switch")) -o.width="10%" - -if nixio.fs.access("/usr/bin/kcptun-client") then - -o = s:option(Flag, "kcp_enable", translate("KcpTun")) -o.width="10%" -end - -o = s:option(DummyValue, "server_port", translate("Socket Connected")) -o.template="vssr/socket" -o.width="10%" - -o = s:option(DummyValue,"server",translate("Ping Latency")) -o.template="vssr/ping" -o.width="10%" - -m:append(Template("vssr/server_list")) - - -return m diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/servers.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/servers.lua index ae0866c1d2..183ee0876c 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/servers.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/servers.lua @@ -17,7 +17,7 @@ uci:foreach("vssr", "global", function(s) name = s[".name"] end) m = Map(vssr) -m:section(SimpleSection).template = "vssr/status" +m:section(SimpleSection).template = "vssr/status_top" -- [[ Servers List ]]-- s = m:section(TypedSection, "servers") @@ -29,34 +29,15 @@ s.des = server_count s.current = uci:get("vssr", name, "global_server") s.servers = cjson.encode(server_table) s.template = "vssr/tblsection" -s.extedit = luci.dispatcher.build_url("admin/vpn/vssr/servers/%s") +s.extedit = luci.dispatcher.build_url("admin/services/vssr/servers/%s") function s.create(...) - local sid = TypedSection.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(...) return Value.cfgvalue(...) or translate("") end - -o = s:option(DummyValue, "alias", translate("Alias")) -function o.cfgvalue(...) return Value.cfgvalue(...) or translate("None") end - -o = s:option(DummyValue, "server", translate("Server Address")) -function o.cfgvalue(...) return Value.cfgvalue(...) or "?" end - -o = s:option(DummyValue, "server_port", translate("Server Port")) -function o.cfgvalue(...) return Value.cfgvalue(...) or "?" end - -if nixio.fs.access("/usr/bin/kcptun-client") then - - o = s:option(DummyValue, "kcp_enable", translate("KcpTun")) - function o.cfgvalue(...) return Value.cfgvalue(...) or "?" end - -end -m:section(SimpleSection).template = "vssr/status2" +m:section(SimpleSection).template = "vssr/status_bottom" return m - diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/socks5.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/socks5.lua new file mode 100644 index 0000000000..b896a44ff2 --- /dev/null +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/socks5.lua @@ -0,0 +1,41 @@ +local vssr = "vssr" +local uci = luci.model.uci.cursor() +local server_table = {} + + +local sys = require "luci.sys" + +m = Map(vssr) + +-- [[ SOCKS5 Proxy ]]-- +if nixio.fs.access("/usr/bin/v2ray/v2ray") then +s = m:section(TypedSection, "socks5_proxy", translate("V2ray SOCKS5 Proxy")) +s.anonymous = true + +o = s:option(Flag, "enable_server", translate("Enable Servers")) +o.rmempty = false + +o = s:option(Flag, "enable_auth", translate("Enable Auth")) +o.rmempty = false + +o = s:option(Value, "Socks_user", translate("Socks user")) +o.default="user" +o.rmempty = true +o:depends("enable_auth", "1") + +o = s:option(Value, "Socks_pass", translate("Socks pass")) +o.default="password" +o.password = true +o.rmempty = true +o:depends("enable_auth", "1") + +o = s:option(Value, "local_port", translate("Local Port")) +o.datatype = "port" +o.default = 1080 +o.rmempty = false + + + +end + +return m diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/status.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/status.lua deleted file mode 100644 index 34a1b3fa07..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/status.lua +++ /dev/null @@ -1,466 +0,0 @@ --- Copyright (C) 2017 yushi studio --- Licensed to the public under the GNU General Public License v3. - -local IPK_Version="20200328.1.31" -local m, s, o -local redir_run=0 -local reudp_run=0 -local sock5_run=0 -local ssock5_run=0 -local v2sock5_run=0 -local server_run=0 -local sserver_run=0 -local v2server_run=0 -local kcptun_run=0 -local tunnel_run=0 -local udp2raw_run=0 -local udpspeeder_run=0 -local gfw_count=0 -local ad_count=0 -local ip_count=0 -local gfwmode=0 -local pdnsd_run=0 -local dnsforwarder_run=0 -local dnscrypt_proxy_run=0 -local chinadns_run=0 -local dns2socks_run=0 -local haproxy_run=0 -local privoxy_run=0 - -if nixio.fs.access("/etc/dnsmasq.vssr/gfw_list.conf") then -gfwmode=1 -end - -local vssr= "vssr" - - --- html constants -font_blue = [[]] -font_off = [[]] -bold_on = [[]] -bold_off = [[]] - -local fs = require "nixio.fs" -local sys = require "luci.sys" -local kcptun_version=translate("Unknown") -local kcp_file="/usr/bin/kcptun-client" -if not fs.access(kcp_file) then - kcptun_version=translate("Not exist") -else - if not fs.access(kcp_file, "rwx", "rx", "rx") then - fs.chmod(kcp_file, 755) - end - kcptun_version=sys.exec(kcp_file .. " -v | awk '{printf $3}'") - if not kcptun_version or kcptun_version == "" then - kcptun_version = translate("Unknown") - end - -end - - -local udp2raw_version=translate("Unknown") -local udp2raw_file="/usr/bin/udp2raw" -if not fs.access(udp2raw_file) then - udp2raw_version=translate("Not exist") -else - if not fs.access(udp2raw_file, "rwx", "rx", "rx") then - fs.chmod(udp2raw_file, 755) - end - udp2raw_version=sys.exec(udp2raw_file .. " -h |grep 'git version' |awk -F ':' '{print $2}'|awk '{print $1}'") - if not udp2raw_version or udp2raw_version == "" then - udp2raw_version = translate("Unknown") - end -end - -local udpspeeder_version=translate("Unknown") -local udpspeeder_file="/usr/bin/udpspeeder" -if not fs.access(udpspeeder_file) then - udpspeeder_version=translate("Not exist") -else - if not fs.access(udpspeeder_file, "rwx", "rx", "rx") then - fs.chmod(udpspeeder_file, 755) - end - udpspeeder_version=sys.exec(udpspeeder_file .. " -h |grep 'git version' |awk -F ':' '{print $2}'|awk '{print $1}'") - if not udpspeeder_version or udpspeeder_version == "" then - udpspeeder_version = translate("Unknown") - end -end - -if gfwmode==1 then - gfw_count = tonumber(sys.exec("cat /etc/dnsmasq.vssr/gfw_list.conf | wc -l"))/2 - if nixio.fs.access("/etc/dnsmasq.vssr/ad.conf") then - ad_count=tonumber(sys.exec("cat /etc/dnsmasq.vssr/ad.conf | wc -l")) - end -end - -if nixio.fs.access("/etc/china_ssr.txt") then - ip_count = sys.exec("cat /etc/china_ssr.txt | wc -l") -end - -function processlist() - local data = {} - local netf = {} - local k - local ps = luci.util.execi("/bin/busybox top -bn1 | egrep -v dnsmasq") - local nets = luci.util.execi("netstat -netupl | egrep -v dnsmasq | awk '{print $1,$4,_,$6,$7}'") - - if not ps or not nets then - return - end - - for line in nets do --- tcp 0 0 127.0.0.1:1234 0.0.0.0:* LISTEN 5103/v2ray --- udp 0 0 127.0.0.1:1234 0.0.0.0:* 5147/v2ray --- local proto, ip, port, nid = line:match("([^%s]+) +.* +([^ ]*):(%d+) +.* +(%d+)\/.*") - local proto, ip, port, nid = line:match("([^%s]+) (.*):(%d+)[^%d]+(%d+)\/.*") - local idx = tonumber(nid) - if idx and ip then - local newstr = "://" .. ip .. ":" .. port - local isnew = (netf[idx] and netf[idx]['listen']) and netf[idx]['listen']:match(proto .. newstr) or false - netf[idx] = { - ['listen'] = ((netf[idx] and netf[idx]['listen']) and (not isnew) and (netf[idx]['listen'] .. "\n" .. proto) or proto) .. newstr, - } - end - end --- 5103 1 root S 661m 543% 0% /usr/bin/v2ray/v2ray -config /var/etc/shadowsocksr.json - for line in ps do - local pid, ppid, user, stat, vsz, mem, cpu, cmd = line:match( - "^ *(%d+) +(%d+) +(%S.-%S) +([RSDZTW][W ][ " .. status[idx]['COMMAND'] .. " -c " .. status[idx]['CONFIG'] .. font_off - sname = translate(status[idx]['COMMAND']) - break - end - end - end - local section = form:field(DummyValue,name,translate(name) .. ": " .. sname) - section.rawhtml = true - section.value = stat - return section -end - -procs=processlist() - - -local icount=sys.exec("ps -w | grep ssr-reudp |grep -v grep| wc -l") -if tonumber(icount)>0 then -reudp_run=1 -else -icount=sys.exec("ps -w | grep ssr-retcp |grep \"\\-u\"|grep -v grep| wc -l") -if tonumber(icount)>0 then -reudp_run=1 -end -end - - -if luci.sys.call("ps -w | grep ssr-retcp | grep -v grep >/dev/null") == 0 then -redir_run=1 -end - -if luci.sys.call("pidof ssr-local >/dev/null") == 0 then -sock5_run=1 -end - -if luci.sys.call("pidof ss-local >/dev/null") == 0 then -ssock5_run=1 -end - -if luci.sys.call("ps -w | grep v2-ssr-local | grep -v grep >/dev/null") == 0 then -v2sock5_run=1 -end - -if luci.sys.call("pidof privoxy >/dev/null") == 0 then -privoxy_run=1 -end - -if luci.sys.call("pidof kcptun-client >/dev/null") == 0 then -kcptun_run=1 -end - -if luci.sys.call("pidof ssr-server >/dev/null") == 0 then -server_run=1 -end - -if luci.sys.call("busybox ps -w | grep ssr-tunnel |grep -v grep >/dev/null") == 0 then -tunnel_run=1 -end - -if luci.sys.call("pidof ss-server >/dev/null") == 0 then -sserver_run=1 -end - -if luci.sys.call("ps -w | grep v2ray-server | grep -v grep >/dev/null") == 0 then -v2server_run=1 -end - -if luci.sys.call("ps -w | grep ssr-tunnel |grep -v grep >/dev/null") == 0 then -tunnel_run=1 -end - -if luci.sys.call("pidof udp2raw >/dev/null") == 0 then -udp2raw_run=1 -end - -if luci.sys.call("pidof udpspeeder >/dev/null") == 0 then -udpspeeder_run=1 -end - -if luci.sys.call("pidof chinadns >/dev/null") == 0 then -chinadns_run=1 -end - -if luci.sys.call("pidof pdnsd >/dev/null") == 0 then -pdnsd_run=1 -end - -if luci.sys.call("pidof dnsparsing >/dev/null") == 0 then -dnsforwarder_run=1 -end - -if luci.sys.call("pidof dnscrypt-proxy >/dev/null") == 0 then -dnscrypt_proxy_run=1 -end - -if luci.sys.call("pidof dns2socks >/dev/null") == 0 then -dns2socks_run=1 -end - -if luci.sys.call("pidof haproxy >/dev/null") == 0 then -haproxy_run=1 -end - -m = SimpleForm("Version") -m.reset = false -m.submit = false - -t = m:section(Table, procs, translate("Running Details: ") .. "(/var/etc)") -t:option(DummyValue, "PID", translate("PID")) -t:option(DummyValue, "COMMAND", translate("CMD")) -t:option(DummyValue, "LISTEN", translate("LISTEN")) -t:option(DummyValue, "%CPU", translate("CPU usage (%)")) -t:option(DummyValue, "%MEM", translate("Memory usage (%)")) - -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 = translate("Not Running") -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 = translate("Not Running") -end - -s=m:field(DummyValue,"haproxy_run",translate("Load Balancing")) -s.rawhtml = true -if haproxy_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - -if nixio.fs.access("/usr/bin/chinadns") then -s=m:field(DummyValue,"chinadns_run",translate("ChinaDNS")) -s.rawhtml = true -if chinadns_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -s=m:field(DummyValue,"pdnsd_run",translate("PDNSD")) -s.rawhtml = true -if pdnsd_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - -if nixio.fs.access("/usr/bin/dns2socks") then -s=m:field(DummyValue,"dns2socks_run",translate("DNS2SOCKS")) -s.rawhtml = true -if dns2socks_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -s=m:field(DummyValue,"dnsforwarder_run",translate("dnsforwarder")) -s.rawhtml = true -if dnsforwarder_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - -s=m:field(DummyValue,"dnscrypt_proxy_run",translate("dnscrypt_proxy")) -s.rawhtml = true -if dnscrypt_proxy_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - -if nixio.fs.access("/usr/bin/ss-local") then -s=m:field(DummyValue,"ssock5_run",translate("SSOCKS5 Proxy")) -s.rawhtml = true -if ssock5_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/bin/ssr-local") then -s=m:field(DummyValue,"sock5_run",translate("SSR SOCKS5 Proxy")) -s.rawhtml = true -if sock5_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - - -if nixio.fs.access("/usr/bin/v2ray/v2ray") then -s=m:field(DummyValue,"ssock5_run",translate("V2SOCKS5 Proxy")) -s.rawhtml = true -if v2sock5_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/sbin/privoxy") then -s=m:field(DummyValue,"privoxy_run",translate("HTTP Proxy")) -s.rawhtml = true -if privoxy_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/bin/ssr-server") then -s=m:field(DummyValue,"server_run",translate("Global SSR Server")) -s.rawhtml = true -if server_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/bin/ss-server") then -s=m:field(DummyValue,"sserver_run",translate("Global SS Server")) -s.rawhtml = true -if sserver_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -end - -if nixio.fs.access("/usr/bin/v2ray") then -s=m:field(DummyValue,"v2server_run",translate("Global V2RAY Server")) -s.rawhtml = true -if v2server_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -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 = translate("Not Running") -end -end - -s=m:field(DummyValue,"version",translate("IPK Version")) -s.rawhtml = true -s.value =IPK_Version - -s=m:field(DummyValue,"udp2raw_version",translate("udp2raw Version")) -s.rawhtml = true -s.value =udp2raw_version -s=m:field(DummyValue,"udp2raw_run",translate("udp2raw")) -s.rawhtml = true -if udp2raw_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end - - -s=m:field(DummyValue,"udpspeeder_version",translate("UDPspeeder Version")) -s.rawhtml = true -s.value =udpspeeder_version -s=m:field(DummyValue,"udpspeeder_run",translate("UDPspeeder")) -s.rawhtml = true -if udpspeeder_run == 1 then -s.value =font_blue .. bold_on .. translate("Running") .. bold_off .. font_off -else -s.value = translate("Not Running") -end -s=m:field(DummyValue,"feedback",translate("Feedback")) -s.template = "vssr/feedback" -s.value =translate("No feedback") - - -return m diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/subscription.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/subscription.lua deleted file mode 100644 index e290867371..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/subscription.lua +++ /dev/null @@ -1,91 +0,0 @@ --- Licensed to the public under the GNU General Public License v3. - -local m, s, o -local vssr = "vssr" -local uci = luci.model.uci.cursor() -local server_table = {} -local gfwmode=0 -local gfw_count=0 -local ip_count=0 - -if nixio.fs.access("/etc/dnsmasq.vssr/gfw_list.conf") then -gfwmode=1 -end - -local uci = luci.model.uci.cursor() -local server_count = 0 -uci:foreach("vssr", "servers", function(s) - server_count = server_count + 1 -end) - -local fs = require "nixio.fs" -local sys = require "luci.sys" - -if gfwmode==1 then - gfw_count = tonumber(sys.exec("cat /etc/dnsmasq.vssr/gfw_list.conf | wc -l"))/2 - -end - - -m = Map(vssr) -m:section(SimpleSection).template = "vssr/status" --- [[ 节点订阅 ]]-- - -s = m:section(TypedSection, "server_subscribe", translate("Subscription")) -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(Flag, "proxy", translate("Through proxy update")) -o.rmempty = false -o.description = translate("Through proxy update list, Not Recommended ") - -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="0" - -o = s:option(DummyValue, "", "") -o.rawhtml = true -o.template = "vssr/update_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("vssr", "servers", function(s) - if s["hashkey"] then - return true - else - return false - end -end) -uci:save("vssr") -luci.sys.call("uci commit vssr && /etc/init.d/vssr stop") -luci.http.redirect(luci.dispatcher.build_url("admin", "vpn", "vssr", "servers")) -return -end - - -m:section(SimpleSection).template = "vssr/status2" - -return m - - - - - diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/udp2raw.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/udp2raw.lua deleted file mode 100644 index a8db6fff49..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/udp2raw.lua +++ /dev/null @@ -1,197 +0,0 @@ --- 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 vssr = "vssr" - - -m = Map(vssr) - -local server_table = {} -local encrypt_methods = { - "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 protocol = { - "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 = { - "plain", - "http_simple", - "http_post", - "random_head", - "tls1.2_ticket_auth", -} - -local raw_mode = { - "faketcp", - "udp", - "icmp", -} - -local seq_mode = { - "0", - "1", - "2", - "3", - "4", -} - -local cipher_mode = { - "none", - "xor", - "aes128cbc", -} - -local auth_mode = { - "none", - "simple", - "md5", - "crc32", -} - -local speeder_mode = { - "0", - "1", -} - - - - --- [[ udp2raw ]]-- -if nixio.fs.access("/usr/bin/udp2raw") then - -s = m:section(TypedSection, "udp2raw", translate(" UDP2raw ")) -s.anonymous = true - -o = s:option(Flag, "udp2raw_enable", translate("Enable udp2raw")) -o.default = 0 -o.rmempty = false - -o = s:option(Value, "server", translate("Server Address")) -o.datatype = "host" -o.rmempty = false - -o = s:option(Value, "server_port", translate("Server Port")) -o.datatype = "port" -o.rmempty = false - -o = s:option(Value, "local_port", translate("Local Port")) -o.datatype = "port" -o.rmempty = false - -o = s:option(Value, "key", translate("Password")) -o.password = true -o.rmempty = false - -o = s:option(ListValue, "raw_mode", translate("Raw Mode")) -for _, v in ipairs(raw_mode) do o:value(v) end -o.default = "faketcp" -o.rmempty = false - -o = s:option(ListValue, "seq_mode", translate("Seq Mode")) -for _, v in ipairs(seq_mode) do o:value(v) end -o.default = "3" -o.rmempty = false - -o = s:option(ListValue, "cipher_mode", translate("Cipher Mode")) -for _, v in ipairs(cipher_mode) do o:value(v) end -o.default = "xor" -o.rmempty = false - -o = s:option(ListValue, "auth_mode", translate("Auth Mode")) -for _, v in ipairs(auth_mode) do o:value(v) end -o.default = "simple" -o.rmempty = false - -end - --- [[ udpspeeder ]]-- -if nixio.fs.access("/usr/bin/udpspeeder") then - -s = m:section(TypedSection, "udpspeeder", translate("UDPspeeder")) -s.anonymous = true - -o = s:option(Flag, "udpspeeder_enable", translate("Enable UDPspeeder")) -o.default = 0 -o.rmempty = false - -o = s:option(Value, "server", translate("Server Address")) -o.datatype = "host" -o.rmempty = false - -o = s:option(Value, "server_port", translate("Server Port")) -o.datatype = "port" -o.rmempty = false - -o = s:option(Value, "local_port", translate("Local Port")) -o.datatype = "port" -o.rmempty = false - -o = s:option(Value, "key", translate("Password")) -o.password = true -o.rmempty = false - -o = s:option(ListValue, "speeder_mode", translate("Speeder Mode")) -for _, v in ipairs(speeder_mode) do o:value(v) end -o.default = "0" -o.rmempty = false - -o = s:option(Value, "fec", translate("Fec")) -o.default = "20:10" -o.rmempty = false - -o = s:option(Value, "mtu", translate("Mtu")) -o.datatype = "uinteger" -o.default = 1250 -o.rmempty = false - -o = s:option(Value, "queue_len", translate("Queue Len")) -o.datatype = "uinteger" -o.default = 200 -o.rmempty = false - -o = s:option(Value, "timeout", translate("Fec Timeout")) -o.datatype = "uinteger" -o.default = 8 -o.rmempty = false - -end - - - -return m diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/cell_valueheader.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/cell_valueheader.htm index e7165bd056..a1fea40f60 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/cell_valueheader.htm +++ b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/cell_valueheader.htm @@ -1 +1,2 @@ +
" data-index="<%=self.index%>" class="incon<%=subcount%>" data-depends="<%=pcdata(self:deplist2json(section))%>"> diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/check.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/check.htm deleted file mode 100644 index a36f5c13d2..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/check.htm +++ /dev/null @@ -1,38 +0,0 @@ -<%+cbi/valueheader%> - - - - - -<%=self.value%> - -<%+cbi/valuefooter%> \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/checkport.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/checkport.htm deleted file mode 100644 index 3fdd9e865a..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/checkport.htm +++ /dev/null @@ -1,36 +0,0 @@ -<%+cbi/valueheader%> - - - -<%=self.value%> - - - -<%+cbi/valuefooter%> \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/feedback.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/feedback.htm deleted file mode 100644 index 8a2b8052db..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/feedback.htm +++ /dev/null @@ -1,21 +0,0 @@ - - - -
- -
- -
-
- -
- -
- -
-
- - - - - \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/licence.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/licence.htm new file mode 100644 index 0000000000..61d011643b --- /dev/null +++ b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/licence.htm @@ -0,0 +1,21 @@ +<%+header%> + + +
+
+
+
+

GeoLite2

+

This product includes GeoLite2 data created by MaxMind, + available from + https://www.maxmind.com.

+ +

Flag-icon-css

+

A collection of all country flags in SVG — plus the CSS for easier integration https://flagicons.lipis.dev

+ +
+
+
+ +
+<%+footer%> \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/logview.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/logview.htm deleted file mode 100644 index 3ed55bdcaf..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/logview.htm +++ /dev/null @@ -1,109 +0,0 @@ - -<%- - local values = self:formvalue(section) - if not values then - values = self:cfgvalue(section) or {self.default} - end - - local function serialize_json(x, cb) - local rv, push = nil, cb - if not push then - rv = { } - push = function(tok) rv[#rv+1] = tok end - end - - if x == nil then - push("null") - elseif type(x) == "table" then - push("[") - for k = 1, #x do - if k > 1 then - push(",") - end - serialize_json(x[k], push) - end - push("]") - else - push('"%s"' % tostring(x):gsub('["%z\1-\31\\]', - function(c) return '\\u%04x' % c:byte(1) end)) - end - - if not cb then - return table.concat(rv, "") - end - end --%> -<%+cbi/valueheader%> - - - - -<% --- one button on top, one at the buttom -%> -

- /> - -

- -<% --- set a readable style taken from openwrt theme for textarea#syslog --- in openwrt theme there are problems with a width of 100 so we check for theme and set to lower value -%> - -

- -<% --- one button on top, one at the buttom -%> - /> -

-<%+cbi/valuefooter%> - diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/ping.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/ping.htm deleted file mode 100644 index 8c86aee74a..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/ping.htm +++ /dev/null @@ -1,3 +0,0 @@ -<%+cbi/valueheader%> --- ms -<%+cbi/valuefooter%> \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/refresh.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/refresh.htm index 37418fb043..694128cc30 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/refresh.htm +++ b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/refresh.htm @@ -2,43 +2,34 @@ - - + <%=self.value%> <%+cbi/valuefooter%> \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/server_list.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/server_list.htm deleted file mode 100644 index b7bde2aaf4..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/server_list.htm +++ /dev/null @@ -1,53 +0,0 @@ -<%# - Copyright 2018-2019 Lienol - Licensed to the public under the Apache License 2.0. --%> -<% -local dsp = require "luci.dispatcher" --%> - diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/socket.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/socket.htm deleted file mode 100644 index d075ff94b8..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/socket.htm +++ /dev/null @@ -1,3 +0,0 @@ -<%+cbi/valueheader%> -wait -<%+cbi/valuefooter%> \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/ssrurl.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/ssrurl.htm index 818961674b..464e6b7d0a 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/ssrurl.htm +++ b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/ssrurl.htm @@ -1,226 +1,181 @@ <%+cbi/valueheader%> + - - + -<%+cbi/valuefooter%> + +<%+cbi/valuefooter%> \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status.htm deleted file mode 100644 index c3bd2c59e7..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status.htm +++ /dev/null @@ -1,149 +0,0 @@ - -<% -math.randomseed(os.time()) --%> - - - - - - - - - - -
-
-
-
-

<%:Client%>
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
-
-
-

<%:baidu%>
<%:Problem detected%>✘

-
-
-
- -
-
-
-
- -
-
-
-

<%:youtube%>
<%:Problem detected%>✘

-
-
-
- -
-
-
-
- -
-
-
-

<%:Game Mode%>
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
-
-
-

𝐂𝐡𝐢𝐧𝐚𝐃𝐍𝐒
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
-
-
-

𝙎𝙊𝘾𝙆𝙎5
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
- - - - - diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status1.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status1.htm deleted file mode 100644 index b66e40d0e8..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status1.htm +++ /dev/null @@ -1,247 +0,0 @@ - - -
- - <%:Running Status%> - - - - - - - - - -
-
-
-
-

<%:Client%>
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
-
-
-

<%:baidu%>
<%:Problem detected%>✘

-
-
-
- -
-
-
-
- -
-
-
-

<%:youtube%>
<%:Problem detected%>✘

-
-
-
- -
-
-
-
- -
-
-
-

<%:Game Mode%>
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
-
-
-

𝐂𝐡𝐢𝐧𝐚𝐃𝐍𝐒
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
-
-
-

𝙎𝙊𝘾𝙆𝙎5
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
- - - - -
diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status3.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status3.htm deleted file mode 100644 index 52d9ac6617..0000000000 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status3.htm +++ /dev/null @@ -1,182 +0,0 @@ -
- - <%:Running Status%> - - - - - - - -
-
-
-
-

<%:Client%>
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
-
-
- -

<%:baidu%>
<%:Problem detected%>✘

-
-
-
- -
-
-
-
-
-
-
-

<%:youtube%>
<%:Problem detected%>✘

-
-
-
- -
-
-
-
- -
-
-
-

<%:SS Servers%>
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
-
-
-

<%:SSR Servers%>
<%:Not Running%>✘

-
-
-
- -
-
-
-
- -
-
-
-

<%:V2 Servers%>
<%:Not Running%>✘

-
-
-
- -
-
-
-
-
-
- - - \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status2.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status_bottom.htm similarity index 96% rename from package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status2.htm rename to package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status_bottom.htm index d805d4c396..7ebe6fb0b0 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status2.htm +++ b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status_bottom.htm @@ -20,7 +20,7 @@ + \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status_top.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status_top.htm new file mode 100644 index 0000000000..6c60f99c7c --- /dev/null +++ b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status_top.htm @@ -0,0 +1,91 @@ + + + +
+
+
+
+

<%:Client%>
<%:Not Running%>

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

<%:Game Mode%>
<%:Not Running%>

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

PDNSD
<%:Not Running%>

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

SOCKS5
<%:Not Running%>

+
+
+
+ +
+
+
+
+
+ + \ No newline at end of file diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/tblsection.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/tblsection.htm index 3c842a75da..4986946b79 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/tblsection.htm +++ b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/tblsection.htm @@ -5,8 +5,8 @@
- <%:Node list%> (<%:total%> -   <%- print(self.des)-%><%:Nodes%>) + 总计 + <%- print(self.des)-%>个节点
<%- local count = 0 -%>
@@ -90,9 +90,9 @@