89 Commits

Author SHA1 Message Date
CodeRoK7
a26890920d Upgrade version Podkop to v0.7.10 2025-12-22 17:16:49 +00:00
CodeRoK7
87b9c61862 Change default DNS on Google 2025-12-14 15:51:36 +00:00
CodeRoK7
4927639c28 Fix config Zapret 2025-12-12 09:50:37 +00:00
CodeRoK7
30f921def8 Fix 2025-12-10 17:47:42 +00:00
CodeRoK7
3fd7112201 fix config zapret 2025-12-10 17:44:21 +00:00
CodeRoK7
0005011227 Fix sync config Zapret 2025-12-10 17:33:46 +00:00
CodeRoK7
3a5033c95c Fix zapret config 2025-12-10 10:38:34 +00:00
CodeRoK7
fad8b427bd Fix config podkop 2025-12-09 17:06:06 +00:00
CodeRoK7
6f7b5dcaf9 Fix check zapret, add domain and subnets WhatsApp 2025-12-09 17:04:49 +00:00
CodeRoK7
dea36b0562 Update Podkop to version v0.7.9 2025-12-03 16:17:13 +00:00
CodeRoK7
0768a86e19 Fix bug DNS 2025-11-27 16:22:10 +00:00
CodeRoK7
38aa79c42f Delete zapret srtipt '50-wg4all' 2025-11-25 15:40:17 +00:00
CodeRoK7
0283d13376 Fix domen Amazon 2025-11-22 18:20:47 +00:00
CodeRoK7
33c3c21982 Add config file zapret-hosts-user-exclude.txt 2025-11-21 21:30:50 +00:00
CodeRoK7
d36af9d33d Add filter mark for Zapret 2025-11-21 20:39:00 +00:00
CodeRoK7
b724c9084d Upgrade strateg youtubeUnBlock 2025-11-20 07:21:26 +00:00
CodeRoK7
35b5abf1df Upgrade strateg Zapret 2025-11-20 06:23:16 +00:00
CodeRoK7
28e6159aec Stop service youtubeunblock 2025-11-14 03:44:37 +00:00
CodeRoK7
8605bd66cc Restore 2025-11-13 16:27:44 +00:00
CodeRoK7
2bbe0c5e5c Add config and restart packet wdoc 2025-11-13 16:01:45 +00:00
CodeRoK7
b650220a2f Add new packets wdoc-singbox, wdoc-warp 2025-11-13 15:56:26 +00:00
CodeRoK7
b6d492cd08 Add EndPoint WARP 2025-11-13 06:25:12 +00:00
CodeRoK7
19d6d4e352 Update Podkop to v0.7.7 2025-10-30 16:50:45 +00:00
CodeRoK7
8cec68331f Add domain amazonws.com 2025-10-27 18:13:43 +00:00
CodeRoK7
611012c508 Upgrade Podkop to v0.7.6 2025-10-27 15:50:10 +00:00
CodeRoK7
d36cd357d5 Fix remove packet https-dns-proxy 2025-10-26 15:32:36 +00:00
CodeRoK7
eb0a543ef6 Upgrade Podkop to v0.7.5 2025-10-26 14:55:38 +00:00
CodeRoK7
3bd2a946e4 Fix remove packet https-dns-proxy 2025-10-26 14:50:04 +00:00
CodeRoK7
29db68e670 Add config stubby 2025-10-25 16:08:43 +00:00
CodeRoK7
a04a84a364 Fix check work opera-proxy 2025-10-24 17:55:14 +00:00
CodeRoK7
b9a6cbc481 Upgrade Podkop to v0.7.2 2025-10-23 19:25:27 +00:00
CodeRoK7
e32fae4e5e Upgrade Podkop to 0.7.1v 2025-10-23 18:37:25 +00:00
CodeRoK7
13989b4eb2 Change domain for check sing-box 2025-10-23 06:16:06 +00:00
CodeRoK7
358f5ec528 Fix wg zapret, delete packet https-dns-proxy 2025-10-22 12:14:01 +00:00
CodeRoK7
a04a0535cc Fix zapret 2025-10-15 11:23:56 +00:00
CodeRoK7
f843526bf6 Fix install Podkop v0.6.2 2025-10-15 07:07:10 +00:00
CodeRoK7
1e33f885b4 Fix install Podkop v0.6.2 2025-10-15 06:56:15 +00:00
CodeRoK7
d652aa2839 Upgrade Podtop to v0.6.2 and used sing-box-tiny 2025-10-15 06:23:29 +00:00
CodeRoK7
04e2dd8513 Fix awg warp generator 2025-10-09 10:40:30 +00:00
Santa-Claus_16
669b212aff Delete warp6.sh 2025-10-08 21:58:23 +03:00
CodeRoK7
4f749e6500 Fix awg warp generator 2025-10-08 17:14:24 +00:00
Santa-Claus_16
d510a47c14 Update warp6.sh 2025-10-08 19:50:03 +03:00
Santa-Claus_16
7928618491 Add warp6.sh 2025-10-07 10:35:34 +03:00
CodeRoK7
fb2ff3536f fix awg warp generator 2025-10-07 04:25:22 +00:00
CodeRoK7
df5ce8f385 fix 2025-10-03 11:42:51 +00:00
CodeRoK7
3fb3ca7a16 fix 2025-10-03 11:15:34 +00:00
CodeRoK7
c4f548ae54 fix awg warp generator 2025-10-03 11:09:09 +00:00
CodeRoK7
8195d74f06 fix awg warp generator 2025-10-02 17:29:35 +00:00
CodeRoK7
32349889ae fix 2025-10-02 16:06:42 +00:00
CodeRoK7
cb656bf1ee fix awg warp generator 2025-10-02 16:04:12 +00:00
CodeRoK7
e1ee9830c5 fix awg warp generator 2025-10-02 12:25:44 +00:00
CodeRoK7
faff796c89 fix awg warp generator 2025-10-02 11:42:07 +00:00
CodeRoK7
d181c7e7a8 fix awg warp generator 2025-10-02 11:34:24 +00:00
CodeRoK7
e2a5f0fc66 fix awg warp generator 2025-10-02 11:27:21 +00:00
CodeRoK7
092926b0e2 fix awg warp generator 2025-10-02 07:26:26 +00:00
CodeRoK7
7da74fc23a Fix awg WARP generator 2025-10-01 21:23:38 +00:00
CodeRoK7
5b51933256 Fix awg warp generator 2025-10-01 21:12:18 +00:00
CodeRoK7
19ea1ac53f Return fix 2025-10-01 20:31:22 +00:00
CodeRoK7
2252f92de1 fix 2025-10-01 20:11:20 +00:00
CodeRoK7
fdb8d45f12 test 2025-10-01 19:51:16 +00:00
CodeRoK7
4e6ff78794 Fix 2025-10-01 19:39:03 +00:00
CodeRoK7
d12678e48b Fix generator AWG WARP 2025-10-01 18:48:16 +00:00
CodeRoK7
a9d4d2dfb1 Fix install sing-box 2025-09-30 19:46:50 +00:00
CodeRoK7
5a52bedc6f Fix fix 2025-09-30 19:42:11 +00:00
CodeRoK7
076d1d3442 Fix install sing-box 2025-09-30 19:38:34 +00:00
CodeRoK7
93fc581396 New Podkop, new AWG v2.0 2025-09-30 17:16:38 +00:00
CodeRoK7
d2d9430a88 On download list services of proxy 2025-09-18 10:07:50 +00:00
CodeRoK7
7242ee51a2 Updated Podkop to version 0.4.11 2025-09-17 04:09:25 +00:00
CodeRoK7
202bb5a771 Add speedtest.net and obusfaction WG 2025-09-16 19:51:51 +00:00
CodeRoK7
a66f3e288a Add check version OpenWRT 2025-09-16 12:07:34 +00:00
CodeRoK7
026b319c05 Fix hints 2025-09-16 11:59:37 +00:00
CodeRoK7
1253f60c2d Change youtubeUnblock on zapret well done 2025-09-16 11:54:58 +00:00
CodeRoK7
680d7fbdc7 Step one by Add Zapret 2025-09-16 07:29:01 +00:00
CodeRoK7
99cc4b5f84 Change url repo 2025-09-16 04:20:23 +00:00
CodeRoK7
d3bce96c88 Add new Podkop 0.4.10 install 2025-09-15 11:18:10 +00:00
CodeRoK7
e01d3a6be4 Add resolver dns in doh-proxy 2025-08-28 07:15:10 +00:00
CodeRoK7
930f6dcf2d Add new Podkop v0.4.8-r1 install 2025-08-26 16:35:00 +00:00
CodeRoK7
6d4e532dd6 Upgrade version Podkop for install 2025-08-26 06:49:18 +00:00
CodeRoK7
7fa5aa9717 Fix check version sing-box 2025-08-26 06:01:19 +00:00
CodeRoK7
67118ebc61 Fix check version sing-box 2025-08-26 05:35:44 +00:00
CodeRoK7
8432d25a20 Fix check version sing-box 2025-08-26 05:07:01 +00:00
CodeRoK7
49074bfb41 Check version sing-box and install version 1.11.15 2025-08-26 04:53:12 +00:00
CodeRoK7
c52df10834 fix 2025-08-23 18:54:26 +00:00
CodeRoK7
f5ff284f19 Fix check version firmware 2025-08-23 18:52:55 +00:00
CodeRoK7
f72be7e6c9 delete test 2025-08-22 07:08:26 +00:00
CodeRoK7
ef5fba95bf test 2025-08-22 06:38:23 +00:00
CodeRoK7
9838dba347 Add new script run_universal_config.sh and fix check youtubeUnblock 2025-08-22 06:32:51 +00:00
CodeRoK7
979a204127 Change repo url 2025-08-15 11:21:31 +00:00
CodeRoK7
99cfbb654e Fix calls WhatsApp and Telegram 2025-08-15 11:18:36 +00:00
64 changed files with 1477 additions and 529 deletions

View File

@@ -318,7 +318,7 @@ config_files="network
firewall firewall
https-dns-proxy https-dns-proxy
dhcp" dhcp"
URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/main" URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07"
checkPackageAndInstall "https-dns-proxy" "0" checkPackageAndInstall "https-dns-proxy" "0"
@@ -575,7 +575,7 @@ fi
path_podkop_config="/etc/config/podkop" path_podkop_config="/etc/config/podkop"
path_podkop_config_backup="/root/podkop" path_podkop_config_backup="/root/podkop"
URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/main" URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07"
if [ -f "/etc/init.d/podkop" ]; then if [ -f "/etc/init.d/podkop" ]; then
printf "Podkop installed. Reconfigured on AWG WARP and Opera Proxy? (y/n): \n" printf "Podkop installed. Reconfigured on AWG WARP and Opera Proxy? (y/n): \n"

View File

@@ -0,0 +1,36 @@
# this custom script runs desync to all discord media packets
# NOTE: @ih requires nft 1.0.1+ and updated kernel version. it's confirmed to work on 5.15 (openwrt 23) and not work on 5.10 (openwrt 22)
# can override in config :
NFQWS_OPT_DESYNC_DISCORD_MEDIA="${NFQWS_OPT_DESYNC_DISCORD_MEDIA:---dpi-desync=fake --dpi-desync-repeats=2}"
DISCORD_MEDIA_PORT_RANGE="${DISCORD_MEDIA_PORT_RANGE:-50000-50099}"
alloc_dnum DNUM_DISCORD_MEDIA
alloc_qnum QNUM_DISCORD_MEDIA
zapret_custom_daemons()
{
# $1 - 1 - add, 0 - stop
local opt="--qnum=$QNUM_DISCORD_MEDIA $NFQWS_OPT_DESYNC_DISCORD_MEDIA"
do_nfqws $1 $DNUM_DISCORD_MEDIA "$opt"
}
# size = 156 (8 udp header + 148 payload) && payload starts with 0x01000000
zapret_custom_firewall()
{
# $1 - 1 - run, 0 - stop
local DISABLE_IPV6=1
local port_range=$(replace_char - : $DISCORD_MEDIA_PORT_RANGE)
local f="-p udp --dport $port_range -m u32 --u32"
# this is simplified test to skip writing monstrous rule. instead of checking 64 bytes for zeroes only check 2 dwords for zero
fw_nfqws_post $1 "$f 0>>22&0x3C@4>>16=0x52&&0>>22&0x3C@8=0x00010046&&0>>22&0x3C@16=0&&0>>22&0x3C@76=0" '' $QNUM_DISCORD_MEDIA
}
zapret_custom_firewall_nft()
{
# stop logic is not required
local DISABLE_IPV6=1
local f="udp dport $DISCORD_MEDIA_PORT_RANGE udp length == 82 @ih,0,32 0x00010046 @ih,64,128 0x00000000000000000000000000000000 @ih,192,128 0x00000000000000000000000000000000 @ih,320,128 0x00000000000000000000000000000000 @ih,448,128 0x00000000000000000000000000000000"
nft_fw_nfqws_post "$f" '' $QNUM_DISCORD_MEDIA
}

31
config_files/50-stun4all Normal file
View File

@@ -0,0 +1,31 @@
# this custom script runs desync to all stun packets
# NOTE: @ih requires nft 1.0.1+ and updated kernel version. it's confirmed to work on 5.15 (openwrt 23) and not work on 5.10 (openwrt 22)
# can override in config :
NFQWS_OPT_DESYNC_STUN="${NFQWS_OPT_DESYNC_STUN:---dpi-desync=fake --dpi-desync-repeats=2}"
alloc_dnum DNUM_STUN4ALL
alloc_qnum QNUM_STUN4ALL
zapret_custom_daemons()
{
# $1 - 1 - add, 0 - stop
local opt="--qnum=$QNUM_STUN4ALL $NFQWS_OPT_DESYNC_STUN"
do_nfqws $1 $DNUM_STUN4ALL "$opt"
}
# size = 156 (8 udp header + 148 payload) && payload starts with 0x01000000
zapret_custom_firewall()
{
# $1 - 1 - run, 0 - stop
local f='-p udp -m u32 --u32'
fw_nfqws_post $1 "$f 0>>22&0x3C@4>>16=28:65535&&0>>22&0x3C@12=0x2112A442&&0>>22&0x3C@8&0xC0000003=0" "$f 44>>16=28:65535&&52=0x2112A442&&48&0xC0000003=0" $QNUM_STUN4ALL
}
zapret_custom_firewall_nft()
{
# stop logic is not required
local f="udp length >= 28 @ih,32,32 0x2112A442 @ih,0,2 0 @ih,30,2 0"
nft_fw_nfqws_post "$f" "$f" $QNUM_STUN4ALL
}

32
config_files/50-wg4all Normal file
View File

@@ -0,0 +1,32 @@
# this custom script runs desync to all wireguard handshake initiation packets
# NOTE: this works for original wireguard and may not work for 3rd party implementations such as xray
# NOTE: @ih requires nft 1.0.1+ and updated kernel version. it's confirmed to work on 5.15 (openwrt 23) and not work on 5.10 (openwrt 22)
# can override in config :
NFQWS_OPT_DESYNC_WG="${NFQWS_OPT_DESYNC_WG:---dpi-desync=fake --dpi-desync-fake-wireguard=/opt/zapret/files/fake/quic_initial_vk_com.bin --dpi-desync-repeats=5}"
alloc_dnum DNUM_WG4ALL
alloc_qnum QNUM_WG4ALL
zapret_custom_daemons()
{
# $1 - 1 - add, 0 - stop
local opt="--qnum=$QNUM_WG4ALL $NFQWS_OPT_DESYNC_WG"
do_nfqws $1 $DNUM_WG4ALL "$opt"
}
# size = 156 (8 udp header + 148 payload) && payload starts with 0x01000000
zapret_custom_firewall()
{
# $1 - 1 - run, 0 - stop
local f='-p udp -m u32 --u32'
fw_nfqws_post $1 "$f 0>>22&0x3C@4>>16=0x9c&&0>>22&0x3C@8=0x01000000" "$f 44>>16=0x9c&&48=0x01000000" $QNUM_WG4ALL
}
zapret_custom_firewall_nft()
{
# stop logic is not required
local f="udp length 156 @ih,0,32 0x01000000"
nft_fw_nfqws_post "$f" "$f" $QNUM_WG4ALL
}

