1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-03-09 15:40:03 +00:00

Merge branch 'develop' into master

This commit is contained in:
Ycarus (Yannick Chabanois) 2020-11-09 11:20:22 +01:00
commit 85ac49bfc2
9 changed files with 197 additions and 171 deletions

View file

@ -178,6 +178,7 @@
<br />
<div class="cbi-value-description">
<%:Set the default Proxy used for TCP when ShadowSocks is enabled, for TCP and UDP when V2Ray is enabled.%>
<%:Only ShadowSocks is supported with server multiple IPs for now.%>
</div>
</div>
</div>

View file

@ -1,28 +1,28 @@
msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8"
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:265
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:255
msgid "A Dead Simple VPN is a TCP VPN that can replace Glorytun TCP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:260
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:262
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:250
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:252
msgid "A Dead Simple VPN key"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:83
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:72
msgid "API username to retrieve personnalized settings from the server."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:660
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:650
msgid "APN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:128
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:117
msgid "Add a new server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:829
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:819
msgid "Add an interface"
msgstr ""
@ -31,11 +31,11 @@ msgstr ""
msgid "Advanced Settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:135
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:124
msgid "Advanced settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:339
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:329
msgid ""
"All VPN available here can do aggregation over MPTCP or using own internal "
"method."
@ -45,18 +45,18 @@ msgstr ""
msgid "All router settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:234
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:224
msgid ""
"An Advanced Encryption Standard (AES) instruction set is integrated in the "
"processor."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:686
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:676
msgid "Authentication Type"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:724
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:736
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:714
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:726
msgid "Backup"
msgstr ""
@ -77,20 +77,20 @@ msgstr ""
msgid "Big time difference between the server and the router"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:484
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:474
msgid "Bridge"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:245
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:235
msgid "By default VPN is used for any traffic that is not TCP."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:180
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:169
msgid ""
"By default proxy is used for any traffic that is TCP (and UDP for V2Ray)."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:691
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:681
msgid "CHAP"
msgstr ""
@ -110,19 +110,19 @@ msgstr ""
msgid "Can\\'t ping server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:488
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:478
msgid ""
"Choose MacVLAN if you want to create a virtual interface based on a physical "
"interface."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:422
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:508
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:554
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:412
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:498
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:544
msgid "Choose physical interface."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:133
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:122
msgid "Common server settings"
msgstr ""
@ -130,8 +130,8 @@ msgstr ""
msgid "Core temp:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:374
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:519
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:364
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:509
msgid "DHCP"
msgstr ""
@ -143,22 +143,22 @@ msgstr ""
msgid "Debug"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:182
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:171
msgid "Default Proxy"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:295
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:285
msgid "Default VPN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:62
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:463
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:51
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:453
msgid "Delete"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:586
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:613
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:634
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:576
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:603
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:624
msgid "Device"
msgstr ""
@ -199,7 +199,7 @@ msgid ""
"Disable ports redirection defined in firewall from server to this router"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:116
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:105
msgid "Disable server"
msgstr ""
@ -215,12 +215,12 @@ msgstr ""
msgid "Disable tracebox test"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:722
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:734
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:712
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:724
msgid "Disabled"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:780
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:770
msgid "Download speed (Kb/s)"
msgstr ""
@ -229,11 +229,11 @@ msgid "Dynamic change"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:185
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:158
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:147
msgid "Enable IPv6"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:770
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:760
msgid "Enable SQM"
msgstr ""
@ -249,16 +249,16 @@ msgstr ""
msgid "Enable debug logs"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:721
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:733
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:711
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:723
msgid "Enabled"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:217
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:207
msgid "Encryption"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:238
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:228
msgid "Encryption method is used for Shadowsocks, V2Ray, Glorytun and OpenVPN."
msgstr ""
@ -266,15 +266,15 @@ msgstr ""
msgid "Filesystem is readonly"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:150
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:139
msgid "Force retrieve all keys from server."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:145
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:134
msgid "Force retrieve settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:680
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:670
msgid "GPRS only"
msgstr ""
@ -283,12 +283,12 @@ msgstr ""
msgid "Gateway DOWN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:253
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:243
msgid "Glorytun TCP is used by default for UDP and ICMP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:248
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:250
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:238
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:240
msgid "Glorytun key"
msgstr ""
@ -328,21 +328,21 @@ msgstr ""
msgid "IPv4 TCP SYN retries2"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:430
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:560
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:420
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:550
msgid "IPv4 address"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:576
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:566
msgid "IPv4 gateway"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:436
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:570
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:426
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:560
msgid "IPv4 netmask"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:168
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:157
msgid "IPv6 Prefix"
msgstr ""
@ -351,7 +351,7 @@ msgstr ""
msgid "IPv6 route received"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:156
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:145
msgid "IPv6 settings"
msgstr ""
@ -363,40 +363,40 @@ msgstr ""
msgid "IPv6:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:449
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:439
msgid "Interfaces settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:192
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:202
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:212
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:253
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:265
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:277
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:289
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:243
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:255
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:267
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:279
msgid "Key is retrieved from server API by default."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:93
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:82
msgid ""
"Key to configure and retrieve others keys from Server and to set server "
"settings from OpenMPTCProuter."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:347
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:337
msgid "LAN interfaces settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:678
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:668
msgid "LTE"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:358
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:469
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:348
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:459
msgid "Label"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:364
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:474
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:354
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:464
msgid "Label for the interface"
msgstr ""
@ -414,12 +414,12 @@ msgstr ""
msgid "Load:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:277
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:267
msgid "MLVPN can replace Glorytun with connections with same latency"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:272
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:274
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:262
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:264
msgid "MLVPN password"
msgstr ""
@ -431,16 +431,16 @@ msgstr ""
msgid "MPTCP may not be enabled on the server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:760
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:750
msgid "MPTCP over VPN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:483
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:473
msgid "MacVLAN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:723
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:735
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:713
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:725
msgid "Master"
msgstr ""
@ -456,15 +456,15 @@ msgstr ""
msgid "Minimum scaling CPU frequency"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:675
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:665
msgid "Modem default"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:709
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:699
msgid "Modem init timeout"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:520
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:510
msgid "ModemManager"
msgstr ""
@ -472,8 +472,8 @@ msgstr ""
msgid "More than one default VPN is enabled"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:718
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:730
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:708
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:720
msgid "Multipath TCP"
msgstr ""
@ -494,11 +494,11 @@ msgstr ""
msgid "Multipath seems to be blocked on the connection"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:521
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:511
msgid "NCM"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:689
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:679
msgid "NONE"
msgstr ""
@ -564,11 +564,11 @@ msgstr ""
msgid "No server defined"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:223
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:213
msgid "None"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:482
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:472
msgid "Normal"
msgstr ""
@ -594,7 +594,11 @@ msgstr ""
msgid "On wizard change"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:107
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:181
msgid "Only ShadowSocks is supported with server multiple IPs for now."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:96
msgid "Only one server can be master, else all servers are set as backup."
msgstr ""
@ -603,7 +607,7 @@ msgstr ""
msgid "OpenMPTCProuter"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:339
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:329
msgid "OpenVPN can't be used in multi VPS configuration."
msgstr ""
@ -611,8 +615,8 @@ msgstr ""
msgid "Optimize for latency instead of bandwidth"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:375
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:524
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:365
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:514
msgid "Other"
msgstr ""
@ -620,46 +624,46 @@ msgstr ""
msgid "Other settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:690
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:680
msgid "PAP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:692
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:682
msgid "PAP/CHAP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:703
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:693
msgid "PAP/CHAP password"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:697
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:687
msgid "PAP/CHAP username"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:666
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:656
msgid "PIN code"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:522
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:512
msgid "PPPoE"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:387
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:493
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:533
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:377
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:483
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:523
msgid "Physical interface"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:676
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:666
msgid "Prefer LTE"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:677
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:667
msgid "Prefer UMTS"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:369
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:514
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:359
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:504
msgid "Protocol"
msgstr ""
@ -667,7 +671,7 @@ msgstr ""
msgid "Proxy is DISABLED"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:179
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:168
msgid "Proxy settings"
msgstr ""
@ -675,7 +679,7 @@ msgstr ""
msgid "Proxy traffic:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:523
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:513
msgid "QMI"
msgstr ""
@ -687,12 +691,12 @@ msgstr ""
msgid "Restore backup"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:143
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:132
msgid "Retrieve settings from server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:334
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:838
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:828
msgid "Save & Apply"
msgstr ""
@ -708,7 +712,7 @@ msgstr ""
msgid "Scaling governor"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:832
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:822
msgid "Select the device you want to base the interface on."
msgstr ""
@ -716,63 +720,63 @@ msgstr ""
msgid "Send backup"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:68
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:70
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:57
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:59
msgid "Server IP"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:72
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:61
msgid "Server IP will be set for proxy and VPN"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:88
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:90
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:77
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:79
msgid "Server key"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:52
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:41
msgid "Server settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:78
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:80
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:67
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:69
msgid "Server username"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:672
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:662
msgid "Service Type"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:565
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:555
msgid "Set an IP in the same network as the modem"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:581
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:571
msgid "Set here IP of the modem"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:102
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:91
msgid "Set server as master"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:191
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:180
msgid ""
"Set the default Proxy used for TCP when ShadowSocks is enabled, for TCP and "
"UDP when V2Ray is enabled."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:339
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:329
msgid ""
"Set the default VPN used for ICMP (and UDP if proxy used is shadowsocks), "
"for all traffic if proxy is disabled."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:790
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:780
msgid ""
"Set value between 80-95% of max download speed link. 0 to disable SQM/QoS."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:806
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:796
msgid ""
"Set value between 80-95% of max upload speed link. 0 to disable SQM/QoS."
msgstr ""
@ -785,12 +789,12 @@ msgstr ""
msgid "ShadowSocks is not running"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:202
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:192
msgid "ShadowSocks is used for TCP."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:197
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:199
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:187
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:189
msgid "ShadowSocks key"
msgstr ""
@ -798,8 +802,8 @@ msgstr ""
msgid "Show all settings"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:373
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:518
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:363
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:508
msgid "Static address"
msgstr ""
@ -818,7 +822,7 @@ msgid ""
"local end."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:236
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:226
msgid ""
"There is no Advanced Encryption Standard (AES) instruction set integrated in "
"the processor, you should use chacha20."
@ -841,20 +845,20 @@ msgstr ""
msgid "Total traffic:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:479
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:469
msgid "Type"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:289
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:279
msgid "UBOND can replace Glorytun with connections with same latency"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:284
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:286
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:274
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:276
msgid "UBOND password"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:679
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:669
msgid "UMTS/GPRS"
msgstr ""
@ -874,7 +878,7 @@ msgstr ""
msgid "Update server"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:796
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:786
msgid "Upload speed (Kb/s)"
msgstr ""
@ -883,8 +887,8 @@ msgstr ""
msgid "Uptime:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:785
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:801
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:775
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:791
msgid "Used by Glorytun UDP and SQM/QoS if enabled. 0 to use default value."
msgstr ""
@ -892,15 +896,15 @@ msgstr ""
msgid "V2Ray is not running"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:212
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:202
msgid "V2Ray is used for TCP and UDP."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:209
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:199
msgid "V2Ray user"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:207
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:197
msgid "V2Ray user id"
msgstr ""
@ -908,7 +912,7 @@ msgstr ""
msgid "VPN is not running"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:244
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:234
msgid "VPN settings"
msgstr ""
@ -939,7 +943,7 @@ msgid ""
"used to go outside."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:50
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:39
msgid "Wizard"
msgstr ""
@ -948,33 +952,33 @@ msgstr ""
msgid "You"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:765
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:755
msgid "You can enable MPTCP over VPN if your provider filter Multipath TCP."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:379
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:369
msgid "You can use DHCP if you have multiple real ethernet ports."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:528
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:518
msgid ""
"You can use DHCP if you have multiple real ethernet ports. Select other if "
"you want to use another protocol available in Network Interfaces page."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:173
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:162
msgid "You can use a public IPv6 prefix only if you set only one server."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:450
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:440
msgid "You must disable DHCP on your modems and set IP in different networks."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:163
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:152
msgid "You should disable IPv6 here if server doesn't provide IPv6."
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:775
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:765
msgid "You should disable SQM for LTE or any interfaces with variable speed."
msgstr ""
@ -990,7 +994,7 @@ msgstr ""
msgid "address:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:681
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:671
msgid "auto"
msgstr ""
@ -1022,7 +1026,7 @@ msgstr ""
msgid "operator:"
msgstr ""
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:227
#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:217
msgid "other"
msgstr ""

