diff --git a/luci-app-passwall/luasrc/passwall/util_sing-box.lua b/luci-app-passwall/luasrc/passwall/util_sing-box.lua index f9662125..ad76c2a9 100644 --- a/luci-app-passwall/luasrc/passwall/util_sing-box.lua +++ b/luci-app-passwall/luasrc/passwall/util_sing-box.lua @@ -1762,6 +1762,12 @@ function gen_config(var) end end + table.insert(route.rules, { + action = "route", + ip_is_private = true, + outbound = "direct" + }) + if COMMON.default_outbound_tag then route.final = COMMON.default_outbound_tag end diff --git a/luci-app-passwall/luasrc/passwall/util_xray.lua b/luci-app-passwall/luasrc/passwall/util_xray.lua index 6d5d6447..b91a88ea 100644 --- a/luci-app-passwall/luasrc/passwall/util_xray.lua +++ b/luci-app-passwall/luasrc/passwall/util_xray.lua @@ -1482,6 +1482,11 @@ function gen_config(var) end end) + table.insert(rules, { + outboundTag = "direct", + ip = { "geoip:private" } + }) + if default_outboundTag then local rule = { _flag = "default", diff --git a/luci-app-passwall2/luasrc/passwall2/util_sing-box.lua b/luci-app-passwall2/luasrc/passwall2/util_sing-box.lua index c7c98007..513a5cd8 100644 --- a/luci-app-passwall2/luasrc/passwall2/util_sing-box.lua +++ b/luci-app-passwall2/luasrc/passwall2/util_sing-box.lua @@ -1797,6 +1797,12 @@ function gen_config(var) end end + table.insert(route.rules, { + action = "route", + ip_is_private = true, + outbound = "direct" + }) + if COMMON.default_outbound_tag then route.final = COMMON.default_outbound_tag end diff --git a/luci-app-passwall2/luasrc/passwall2/util_xray.lua b/luci-app-passwall2/luasrc/passwall2/util_xray.lua index 3c0f708b..e148a173 100644 --- a/luci-app-passwall2/luasrc/passwall2/util_xray.lua +++ b/luci-app-passwall2/luasrc/passwall2/util_xray.lua @@ -1518,6 +1518,11 @@ function gen_config(var) end end) + table.insert(rules, { + outboundTag = "direct", + ip = { "geoip:private" } + }) + if default_outboundTag then local rule = { ruleTag = "default",