View File

@@ -10,10 +10,33 @@ config main 'config'
option procd_trigger_wan6 '0' option procd_trigger_wan6 '0'
config doh-proxy config doh-proxy
option bootstrap_dns '94.140.14.14,94.140.15.15' option resolver_url 'https://dns.google/dns-query'
option resolver_url 'https://dns.adguard-dns.com/dns-query' option bootstrap_dns '8.8.8.8,8.8.4.4'
option listen_addr '127.0.0.1' option listen_addr '127.0.0.1'
option listen_port '5053' option listen_port '5053'
option user 'nobody' option user 'nobody'
option group 'nogroup' option group 'nogroup'
config doh-proxy
option bootstrap_dns '94.140.14.14,94.140.15.15'
option resolver_url 'https://dns.adguard-dns.com/dns-query'
option listen_addr '127.0.0.1'
option listen_port '5054'
option user 'nobody'
option group 'nogroup'
config doh-proxy
option resolver_url 'https://cloudflare-dns.com/dns-query'
option bootstrap_dns '1.1.1.1,1.0.0.1'
option listen_addr '127.0.0.1'
option listen_port '5055'
option user 'nobody'
option group 'nogroup'
config doh-proxy
option resolver_url 'https://router.comss.one/dns-query'
option bootstrap_dns '195.133.25.16,212.109.195.93'
option listen_addr '127.0.0.1'
option listen_port '5056'
option user 'nobody'
option group 'nogroup'

View File

@@ -1,55 +1,54 @@
config main 'main' config settings 'settings'
option mode 'proxy'
option proxy_config_type 'outbound'
option domain_list_enabled '1'
option subnets_list_enabled '0'
option custom_domains_list_type 'text'
option custom_local_domains_list_enabled '0'
option custom_download_domains_list_enabled '0'
option custom_download_subnets_list_enabled '0'
option all_traffic_from_ip_enabled '0'
option delist_domains_enabled '0'
option exclude_from_ip_enabled '0'
option yacd '0'
option socks5 '0'
option exclude_ntp '1'
option quic_disable '1'
option dont_touch_dhcp '1'
option update_interval '1d'
option dns_type 'doh' option dns_type 'doh'
option dns_server 'dns.adguard-dns.com' option dns_server '8.8.8.8'
option split_dns_enabled '0' option bootstrap_dns_server '8.8.8.8'
option dns_rewrite_ttl '60' option dns_rewrite_ttl '60'
option cache_file '/tmp/cache.db' option enable_output_network_interface '0'
list iface 'br-lan' option enable_badwan_interface_monitoring '0'
option mon_restart_ifaces '0' option enable_yacd '0'
option detour '0' option disable_quic '1'
option update_interval '1d'
option download_lists_via_proxy '1'
option dont_touch_dhcp '1'
option config_path '/etc/sing-box/config.json'
option cache_path '/tmp/sing-box/cache.db'
option exclude_ntp '1'
option shutdown_correctly '0'
option download_lists_via_proxy_section 'main'
list source_network_interfaces 'br-lan'
config section 'main'
option connection_type 'proxy'
option proxy_config_type 'outbound'
option enable_udp_over_tcp '0'
option shutdown_correctly '1'
option user_domain_list_type 'text'
option user_subnet_list_type 'disabled'
option mixed_proxy_enabled '0'
option outbound_json '{ option outbound_json '{
"type": "http", "type": "http",
"tag": "http-proxy", "tag": "http-proxy",
"server": "127.0.0.1", "server": "127.0.0.1",
"server_port": 18080 "server_port": 18080
}' }'
list domain_list 'geoblock' list community_lists 'geoblock'
list domain_list 'block' list community_lists 'block'
list domain_list 'meta' list community_lists 'meta'
list domain_list 'twitter' list community_lists 'twitter'
list domain_list 'hdrezka' list community_lists 'hdrezka'
list domain_list 'google_ai' list community_lists 'tiktok'
option custom_domains_text 'myip.com' list community_lists 'google_ai'
option custom_subnets_list_enabled 'disabled' option user_domains_text 'myip.com'
config extra 'Youtube_Discord' config section 'Youtube_Discord'
option mode 'vpn' option connection_type 'vpn'
option interface 'awg10' option interface 'awg10'
option domain_list_enabled '1' option domain_resolver_enabled '0'
list domain_list 'youtube' option user_domain_list_type 'text'
list domain_list 'discord' option user_subnet_list_type 'disabled'
option custom_domains_list_type 'text' option mixed_proxy_enabled '0'
option custom_domains_text '2ip.ru' list community_lists 'youtube'
option custom_local_domains_list_enabled '0' list community_lists 'discord'
option custom_download_domains_list_enabled '0' option user_domains_text '2ip.ru amazonaws.com whatsapp.com whatsapp.net whatsapp.biz wa.me'
option custom_subnets_list_enabled 'disabled' list remote_subnet_lists 'https://raw.githubusercontent.com/HybridNetworks/whatsapp-cidr/main/WhatsApp/whatsapp_cidr_ipv4.txt'
option custom_download_subnets_list_enabled '0'
option all_traffic_from_ip_enabled '0'

View File

@@ -1,54 +1,53 @@
config main 'main' config settings 'settings'
option mode 'proxy'
option proxy_config_type 'outbound'
option domain_list_enabled '1'
option subnets_list_enabled '0'
option custom_domains_list_type 'text'
option custom_local_domains_list_enabled '0'
option custom_download_domains_list_enabled '0'
option custom_download_subnets_list_enabled '0'
option all_traffic_from_ip_enabled '0'
option delist_domains_enabled '0'
option exclude_from_ip_enabled '0'
option yacd '0'
option socks5 '0'
option exclude_ntp '1'
option quic_disable '1'
option dont_touch_dhcp '1'
option update_interval '1d'
option dns_type 'doh' option dns_type 'doh'
option dns_server 'dns.adguard-dns.com' option dns_server '8.8.8.8'
option split_dns_enabled '0' option bootstrap_dns_server '8.8.8.8'
option dns_rewrite_ttl '60' option dns_rewrite_ttl '60'
option cache_file '/tmp/cache.db' option enable_output_network_interface '0'
list iface 'br-lan' option enable_badwan_interface_monitoring '0'
option mon_restart_ifaces '0' option enable_yacd '0'
option detour '0' option disable_quic '1'
option update_interval '1d'
option download_lists_via_proxy '1'
option dont_touch_dhcp '1'
option config_path '/etc/sing-box/config.json'
option cache_path '/tmp/sing-box/cache.db'
option exclude_ntp '1'
option shutdown_correctly '0'
option download_lists_via_proxy_section 'main'
list source_network_interfaces 'br-lan'
config section 'main'
option connection_type 'proxy'
option proxy_config_type 'outbound'
option enable_udp_over_tcp '0'
option shutdown_correctly '1'
option user_domain_list_type 'text'
option user_subnet_list_type 'disabled'
option mixed_proxy_enabled '0'
option outbound_json '{ option outbound_json '{
"type": "http", "type": "http",
"tag": "http-proxy", "tag": "http-proxy",
"server": "127.0.0.1", "server": "127.0.0.1",
"server_port": 18080 "server_port": 18080
}' }'
list domain_list 'geoblock' list community_lists 'geoblock'
list domain_list 'block' list community_lists 'block'
list domain_list 'meta' list community_lists 'meta'
list domain_list 'twitter' list community_lists 'twitter'
list domain_list 'hdrezka' list community_lists 'hdrezka'
list domain_list 'google_ai' list community_lists 'tiktok'
option custom_domains_text 'myip.com' list community_lists 'google_ai'
option custom_subnets_list_enabled 'disabled' option user_domains_text 'myip.com'
config extra 'Discord' config section 'Discord'
option mode 'vpn' option connection_type 'vpn'
option interface 'awg10' option interface 'awg10'
option domain_list_enabled '1' option domain_resolver_enabled '0'
list domain_list 'discord' option user_domain_list_type 'text'
option custom_domains_list_type 'text' option user_subnet_list_type 'disabled'
option custom_domains_text '2ip.ru' option mixed_proxy_enabled '0'
option custom_local_domains_list_enabled '0' list community_lists 'discord'
option custom_download_domains_list_enabled '0' option user_domains_text '2ip.ru amazonaws.com whatsapp.com whatsapp.net whatsapp.biz wa.me'
option custom_subnets_list_enabled 'disabled' list remote_subnet_lists 'https://raw.githubusercontent.com/HybridNetworks/whatsapp-cidr/main/WhatsApp/whatsapp_cidr_ipv4.txt'
option custom_download_subnets_list_enabled '0'
option all_traffic_from_ip_enabled '0'

View File

@@ -1,42 +1,44 @@
config main 'main' config settings 'settings'
option mode 'proxy'
option proxy_config_type 'outbound'
option domain_list_enabled '1'
option subnets_list_enabled '0'
option custom_domains_list_type 'text'
option custom_local_domains_list_enabled '0'
option custom_download_domains_list_enabled '0'
option custom_download_subnets_list_enabled '0'
option all_traffic_from_ip_enabled '0'
option delist_domains_enabled '0'
option exclude_from_ip_enabled '0'
option yacd '0'
option socks5 '0'
option exclude_ntp '1'
option quic_disable '1'
option dont_touch_dhcp '1'
option update_interval '1d'
option dns_type 'doh' option dns_type 'doh'
option dns_server 'dns.adguard-dns.com' option dns_server '8.8.8.8'
option split_dns_enabled '0' option bootstrap_dns_server '8.8.8.8'
option dns_rewrite_ttl '60' option dns_rewrite_ttl '60'
option cache_file '/tmp/cache.db' option enable_output_network_interface '0'
list iface 'br-lan' option enable_badwan_interface_monitoring '0'
option mon_restart_ifaces '0' option enable_yacd '0'
option detour '0' option disable_quic '1'
option update_interval '1d'
option download_lists_via_proxy '1'
option dont_touch_dhcp '1'
option config_path '/etc/sing-box/config.json'
option cache_path '/tmp/sing-box/cache.db'
option exclude_ntp '1'
option shutdown_correctly '0'
option download_lists_via_proxy_section 'main'
list source_network_interfaces 'br-lan'
config section 'main'
option connection_type 'proxy'
option proxy_config_type 'outbound'
option enable_udp_over_tcp '0'
option shutdown_correctly '1'
option user_domain_list_type 'text'
option user_subnet_list_type 'disabled'
option mixed_proxy_enabled '0'
option outbound_json '{ option outbound_json '{
"type": "http", "type": "http",
"tag": "http-proxy", "tag": "http-proxy",
"server": "127.0.0.1", "server": "127.0.0.1",
"server_port": 18080 "server_port": 18080
}' }'
list domain_list 'geoblock' list community_lists 'geoblock'
list domain_list 'block' list community_lists 'block'
list domain_list 'meta' list community_lists 'meta'
list domain_list 'twitter' list community_lists 'twitter'
list domain_list 'hdrezka' list community_lists 'hdrezka'
list domain_list 'google_ai' list community_lists 'tiktok'
list domain_list 'discord' list community_lists 'google_ai'
option custom_domains_text 'myip.com' list community_lists 'discord'
option custom_subnets_list_enabled 'disabled' option user_domains_text 'myip.com amazonaws.com whatsapp.com whatsapp.net whatsapp.biz wa.me'
list remote_subnet_lists 'https://raw.githubusercontent.com/HybridNetworks/whatsapp-cidr/main/WhatsApp/whatsapp_cidr_ipv4.txt'

View File

@@ -1,43 +1,45 @@
config main 'main' config settings 'settings'
option mode 'proxy'
option proxy_config_type 'outbound'
option domain_list_enabled '1'
option subnets_list_enabled '0'
option custom_domains_list_type 'text'
option custom_local_domains_list_enabled '0'
option custom_download_domains_list_enabled '0'
option custom_download_subnets_list_enabled '0'
option all_traffic_from_ip_enabled '0'
option delist_domains_enabled '0'
option exclude_from_ip_enabled '0'
option yacd '0'
option socks5 '0'
option exclude_ntp '1'
option quic_disable '1'
option dont_touch_dhcp '1'
option update_interval '1d'
option dns_type 'doh' option dns_type 'doh'
option dns_server 'dns.adguard-dns.com' option dns_server '8.8.8.8'
option split_dns_enabled '0' option bootstrap_dns_server '8.8.8.8'
option dns_rewrite_ttl '60' option dns_rewrite_ttl '60'
option cache_file '/tmp/cache.db' option enable_output_network_interface '0'
list iface 'br-lan' option enable_badwan_interface_monitoring '0'
option mon_restart_ifaces '0' option enable_yacd '0'
option detour '0' option disable_quic '1'
option update_interval '1d'
option download_lists_via_proxy '1'
option dont_touch_dhcp '1'
option config_path '/etc/sing-box/config.json'
option cache_path '/tmp/sing-box/cache.db'
option exclude_ntp '1'
option shutdown_correctly '0'
option download_lists_via_proxy_section 'main'
list source_network_interfaces 'br-lan'
config section 'main'
option connection_type 'proxy'
option proxy_config_type 'outbound'
option enable_udp_over_tcp '0'
option shutdown_correctly '1'
option user_domain_list_type 'text'
option user_subnet_list_type 'disabled'
option mixed_proxy_enabled '0'
option outbound_json '{ option outbound_json '{
"type": "http", "type": "http",
"tag": "http-proxy", "tag": "http-proxy",
"server": "127.0.0.1", "server": "127.0.0.1",
"server_port": 18080 "server_port": 18080
}' }'
list domain_list 'geoblock' list community_lists 'geoblock'
list domain_list 'block' list community_lists 'block'
list domain_list 'meta' list community_lists 'meta'
list domain_list 'twitter' list community_lists 'twitter'
list domain_list 'hdrezka' list community_lists 'hdrezka'
list domain_list 'google_ai' list community_lists 'tiktok'
list domain_list 'discord' list community_lists 'google_ai'
list domain_list 'youtube' list community_lists 'youtube'
option custom_domains_text 'myip.com' list community_lists 'discord'
option custom_subnets_list_enabled 'disabled' option user_domains_text 'myip.com amazonaws.com whatsapp.com whatsapp.net whatsapp.biz wa.me'
list remote_subnet_lists 'https://raw.githubusercontent.com/HybridNetworks/whatsapp-cidr/main/WhatsApp/whatsapp_cidr_ipv4.txt'

View File

