From 62ae7aaffa9c025913ad4ff78630afac18af1a10 Mon Sep 17 00:00:00 2001 From: vuong2023 <124447749+vuong2023@users.noreply.github.com> Date: Tue, 19 Dec 2023 16:38:37 +0700 Subject: [PATCH] Added geographical options for Vietnamese people! (#1408) * Update xray.html Add : Add xray config domain option for Vietnamese people * Update translate.vi_VN.toml Add : Add xray config domain option for Vietnamese people! * Update release.yml Add : add Vietnam country geoip & geosite geodatabase files * Update x-ui.sh add: Added update of Vietnam geoip & geosite geodatabase! * Update xray.html fix :fix code errors * Update xray.html fix: fix code errors * Update web/html/xui/xray.html * Update web/html/xui/xray.html --------- Co-authored-by: Ho3ein --- .github/workflows/release.yml | 4 +- web/html/xui/xray.html | 60 +++++++++++++++++++++++++- web/translation/translate.en_US.toml | 8 ++++ web/translation/translate.es_ES.toml | 8 ++++ web/translation/translate.fa_IR.toml | 8 ++++ web/translation/translate.ru_RU.toml | 8 ++++ web/translation/translate.vi_VN.toml | 8 ++++ web/translation/translate.zh_Hans.toml | 8 ++++ x-ui.sh | 4 +- 9 files changed, 113 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1b2c2298..c8eb33dd 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -55,11 +55,13 @@ jobs: unzip Xray-linux-arm64-v8a.zip rm -f Xray-linux-arm64-v8a.zip fi - rm -f geoip.dat geosite.dat geoip_IR.dat geosite_IR.dat + rm -f geoip.dat geosite.dat geoip_IR.dat geosite_IR.dat geoip_VN.dat geosite_VN.dat wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat wget -O geoip_IR.dat https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geoip.dat wget -O geosite_IR.dat https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geosite.dat + wget -O geoip_VN.dat https://github.com/vuong2023/vn-v2ray-rules/releases/latest/download/geoip.dat + wget -O geosite_VN.dat https://github.com/vuong2023/vn-v2ray-rules/releases/latest/download/geosite.dat mv xray xray-linux-${{ matrix.platform }} cd ../.. diff --git a/web/html/xui/xray.html b/web/html/xui/xray.html index 605f01b1..4a2ae38b 100644 --- a/web/html/xui/xray.html +++ b/web/html/xui/xray.html @@ -174,6 +174,8 @@ + + @@ -190,6 +192,8 @@ + + @@ -533,6 +537,7 @@ cn: ["geoip:cn"], ir: ["ext:geoip_IR.dat:ir"], ru: ["geoip:ru"], + vn: ["ext:geoip_VN.dat:vn"], }, domains: { ads: [ @@ -556,7 +561,12 @@ "regexp:.*\\.ir$", "regexp:.*\\.xn--mgba3a4f16a$", // .ایران "ext:geosite_IR.dat:ir" // have rules to bypass all .ir domains. - ] + ], + vn: [ + "regexp:.*\\.vn$", + "ext:geosite_VN.dat:vn", + "ext:geosite_VN.dat:ads" + ] }, familyProtectDNS: { "servers": [ @@ -1278,6 +1288,30 @@ } } }, + VNIpSettings: { + get: function () { + return doAllItemsExist(this.settingsData.ips.vn, this.blockedIPs); + }, + set: function (newValue) { + if (newValue) { + this.blockedIPs = [...this.blockedIPs, ...this.settingsData.ips.vn]; + } else { + this.blockedIPs = this.blockedIPs.filter(data => !this.settingsData.ips.vn.includes(data)); + } + } + }, + VNDomainSettings: { + get: function () { + return doAllItemsExist(this.settingsData.domains.vn, this.blockedDomains); + }, + set: function (newValue) { + if (newValue) { + this.blockedDomains = [...this.blockedDomains, ...this.settingsData.domains.vn]; + } else { + this.blockedDomains = this.blockedDomains.filter(data => !this.settingsData.domains.vn.includes(data)); + } + } + }, IRIpDirectSettings: { get: function () { return doAllItemsExist(this.settingsData.ips.ir, this.directIPs); @@ -1350,6 +1384,30 @@ } } }, + VNIpDirectSettings: { + get: function () { + return doAllItemsExist(this.settingsData.ips.vn, this.directIPs); + }, + set: function (newValue) { + if (newValue) { + this.directIPs = [...this.directIPs, ...this.settingsData.ips.vn]; + } else { + this.directIPs = this.directIPs.filter(data => !this.settingsData.ips.vn.includes(data)); + } + } + }, + VNDomainDirectSettings: { + get: function () { + return doAllItemsExist(this.settingsData.domains.vn, this.directDomains); + }, + set: function (newValue) { + if (newValue) { + this.directDomains = [...this.directDomains, ...this.settingsData.domains.vn]; + } else { + this.directDomains = this.directDomains.filter(data => !this.settingsData.domains.vn.includes(data)); + } + } + }, GoogleWARPSettings: { get: function () { return doAllItemsExist(this.settingsData.domains.google, this.warpDomains); diff --git a/web/translation/translate.en_US.toml b/web/translation/translate.en_US.toml index 64bc24db..41df2454 100644 --- a/web/translation/translate.en_US.toml +++ b/web/translation/translate.en_US.toml @@ -343,6 +343,10 @@ "RussiaIpDesc" = "Change the configuration template to avoid connecting to Russia IP ranges." "RussiaDomain" = "Disable Connection to Russia Domains" "RussiaDomainDesc" = "Change the configuration template to avoid connecting to Russia domains." +"VNIp" = "Disable Connection to Vietnam IPs" +"VNIpDesc" = "Change the configuration template to avoid connecting to Vietnam IP ranges." +"VNDomain" = "Disable Connection to Vietnam Domains" +"VNDomainDesc" = "Change the configuration template to avoid connecting to Vietnam domains." "DirectIRIp" = "Direct Connection to Iran IPs" "DirectIRIpDesc" = "Change the configuration template for direct connecting to Iran IP ranges." "DirectIRDomain" = "Direct Connection to Iran Domains" @@ -355,6 +359,10 @@ "DirectRussiaIpDesc" = "Change the configuration template for direct connecting to Russia IP ranges." "DirectRussiaDomain" = "Direct Connection to Russia Domains" "DirectRussiaDomainDesc" = "Change the configuration template for direct connecting to Russia domains." +"DirectVNIp" = "Direct Connection to Vietnam IPs" +"DirectVNIpDesc" = "Change the configuration template for direct connecting to Vietnam IP ranges." +"DirectVNDomain" = "Direct Connection to Vietnam Domains" +"DirectVNDomainDesc" = "Change the configuration template for direct connecting to Vietnam domains." "GoogleIPv4" = "Use IPv4 for Google" "GoogleIPv4Desc" = "Add routing for Google to connect with IPv4." "NetflixIPv4" = "Use IPv4 for Netflix" diff --git a/web/translation/translate.es_ES.toml b/web/translation/translate.es_ES.toml index b519ae9e..3e0ece57 100644 --- a/web/translation/translate.es_ES.toml +++ b/web/translation/translate.es_ES.toml @@ -343,6 +343,10 @@ "RussiaIpDesc" = "Cambia la plantilla de configuración para evitar la conexión a rangos de IP de Rusia." "RussiaDomain" = "Desactivar Conexión a Dominios de Rusia" "RussiaDomainDesc" = "Cambia la plantilla de configuración para evitar la conexión a dominios de Rusia." +"VNIp" = "Deshabilitar la conexión a las IP de Vietnam" +"VNIpDesc" = "Cambie la plantilla de configuración para evitar conectarse a rangos de IP de Vietnam." +"VNDomain" = "Deshabilitar la conexión a dominios de Vietnam" +"VNDomainDesc" = "Cambie la plantilla de configuración para evitar conectarse a dominios de Vietnam." "DirectIRIp" = "Conexión Directa a Rangos de IP de Irán" "DirectIRIpDesc" = "Cambia la plantilla de configuración para conectarse directamente a rangos de IP de Irán." "DirectIRDomain" = "Conexión Directa a Dominios de Irán" @@ -355,6 +359,10 @@ "DirectRussiaIpDesc" = "Cambia la plantilla de configuración para conectarse directamente a rangos de IP de Rusia." "DirectRussiaDomain" = "Conexión Directa a Dominios de Rusia" "DirectRussiaDomainDesc" = "Cambia la plantilla de configuración para conectarse directamente a dominios de Rusia." +"DirectVNIp" = "Conexión directa a IP de Vietnam" +"DirectVNIpDesc" = "Cambie la plantilla de configuración para la conexión directa a rangos de IP de Vietnam." +"DirectVNDomain" = "Conexión directa a dominios de Vietnam" +"DirectVNDomainDesc" = "Cambie la plantilla de configuración para la conexión directa a dominios de Vietnam." "GoogleIPv4" = "Usar IPv4 para Google" "GoogleIPv4Desc" = "Agregar enrutamiento para que Google se conecte con IPv4." "NetflixIPv4" = "Usar IPv4 para Netflix" diff --git a/web/translation/translate.fa_IR.toml b/web/translation/translate.fa_IR.toml index ceff55d9..6597dd51 100644 --- a/web/translation/translate.fa_IR.toml +++ b/web/translation/translate.fa_IR.toml @@ -343,6 +343,10 @@ "RussiaIpDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال آیپی های روسیه تغییر میدهد" "RussiaDomain" = "جلوگیری از اتصال دامنه های روسیه" "RussiaDomainDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال دامنه های روسیه تغییر میدهد" +"VNIp" = "جلوگیری از اتصال آیپی های ویتنام" +"VNIpDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال آیپی های ویتنام تغییر میدهد" +"VNDomain" = "جلوگیری از اتصال دامنه های ویتنام" +"VNDomainDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال دامنه های ویتنام تغییر میدهد" "DirectIRIp" = "ارتباط مستقیم به آیپی های ایران" "DirectIRIpDesc" = "الگوی تنظیمات را برای ارتباط مستقیم به آیپی های ایران تغییر میدهد" "DirectIRDomain" = "ارتباط مستقیم به دامنه های ایران" @@ -355,6 +359,10 @@ "DirectRussiaIpDesc" = "الگوی تنظیمات را برای ارتباط مستقیم به آیپی های روسیه تغییر میدهد" "DirectRussiaDomain" = "ارتباط مستقیم به دامنه های روسیه" "DirectRussiaDomainDesc" = "الگوی تنظیمات را برای ارتباط مستقیم به دامنه های روسیه تغییر میدهد" +"DirectVNIp" = "اتصال مستقیم به ای پی های ویتنام" +"DirectVNIpDesc" = "الگوی پیکربندی را برای اتصال مستقیم به محدوده آی پی های ویتنام تغییر میدهد" +"DirectVNDomain" = "اتصال مستقیم به دامنه های ویتنام" +"DirectVNDomainDesc" = "الگوی پیکربندی را برای اتصال مستقیم به دامنه های ویتنام تغییر میدهد" "GoogleIPv4" = "استفاده از آیپی ورژن 4 برای اتصال به گوگل" "GoogleIPv4Desc" = "مسیردهی جدید برای اتصال به گوگل با آیپی ورژن 4 اضافه میکند" "NetflixIPv4" = "استفاده از آیپی ورژن 4 برای اتصال به نتفلیکس" diff --git a/web/translation/translate.ru_RU.toml b/web/translation/translate.ru_RU.toml index 430a8ffa..852bc5ed 100644 --- a/web/translation/translate.ru_RU.toml +++ b/web/translation/translate.ru_RU.toml @@ -343,6 +343,10 @@ "RussiaIpDesc" = "Изменение конфигурации, чтобы заблокировать подключения к диапазонами IP-адресов России" "RussiaDomain" = "Заблокировать подключения к доменам России" "RussiaDomainDesc" = "Изменение конфигурации, чтобы заблокировать подключения к доменам России" +"VNIp" = "Отключить подключение к IP-адресам Вьетнама" +"VNIpDesc" = "Измените шаблон конфигурации, чтобы избежать подключения к диапазонам IP-адресов Вьетнама" +"VNDomain" = "Отключить подключение к доменам Вьетнама" +"VNDomainDesc" = "Измените шаблон конфигурации, чтобы избежать подключения к доменам Вьетнама." "DirectIRIp" = "Прямое подключения к диапазонам IP-адресов Ирана" "DirectIRIpDesc" = "Изменение шаблона конфигурации для прямого подключения к диапазонам IP-адресов Ирана" "DirectIRDomain" = "Прямое подключение к доменам Ирана" @@ -355,6 +359,10 @@ "DirectRussiaIpDesc" = "Изменение шаблона конфигурации для прямого подключения к диапазонам IP-адресов России" "DirectRussiaDomain" = "Прямое подключение к доменам России" "DirectRussiaDomainDesc" = "Изменение шаблона конфигурации для прямого подключения к доменам России" +"DirectVNIp" = "Прямое подключение к IP-адресам Вьетнама" +"DirectVNIpDesc" = "Измените шаблон конфигурации для прямого подключения к диапазонам IP-адресов Вьетнама" +"DirectVNDomain" = "Прямое подключение к доменам Вьетнама" +"DirectVNDomainDesc" = "Измените шаблон конфигурации для прямого подключения к доменам Вьетнама" "GoogleIPv4" = "Использовать IPv4 для Google" "GoogleIPv4Desc" = "Добавить маршрутизацию для Google для подключения к IPv4" "NetflixIPv4" = "Использовать IPv4 для Netflix" diff --git a/web/translation/translate.vi_VN.toml b/web/translation/translate.vi_VN.toml index 38e908a1..122357d8 100644 --- a/web/translation/translate.vi_VN.toml +++ b/web/translation/translate.vi_VN.toml @@ -343,6 +343,10 @@ "RussiaIpDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến dải IP của Nga." "RussiaDomain" = "Vô hiệu hóa kết nối đến tên miền của Nga" "RussiaDomainDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến các tên miền của Nga." +"VNIp" = "Vô hiệu hóa kết nối đến dải IP của Việt Nam" +"VNIpDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến dải IP của Việt Nam." +"VNDomain" = "Vô hiệu hóa kết nối đến tên miền của Việt Nam" +"VNDomainDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến các tên miền của Việt Nam." "DirectIRIp" = "Kết nối trực tiếp đến dải IP của Iran" "DirectIRIpDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến dải IP của Iran." "DirectIRDomain" = "Kết nối trực tiếp đến tên miền của Iran" @@ -355,6 +359,10 @@ "DirectRussiaIpDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến dải IP của Nga." "DirectRussiaDomain" = "Kết nối trực tiếp đến tên miền của Nga" "DirectRussiaDomainDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến các tên miền của Nga." +"DirectVNIp" = "Kết nối trực tiếp đến dải IP của Việt Nam" +"DirectVNIpDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến dải IP của Việt Nam" +"DirectVNDomain" = "Kết nối trực tiếp đến tên miền của Việt Nam" +"DirectVNDomainDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến các tên miền của Việt Nam." "GoogleIPv4" = "Sử dụng IPv4 cho Google" "GoogleIPv4Desc" = "Thêm định tuyến cho Google để kết nối qua IPv4." "NetflixIPv4" = "Sử dụng IPv4 cho Netflix" diff --git a/web/translation/translate.zh_Hans.toml b/web/translation/translate.zh_Hans.toml index de987117..066e4991 100644 --- a/web/translation/translate.zh_Hans.toml +++ b/web/translation/translate.zh_Hans.toml @@ -343,6 +343,10 @@ "RussiaIpDesc" = "修改配置模板避免连接俄罗斯IP范围" "RussiaDomain" = "禁止俄罗斯域连接" "RussiaDomainDesc" = "更改配置模板避免连接俄罗斯域" +"VNIp" = "禁用与越南 IP 的连接" +"VNIpDesc" = "更改配置模板以避免连接到越南 IP 范围" +"VNDomain" = "禁用与越南域的连接" +"VNDomainDesc" = "更改配置模板以避免连接到越南域" "DirectIRIp" = "直接连接到伊朗 IP 范围" "DirectIRIpDesc" = "更改直接连接到伊朗 IP 范围的配置模板" "DirectIRDomain" = "直接连接到伊朗域" @@ -355,6 +359,10 @@ "DirectRussiaIpDesc" = "更改直接连接到俄罗斯 IP 范围的配置模板" "DirectRussiaDomain" = "直接连接到俄罗斯域" "DirectRussiaDomainDesc" = "更改直接连接到俄罗斯域的配置模板" +"DirectVNIp" = "直接连接越南IP" +"DirectVNIpDesc" = "更改直接连接到越南 IP 范围的配置模板" +"DirectVNDomain" = "直接连接至越南域名" +"DirectVNDomainDesc" = "更改直连越南域的配置模板。" "GoogleIPv4" = "为谷歌使用 IPv4" "GoogleIPv4Desc" = "添加谷歌连接IPv4的路由" "NetflixIPv4" = "为 Netflix 使用 IPv4" diff --git a/x-ui.sh b/x-ui.sh index 51c79cc1..fd411311 100644 --- a/x-ui.sh +++ b/x-ui.sh @@ -519,11 +519,13 @@ update_geo() { systemctl stop x-ui cd ${binFolder} - rm -f geoip.dat geosite.dat geoip_IR.dat geosite_IR.dat + rm -f geoip.dat geosite.dat geoip_IR.dat geosite_IR.dat geoip_VN.dat geosite_VN.dat wget -N https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat wget -N https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat wget -O geoip_IR.dat -N https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geoip.dat wget -O geosite_IR.dat -N https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geosite.dat + wget -O geoip_VN.dat https://github.com/vuong2023/vn-v2ray-rules/releases/latest/download/geoip.dat + wget -O geosite_VN.dat https://github.com/vuong2023/vn-v2ray-rules/releases/latest/download/geosite.dat systemctl start x-ui echo -e "${green}Geosite.dat + Geoip.dat + geoip_IR.dat + geosite_IR.dat have been updated successfully in bin folder '${binfolder}'!${plain}" before_show_menu