View file

@ -22,7 +22,7 @@ while true; do
[ -z "$peer" ] && peer=$(ip -4 r list dev $iface | grep via | grep -v default | grep -v metric | grep -v / | awk '{print $1; exit}' | tr -d "\n")
[ -z "$peer" ] && peer=$(ip -4 r list dev $iface | grep kernel | awk '/proto kernel/ {print $1}' | grep -v / | tr -d "\n")
[ -n "$addr" ] && [ -n "$peer" ] && {
if [ "$addr" != "$(uci -q get network.omr6in4.ipaddr)" ] || [ "$peer" != "$(uci -q get network.omr6in4.peeraddr)" ] || [ "$(ip -6 route show default)" = "" ]; then
if [ "$addr" != "$(uci -q get network.omr6in4.ipaddr)" ] || [ "$peer" != "$(uci -q get network.omr6in4.peeraddr)" ] || [ "$(ip -6 route show default | grep via)" = "" ]; then
logger -t "omr6in4" "Set network for OMR 6in4 to local $addr peer $peer"
uci -q batch <<-EOF
set network.omr6in4.ipaddr=$addr
@ -30,7 +30,7 @@ while true; do
commit network
EOF
if [ -n "$(ip tunnel | grep omr6in4)" ]; then
ip tunnel change "6in4-omr6in4" mode sit local ${addr} remote ${peer} > /dev/null 2>&1
ip tunnel change "6in4-omr6in4" mode sit local ${addr} remote ${peer} ttl 64 > /dev/null 2>&1
else
ifup omr6in4 > /dev/null 2>&1
fi

View file

@ -17,9 +17,11 @@ set_shadowsocks_address() {
set_ipv6_state() {
local disable_ipv6="$(uci -q get openmptcprouter.settings.disable_ipv6)"
[ -z "$disable_ipv6" ] && disable_ipv6="1"
previous=$(sysctl -qn net.ipv6.conf.all.disable_ipv6 | tr -d "\n")
sysctl -qw net.ipv6.conf.all.disable_ipv6=$disable_ipv6
sed -i "s:^net.ipv6.conf.all.disable_ipv6=[0-9]*:net.ipv6.conf.all.disable_ipv6=$disable_ipv6:" /etc/sysctl.d/zzz_openmptcprouter.conf
#previous=$(sysctl -qn net.ipv6.conf.all.disable_ipv6 | tr -d "\n")
previous="$(uci get network.lan.ipv6)"
#sysctl -qw net.ipv6.conf.all.disable_ipv6=$disable_ipv6
#sed -i "s:^net.ipv6.conf.all.disable_ipv6=[0-9]*:net.ipv6.conf.all.disable_ipv6=$disable_ipv6:" /etc/sysctl.d/zzz_openmptcprouter.conf
sed -i "s:^net.ipv6.conf.all.disable_ipv6=[0-9]*::" /etc/sysctl.d/zzz_openmptcprouter.conf
uci -q batch <<-EOF >/dev/null
set firewall.@defaults[0].disable_ipv6=$disable_ipv6
@ -42,6 +44,11 @@ set_ipv6_state() {
EOF
config_load shadowsocks-libev
config_foreach set_shadowsocks_address ss_redir "0.0.0.0"
uci -q batch <<-EOF >/dev/null
commit network
commit dhcp
commit shadowsocks-libev
EOF
else
logger -t "omr-6in4" "Enable IPv6"
uci -q batch <<-EOF >/dev/null
@ -55,14 +62,9 @@ set_ipv6_state() {
add_list dhcp.lan.ra_flags='other-config'
set network.lan.ipv6="1"
set network.lan.delegate="0"
set network.omr6in4.force_link=1
delete network.omr6in4.auto
EOF
if [ "$(uci -q get v2ray.main.inbounds | grep omr6)" = "" ]; then
uci -q batch <<-EOF >/dev/null
add_list v2ray.main.inbounds="omr6"
commit v2ray
EOF
fi
if [ "$(network.lan.ip6assign)" = "" ]; then
uci -q set network.lan.ip6assign='60'
fi
@ -75,27 +77,36 @@ set_ipv6_state() {
config_load shadowsocks-libev
config_foreach set_shadowsocks_address ss_redir "::"
uci -q batch <<-EOF >/dev/null
commit network
commit dhcp
commit shadowsocks-libev
EOF
/etc/init.d/shadowsocks-libev restart
if [ "$(uci -q get v2ray.main.inbounds | grep omr6)" = "" ]; then
uci -q batch <<-EOF >/dev/null
add_list v2ray.main.inbounds="omr6"
commit v2ray
EOF
/etc/init.d/v2ray restart
fi
fi
uci -q batch <<-EOF >/dev/null
commit network
commit dhcp
commit shadowsocks-libev
EOF
/etc/init.d/odhcpd restart
if [ "$previous" != "$disable_ipv6" ]; then
if [ "$previous" != "1" ]; then
env -i /bin/ubus call network reload
fi
}
start_service() {
[ "$(uci -q get openmptcprouter.settings.disable_ipv6)" != "$(sysctl -n net.ipv6.conf.all.disable_ipv6)" ] && set_ipv6_state
[ "$(uci -q get openmptcprouter.settings.disable_ipv6)" != "1" ] && [ "$(uci -q get network.lan.ipv6)" != "1" ] && set_ipv6_state
[ "$(uci -q get openmptcprouter.settings.disable_ipv6)" = "1" ] && {
ifdown omr6in4
return
}
[ "$(ifstatus omr6in4 | jsonfilter -e '@.up' | tr -d '\n')" != "true" ] && ifup omr6in4
multipath 6in4-omr6in4 off 2>&1 >/dev/null
procd_open_instance
# shellcheck disable=SC2086
procd_set_param command /bin/omr-6in4

View file

@ -30,9 +30,13 @@ _get_ip() {
uci -q set openmptcprouter.omr.detected_public_ipv4="$(curl -s -4 -m 3 $check_ipv4_website)"
if [ "$(uci -q get openmptcprouter.omr.shadowsocks)" != "down" ]; then
uci -q set openmptcprouter.omr.detected_ss_ipv4="$(curl -s -4 --socks5 "${proxy}" --max-time 3 $check_ipv4_website)"
else
uci -q del openmptcprouter.omr.detected_ss_ipv4
fi
if [ "$(uci -q get openmptcprouter.settings.disable_ipv6)" != "1" ]; then
uci -q set openmptcprouter.omr.detected_public_ipv6="$(curl -s -6 -m 3 $check_ipv6_website)"
else
uci -q del openmptcprouter.omr.detected_public_ipv6
# uci -q set openmptcprouter.omr.detected_ss_ipv6=$(curl -s -6 --socks5 ":::1111" --max-time 3 http://ip.openmptcprouter.com)
fi
fi

View file

@ -28,11 +28,15 @@ _get_ip() {
check_ipv6_website="$(uci -q get openmptcprouter.settings.check_ipv6_website)"
[ -z "$check_ipv6_website" ] && check_ipv6_website="http://ipv6.openmptcprouter.com"
uci -q set openmptcprouter.omr.detected_public_ipv4="$(curl -s -4 -m 3 $check_ipv4_website)"
if [ "$(uci -q get openmptcprouter.omr.shadowsocks)" != "down" ]; then
if [ "$(uci -q get openmptcprouter.omr.v2ray)" != "down" ]; then
uci -q set openmptcprouter.omr.detected_ss_ipv4="$(curl -s -4 --socks5 "${proxy}" --max-time 3 $check_ipv4_website)"
else
uci -q del openmptcprouter.omr.detected_ss_ipv4
fi
if [ "$(uci -q get openmptcprouter.settings.disable_ipv6)" != "1" ]; then
uci -q set openmptcprouter.omr.detected_public_ipv6="$(curl -s -6 -m 3 $check_ipv6_website)"
else
uci -q del openmptcprouter.omr.detected_public_ipv6
# uci -q set openmptcprouter.omr.detected_ss_ipv6=$(curl -s -6 --socks5 ":::1111" --max-time 3 http://ip.openmptcprouter.com)
fi
fi

View file

@ -1291,7 +1291,7 @@ _set_config_from_vps() {
uci -q batch <<-EOF >/dev/null
set openmptcprouter.settings.disable_ipv6=1
EOF
sysctl -qw net.ipv6.conf.all.disable_ipv6=1
#sysctl -qw net.ipv6.conf.all.disable_ipv6=1
else
uci -q batch <<-EOF >/dev/null
set openmptcprouter.${servername}.ipv6=$vps_ipv6_addr

View file

@ -8,6 +8,8 @@ uci -q batch <<-EOF >/dev/null
commit rpcd
luci.apply.timeout='20'
commit luci
fstab.@global[0].check_fs='1'
commit fstab
EOF
[ -n "$(ubus call system board | jsonfilter -e '@.board_name' | grep raspberry)" ] && [ "$(uci -q get openmptcprouter.settings.scaling_governor)" != "performance" ] && {

View file

@ -1882,7 +1882,7 @@ setup_transparent_proxy() {
ext_args="--dport 0:1023 $ext_args"
fi
if [ -n "$(cat "$FILE_V2RAY_DNSMASQ_CACHE" | grep -v "^$" | grep -v "^#")" ] ; then
if [ -f $FILE_V2RAY_DNSMASQ_CACHE ] && [ -n "$(cat "$FILE_V2RAY_DNSMASQ_CACHE" | grep -v "^$" | grep -v "^#")" ] ; then
local dir="$(dirname "$FILE_V2RAY_DNSMASQ")"
test -d "$dir" || mkdir -p "$dir"
cat "$FILE_V2RAY_DNSMASQ_CACHE" >"$FILE_V2RAY_DNSMASQ" 2>/dev/null