@@ -1,36 +1,38 @@
config main 'main' config settings 'settings'
option mode 'vpn'
option interface 'awg10'
option domain_list_enabled '1'
option subnets_list_enabled '0'
option custom_domains_list_type 'text'
option custom_local_domains_list_enabled '0'
option custom_download_domains_list_enabled '0'
option custom_download_subnets_list_enabled '0'
option all_traffic_from_ip_enabled '0'
option delist_domains_enabled '0'
option exclude_from_ip_enabled '0'
option yacd '0'
option socks5 '0'
option exclude_ntp '1'
option quic_disable '1'
option dont_touch_dhcp '1'
option update_interval '1d'
option dns_type 'doh' option dns_type 'doh'
option dns_server 'dns.adguard-dns.com' option dns_server '8.8.8.8'
option split_dns_enabled '0' option bootstrap_dns_server '8.8.8.8'
option dns_rewrite_ttl '60' option dns_rewrite_ttl '60'
option cache_file '/tmp/cache.db' option enable_output_network_interface '0'
list iface 'br-lan' option enable_badwan_interface_monitoring '0'
option mon_restart_ifaces '0' option enable_yacd '0'
option detour '0' option disable_quic '1'
list domain_list 'block' option update_interval '1d'
list domain_list 'meta' option download_lists_via_proxy '1'
list domain_list 'twitter' option dont_touch_dhcp '1'
list domain_list 'hdrezka' option config_path '/etc/sing-box/config.json'
list domain_list 'telegram' option cache_path '/tmp/sing-box/cache.db'
list domain_list 'discord' option exclude_ntp '1'
list domain_list 'youtube' option shutdown_correctly '0'
option custom_domains_text 'myip.com' option download_lists_via_proxy_section 'main'
option custom_subnets_list_enabled 'disabled' list source_network_interfaces 'br-lan'
config section 'main'
option connection_type 'vpn'
option interface 'awg10'
option enable_udp_over_tcp '0'
option shutdown_correctly '1'
option user_domain_list_type 'text'
option user_subnet_list_type 'disabled'
option mixed_proxy_enabled '0'
list community_lists 'block'
list community_lists 'meta'
list community_lists 'twitter'
list community_lists 'hdrezka'
list community_lists 'tiktok'
list community_lists 'google_ai'
list community_lists 'discord'
list community_lists 'yotube'
option user_domains_text 'myip.com amazonaws.com whatsapp.com whatsapp.net whatsapp.biz wa.me'
list remote_subnet_lists 'https://raw.githubusercontent.com/HybridNetworks/whatsapp-cidr/main/WhatsApp/whatsapp_cidr_ipv4.txt'

View File

@@ -1,35 +1,37 @@
config main 'main' config settings 'settings'
option mode 'vpn'
option interface 'awg10'
option domain_list_enabled '1'
option subnets_list_enabled '0'
option custom_domains_list_type 'text'
option custom_local_domains_list_enabled '0'
option custom_download_domains_list_enabled '0'
option custom_download_subnets_list_enabled '0'
option all_traffic_from_ip_enabled '0'
option delist_domains_enabled '0'
option exclude_from_ip_enabled '0'
option yacd '0'
option socks5 '0'
option exclude_ntp '1'
option quic_disable '1'
option dont_touch_dhcp '1'
option update_interval '1d'
option dns_type 'doh' option dns_type 'doh'
option dns_server 'dns.adguard-dns.com' option dns_server '8.8.8.8'
option split_dns_enabled '0' option bootstrap_dns_server '8.8.8.8'
option dns_rewrite_ttl '60' option dns_rewrite_ttl '60'
option cache_file '/tmp/cache.db' option enable_output_network_interface '0'
list iface 'br-lan' option enable_badwan_interface_monitoring '0'
option mon_restart_ifaces '0' option enable_yacd '0'
option detour '0' option disable_quic '1'
list domain_list 'block' option update_interval '1d'
list domain_list 'meta' option download_lists_via_proxy '1'
list domain_list 'twitter' option dont_touch_dhcp '1'
list domain_list 'hdrezka' option config_path '/etc/sing-box/config.json'
list domain_list 'telegram' option cache_path '/tmp/sing-box/cache.db'
list domain_list 'discord' option exclude_ntp '1'
option custom_domains_text 'myip.com' option shutdown_correctly '0'
option custom_subnets_list_enabled 'disabled' option download_lists_via_proxy_section 'main'
list source_network_interfaces 'br-lan'
config section 'main'
option connection_type 'vpn'
option interface 'awg10'
option enable_udp_over_tcp '0'
option shutdown_correctly '1'
option user_domain_list_type 'text'
option user_subnet_list_type 'disabled'
option mixed_proxy_enabled '0'
list community_lists 'block'
list community_lists 'meta'
list community_lists 'twitter'
list community_lists 'hdrezka'
list community_lists 'tiktok'
list community_lists 'google_ai'
list community_lists 'discord'
option user_domains_text 'myip.com amazonaws.com whatsapp.com whatsapp.net whatsapp.biz wa.me'
list remote_subnet_lists 'https://raw.githubusercontent.com/HybridNetworks/whatsapp-cidr/main/WhatsApp/whatsapp_cidr_ipv4.txt'

86
config_files/stubby Normal file
View File

@@ -0,0 +1,86 @@
config stubby 'global'
option manual '0'
list dns_transport 'GETDNS_TRANSPORT_TLS'
option tls_authentication '1'
option tls_query_padding_blocksize '128'
option appdata_dir '/var/lib/stubby'
option edns_client_subnet_private '1'
option idle_timeout '10000'
option round_robin_upstreams '0'
list listen_address '127.0.0.1@5453'
list listen_address '0::1@5453'
list trigger 'wan'
list trigger 'wan6'
list trigger 'pppoe'
list trigger 'l2tp'
list trigger 'pptp'
list trigger 'modem'
list trigger 'wwan'
list trigger 'wwan0'
option log_level '0'
config resolver
option address '8.8.8.8'
option tls_auth_name 'dns.google'
config resolver
option address '94.140.14.14'
option tls_auth_name 'dns.adguard.com'
config resolver
option address '94.140.14.15'
option tls_auth_name 'dns.adguard.com'
config resolver
option address '2a10:50c0::ad1:ff'
option tls_auth_name 'dns.adguard.com'
config resolver
option address '2a10:50c0::ad2:ff'
option tls_auth_name 'dns.adguard.com'
config resolver
option address '1.1.1.1'
option tls_auth_name 'cloudflare-dns.com'
config resolver
option address '2001:4860:4860::8888'
option tls_auth_name 'dns.google'
config resolver
option address '2606:4700:4700::1111'
option tls_auth_name 'cloudflare-dns.com'
config resolver
option address '8.8.4.4'
option tls_auth_name 'dns.google'
config resolver
option address '1.0.0.1'
option tls_auth_name 'cloudflare-dns.com'
config resolver
option address '2001:4860:4860::8844'
option tls_auth_name 'dns.google'
config resolver
option address '2606:4700:4700::1001'
option tls_auth_name 'cloudflare-dns.com'
config resolver
option address '9.9.9.9'
option tls_auth_name 'dns.quad9.net'
config resolver
option address '149.112.112.112'
option tls_auth_name 'dns.quad9.net'
config resolver
option address '2620:fe::fe'
option tls_auth_name 'dns.quad9.net'
config resolver
option address '2620:fe::9'
option tls_auth_name 'dns.quad9.net'

View File

@@ -19,7 +19,7 @@ config section
option frag_sni_faked '0' option frag_sni_faked '0'
option frag_middle_sni '1' option frag_middle_sni '1'
option frag_sni_pos '1' option frag_sni_pos '1'
option seg2delay '0' option seg2delay '3'
option fk_winsize '0' option fk_winsize '0'
option synfake '0' option synfake '0'
option sni_detection 'parse' option sni_detection 'parse'
@@ -95,3 +95,39 @@ config section
list sni_domains 'twitteroauth.com' list sni_domains 'twitteroauth.com'
list sni_domains 'twitterstat.us' list sni_domains 'twitterstat.us'
config section
option name 'CallsWhatsAppTelegram'
option tls_enabled '0'
option all_domains '0'
list sni_domains 'cdn-telegram.org'
list sni_domains 'comments.app'
list sni_domains 'contest.com'
list sni_domains 'fragment.com'
list sni_domains 'graph.org'
list sni_domains 'quiz.directory'
list sni_domains 't.me'
list sni_domains 'tdesktop.com'
list sni_domains 'telega.one'
list sni_domains 'telegra.ph'
list sni_domains 'telegram-cdn.org'
list sni_domains 'telegram.dog'
list sni_domains 'telegram.me'
list sni_domains 'telegram.org'
list sni_domains 'telegram.space'
list sni_domains 'telesco.pe'
list sni_domains 'tg.dev'
list sni_domains 'tx.me'
list sni_domains 'usercontent.dev'
list sni_domains 'graph.facebook.com'
list sni_domains 'whatsapp.biz'
list sni_domains 'whatsapp.com'
list sni_domains 'whatsapp.net'
option sni_detection 'parse'
option quic_drop '0'
option udp_mode 'fake'
option udp_faking_strategy 'none'
option udp_fake_seq_len '6'
option udp_fake_len '64'
option udp_filter_quic 'disabled'
option enabled '1'
option udp_stun_filter '1'

View File

@@ -19,7 +19,7 @@ config section
option frag_sni_faked '0' option frag_sni_faked '0'
option frag_middle_sni '1' option frag_middle_sni '1'
option frag_sni_pos '1' option frag_sni_pos '1'
option seg2delay '0' option seg2delay '3'
option fk_winsize '0' option fk_winsize '0'
option synfake '0' option synfake '0'
option sni_detection 'parse' option sni_detection 'parse'
@@ -34,4 +34,41 @@ config section
list sni_domains 'googleusercontent.com' list sni_domains 'googleusercontent.com'
list sni_domains 'gstatic.com' list sni_domains 'gstatic.com'
list sni_domains 'l.google.com' list sni_domains 'l.google.com'
option quic_drop '1' option quic_drop '1'
config section
option name 'CallsWhatsAppTelegram'
option tls_enabled '0'
option all_domains '0'
list sni_domains 'cdn-telegram.org'
list sni_domains 'comments.app'
list sni_domains 'contest.com'
list sni_domains 'fragment.com'
list sni_domains 'graph.org'
list sni_domains 'quiz.directory'
list sni_domains 't.me'
list sni_domains 'tdesktop.com'
list sni_domains 'telega.one'
list sni_domains 'telegra.ph'
list sni_domains 'telegram-cdn.org'
list sni_domains 'telegram.dog'
list sni_domains 'telegram.me'
list sni_domains 'telegram.org'
list sni_domains 'telegram.space'
list sni_domains 'telesco.pe'
list sni_domains 'tg.dev'
list sni_domains 'tx.me'
list sni_domains 'usercontent.dev'
list sni_domains 'graph.facebook.com'
list sni_domains 'whatsapp.biz'
list sni_domains 'whatsapp.com'
list sni_domains 'whatsapp.net'
option sni_detection 'parse'
option quic_drop '0'
option udp_mode 'fake'
option udp_faking_strategy 'none'
option udp_fake_seq_len '6'
option udp_fake_len '64'
option udp_filter_quic 'disabled'
option enabled '1'
option udp_stun_filter '1'

View File

@@ -19,7 +19,7 @@ config section
option frag_sni_faked '0' option frag_sni_faked '0'
option frag_middle_sni '1' option frag_middle_sni '1'
option frag_sni_pos '1' option frag_sni_pos '1'
option seg2delay '0' option seg2delay '3'
option fk_winsize '0' option fk_winsize '0'
option synfake '0' option synfake '0'
option sni_detection 'parse' option sni_detection 'parse'
@@ -65,4 +65,41 @@ config section
list sni_domains 'discordapp.com' list sni_domains 'discordapp.com'
list sni_domains 'discord.gg' list sni_domains 'discord.gg'
list sni_domains 'discordapp.net' list sni_domains 'discordapp.net'
list sni_domains 'discord.media' list sni_domains 'discord.media'
config section
option name 'CallsWhatsAppTelegram'
option tls_enabled '0'
option all_domains '0'
list sni_domains 'cdn-telegram.org'
list sni_domains 'comments.app'
list sni_domains 'contest.com'
list sni_domains 'fragment.com'
list sni_domains 'graph.org'
list sni_domains 'quiz.directory'
list sni_domains 't.me'
list sni_domains 'tdesktop.com'
list sni_domains 'telega.one'
list sni_domains 'telegra.ph'
list sni_domains 'telegram-cdn.org'
list sni_domains 'telegram.dog'
list sni_domains 'telegram.me'
list sni_domains 'telegram.org'
list sni_domains 'telegram.space'
list sni_domains 'telesco.pe'
list sni_domains 'tg.dev'
list sni_domains 'tx.me'
list sni_domains 'usercontent.dev'
list sni_domains 'graph.facebook.com'
list sni_domains 'whatsapp.biz'
list sni_domains 'whatsapp.com'
list sni_domains 'whatsapp.net'
option sni_detection 'parse'
option quic_drop '0'
option udp_mode 'fake'
option udp_faking_strategy 'none'
option udp_fake_seq_len '6'
option udp_fake_len '64'
option udp_filter_quic 'disabled'
option enabled '1'
option udp_stun_filter '1'

55
config_files/zapret Normal file
View File

@@ -0,0 +1,55 @@
config main 'config'
option run_on_boot '1'
option FWTYPE 'nftables'
option POSTNAT '1'
option FLOWOFFLOAD 'none'
option INIT_APPLY_FW '1'
option DISABLE_IPV4 '0'
option DISABLE_IPV6 '1'
option FILTER_TTL_EXPIRED_ICMP '1'
option MODE_FILTER 'hostlist'
option DISABLE_CUSTOM '0'
option WS_USER 'daemon'
option DAEMON_LOG_ENABLE '0'
option DAEMON_LOG_FILE '/tmp/zapret+<DAEMON_NAME>+<DAEMON_IDNUM>+<DAEMON_CFGNAME>.log'
option AUTOHOSTLIST_RETRANS_THRESHOLD '3'
option AUTOHOSTLIST_FAIL_THRESHOLD '3'
option AUTOHOSTLIST_FAIL_TIME '60'
option AUTOHOSTLIST_DEBUGLOG '0'
option NFQWS_ENABLE '1'
option DESYNC_MARK '0x40000000'
option DESYNC_MARK_POSTNAT '0x20000000'
option FILTER_MARK ' '
option NFQWS_PORTS_TCP '80,443'
option NFQWS_PORTS_UDP '443'
option NFQWS_TCP_PKT_OUT '9'
option NFQWS_TCP_PKT_IN '3'
option NFQWS_UDP_PKT_OUT '9'
option NFQWS_UDP_PKT_IN '0'
option NFQWS_PORTS_TCP_KEEPALIVE '0'
option NFQWS_PORTS_UDP_KEEPALIVE '0'
option NFQWS_OPT '
--filter-tcp=443
--dpi-desync=fake,fakeddisorder
--dpi-desync-split-pos=10,midsld
--dpi-desync-fake-tls=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin
--dpi-desync-fake-tls-mod=rnd,dupsid,sni=fonts.google.com
--dpi-desync-fake-tls=0x0F0F0F0F
--dpi-desync-fake-tls-mod=none
--dpi-desync-fakedsplit-pattern=/opt/zapret/files/fake/tls_clienthello_vk_com.bin
--dpi-desync-split-seqovl=336
--dpi-desync-split-seqovl-pattern=/opt/zapret/files/fake/tls_clienthello_gosuslugi_ru.bin
--dpi-desync-fooling=badseq,badsum
--dpi-desync-badseq-increment=0
--hostlist=/opt/zapret/ipset/zapret-hosts-google.txt
<HOSTLIST>
--new
--filter-udp=443
--dpi-desync=fake
--dpi-desync-repeats=4
--dpi-desync-fake-quic=/opt/zapret/files/fake/quic_initial_www_google_com.bin
--hostlist=/opt/zapret/ipset/zapret-hosts-google.txt
<HOSTLIST>
'

View File

@@ -0,0 +1,18 @@
127.0.0.0/8
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16
169.254.0.0/16
::1
fc00::/7
fe80::/10
play.google.com
android.com
google-analytics.com
gstatic.com
gvt1.com
dl.google.com
dl-ssl.google.com
android.clients.google.com
gvt2.com
gvt3.com

