From 192a4afe6d79d64714ea1883d14d01b1bba2fffa Mon Sep 17 00:00:00 2001
From: Umor1st <95365072+Umor1st@users.noreply.github.com>
Date: Thu, 15 Jan 2026 05:34:11 +0300
Subject: [PATCH] Add Russia whitelist routing option (#5161)
* Add Russia whitelist routing option
* Update RoutingType.kt
* Add custom routing file in assets
* Update localization
---
.../main/assets/custom_routing_white_russia | 43 +++++++++++++++++++
.../java/com/v2ray/ang/dto/RoutingType.kt | 2 +
.../app/src/main/res/values-bn/strings.xml | 1 +
.../src/main/res/values-bqi-rIR/strings.xml | 1 +
.../app/src/main/res/values-fa/strings.xml | 1 +
.../app/src/main/res/values-ru/strings.xml | 1 +
.../src/main/res/values-zh-rCN/strings.xml | 1 +
.../src/main/res/values-zh-rTW/strings.xml | 1 +
V2rayNG/app/src/main/res/values/strings.xml | 1 +
9 files changed, 52 insertions(+)
create mode 100644 V2rayNG/app/src/main/assets/custom_routing_white_russia
diff --git a/V2rayNG/app/src/main/assets/custom_routing_white_russia b/V2rayNG/app/src/main/assets/custom_routing_white_russia
new file mode 100644
index 00000000..d795928e
--- /dev/null
+++ b/V2rayNG/app/src/main/assets/custom_routing_white_russia
@@ -0,0 +1,43 @@
+[
+ {
+ "remarks": "Bypass bittorrent",
+ "outboundTag": "direct",
+ "protocol": [
+ "bittorrent"
+ ]
+ },
+ {
+ "remarks": "Block udp443",
+ "outboundTag": "block",
+ "port": "443",
+ "network": "udp"
+ },
+ {
+ "remarks": "Direct LAN IP",
+ "outboundTag": "direct",
+ "ip": [
+ "geoip:private"
+ ]
+ },
+ {
+ "remarks": "Direct LAN domains",
+ "outboundTag": "direct",
+ "domain": [
+ "geosite:private"
+ ]
+ },
+ {
+ "remarks": "Bypass Russia domains",
+ "outboundTag": "direct",
+ "domain": [
+ "geosite:category-ru"
+ ]
+ },
+ {
+ "remarks": "Bypass Russia IP",
+ "outboundTag": "direct",
+ "ip": [
+ "geoip:ru"
+ ]
+ }
+]
diff --git a/V2rayNG/app/src/main/java/com/v2ray/ang/dto/RoutingType.kt b/V2rayNG/app/src/main/java/com/v2ray/ang/dto/RoutingType.kt
index a98ac167..d85b037a 100644
--- a/V2rayNG/app/src/main/java/com/v2ray/ang/dto/RoutingType.kt
+++ b/V2rayNG/app/src/main/java/com/v2ray/ang/dto/RoutingType.kt
@@ -5,6 +5,7 @@ enum class RoutingType(val fileName: String) {
BLACK("custom_routing_black"),
GLOBAL("custom_routing_global"),
WHITE_IRAN("custom_routing_white_iran");
+ WHITE_RUSSIA("custom_routing_white_russia")
companion object {
fun fromIndex(index: Int): RoutingType {
@@ -13,6 +14,7 @@ enum class RoutingType(val fileName: String) {
1 -> BLACK
2 -> GLOBAL
3 -> WHITE_IRAN
+ 4 -> WHITE_RUSSIA
else -> WHITE
}
}
diff --git a/V2rayNG/app/src/main/res/values-bn/strings.xml b/V2rayNG/app/src/main/res/values-bn/strings.xml
index a6c28b56..84c70d48 100644
--- a/V2rayNG/app/src/main/res/values-bn/strings.xml
+++ b/V2rayNG/app/src/main/res/values-bn/strings.xml
@@ -388,6 +388,7 @@
- চায়না ব্ল্যাকলিস্ট
- গ্লোবাল
- ইরান হোয়াইটলিস্ট
+ - রাশিয়া হোয়াইটলিস্ট
diff --git a/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml b/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml
index f4ce85be..a52cced9 100644
--- a/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml
+++ b/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml
@@ -398,6 +398,7 @@
- نومگه شه چین
- جهۊوی (Global)
- نومگه اسبؽڌ ایران
+ - Russia Whitelist
diff --git a/V2rayNG/app/src/main/res/values-fa/strings.xml b/V2rayNG/app/src/main/res/values-fa/strings.xml
index 36f85b72..7fa6f4f7 100644
--- a/V2rayNG/app/src/main/res/values-fa/strings.xml
+++ b/V2rayNG/app/src/main/res/values-fa/strings.xml
@@ -397,6 +397,7 @@
- لیست سیاه چین
- جهانی(GLOBAL)
- ایران
+ - لیست سفید روسیه
diff --git a/V2rayNG/app/src/main/res/values-ru/strings.xml b/V2rayNG/app/src/main/res/values-ru/strings.xml
index d679bb3d..2b43dce1 100644
--- a/V2rayNG/app/src/main/res/values-ru/strings.xml
+++ b/V2rayNG/app/src/main/res/values-ru/strings.xml
@@ -397,6 +397,7 @@
- Чёрный список Китая
- Общие
- Белый список Ирана
+ - Белый список России
diff --git a/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml b/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml
index 872b88df..f10f9db1 100644
--- a/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml
+++ b/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml
@@ -389,6 +389,7 @@
- 黑名单 (Blacklist)
- 全局 (Global)
- 伊朗 (Iran)
+ - 俄罗斯白名单 (Russia Whitelist)
diff --git a/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml b/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml
index a3a7fb29..21793d10 100644
--- a/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml
+++ b/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml
@@ -389,6 +389,7 @@
- 黑名單 (Blacklist)
- 全域 (Global)
- 伊朗 (Iran)
+ - 俄羅斯白名單 (Russia Whitelist)
diff --git a/V2rayNG/app/src/main/res/values/strings.xml b/V2rayNG/app/src/main/res/values/strings.xml
index 3567418e..4537d8d1 100644
--- a/V2rayNG/app/src/main/res/values/strings.xml
+++ b/V2rayNG/app/src/main/res/values/strings.xml
@@ -401,6 +401,7 @@
- China Blacklist
- Global
- Iran Whitelist
+ - Russia Whitelist