View File

@@ -0,0 +1,34 @@
speedtest.net
discord.com
discordapp.com
discord.gg
discordapp.net
discord.media
cdninstagram.com
instagram.com
ig.me
fbcdn.net
facebook.com
facebook.net
fb.com
rutracker.org
rutracker.net
rutracker.cc
rutor.info
rutor.is
nnmclub.to
twitter.com
t.co
twimg.com
ads-twitter.com
x.com
pscp.tv
twtrdns.net
twttr.com
periscope.tv
tweetdeck.com
twitpic.com
twitter.co
twitterinc.com
twitteroauth.com
twitterstat.us

View File

@@ -0,0 +1 @@
speedtest.net

View File

@@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/main" URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07"
DIR="/etc/config" DIR="/etc/config"
DIR_BACKUP="/root/backup" DIR_BACKUP="/root/backup"
config_files="dhcp config_files="dhcp

View File

@@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/main" URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07"
DIR="/etc/config" DIR="/etc/config"
DIR_BACKUP="/root/backup" DIR_BACKUP="/root/backup"
config_files="dhcp config_files="dhcp

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

16
run_universal_config.sh Normal file
View File

@@ -0,0 +1,16 @@
#!/bin/sh
DESCRIPTION=$(ubus call system board | jsonfilter -e '@.release.description')
VERSION=$(ubus call system board | jsonfilter -e '@.release.version')
findKey="RouteRich"
findVersion="24.10.2"
if echo "$DESCRIPTION" | grep -qi -- "$findKey" && printf '%s\n%s\n' "$findVersion" "$VERSION" | sort -V | tail -n1 | grep -qx -- "$VERSION"; then
printf "\033[32;1mThis new firmware. Running new scprit...\033[0m\n"
wget --no-check-certificate -O /tmp/universal_config_new_podkop.sh https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07/universal_config_new_podkop.sh && chmod +x /tmp/universal_config_new_podkop.sh && /tmp/universal_config_new_podkop.sh $1 $2
else
printf "\033[32;1mThis old firmware.\nRecommendation, upgrade firmware to actual release...\nSleep 5 sec...\033[0m\n"
sleep 5
printf "\033[32;1mRunning old scprit...\033[0m\n"
wget --no-check-certificate -O /tmp/universal_config.sh https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07/universal_config.sh && chmod +x /tmp/universal_config.sh && /tmp/universal_config.sh $1 $2
fi

View File

@@ -144,80 +144,167 @@ checkPackageAndInstall()
requestConfWARP1() requestConfWARP1()
{ {
#запрос конфигурации WARP HASH='68747470733a2f2f73616e74612d61746d6f2e72752f776172702f776172702e706870'
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp.llimonix.pw/api/warp' \ COMPILE=$(printf '%b' "$(printf '%s\n' "$HASH" | sed 's/../\\x&/g')")
-H 'Accept: */*' \ #запрос конфигурации WARP
-H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ local response=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" "$COMPILE" \
-H 'Connection: keep-alive' \ -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'Content-Type: application/json' \ -H "referer: $COMPILE" \
-H 'Origin: https://warp.llimonix.pw' \ -H "Origin: $COMPILE")
-H 'Referer: https://warp.llimonix.pw/' \ echo "$response"
-H 'Sec-Fetch-Dest: empty' \
-H 'Sec-Fetch-Mode: cors' \
-H 'Sec-Fetch-Site: same-origin' \
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36' \
-H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \
-H 'sec-ch-ua-mobile: ?0' \
-H 'sec-ch-ua-platform: "Windows"' \
--data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer"}')
echo "$result"
} }
requestConfWARP2() requestConfWARP2()
{ {
#запрос конфигурации WARP #запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://topor-warp.vercel.app/generate' \ local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://dulcet-fox-556b08.netlify.app/api/warp' \
-H 'Accept: */*' \ -H 'Accept: */*' \
-H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ -H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \
-H 'Connection: keep-alive' \ -H 'Connection: keep-alive' \
-H 'Content-Type: application/json' \ -H 'Content-Type: application/json' \
-H 'Origin: https://topor-warp.vercel.app' \ -H 'Origin: https://dulcet-fox-556b08.netlify.app/api/warp' \
-H 'Referer: https://topor-warp.vercel.app/' \ -H 'Referer: https://dulcet-fox-556b08.netlify.app/api/warp' \
-H 'Sec-Fetch-Dest: empty' \ -H 'Sec-Fetch-Dest: empty' \
-H 'Sec-Fetch-Mode: cors' \ -H 'Sec-Fetch-Mode: cors' \
-H 'Sec-Fetch-Site: same-origin' \ -H 'Sec-Fetch-Site: same-origin' \
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36' \ -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36' \
-H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133"' \ -H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \
-H 'sec-ch-ua-mobile: ?0' \ -H 'sec-ch-ua-mobile: ?0' \
-H 'sec-ch-ua-platform: "Windows"' \ -H 'sec-ch-ua-platform: "Windows"' \
--data-raw '{"platform":"all"}') --data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer","endpoint":"162.159.195.1:500"}')
echo "$result" echo "$result"
} }
requestConfWARP3() requestConfWARP3()
{ {
#запрос конфигурации WARP #запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-gen.vercel.app/generate-config' \ local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-config-generator-theta.vercel.app/api/warp' \
-H 'Accept: */*' \ -H 'Accept: */*' \
-H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ -H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \
-H 'Connection: keep-alive' \ -H 'Connection: keep-alive' \
-H 'Referer: https://warp-gen.vercel.app/' \ -H 'Content-Type: application/json' \
-H 'Sec-Fetch-Dest: empty' \ -H 'Origin: https://warp-config-generator-theta.vercel.app/api/warp' \
-H 'Sec-Fetch-Mode: cors' \ -H 'Referer: https://warp-config-generator-theta.vercel.app/api/warp' \
-H 'Sec-Fetch-Site: same-origin' \ -H 'Sec-Fetch-Dest: empty' \
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36' \ -H 'Sec-Fetch-Mode: cors' \
-H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133"' \ -H 'Sec-Fetch-Site: same-origin' \
-H 'sec-ch-ua-mobile: ?0' \ -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36' \
-H 'sec-ch-ua-platform: "Windows"') -H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \
echo "$result" -H 'sec-ch-ua-mobile: ?0' \
-H 'sec-ch-ua-platform: "Windows"' \
--data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer","endpoint":"162.159.195.1:500"}')
echo "$result"
} }
requestConfWARP4() requestConfWARP4()
{ {
#запрос конфигурации WARP #запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp' \ local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://generator-warp-config.vercel.app/warp4s?dns=1.1.1.1%2C%201.0.0.1%2C%202606%3A4700%3A4700%3A%3A1111%2C%202606%3A4700%3A4700%3A%3A1001&allowedIPs=0.0.0.0%2F0%2C%20%3A%3A%2F0' \
-H 'Accept: */*' \ -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ -H 'referer: https://generator-warp-config.vercel.app' \
-H 'Connection: keep-alive' \ -H "Origin: https://generator-warp-config.vercel.app")
-H 'Referer: https://config-generator-warp.vercel.app/' \ echo "$result"
-H 'Sec-Fetch-Dest: empty' \ }
-H 'Sec-Fetch-Mode: cors' \
-H 'Sec-Fetch-Site: same-origin' \ requestConfWARP5()
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36' \ {
-H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133"' \ #запрос конфигурации WARP
-H 'sec-ch-ua-mobile: ?0' \ local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://valokda-amnezia.vercel.app/api/warp' \
-H 'sec-ch-ua-platform: "Windows"') -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
echo "$result" -H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://valokda-amnezia.vercel.app/api/warp')
echo "$result"
}
requestConfWARP6()
{
#запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-gen.vercel.app/generate-config' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://warp-gen.vercel.app/generate-config')
echo "$result"
}
requestConfWARP7()
{
#запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warps' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://config-generator-warp.vercel.app/')
echo "$result"
}
requestConfWARP8()
{
#запрос конфигурации WARP без параметров
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp6s' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://config-generator-warp.vercel.app/')
echo "$result"
}
requestConfWARP9()
{
#запрос конфигурации WARP без параметров
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp4s' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://config-generator-warp.vercel.app/')
echo "$result"
}
requestConfWARP10()
{
#запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-generator.vercel.app/api/warp' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.6' \
-H 'content-type: application/json' \
-H 'referer: https://warp-generator.vercel.app/' \
--data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer"}')
echo "$result"
}
confWarpBuilder()
{
response_body=$1
peer_pub=$(echo "$response_body" | jq -r '.result.config.peers[0].public_key')
client_ipv4=$(echo "$response_body" | jq -r '.result.config.interface.addresses.v4')
client_ipv6=$(echo "$response_body" | jq -r '.result.config.interface.addresses.v6')
priv=$(echo "$response_body" | jq -r '.result.key')
conf=$(cat <<-EOM
[Interface]
PrivateKey = ${priv}
S1 = 0
S2 = 0
Jc = 120
Jmin = 23
Jmax = 911
H1 = 1
H2 = 2
H3 = 3
H4 = 4
MTU = 1280
I1 = <b 0xc2000000011419fa4bb3599f336777de79f81ca9a8d80d91eeec000044c635cef024a885dcb66d1420a91a8c427e87d6cf8e08b563932f449412cddf77d3e2594ea1c7a183c238a89e9adb7ffa57c133e55c59bec101634db90afb83f75b19fe703179e26a31902324c73f82d9354e1ed8da39af610afcb27e6590a44341a0828e5a3d2f0e0f7b0945d7bf3402feea0ee6332e19bdf48ffc387a97227aa97b205a485d282cd66d1c384bafd63dc42f822c4df2109db5b5646c458236ddcc01ae1c493482128bc0830c9e1233f0027a0d262f92b49d9d8abd9a9e0341f6e1214761043c021d7aa8c464b9d865f5fbe234e49626e00712031703a3e23ef82975f014ee1e1dc428521dc23ce7c6c13663b19906240b3efe403cf30559d798871557e4e60e86c29ea4504ed4d9bb8b549d0e8acd6c334c39bb8fb42ede68fb2aadf00cfc8bcc12df03602bbd4fe701d64a39f7ced112951a83b1dbbe6cd696dd3f15985c1b9fef72fa8d0319708b633cc4681910843ce753fac596ed9945d8b839aeff8d3bf0449197bd0bb22ab8efd5d63eb4a95db8d3ffc796ed5bcf2f4a136a8a36c7a0c65270d511aebac733e61d414050088a1c3d868fb52bc7e57d3d9fd132d78b740a6ecdc6c24936e92c28672dbe00928d89b891865f885aeb4c4996d50c2bbbb7a99ab5de02ac89b3308e57bcecf13f2da0333d1420e18b66b4c23d625d836b538fc0c221d6bd7f566a31fa292b85be96041d8e0bfe655d5dc1afed23eb8f2b3446561bbee7644325cc98d31cea38b865bdcc507e48c6ebdc7553be7bd6ab963d5a14615c4b81da7081c127c791224853e2d19bafdc0d9f3f3a6de898d14abb0e2bc849917e0a599ed4a541268ad0e60ea4d147dc33d17fa82f22aa505ccb53803a31d10a7ca2fea0b290a52ee92c7bf4aab7cea4e3c07b1989364eed87a3c6ba65188cd349d37ce4eefde9ec43bab4b4dc79e03469c2ad6b902e28e0bbbbf696781ad4edf424ffb35ce0236d373629008f142d04b5e08a124237e03e3149f4cdde92d7fae581a1ac332e26b2c9c1a6bdec5b3a9c7a2a870f7a0c25fc6ce245e029b686e346c6d862ad8df6d9b62474fbc31dbb914711f78074d4441f4e6e9edca3c52315a5c0653856e23f681558d669f4a4e6915bcf42b56ce36cb7dd3983b0b1d6fdf0f8efddb68e7ca0ae9dd4570fe6978fbb524109f6ec957ca61f1767ef74eb803b0f16abd0087cf2d01bc1db1c01d97ac81b3196c934586963fe7cf2d310e0739621e8bd00dc23fded18576d8c8f285d7bb5f43b547af3c76235de8b6f757f817683b2151600b11721219212bf27558edd439e73fce951f61d582320e5f4d6c315c71129b719277fc144bbe8ded25ab6d29b6e189c9bd9b16538faf60cc2aab3c3bb81fc2213657f2dd0ceb9b3b871e1423d8d3e8cc008721ef03b28e0ee7bb66b8f2a2ac01ef88df1f21ed49bf1ce435df31ac34485936172567488812429c269b49ee9e3d99652b51a7a614b7c460bf0d2d64d8349ded7345bedab1ea0a766a8470b1242f38d09f7855a32db39516c2bd4bcc538c52fa3a90c8714d4b006a15d9c7a7d04919a1cab48da7cce0d5de1f9e5f8936cffe469132991c6eb84c5191d1bcf69f70c58d9a7b66846440a9f0eef25ee6ab62715b50ca7bef0bc3013d4b62e1639b5028bdf757454356e9326a4c76dabfb497d451a3a1d2dbd46ec283d255799f72dfe878ae25892e25a2542d3ca9018394d8ca35b53ccd94947a8>
Address = ${client_ipv4}, ${client_ipv6}
DNS = 1.1.1.1, 2606:4700:4700::1111, 1.0.0.1, 2606:4700:4700::1001
[Peer]
PublicKey = ${peer_pub}
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = 162.159.192.1:500
EOM
)
echo "$conf"
} }
# Функция для обработки выполнения запроса # Функция для обработки выполнения запроса
@@ -233,31 +320,56 @@ check_request() {
# Проверяем код состояния # Проверяем код состояния
if [ "$response_code" -eq 200 ]; then if [ "$response_code" -eq 200 ]; then
case $choice in case $choice in
1) 1)
status=$(echo $response_body | jq '.success') warp_config=$(confWarpBuilder "$response_body")
#echo "$status" echo "$warp_config"
if [ "$status" = "true" ]
then
content=$(echo $response_body | jq '.content')
configBase64=$(echo $content | jq -r '.configBase64')
warpGen=$(echo "$configBase64" | base64 -d)
echo "$warpGen";
else
echo "Error"
fi
;; ;;
2) 2)
echo "$response_body" content=$(echo $response_body | jq -r '.content')
content=$(echo $content | jq -r '.configBase64')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;; ;;
3) 3)
content=$(echo $response_body | jq -r '.config') content=$(echo $response_body | jq -r '.content')
#content=$(echo "$content" | sed 's/\\n/\012/g') content=$(echo $content | jq -r '.configBase64')
echo "$content" warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;; ;;
4) 4)
content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;;
5)
content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;;
6)
content=$(echo $response_body | jq -r '.config')
echo "$content"
;;
7)
content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;;
8)
content=$(echo $response_body | jq -r '.content') content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d) warp_config=$(echo "$content" | base64 -d)
echo "$warp_config" echo "$warp_config"
;;
9)
content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;;
10)
content=$(echo $response_body | jq -r '.content')
content=$(echo $content | jq -r '.configBase64')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;; ;;
*) *)
echo "Error" echo "Error"
@@ -372,7 +484,7 @@ deleteByPassGeoBlockComssDNS()
install_youtubeunblock_packages() { install_youtubeunblock_packages() {
PKGARCH=$(opkg print-architecture | awk 'BEGIN {max=0} {if ($3 > max) {max = $3; arch = $2}} END {print arch}') PKGARCH=$(opkg print-architecture | awk 'BEGIN {max=0} {if ($3 > max) {max = $3; arch = $2}} END {print arch}')
VERSION=$(ubus call system board | jsonfilter -e '@.release.version') VERSION=$(ubus call system board | jsonfilter -e '@.release.version')
BASE_URL="https://github.com/Waujito/youtubeUnblock/releases/download/v1.0.0/" BASE_URL="https://github.com/Waujito/youtubeUnblock/releases/download/v1.1.0/"
PACK_NAME="youtubeUnblock" PACK_NAME="youtubeUnblock"
AWG_DIR="/tmp/$PACK_NAME" AWG_DIR="/tmp/$PACK_NAME"
@@ -400,7 +512,7 @@ install_youtubeunblock_packages() {
fi fi
done done
YOUTUBEUNBLOCK_FILENAME="youtubeUnblock-1.0.0-10-f37c3dd-${PKGARCH}-openwrt-23.05.ipk" YOUTUBEUNBLOCK_FILENAME="youtubeUnblock-1.1.0-2-2d579d5-${PKGARCH}-openwrt-23.05.ipk"
DOWNLOAD_URL="${BASE_URL}${YOUTUBEUNBLOCK_FILENAME}" DOWNLOAD_URL="${BASE_URL}${YOUTUBEUNBLOCK_FILENAME}"
echo $DOWNLOAD_URL echo $DOWNLOAD_URL
wget -O "$AWG_DIR/$YOUTUBEUNBLOCK_FILENAME" "$DOWNLOAD_URL" wget -O "$AWG_DIR/$YOUTUBEUNBLOCK_FILENAME" "$DOWNLOAD_URL"
@@ -427,7 +539,7 @@ install_youtubeunblock_packages() {
echo "$PACK_NAME already installed" echo "$PACK_NAME already installed"
else else
PACK_NAME="luci-app-youtubeUnblock" PACK_NAME="luci-app-youtubeUnblock"
YOUTUBEUNBLOCK_FILENAME="luci-app-youtubeUnblock-1.0.0-10-f37c3dd.ipk" YOUTUBEUNBLOCK_FILENAME="luci-app-youtubeUnblock-1.1.0-1-473af29.ipk"
DOWNLOAD_URL="${BASE_URL}${YOUTUBEUNBLOCK_FILENAME}" DOWNLOAD_URL="${BASE_URL}${YOUTUBEUNBLOCK_FILENAME}"
echo $DOWNLOAD_URL echo $DOWNLOAD_URL
wget -O "$AWG_DIR/$YOUTUBEUNBLOCK_FILENAME" "$DOWNLOAD_URL" wget -O "$AWG_DIR/$YOUTUBEUNBLOCK_FILENAME" "$DOWNLOAD_URL"
@@ -479,7 +591,53 @@ install_awg_packages
checkPackageAndInstall "jq" "1" checkPackageAndInstall "jq" "1"
checkPackageAndInstall "curl" "1" checkPackageAndInstall "curl" "1"
checkPackageAndInstall "unzip" "1" checkPackageAndInstall "unzip" "1"
checkPackageAndInstall "sing-box" "1" #checkPackageAndInstall "sing-box" "1"
checkPackageAndInstall "opera-proxy" "1"
checkPackageAndInstall "youtubeUnblock" "1"
###########
manage_package "podkop" "enable" "stop"
PACKAGE="sing-box"
REQUIRED_VERSION="1.11.15"
INSTALLED_VERSION=$(opkg list-installed | grep "^$PACKAGE" | cut -d ' ' -f 3)
if [ -n "$INSTALLED_VERSION" ] && [ "$INSTALLED_VERSION" != "$REQUIRED_VERSION" ]; then
echo "Version package $PACKAGE not equal $REQUIRED_VERSION. Removed packages..."
opkg remove --force-removal-of-dependent-packages $PACKAGE
fi
INSTALLED_VERSION=$(opkg list-installed | grep "^$PACKAGE")
if [ -z "$INSTALLED_VERSION" ]; then
PACK_NAME="sing-box"
AWG_DIR="/tmp/$PACK_NAME"
SINGBOX_FILENAME="sing-box_1.11.15_openwrt_aarch64_cortex-a53.ipk"
BASE_URL="https://github.com/SagerNet/sing-box/releases/download/v1.11.15/"
DOWNLOAD_URL="${BASE_URL}${SINGBOX_FILENAME}"
mkdir -p "$AWG_DIR"
#echo $DOWNLOAD_URL
wget -O "$AWG_DIR/$SINGBOX_FILENAME" "$DOWNLOAD_URL"
if [ $? -eq 0 ]; then
echo "$PACK_NAME file downloaded successfully"
else
echo "Error downloading $PACK_NAME. Please, install $PACK_NAME manually and run the script again"
exit 1
fi
opkg install "$AWG_DIR/$SINGBOX_FILENAME"
if [ $? -eq 0 ]; then
echo "$PACK_NAME file installing successfully"
else
echo "Error installing $PACK_NAME. Please, install $PACK_NAME manually and run the script again"
exit 1
fi
fi
###########
opkg upgrade youtubeUnblock
opkg upgrade luci-app-youtubeUnblock
manage_package "youtubeUnblock" "enable" "start"
#проверяем установлени ли пакет dnsmasq-full #проверяем установлени ли пакет dnsmasq-full
if opkg list-installed | grep -q dnsmasq-full; then if opkg list-installed | grep -q dnsmasq-full; then
@@ -503,7 +661,7 @@ firewall
https-dns-proxy https-dns-proxy
youtubeUnblock youtubeUnblock
dhcp" dhcp"
URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/beta" URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07"
checkPackageAndInstall "https-dns-proxy" "0" checkPackageAndInstall "https-dns-proxy" "0"
@@ -532,21 +690,6 @@ uci set dhcp.cfg01411c.strictorder='1'
uci set dhcp.cfg01411c.filter_aaaa='1' uci set dhcp.cfg01411c.filter_aaaa='1'
uci commit dhcp uci commit dhcp
if opkg list-installed | grep -q opera-proxy; then
echo "Opera-proxy already installed..."
else
echo "Install opera-proxy client..."
service stop vpn > /dev/null
rm -f /usr/bin/vpns /etc/init.d/vpn
url="https://github.com/NitroOxid/openwrt-opera-proxy-bin/releases/download/1.8.0/opera-proxy_1.8.0-1_aarch64_cortex-a53.ipk"
destination_file="/tmp/opera-proxy.ipk"
echo "Downloading opera-proxy..."
wget "$url" -O "$destination_file" || { echo "Failed to download the file"; exit 1; }
echo "Installing opera-proxy..."
opkg install $destination_file
cat <<EOF > /etc/sing-box/config.json cat <<EOF > /etc/sing-box/config.json
{ {
"log": { "log": {
@@ -574,11 +717,18 @@ cat <<EOF > /etc/sing-box/config.json
} }
EOF EOF
echo "Setting sing-box..." echo "Setting sing-box..."
uci set sing-box.main.enabled='1' uci set sing-box.main.enabled='1'
uci set sing-box.main.user='root' uci set sing-box.main.user='root'
uci commit sing-box uci add_list sing-box.main.ifaces='wan'
fi uci add_list sing-box.main.ifaces='wan2'
uci add_list sing-box.main.ifaces='wan6'
uci add_list sing-box.main.ifaces='wwan'
uci add_list sing-box.main.ifaces='wwan0'
uci add_list sing-box.main.ifaces='modem'
uci add_list sing-box.main.ifaces='l2tp'
uci add_list sing-box.main.ifaces='pptp'
uci commit sing-box
nameRule="option name 'Block_UDP_443'" nameRule="option name 'Block_UDP_443'"
str=$(grep -i "$nameRule" /etc/config/firewall) str=$(grep -i "$nameRule" /etc/config/firewall)
@@ -604,11 +754,12 @@ then
fi fi
printf "\033[32;1mCheck work youtubeUnblock..\033[0m\n" printf "\033[32;1mCheck work youtubeUnblock..\033[0m\n"
install_youtubeunblock_packages #install_youtubeunblock_packages
opkg upgrade youtubeUnblock opkg upgrade youtubeUnblock
opkg upgrade luci-app-youtubeUnblock opkg upgrade luci-app-youtubeUnblock
manage_package "youtubeUnblock" "enable" "start" manage_package "youtubeUnblock" "enable" "start"
wget -O "/etc/config/youtubeUnblock" "$URL/config_files/youtubeUnblockSecond" wget -O "/etc/config/youtubeUnblock" "$URL/config_files/youtubeUnblockSecond"
manage_package "podkop" "enable" "stop"
service youtubeUnblock restart service youtubeUnblock restart
isWorkYoutubeUnBlock=0 isWorkYoutubeUnBlock=0
@@ -642,7 +793,7 @@ fi
isWorkOperaProxy=0 isWorkOperaProxy=0
printf "\033[32;1mCheck opera proxy...\033[0m\n" printf "\033[32;1mCheck opera proxy...\033[0m\n"
service sing-box restart service sing-box restart
sing-box tools fetch ifconfig.co -D /etc/sing-box/ curl --proxy http://127.0.0.1:18080 ipinfo.io/ip
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
printf "\033[32;1mOpera proxy well work...\033[0m\n" printf "\033[32;1mOpera proxy well work...\033[0m\n"
isWorkOperaProxy=1 isWorkOperaProxy=1
@@ -713,7 +864,55 @@ do
warpGen=$(check_request "$result" 4) warpGen=$(check_request "$result" 4)
if [ "$warpGen" = "Error" ] if [ "$warpGen" = "Error" ]
then then
warp_config="Error" printf "\033[32;1mRequest WARP config... Attempt #5\033[0m\n"
result=$(requestConfWARP5)
warpGen=$(check_request "$result" 5)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #6\033[0m\n"
result=$(requestConfWARP6)
warpGen=$(check_request "$result" 6)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #7\033[0m\n"
result=$(requestConfWARP7)
warpGen=$(check_request "$result" 7)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #8\033[0m\n"
result=$(requestConfWARP8)
warpGen=$(check_request "$result" 8)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #9\033[0m\n"
result=$(requestConfWARP9)
warpGen=$(check_request "$result" 9)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #10\033[0m\n"
result=$(requestConfWARP10)
warpGen=$(check_request "$result" 10)
if [ "$warpGen" = "Error" ]
then
warp_config="Error"
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else else
warp_config=$warpGen warp_config=$warpGen
fi fi
@@ -844,19 +1043,56 @@ do
#service firewall restart #service firewall restart
#service network restart #service network restart
# Отключаем интерфейс if [ "$is_manual_input_parameters" = "n" ]; then
ifdown $INTERFACE_NAME I=0
# Включаем интерфейс WARP_ENDPOINT_HOSTS="engage.cloudflareclient.com 162.159.192.1 162.159.192.2 162.159.192.4 162.159.195.1 162.159.195.4 188.114.96.1 188.114.96.23 188.114.96.50 188.114.96.81"
ifup $INTERFACE_NAME WARP_ENDPOINT_PORTS="500 1701 2408 3138 4500"
printf "\033[32;1mWait up AWG WARP 10 second...\033[0m\n" for element in $WARP_ENDPOINT_HOSTS; do
sleep 10 EndpointIP="$element"
for element2 in $WARP_ENDPOINT_PORTS; do
pingAddress="8.8.8.8" I=$(( $I + 1 ))
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1 EndpointPort="$element2"
then uci set network.@${CONFIG_NAME}[-1].endpoint_host=$EndpointIP
isExit=1 uci set network.@${CONFIG_NAME}[-1].endpoint_port=$EndpointPort
uci commit network
# Отключаем интерфейс
ifdown $INTERFACE_NAME
# Включаем интерфейс
ifup $INTERFACE_NAME
printf "\033[33;1mIter #$I: Check Endpoint WARP $element:$element2. Wait up AWG WARP 10 second...\033[0m\n"
sleep 10
pingAddress="8.8.8.8"
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
then
printf "\033[32;1m Endpoint WARP $element:$element2 work...\033[0m\n"
isExit=1
break
else
printf "\033[31;1m Endpoint WARP $element:$element2 not work...\033[0m\n"
isExit=0
fi
done
if [ "$isExit" = "1" ]
then
break
fi
done
else else
isExit=0 # Отключаем интерфейс
ifdown $INTERFACE_NAME
# Включаем интерфейс
ifup $INTERFACE_NAME
printf "\033[32;1mWait up AWG WARP 10 second...\033[0m\n"
sleep 10
pingAddress="8.8.8.8"
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
then
isExit=1
else
isExit=0
fi
fi fi
fi fi
done done
@@ -907,7 +1143,7 @@ service odhcpd restart
path_podkop_config="/etc/config/podkop" path_podkop_config="/etc/config/podkop"
path_podkop_config_backup="/root/podkop" path_podkop_config_backup="/root/podkop"
URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/beta" URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07"
messageComplete="" messageComplete=""

View File

@@ -157,80 +157,167 @@ checkPackageAndInstall() {
requestConfWARP1() requestConfWARP1()
{ {
#запрос конфигурации WARP HASH='68747470733a2f2f73616e74612d61746d6f2e72752f776172702f776172702e706870'
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp.llimonix.pw/api/warp' \ COMPILE=$(printf '%b' "$(printf '%s\n' "$HASH" | sed 's/../\\x&/g')")
-H 'Accept: */*' \ #запрос конфигурации WARP
-H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ local response=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" "$COMPILE" \
-H 'Connection: keep-alive' \ -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'Content-Type: application/json' \ -H "referer: $COMPILE" \
-H 'Origin: https://warp.llimonix.pw' \ -H "Origin: $COMPILE")
-H 'Referer: https://warp.llimonix.pw/' \ echo "$response"
-H 'Sec-Fetch-Dest: empty' \
-H 'Sec-Fetch-Mode: cors' \
-H 'Sec-Fetch-Site: same-origin' \
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36' \
-H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \
-H 'sec-ch-ua-mobile: ?0' \
-H 'sec-ch-ua-platform: "Windows"' \
--data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer"}')
echo "$result"
} }
requestConfWARP2() requestConfWARP2()
{ {
#запрос конфигурации WARP #запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://topor-warp.vercel.app/generate' \ local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://dulcet-fox-556b08.netlify.app/api/warp' \
-H 'Accept: */*' \ -H 'Accept: */*' \
-H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ -H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \
-H 'Connection: keep-alive' \ -H 'Connection: keep-alive' \
-H 'Content-Type: application/json' \ -H 'Content-Type: application/json' \
-H 'Origin: https://topor-warp.vercel.app' \ -H 'Origin: https://dulcet-fox-556b08.netlify.app/api/warp' \
-H 'Referer: https://topor-warp.vercel.app/' \ -H 'Referer: https://dulcet-fox-556b08.netlify.app/api/warp' \
-H 'Sec-Fetch-Dest: empty' \ -H 'Sec-Fetch-Dest: empty' \
-H 'Sec-Fetch-Mode: cors' \ -H 'Sec-Fetch-Mode: cors' \
-H 'Sec-Fetch-Site: same-origin' \ -H 'Sec-Fetch-Site: same-origin' \
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36' \ -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36' \
-H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133"' \ -H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \
-H 'sec-ch-ua-mobile: ?0' \ -H 'sec-ch-ua-mobile: ?0' \
-H 'sec-ch-ua-platform: "Windows"' \ -H 'sec-ch-ua-platform: "Windows"' \
--data-raw '{"platform":"all"}') --data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer","endpoint":"162.159.195.1:500"}')
echo "$result" echo "$result"
} }
requestConfWARP3() requestConfWARP3()
{ {
#запрос конфигурации WARP #запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-gen.vercel.app/generate-config' \ local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-config-generator-theta.vercel.app/api/warp' \
-H 'Accept: */*' \ -H 'Accept: */*' \
-H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ -H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \
-H 'Connection: keep-alive' \ -H 'Connection: keep-alive' \
-H 'Referer: https://warp-gen.vercel.app/' \ -H 'Content-Type: application/json' \
-H 'Sec-Fetch-Dest: empty' \ -H 'Origin: https://warp-config-generator-theta.vercel.app/api/warp' \
-H 'Sec-Fetch-Mode: cors' \ -H 'Referer: https://warp-config-generator-theta.vercel.app/api/warp' \
-H 'Sec-Fetch-Site: same-origin' \ -H 'Sec-Fetch-Dest: empty' \
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36' \ -H 'Sec-Fetch-Mode: cors' \
-H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133"' \ -H 'Sec-Fetch-Site: same-origin' \
-H 'sec-ch-ua-mobile: ?0' \ -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36' \
-H 'sec-ch-ua-platform: "Windows"') -H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \
echo "$result" -H 'sec-ch-ua-mobile: ?0' \
-H 'sec-ch-ua-platform: "Windows"' \
--data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer","endpoint":"162.159.195.1:500"}')
echo "$result"
} }
requestConfWARP4() requestConfWARP4()
{ {
#запрос конфигурации WARP #запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp' \ local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://generator-warp-config.vercel.app/warp4s?dns=1.1.1.1%2C%201.0.0.1%2C%202606%3A4700%3A4700%3A%3A1111%2C%202606%3A4700%3A4700%3A%3A1001&allowedIPs=0.0.0.0%2F0%2C%20%3A%3A%2F0' \
-H 'Accept: */*' \ -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ -H 'referer: https://generator-warp-config.vercel.app' \
-H 'Connection: keep-alive' \ -H "Origin: https://generator-warp-config.vercel.app")
-H 'Referer: https://config-generator-warp.vercel.app/' \ echo "$result"
-H 'Sec-Fetch-Dest: empty' \ }
-H 'Sec-Fetch-Mode: cors' \
-H 'Sec-Fetch-Site: same-origin' \ requestConfWARP5()
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36' \ {
-H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133"' \ #запрос конфигурации WARP
-H 'sec-ch-ua-mobile: ?0' \ local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://valokda-amnezia.vercel.app/api/warp' \
-H 'sec-ch-ua-platform: "Windows"') -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
echo "$result" -H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://valokda-amnezia.vercel.app/api/warp')
echo "$result"
}
requestConfWARP6()
{
#запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-gen.vercel.app/generate-config' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://warp-gen.vercel.app/generate-config')
echo "$result"
}
requestConfWARP7()
{
#запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warps' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://config-generator-warp.vercel.app/')
echo "$result"
}
requestConfWARP8()
{
#запрос конфигурации WARP без параметров
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp6s' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://config-generator-warp.vercel.app/')
echo "$result"
}
requestConfWARP9()
{
#запрос конфигурации WARP без параметров
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp4s' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.9' \
-H 'referer: https://config-generator-warp.vercel.app/')
echo "$result"
}
requestConfWARP10()
{
#запрос конфигурации WARP
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-generator.vercel.app/api/warp' \
-A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \
-H 'accept: */*' \
-H 'accept-language: ru-RU,ru;q=0.6' \
-H 'content-type: application/json' \
-H 'referer: https://warp-generator.vercel.app/' \
--data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer"}')
echo "$result"
}
confWarpBuilder()
{
response_body=$1
peer_pub=$(echo "$response_body" | jq -r '.result.config.peers[0].public_key')
client_ipv4=$(echo "$response_body" | jq -r '.result.config.interface.addresses.v4')
client_ipv6=$(echo "$response_body" | jq -r '.result.config.interface.addresses.v6')
priv=$(echo "$response_body" | jq -r '.result.key')
conf=$(cat <<-EOM
[Interface]
PrivateKey = ${priv}
S1 = 0
S2 = 0
Jc = 120
Jmin = 23
Jmax = 911
H1 = 1
H2 = 2
H3 = 3
H4 = 4
MTU = 1280
I1 = <b 0xc2000000011419fa4bb3599f336777de79f81ca9a8d80d91eeec000044c635cef024a885dcb66d1420a91a8c427e87d6cf8e08b563932f449412cddf77d3e2594ea1c7a183c238a89e9adb7ffa57c133e55c59bec101634db90afb83f75b19fe703179e26a31902324c73f82d9354e1ed8da39af610afcb27e6590a44341a0828e5a3d2f0e0f7b0945d7bf3402feea0ee6332e19bdf48ffc387a97227aa97b205a485d282cd66d1c384bafd63dc42f822c4df2109db5b5646c458236ddcc01ae1c493482128bc0830c9e1233f0027a0d262f92b49d9d8abd9a9e0341f6e1214761043c021d7aa8c464b9d865f5fbe234e49626e00712031703a3e23ef82975f014ee1e1dc428521dc23ce7c6c13663b19906240b3efe403cf30559d798871557e4e60e86c29ea4504ed4d9bb8b549d0e8acd6c334c39bb8fb42ede68fb2aadf00cfc8bcc12df03602bbd4fe701d64a39f7ced112951a83b1dbbe6cd696dd3f15985c1b9fef72fa8d0319708b633cc4681910843ce753fac596ed9945d8b839aeff8d3bf0449197bd0bb22ab8efd5d63eb4a95db8d3ffc796ed5bcf2f4a136a8a36c7a0c65270d511aebac733e61d414050088a1c3d868fb52bc7e57d3d9fd132d78b740a6ecdc6c24936e92c28672dbe00928d89b891865f885aeb4c4996d50c2bbbb7a99ab5de02ac89b3308e57bcecf13f2da0333d1420e18b66b4c23d625d836b538fc0c221d6bd7f566a31fa292b85be96041d8e0bfe655d5dc1afed23eb8f2b3446561bbee7644325cc98d31cea38b865bdcc507e48c6ebdc7553be7bd6ab963d5a14615c4b81da7081c127c791224853e2d19bafdc0d9f3f3a6de898d14abb0e2bc849917e0a599ed4a541268ad0e60ea4d147dc33d17fa82f22aa505ccb53803a31d10a7ca2fea0b290a52ee92c7bf4aab7cea4e3c07b1989364eed87a3c6ba65188cd349d37ce4eefde9ec43bab4b4dc79e03469c2ad6b902e28e0bbbbf696781ad4edf424ffb35ce0236d373629008f142d04b5e08a124237e03e3149f4cdde92d7fae581a1ac332e26b2c9c1a6bdec5b3a9c7a2a870f7a0c25fc6ce245e029b686e346c6d862ad8df6d9b62474fbc31dbb914711f78074d4441f4e6e9edca3c52315a5c0653856e23f681558d669f4a4e6915bcf42b56ce36cb7dd3983b0b1d6fdf0f8efddb68e7ca0ae9dd4570fe6978fbb524109f6ec957ca61f1767ef74eb803b0f16abd0087cf2d01bc1db1c01d97ac81b3196c934586963fe7cf2d310e0739621e8bd00dc23fded18576d8c8f285d7bb5f43b547af3c76235de8b6f757f817683b2151600b11721219212bf27558edd439e73fce951f61d582320e5f4d6c315c71129b719277fc144bbe8ded25ab6d29b6e189c9bd9b16538faf60cc2aab3c3bb81fc2213657f2dd0ceb9b3b871e1423d8d3e8cc008721ef03b28e0ee7bb66b8f2a2ac01ef88df1f21ed49bf1ce435df31ac34485936172567488812429c269b49ee9e3d99652b51a7a614b7c460bf0d2d64d8349ded7345bedab1ea0a766a8470b1242f38d09f7855a32db39516c2bd4bcc538c52fa3a90c8714d4b006a15d9c7a7d04919a1cab48da7cce0d5de1f9e5f8936cffe469132991c6eb84c5191d1bcf69f70c58d9a7b66846440a9f0eef25ee6ab62715b50ca7bef0bc3013d4b62e1639b5028bdf757454356e9326a4c76dabfb497d451a3a1d2dbd46ec283d255799f72dfe878ae25892e25a2542d3ca9018394d8ca35b53ccd94947a8>
Address = ${client_ipv4}, ${client_ipv6}
DNS = 1.1.1.1, 2606:4700:4700::1111, 1.0.0.1, 2606:4700:4700::1001
[Peer]
PublicKey = ${peer_pub}
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = 162.159.192.1:500
EOM
)
echo "$conf"
} }
# Функция для обработки выполнения запроса # Функция для обработки выполнения запроса
@@ -246,31 +333,56 @@ check_request() {
# Проверяем код состояния # Проверяем код состояния
if [ "$response_code" -eq 200 ]; then if [ "$response_code" -eq 200 ]; then
case $choice in case $choice in
1) 1)
status=$(echo $response_body | jq '.success') warp_config=$(confWarpBuilder "$response_body")
#echo "$status" echo "$warp_config"
if [ "$status" = "true" ]
then
content=$(echo $response_body | jq '.content')
configBase64=$(echo $content | jq -r '.configBase64')
warpGen=$(echo "$configBase64" | base64 -d)
echo "$warpGen";
else
echo "Error"
fi
;; ;;
2) 2)
echo "$response_body" content=$(echo $response_body | jq -r '.content')
content=$(echo $content | jq -r '.configBase64')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;; ;;
3) 3)
content=$(echo $response_body | jq -r '.config') content=$(echo $response_body | jq -r '.content')
#content=$(echo "$content" | sed 's/\\n/\012/g') content=$(echo $content | jq -r '.configBase64')
echo "$content" warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;; ;;
4) 4)
content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;;
5)
content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;;
6)
content=$(echo $response_body | jq -r '.config')
echo "$content"
;;
7)
content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;;
8)
content=$(echo $response_body | jq -r '.content') content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d) warp_config=$(echo "$content" | base64 -d)
echo "$warp_config" echo "$warp_config"
;;
9)
content=$(echo $response_body | jq -r '.content')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;;
10)
content=$(echo $response_body | jq -r '.content')
content=$(echo $content | jq -r '.configBase64')
warp_config=$(echo "$content" | base64 -d)
echo "$warp_config"
;; ;;
*) *)
echo "Error" echo "Error"
@@ -382,7 +494,7 @@ deleteByPassGeoBlockComssDNS()
install_youtubeunblock_packages() { install_youtubeunblock_packages() {
PKGARCH=$(opkg print-architecture | awk 'BEGIN {max=0} {if ($3 > max) {max = $3; arch = $2}} END {print arch}') PKGARCH=$(opkg print-architecture | awk 'BEGIN {max=0} {if ($3 > max) {max = $3; arch = $2}} END {print arch}')
VERSION=$(ubus call system board | jsonfilter -e '@.release.version') VERSION=$(ubus call system board | jsonfilter -e '@.release.version')
BASE_URL="https://github.com/Waujito/youtubeUnblock/releases/download/v1.0.0/" BASE_URL="https://github.com/Waujito/youtubeUnblock/releases/download/v1.1.0/"
PACK_NAME="youtubeUnblock" PACK_NAME="youtubeUnblock"
AWG_DIR="/tmp/$PACK_NAME" AWG_DIR="/tmp/$PACK_NAME"
@@ -410,7 +522,7 @@ install_youtubeunblock_packages() {
fi fi
done done
YOUTUBEUNBLOCK_FILENAME="youtubeUnblock-1.0.0-10-f37c3dd-${PKGARCH}-openwrt-23.05.ipk" YOUTUBEUNBLOCK_FILENAME="youtubeUnblock-1.1.0-2-2d579d5-${PKGARCH}-openwrt-23.05.ipk"
DOWNLOAD_URL="${BASE_URL}${YOUTUBEUNBLOCK_FILENAME}" DOWNLOAD_URL="${BASE_URL}${YOUTUBEUNBLOCK_FILENAME}"
echo $DOWNLOAD_URL echo $DOWNLOAD_URL
wget -O "$AWG_DIR/$YOUTUBEUNBLOCK_FILENAME" "$DOWNLOAD_URL" wget -O "$AWG_DIR/$YOUTUBEUNBLOCK_FILENAME" "$DOWNLOAD_URL"
@@ -437,7 +549,7 @@ install_youtubeunblock_packages() {
echo "$PACK_NAME already installed" echo "$PACK_NAME already installed"
else else
PACK_NAME="luci-app-youtubeUnblock" PACK_NAME="luci-app-youtubeUnblock"
YOUTUBEUNBLOCK_FILENAME="luci-app-youtubeUnblock-1.0.0-10-f37c3dd.ipk" YOUTUBEUNBLOCK_FILENAME="luci-app-youtubeUnblock-1.1.0-1-473af29.ipk"
DOWNLOAD_URL="${BASE_URL}${YOUTUBEUNBLOCK_FILENAME}" DOWNLOAD_URL="${BASE_URL}${YOUTUBEUNBLOCK_FILENAME}"
echo $DOWNLOAD_URL echo $DOWNLOAD_URL
wget -O "$AWG_DIR/$YOUTUBEUNBLOCK_FILENAME" "$DOWNLOAD_URL" wget -O "$AWG_DIR/$YOUTUBEUNBLOCK_FILENAME" "$DOWNLOAD_URL"
@@ -475,6 +587,22 @@ else
is_reconfig_podkop="n" is_reconfig_podkop="n"
fi fi
#####after test delete
DESCRIPTION=$(ubus call system board | jsonfilter -e '@.release.description')
VERSION=$(ubus call system board | jsonfilter -e '@.release.version')
findKey="RouteRich"
findVersion="24.10.2"
if echo "$DESCRIPTION" | grep -qi -- "$findKey" && printf '%s\n%s\n' "$findVersion" "$VERSION" | sort -V | tail -n1 | grep -qx -- "$VERSION"; then
printf "\033[32;1mThis new firmware. Running scprit...\033[0m\n"
else
printf "\033[32;1mThis old firmware.\nTo use this script, update your firmware to the latest version....\033[0m\n"
exit 1
fi
####after test delete
echo "Update list packages..." echo "Update list packages..."
opkg update opkg update
@@ -484,12 +612,35 @@ encoded_code="IyEvYmluL3NoCgojINCn0YLQtdC90LjQtSDQvNC+0LTQtdC70Lgg0LjQtyDRhNCw0L
eval "$(echo "$encoded_code" | base64 --decode)" eval "$(echo "$encoded_code" | base64 --decode)"
#проверка и установка пакетов AmneziaWG #проверка и установка пакетов AmneziaWG
install_awg_packages #install_awg_packages
#opkg remove zapret luci-app-zapret
#rm -r /opt/zapret
checkPackageAndInstall "jq" "1" checkPackageAndInstall "jq" "1"
checkPackageAndInstall "curl" "1" checkPackageAndInstall "curl" "1"
checkPackageAndInstall "unzip" "1" checkPackageAndInstall "unzip" "1"
checkPackageAndInstall "sing-box" "1" checkPackageAndInstall "opera-proxy" "1"
checkPackageAndInstall "zapret" "1"
opkg remove --force-removal-of-dependent-packages "sing-box"
findVersion="1.12.0"
if opkg list-installed | grep "^sing-box-tiny" && printf '%s\n%s\n' "$findVersion" "$VERSION" | sort -V | tail -n1 | grep -qx -- "$VERSION"; then
printf "\033[32;1mInstalled new sing-box-tiny. Running scprit...\033[0m\n"
else
printf "\033[32;1mInstalled old sing-box-tiny or not install sing-box-tiny. Reinstall sing-box-tiny...\033[0m\n"
manage_package "podkop" "enable" "stop"
opkg remove --force-removal-of-dependent-packages "sing-box-tiny"
checkPackageAndInstall "sing-box-tiny" "1"
fi
opkg upgrade amneziawg-tools
opkg upgrade kmod-amneziawg
opkg upgrade luci-app-amneziawg
opkg upgrade zapret
opkg upgrade luci-app-zapret
manage_package "zapret" "enable" "start"
#проверяем установлени ли пакет dnsmasq-full #проверяем установлени ли пакет dnsmasq-full
if opkg list-installed | grep -q dnsmasq-full; then if opkg list-installed | grep -q dnsmasq-full; then
@@ -507,19 +658,26 @@ uci set dhcp.@dnsmasq[0].confdir='/tmp/dnsmasq.d'
uci commit dhcp uci commit dhcp
DIR="/etc/config" DIR="/etc/config"
DIR_BACKUP="/root/backup3" DIR_BACKUP="/root/backup5"
config_files="network config_files="network
firewall firewall
doh-proxy doh-proxy
youtubeUnblock zapret
dhcp dhcp
dns-failsafe-proxy" dns-failsafe-proxy
URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/beta_alt" stubby"
URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07"
checkPackageAndInstall "luci-app-dns-failsafe-proxy" "1" checkPackageAndInstall "luci-app-dns-failsafe-proxy" "1"
checkPackageAndInstall "luci-i18n-stubby-ru" "1" checkPackageAndInstall "luci-i18n-stubby-ru" "1"
checkPackageAndInstall "luci-i18n-doh-proxy-ru" "1" checkPackageAndInstall "luci-i18n-doh-proxy-ru" "1"
#проверяем установлени ли пакет https-dns-proxy
if opkg list-installed | grep -q https-dns-proxy; then
echo "Delete packet https-dns-proxy..."
opkg remove --force-removal-of-dependent-packages "https-dns-proxy"
fi
if [ ! -d "$DIR_BACKUP" ] if [ ! -d "$DIR_BACKUP" ]
then then
echo "Backup files..." echo "Backup files..."
@@ -532,7 +690,7 @@ then
for file in $config_files for file in $config_files
do do
if [ "$file" == "doh-proxy" ] || [ "$file" == "dns-failsafe-proxy" ] if [ "$file" == "doh-proxy" ] || [ "$file" == "dns-failsafe-proxy" ] || [ "$file" == "stubby" ]
then then
wget -O "$DIR/$file" "$URL/config_files/$file" wget -O "$DIR/$file" "$URL/config_files/$file"
fi fi
@@ -545,21 +703,6 @@ uci set dhcp.cfg01411c.strictorder='1'
uci set dhcp.cfg01411c.filter_aaaa='1' uci set dhcp.cfg01411c.filter_aaaa='1'
uci commit dhcp uci commit dhcp
if opkg list-installed | grep -q opera-proxy; then
echo "Opera-proxy already installed..."
else
echo "Install opera-proxy client..."
service stop vpn > /dev/null
rm -f /usr/bin/vpns /etc/init.d/vpn
url="https://github.com/NitroOxid/openwrt-opera-proxy-bin/releases/download/1.8.0/opera-proxy_1.8.0-1_aarch64_cortex-a53.ipk"
destination_file="/tmp/opera-proxy.ipk"
echo "Downloading opera-proxy..."
wget "$url" -O "$destination_file" || { echo "Failed to download the file"; exit 1; }
echo "Installing opera-proxy..."
opkg install $destination_file
cat <<EOF > /etc/sing-box/config.json cat <<EOF > /etc/sing-box/config.json
{ {
"log": { "log": {
@@ -587,19 +730,18 @@ cat <<EOF > /etc/sing-box/config.json
} }
EOF EOF
echo "Setting sing-box..." echo "Setting sing-box..."
uci set sing-box.main.enabled='1' uci set sing-box.main.enabled='1'
uci set sing-box.main.user='root' uci set sing-box.main.user='root'
uci add_list sing-box.main.ifaces='wan' uci add_list sing-box.main.ifaces='wan'
uci add_list sing-box.main.ifaces='wan2' uci add_list sing-box.main.ifaces='wan2'
uci add_list sing-box.main.ifaces='wan6' uci add_list sing-box.main.ifaces='wan6'
uci add_list sing-box.main.ifaces='wwan' uci add_list sing-box.main.ifaces='wwan'
uci add_list sing-box.main.ifaces='wwan0' uci add_list sing-box.main.ifaces='wwan0'
uci add_list sing-box.main.ifaces='modem' uci add_list sing-box.main.ifaces='modem'
uci add_list sing-box.main.ifaces='l2tp' uci add_list sing-box.main.ifaces='l2tp'
uci add_list sing-box.main.ifaces='pptp' uci add_list sing-box.main.ifaces='pptp'
uci commit sing-box uci commit sing-box
fi
nameRule="option name 'Block_UDP_443'" nameRule="option name 'Block_UDP_443'"
str=$(grep -i "$nameRule" /etc/config/firewall) str=$(grep -i "$nameRule" /etc/config/firewall)
@@ -624,33 +766,36 @@ then
uci commit firewall uci commit firewall
fi fi
printf "\033[32;1mCheck work youtubeUnblock..\033[0m\n" printf "\033[32;1mCheck work zapret.\033[0m\n"
install_youtubeunblock_packages #install_youtubeunblock_packages
opkg upgrade youtubeUnblock opkg upgrade zapret
opkg upgrade luci-app-youtubeUnblock opkg upgrade luci-app-zapret
manage_package "youtubeUnblock" "enable" "start" manage_package "zapret" "enable" "start"
wget -O "/etc/config/youtubeUnblock" "$URL/config_files/youtubeUnblockSecond" wget -O "/etc/config/zapret" "$URL/config_files/zapret"
service youtubeUnblock restart wget -O "/opt/zapret/ipset/zapret-hosts-user.txt" "$URL/config_files/zapret-hosts-user.txt"
wget -O "/opt/zapret/ipset/zapret-hosts-user-exclude.txt" "$URL/config_files/zapret-hosts-user-exclude.txt"
wget -O "/opt/zapret/init.d/openwrt/custom.d/50-stun4all" "$URL/config_files/50-stun4all"
chmod +x "/opt/zapret/init.d/openwrt/custom.d/50-stun4all"
sh /opt/zapret/sync_config.sh
isWorkYoutubeUnBlock=0 manage_package "podkop" "enable" "stop"
manage_package "youtubeUnblock" "disable" "stop"
service zapret restart
isWorkZapret=0
curl -f -o /dev/null -k --connect-to ::google.com -L -H "Host: mirror.gcr.io" --max-time 120 https://test.googlevideo.com/v2/cimg/android/blobs/sha256:2ab09b027e7f3a0c2e8bb1944ac46de38cebab7145f0bd6effebfe5492c818b6 curl -f -o /dev/null -k --connect-to ::google.com -L -H "Host: mirror.gcr.io" --max-time 120 https://test.googlevideo.com/v2/cimg/android/blobs/sha256:2ab09b027e7f3a0c2e8bb1944ac46de38cebab7145f0bd6effebfe5492c818b6
# Проверяем код выхода # Проверяем код выхода
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
printf "\033[32;1myoutubeUnblock well work...\033[0m\n" printf "\033[32;1mzapret well work...\033[0m\n"
cronTask="0 4 * * * service youtubeUnblock restart" cronTask="0 4 * * * service zapret restart"
str=$(grep -i "0 4 \* \* \* service youtubeUnblock restart" /etc/crontabs/root) str=$(grep -i "0 4 \* \* \* service zapret restart" /etc/crontabs/root)
if [ -z "$str" ] if [ -z "$str" ]
then then
echo "Add cron task auto reboot service youtubeUnblock..." echo "Add cron task auto reboot service zapret..."
echo "$cronTask" >> /etc/crontabs/root echo "$cronTask" >> /etc/crontabs/root
fi fi
isWorkYoutubeUnBlock=1
else
manage_package "youtubeUnblock" "disable" "stop"
printf "\033[32;1myoutubeUnblock not work...\033[0m\n"
isWorkYoutubeUnBlock=0
str=$(grep -i "0 4 \* \* \* service youtubeUnblock restart" /etc/crontabs/root) str=$(grep -i "0 4 \* \* \* service youtubeUnblock restart" /etc/crontabs/root)
if [ ! -z "$str" ] if [ ! -z "$str" ]
then then
@@ -658,12 +803,31 @@ else
cp -f "/etc/crontabs/temp" "/etc/crontabs/root" cp -f "/etc/crontabs/temp" "/etc/crontabs/root"
rm -f "/etc/crontabs/temp" rm -f "/etc/crontabs/temp"
fi fi
isWorkZapret=1
else
manage_package "zapret" "disable" "stop"
printf "\033[32;1mzapret not work...\033[0m\n"
isWorkZapret=0
str=$(grep -i "0 4 \* \* \* service youtubeUnblock restart" /etc/crontabs/root)
if [ ! -z "$str" ]
then
grep -v "0 4 \* \* \* service youtubeUnblock restart" /etc/crontabs/root > /etc/crontabs/temp
cp -f "/etc/crontabs/temp" "/etc/crontabs/root"
rm -f "/etc/crontabs/temp"
fi
str=$(grep -i "0 4 \* \* \* service zapret restart" /etc/crontabs/root)
if [ ! -z "$str" ]
then
grep -v "0 4 \* \* \* service zapret restart" /etc/crontabs/root > /etc/crontabs/temp
cp -f "/etc/crontabs/temp" "/etc/crontabs/root"
rm -f "/etc/crontabs/temp"
fi
fi fi
isWorkOperaProxy=0 isWorkOperaProxy=0
printf "\033[32;1mCheck opera proxy...\033[0m\n" printf "\033[32;1mCheck opera proxy...\033[0m\n"
service sing-box restart service sing-box restart
sing-box tools fetch ifconfig.co -D /etc/sing-box/ curl --proxy http://127.0.0.1:18080 ipinfo.io/ip
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
printf "\033[32;1mOpera proxy well work...\033[0m\n" printf "\033[32;1mOpera proxy well work...\033[0m\n"
isWorkOperaProxy=1 isWorkOperaProxy=1
@@ -734,7 +898,55 @@ do
warpGen=$(check_request "$result" 4) warpGen=$(check_request "$result" 4)
if [ "$warpGen" = "Error" ] if [ "$warpGen" = "Error" ]
then then
warp_config="Error" printf "\033[32;1mRequest WARP config... Attempt #5\033[0m\n"
result=$(requestConfWARP5)
warpGen=$(check_request "$result" 5)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #6\033[0m\n"
result=$(requestConfWARP6)
warpGen=$(check_request "$result" 6)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #7\033[0m\n"
result=$(requestConfWARP7)
warpGen=$(check_request "$result" 7)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #8\033[0m\n"
result=$(requestConfWARP8)
warpGen=$(check_request "$result" 8)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #9\033[0m\n"
result=$(requestConfWARP9)
warpGen=$(check_request "$result" 9)
if [ "$warpGen" = "Error" ]
then
printf "\033[32;1mRequest WARP config... Attempt #10\033[0m\n"
result=$(requestConfWARP10)
warpGen=$(check_request "$result" 10)
if [ "$warpGen" = "Error" ]
then
warp_config="Error"
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else
warp_config=$warpGen
fi
else else
warp_config=$warpGen warp_config=$warpGen
fi fi
@@ -803,6 +1015,11 @@ do
uci set network.${INTERFACE_NAME}.awg_h2=$H2 uci set network.${INTERFACE_NAME}.awg_h2=$H2
uci set network.${INTERFACE_NAME}.awg_h3=$H3 uci set network.${INTERFACE_NAME}.awg_h3=$H3
uci set network.${INTERFACE_NAME}.awg_h4=$H4 uci set network.${INTERFACE_NAME}.awg_h4=$H4
if [ -z "$I1" ]
then
I1="<b 0xc10000000114367096bb0fb3f58f3a3fb8aaacd61d63a1c8a40e14f7374b8a62dccba6431716c3abf6f5afbcfb39bd008000047c32e268567c652e6f4db58bff759bc8c5aaca183b87cb4d22938fe7d8dca22a679a79e4d9ee62e4bbb3a380dd78d4e8e48f26b38a1d42d76b371a5a9a0444827a69d1ab5872a85749f65a4104e931740b4dc1e2dd77733fc7fac4f93011cd622f2bb47e85f71992e2d585f8dc765a7a12ddeb879746a267393ad023d267c4bd79f258703e27345155268bd3cc0506ebd72e2e3c6b5b0f005299cd94b67ddabe30389c4f9b5c2d512dcc298c14f14e9b7f931e1dc397926c31fbb7cebfc668349c218672501031ecce151d4cb03c4c660b6c6fe7754e75446cd7de09a8c81030c5f6fb377203f551864f3d83e27de7b86499736cbbb549b2f37f436db1cae0a4ea39930f0534aacdd1e3534bc87877e2afabe959ced261f228d6362e6fd277c88c312d966c8b9f67e4a92e757773db0b0862fb8108d1d8fa262a40a1b4171961f0704c8ba314da2482ac8ed9bd28d4b50f7432d89fd800c25a50c5e2f5c0710544fef5273401116aa0572366d8e49ad758fcb29e6a92912e644dbe227c247cb3417eabfab2db16796b2fba420de3b1dc94e8361f1f324a331ddaf1e626553138860757fd0bf687566108b77b70fb9f8f8962eca599c4a70ed373666961a8cb506b96756d9e28b94122b20f16b54f118c0e603ce0b831efea614ad836df6cf9affbdd09596412547496967da758cec9080295d853b0861670b71d9abde0d562b1a6de82782a5b0c14d297f27283a895abc889a5f6703f0e6eb95f67b2da45f150d0d8ab805612d570c2d5cb6997ac3a7756226c2f5c8982ffbd480c5004b0660a3c9468945efde90864019a2b519458724b55d766e16b0da25c0557c01f3c11ddeb024b62e303640e17fdd57dedb3aeb4a2c1b7c93059f9c1d7118d77caac1cd0f6556e46cbc991c1bb16970273dea833d01e5090d061a0c6d25af2415cd2878af97f6d0e7f1f936247b394ecb9bd484da6be936dee9b0b92dc90101a1b4295e97a9772f2263eb09431995aa173df4ca2abd687d87706f0f93eaa5e13cbe3b574fa3cfe94502ace25265778da6960d561381769c24e0cbd7aac73c16f95ae74ff7ec38124f7c722b9cb151d4b6841343f29be8f35145e1b27021056820fed77003df8554b4155716c8cf6049ef5e318481460a8ce3be7c7bfac695255be84dc491c19e9dedc449dd3471728cd2a3ee51324ccb3eef121e3e08f8e18f0006ea8957371d9f2f739f0b89e4db11e5c6430ada61572e589519fbad4498b460ce6e4407fc2d8f2dd4293a50a0cb8fcaaf35cd9a8cc097e3603fbfa08d9036f52b3e7fcce11b83ad28a4ac12dba0395a0cc871cefd1a2856fffb3f28d82ce35cf80579974778bab13d9b3578d8c75a2d196087a2cd439aff2bb33f2db24ac175fff4ed91d36a4cdbfaf3f83074f03894ea40f17034629890da3efdbb41141b38368ab532209b69f057ddc559c19bc8ae62bf3fd564c9a35d9a83d14a95834a92bae6d9a29ae5e8ece07910d16433e4c6230c9bd7d68b47de0de9843988af6dc88b5301820443bd4d0537778bf6b4c1dd067fcf14b81015f2a67c7f2a28f9cb7e0684d3cb4b1c24d9b343122a086611b489532f1c3a26779da1706c6759d96d8ab>"
fi
uci set network.${INTERFACE_NAME}.awg_i1="$I1"
uci set network.${INTERFACE_NAME}.nohostroute='1' uci set network.${INTERFACE_NAME}.nohostroute='1'
uci set network.@${CONFIG_NAME}[-1].description="${INTERFACE_NAME}_peer" uci set network.@${CONFIG_NAME}[-1].description="${INTERFACE_NAME}_peer"
@@ -865,19 +1082,56 @@ do
#service firewall restart #service firewall restart
#service network restart #service network restart
# Отключаем интерфейс if [ "$is_manual_input_parameters" = "n" ]; then
ifdown $INTERFACE_NAME I=0
# Включаем интерфейс WARP_ENDPOINT_HOSTS="engage.cloudflareclient.com 162.159.192.1 162.159.192.2 162.159.192.4 162.159.195.1 162.159.195.4 188.114.96.1 188.114.96.23 188.114.96.50 188.114.96.81"
ifup $INTERFACE_NAME WARP_ENDPOINT_PORTS="500 1701 2408 3138 4500"
printf "\033[32;1mWait up AWG WARP 10 second...\033[0m\n" for element in $WARP_ENDPOINT_HOSTS; do
sleep 10 EndpointIP="$element"
for element2 in $WARP_ENDPOINT_PORTS; do
pingAddress="8.8.8.8" I=$(( $I + 1 ))
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1 EndpointPort="$element2"
then uci set network.@${CONFIG_NAME}[-1].endpoint_host=$EndpointIP
isExit=1 uci set network.@${CONFIG_NAME}[-1].endpoint_port=$EndpointPort
uci commit network
# Отключаем интерфейс
ifdown $INTERFACE_NAME
# Включаем интерфейс
ifup $INTERFACE_NAME
printf "\033[33;1mIter #$I: Check Endpoint WARP $element:$element2. Wait up AWG WARP 10 second...\033[0m\n"
sleep 10
pingAddress="8.8.8.8"
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
then
printf "\033[32;1m Endpoint WARP $element:$element2 work...\033[0m\n"
isExit=1
break
else
printf "\033[31;1m Endpoint WARP $element:$element2 not work...\033[0m\n"
isExit=0
fi
done
if [ "$isExit" = "1" ]
then
break
fi
done
else else
isExit=0 # Отключаем интерфейс
ifdown $INTERFACE_NAME
# Включаем интерфейс
ifup $INTERFACE_NAME
printf "\033[32;1mWait up AWG WARP 10 second...\033[0m\n"
sleep 10
pingAddress="8.8.8.8"
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
then
isExit=1
else
isExit=0
fi
fi fi
fi fi
done done
@@ -894,30 +1148,30 @@ else
isWorkWARP=0 isWorkWARP=0
fi fi
echo "isWorkYoutubeUnBlock = $isWorkYoutubeUnBlock, isWorkOperaProxy = $isWorkOperaProxy, isWorkWARP = $isWorkWARP" echo "isWorkZapret = $isWorkZapret, isWorkOperaProxy = $isWorkOperaProxy, isWorkWARP = $isWorkWARP"
if [ "$isWorkYoutubeUnBlock" = "1" ] && [ "$isWorkOperaProxy" = "1" ] && [ "$isWorkWARP" = "1" ] if [ "$isWorkZapret" = "1" ] && [ "$isWorkOperaProxy" = "1" ] && [ "$isWorkWARP" = "1" ]
then then
varByPass=1 varByPass=1
elif [ "$isWorkYoutubeUnBlock" = "0" ] && [ "$isWorkOperaProxy" = "1" ] && [ "$isWorkWARP" = "1" ] elif [ "$isWorkZapret" = "0" ] && [ "$isWorkOperaProxy" = "1" ] && [ "$isWorkWARP" = "1" ]
then then
varByPass=2 varByPass=2
elif [ "$isWorkYoutubeUnBlock" = "1" ] && [ "$isWorkOperaProxy" = "1" ] && [ "$isWorkWARP" = "0" ] elif [ "$isWorkZapret" = "1" ] && [ "$isWorkOperaProxy" = "1" ] && [ "$isWorkWARP" = "0" ]
then then
varByPass=3 varByPass=3
elif [ "$isWorkYoutubeUnBlock" = "0" ] && [ "$isWorkOperaProxy" = "1" ] && [ "$isWorkWARP" = "0" ] elif [ "$isWorkZapret" = "0" ] && [ "$isWorkOperaProxy" = "1" ] && [ "$isWorkWARP" = "0" ]
then then
varByPass=4 varByPass=4
elif [ "$isWorkYoutubeUnBlock" = "1" ] && [ "$isWorkOperaProxy" = "0" ] && [ "$isWorkWARP" = "0" ] elif [ "$isWorkZapret" = "1" ] && [ "$isWorkOperaProxy" = "0" ] && [ "$isWorkWARP" = "0" ]
then then
varByPass=5 varByPass=5
elif [ "$isWorkYoutubeUnBlock" = "0" ] && [ "$isWorkOperaProxy" = "0" ] && [ "$isWorkWARP" = "1" ] elif [ "$isWorkZapret" = "0" ] && [ "$isWorkOperaProxy" = "0" ] && [ "$isWorkWARP" = "1" ]
then then
varByPass=6 varByPass=6
elif [ "$isWorkYoutubeUnBlock" = "1" ] && [ "$isWorkOperaProxy" = "0" ] && [ "$isWorkWARP" = "1" ] elif [ "$isWorkZapret" = "1" ] && [ "$isWorkOperaProxy" = "0" ] && [ "$isWorkWARP" = "1" ]
then then
varByPass=7 varByPass=7
elif [ "$isWorkYoutubeUnBlock" = "0" ] && [ "$isWorkOperaProxy" = "0" ] && [ "$isWorkWARP" = "0" ] elif [ "$isWorkZapret" = "0" ] && [ "$isWorkOperaProxy" = "0" ] && [ "$isWorkWARP" = "0" ]
then then
varByPass=8 varByPass=8
fi fi
@@ -928,72 +1182,82 @@ service odhcpd restart
path_podkop_config="/etc/config/podkop" path_podkop_config="/etc/config/podkop"
path_podkop_config_backup="/root/podkop" path_podkop_config_backup="/root/podkop"
URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/beta_alt" URL="https://raw.githubusercontent.com/routerich/RouterichAX3000_configs/refs/heads/podkop07"
messageComplete="" messageComplete=""
case $varByPass in case $varByPass in
1) 1)
nameFileReplacePodkop="podkopNewNoYoutube" nameFileReplacePodkop="podkopNewNoYoutube"
printf "\033[32;1mStop and disabled service 'ruantiblock'...\033[0m\n" printf "\033[32;1mStop and disabled service 'ruantiblock' and 'youtubeUnblock'...\033[0m\n"
manage_package "ruantiblock" "disable" "stop" manage_package "ruantiblock" "disable" "stop"
wget -O "/etc/config/youtubeUnblock" "$URL/config_files/youtubeUnblockSecond" manage_package "youtubeUnblock" "disable" "stop"
service youtubeUnblock restart service zapret restart
deleteByPassGeoBlockComssDNS deleteByPassGeoBlockComssDNS
messageComplete="ByPass block for Method 1: AWG WARP + youtubeunblock + Opera Proxy...Configured completed..." messageComplete="ByPass block for Method 1: AWG WARP + zapret + Opera Proxy...Configured completed..."
;; ;;
2) 2)
nameFileReplacePodkop="podkopNew" nameFileReplacePodkop="podkopNew"
printf "\033[32;1mStop and disabled service 'youtubeUnblock' and 'ruantiblock'...\033[0m\n" printf "\033[32;1mStop and disabled service 'youtubeUnblock' and 'ruantiblock' and 'zapret'...\033[0m\n"
manage_package "youtubeUnblock" "disable" "stop" manage_package "youtubeUnblock" "disable" "stop"
manage_package "ruantiblock" "disable" "stop" manage_package "ruantiblock" "disable" "stop"
manage_package "zapret" "disable" "stop"
deleteByPassGeoBlockComssDNS deleteByPassGeoBlockComssDNS
messageComplete="ByPass block for Method 2: AWG WARP + Opera Proxy...Configured completed..." messageComplete="ByPass block for Method 2: AWG WARP + Opera Proxy...Configured completed..."
;; ;;
3) 3)
nameFileReplacePodkop="podkopNewSecond" nameFileReplacePodkop="podkopNewSecond"
printf "\033[32;1mStop and disabled service 'ruantiblock'...\033[0m\n" printf "\033[32;1mStop and disabled service 'ruantiblock' and youtubeUnblock ...\033[0m\n"
manage_package "ruantiblock" "disable" "stop" manage_package "ruantiblock" "disable" "stop"
wget -O "/etc/config/youtubeUnblock" "$URL/config_files/youtubeUnblockSecondDiscord" manage_package "youtubeUnblock" "disable" "stop"
service youtubeUnblock restart wget -O "/opt/zapret/init.d/openwrt/custom.d/50-discord-media" "$URL/config_files/50-discord-media"
chmod +x "/opt/zapret/init.d/openwrt/custom.d/50-discord-media"
service zapret restart
deleteByPassGeoBlockComssDNS deleteByPassGeoBlockComssDNS
messageComplete="ByPass block for Method 3: youtubeUnblock + Opera Proxy...Configured completed..." messageComplete="ByPass block for Method 3: zapret + Opera Proxy...Configured completed..."
;; ;;
4) 4)
nameFileReplacePodkop="podkopNewSecondYoutube" nameFileReplacePodkop="podkopNewSecondYoutube"
printf "\033[32;1mStop and disabled service 'youtubeUnblock' and 'ruantiblock'...\033[0m\n" printf "\033[32;1mStop and disabled service 'youtubeUnblock' and 'ruantiblock' and 'zapret'...\033[0m\n"
manage_package "youtubeUnblock" "disable" "stop" manage_package "youtubeUnblock" "disable" "stop"
manage_package "ruantiblock" "disable" "stop" manage_package "ruantiblock" "disable" "stop"
manage_package "zapret" "disable" "stop"
deleteByPassGeoBlockComssDNS deleteByPassGeoBlockComssDNS
messageComplete="ByPass block for Method 4: Only Opera Proxy...Configured completed..." messageComplete="ByPass block for Method 4: Only Opera Proxy...Configured completed..."
;; ;;
5) 5)
nameFileReplacePodkop="podkopNewSecondYoutube" nameFileReplacePodkop="podkopNewSecondYoutube"
printf "\033[32;1mStop and disabled service 'ruantiblock' and 'podkop'...\033[0m\n" printf "\033[32;1mStop and disabled service 'ruantiblock' and 'podkop' and youtubeunblock...\033[0m\n"
manage_package "ruantiblock" "disable" "stop" manage_package "ruantiblock" "disable" "stop"
manage_package "podkop" "disable" "stop" manage_package "podkop" "disable" "stop"
wget -O "/etc/config/youtubeUnblock" "$URL/config_files/youtubeUnblock" manage_package "youtubeunblock" "disable" "stop"
service youtubeUnblock restart wget -O "/opt/zapret/ipset/zapret-hosts-user.txt" "$URL/config_files/zapret-hosts-user-second.txt"
wget -O "/opt/zapret/init.d/openwrt/custom.d/50-discord-media" "$URL/config_files/50-discord-media"
chmod +x "/opt/zapret/init.d/openwrt/custom.d/50-discord-media"
service zapret restart
byPassGeoBlockComssDNS byPassGeoBlockComssDNS
printf "\033[32;1mByPass block for Method 5: youtubeUnblock + ComssDNS for GeoBlock...Configured completed...\033[0m\n" printf "\033[32;1mByPass block for Method 5: zapret + ComssDNS for GeoBlock...Configured completed...\033[0m\n"
exit 1 exit 1
;; ;;
6) 6)
nameFileReplacePodkop="podkopNewWARP" nameFileReplacePodkop="podkopNewWARP"
printf "\033[32;1mStop and disabled service 'youtubeUnblock' and 'ruantiblock'...\033[0m\n" printf "\033[32;1mStop and disabled service 'youtubeUnblock' and 'ruantiblock' and 'zapret'...\033[0m\n"
manage_package "youtubeUnblock" "disable" "stop" manage_package "youtubeUnblock" "disable" "stop"
manage_package "ruantiblock" "disable" "stop" manage_package "ruantiblock" "disable" "stop"
manage_package "zapret" "disable" "stop"
byPassGeoBlockComssDNS byPassGeoBlockComssDNS
messageComplete="ByPass block for Method 6: AWG WARP + ComssDNS for GeoBlock...Configured completed..." messageComplete="ByPass block for Method 6: AWG WARP + ComssDNS for GeoBlock...Configured completed..."
;; ;;
7) 7)
nameFileReplacePodkop="podkopNewWARPNoYoutube" nameFileReplacePodkop="podkopNewWARPNoYoutube"
printf "\033[32;1mStop and disabled service 'ruantiblock'...\033[0m\n" printf "\033[32;1mStop and disabled service 'ruantiblock' and 'youtubeUnblock'...\033[0m\n"
manage_package "ruantiblock" "disable" "stop" manage_package "ruantiblock" "disable" "stop"
wget -O "/etc/config/youtubeUnblock" "$URL/config_files/youtubeUnblockSecond" manage_package "youtubeUnblock" "disable" "stop"
service youtubeUnblock restart wget -O "/opt/zapret/init.d/openwrt/custom.d/50-discord-media" "$URL/config_files/50-discord-media"
chmod +x "/opt/zapret/init.d/openwrt/custom.d/50-discord-media"
service zapret restart
byPassGeoBlockComssDNS byPassGeoBlockComssDNS
messageComplete="ByPass block for Method 7: AWG WARP + youtubeUnblock + ComssDNS for GeoBlock...Configured completed..." messageComplete="ByPass block for Method 7: AWG WARP + zapret + ComssDNS for GeoBlock...Configured completed..."
;; ;;
8) 8)
printf "\033[32;1mTry custom settings router to bypass the locks... Recomendation buy 'VPS' and up 'vless'\033[0m\n" printf "\033[32;1mTry custom settings router to bypass the locks... Recomendation buy 'VPS' and up 'vless'\033[0m\n"
@@ -1005,7 +1269,7 @@ case $varByPass in
esac esac
PACKAGE="podkop" PACKAGE="podkop"
REQUIRED_VERSION="0.4.6-r1" REQUIRED_VERSION="v0.7.10-r1"
INSTALLED_VERSION=$(opkg list-installed | grep "^$PACKAGE" | cut -d ' ' -f 3) INSTALLED_VERSION=$(opkg list-installed | grep "^$PACKAGE" | cut -d ' ' -f 3)
if [ -n "$INSTALLED_VERSION" ] && [ "$INSTALLED_VERSION" != "$REQUIRED_VERSION" ]; then if [ -n "$INSTALLED_VERSION" ] && [ "$INSTALLED_VERSION" != "$REQUIRED_VERSION" ]; then
@@ -1031,9 +1295,9 @@ else
if [ "$is_install_podkop" = "y" ] || [ "$is_install_podkop" = "Y" ]; then if [ "$is_install_podkop" = "y" ] || [ "$is_install_podkop" = "Y" ]; then
DOWNLOAD_DIR="/tmp/podkop" DOWNLOAD_DIR="/tmp/podkop"
mkdir -p "$DOWNLOAD_DIR" mkdir -p "$DOWNLOAD_DIR"
podkop_files="podkop_0.4.6-r1_all.ipk podkop_files="podkop-v0.7.10-r1-all.ipk
luci-app-podkop_0.4.6-r1_all.ipk luci-app-podkop-v0.7.10-r1-all.ipk
luci-i18n-podkop-ru_0.4.6.ipk" luci-i18n-podkop-ru-0.7.10.ipk"
for file in $podkop_files for file in $podkop_files
do do
echo "Download $file..." echo "Download $file..."