What's new

VPNMON VPNMON-R3 v1.3.5 -May 11, 2024- Monitor WAN/Dual-WAN/OpenVPN Health & Reset Multiple OpenVPN Connections (Now available in AMTM!)

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

I'm thinking Santa is going to have VPNMON-R3 ready for everyone who has been good this year, and not on the naughty list... ready to download on Christmas Eve as an early stocking-stuffer. 🎄🎅😉
 
Right now it's a manual process. You would go into the VPN Client Slot Server List Automation screen, and execute the query you want (using keys e1 - e5) in order to update the list. I have some plans in the works to automate this update through the means of a -switch and cron job. Luckily these server IPs don't change too often, so you are probably safe for a while, but definitely need to be refreshed every so often.
For a future release, please consider updating the VPN server lists via an external switch, similar to
Code:
vpnmon-r3 -reset

I am using external switches to control over some behaviour of the R2 script like reseting the VPN, currently automated server list update is missing feature to switch from R2 to R3 for me.
 
For a future release, please consider updating the VPN server lists via an external switch, similar to
Code:
vpnmon-r3 -reset

I am using external switches to control over some behaviour of the R2 script like reseting the VPN, currently automated server list update is missing feature to switch from R2 to R3 for me.

I like that idea... I might make this an option under the settings to have them update with a -reset, because not everyone will use these lists for this purpose. Thank you!
 
For a future release, please consider updating the VPN server lists via an external switch, similar to
Code:
vpnmon-r3 -reset

I am using external switches to control over some behaviour of the R2 script like reseting the VPN, currently automated server list update is missing feature to switch from R2 to R3 for me.

Let me know if this works for you!

Added a new menu item under the setup/config that will allow you to refresh your custom VPN client slot server lists using the -reset command:

Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/VPNMON-R3/main/vpnmon-r3-0.6b.sh" -o "/jffs/scripts/vpnmon-r3.sh" && chmod 755 "/jffs/scripts/vpnmon-r3.sh"

1702874019873.png
 
Last edited:
Should be the last beta before an official release. This one adds the capability of automatically refreshing your custom VPN Client Slot Server Lists on a scheduled "vpnmon-r3 -reset"... thanks to @salvo for the suggestion!

What's new?
v0.6b - ADDED:
New menu item under the setup/configuration menu: "Refresh Custom Server Lists on -RESET Switch", with thanks to @salvo for the suggestion. This option will refresh any custom VPN Client Slot Server Lists you have defined, and will refresh these when running a VPNMON-R3 with a -reset command. This is typically done through a CRON job, but can be run manually at any time as well depending on your needs.
- FIXED: Various cleanup and inconsistencies as well as spacing here & there...

Download Link:
Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/VPNMON-R3/main/vpnmon-r3-0.6b.sh" -o "/jffs/scripts/vpnmon-r3.sh" && chmod 755 "/jffs/scripts/vpnmon-r3.sh"

Significant Screenshots:

The option to allow an automatic refresh of your Custom VPN Client Slot Server Lists:
1702915661347.png


During a reset, if you have enabled the above option in the setup/config menu, then it will automatically refresh your lists before it resets your connection
1702915611223.png
 
Hi @Viktor Jaep !
I'd like to thank you for your enormous contribution to the community with your VPNMON-R2 and R3 monitor utility. I really enjoy configuring VPN stuff in my Asus RT-AX68U.

Is this new R3 version compatible with Wireguard VPNs? Do you think it will be compatible any time soon? I'm using NordVPN and I finally managed to obtain a Wireguard conf file. I tested it with my Asus router and the wireguard config with NordVPN works just fine. The issue that I have now is the very same issue that motivated you to create this monitor tool...every time in a while it just disconnects.

Anyway, I'm actually using the R2 with the openvpn conf and i'd like to upgrade to R3. if I'm just using NordVPN would you recommend upgrading from R2 to R3?

best
 
Last edited:
Hi @Viktor Jaep !
I'd like to thank you for your enormous contribution to the community with your VPNMON-R2 and R3 monitor utility. I really enjoy configuring VPN stuff in my Asus RT-AX68U.

Is this new R3 version compatible with Wireguard VPNs? Do you think it will be compatible any time soon? I'm using NordVPN and I finally managed to obtain a Wireguard conf file. I tested it with my Asus router and the wireguard config with NordVPN works just fine. The issue that I have now is the very same issue that motivated you to create this monitor tool...every time in a while it just disconnects.

Anyway, I'm actually using the R2 with the openvpn conf and i'd like to upgrade to R3. if I'm just using NordVPN would you recommend upgrading from R2 to R3?

best
Hey @pchtz... You are very welcome! I appreciate your nice comments!

I'm sorry, but R2 and R3 are only meant for OpenVPN at this point. I have not dabbled in the world of Wireguard yet. At the moment, I don't have any plans to bring this functionality over into R3, as it may just need to be a separate script made for this function. I'm hoping someone will eventually step up to the plate and create WIREMON! LOL. :p

But if you're using R2, you can certainly make the move to R3. It is a more open script that isn't reliant on VPN Vendors or their API capabilities. More of a true "keep the trains running" kind of script. Just make sure R2 has been stopped/uninstalled before running R3 so you don't have competing scripts monitoring your connections.
 
Hey @pchtz... You are very welcome! I appreciate your nice comments!

I'm sorry, but R2 and R3 are only meant for OpenVPN at this point. I have not dabbled in the world of Wireguard yet. At the moment, I don't have any plans to bring this functionality over into R3, as it may just need to be a separate script made for this function. I'm hoping someone will eventually step up to the plate and create WIREMON! LOL. :p

But if you're using R2, you can certainly make the move to R3. It is a more open script that isn't reliant on VPN Vendors or their API capabilities. More of a true "keep the trains running" kind of script. Just make sure R2 has been stopped/uninstalled before running R3 so you don't have competing scripts monitoring your connections.
Thank you for answering so fast ;)
Maybe one day I'll start scripting and come up with a WIREMON :D

I stopped R2 and I'm testing R3 now. I successfully configured my first VPN slot with NordVPN and Chilean servers using the R(U)n server list automation (I'm from there :p)
1703017522627.png

I'm trying to update the (T)imer VPN Check Loop but im getting the following error:

1703017667033.png

I'm pretty sure 10 is between 1 and 999 LOL
I tried with different numbers. Always get the invalid entry error. Any ideas?
 
OK... one more for the good of the order. Another stat that I thought would be very helpful is the time connected for each VPN connection. This is now included on the main UI for monitored connections. (see screenshot below)

What's new?
v0.7b - ADDED:
Now including the total time a VPN connection has remained connected. This info is displayed on the main UI next to the exit city name. Time is tracked when the VPN stops/drops and reconnects, and will only be displayed for VPN Client Slots that are actively being monitored.
- MINOR: Changed the Unbound stat on the main UI in an effort to shorten. This has now been changed from a Red/Yellow/Green "- [SYNC]", to a Red/Yellow/Green "-X[UB]" "-?[UB]" and "->[UB]" giving an indication of the Unbound [UB] sync state.

Download link:
Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/VPNMON-R3/main/vpnmon-r3-0.7b.sh" -o "/jffs/scripts/vpnmon-r3.sh" && chmod 755 "/jffs/scripts/vpnmon-r3.sh"

Significant Screenshots:

Time connected is visible next to the city exit name
1703017767020.png
 
Thank you for answering so fast ;)
Maybe one day I'll start scripting and come up with a WIREMON :D
Please do!! :)

I stopped R2 and I'm testing R3 now. I successfully configured my first VPN slot with NordVPN and Chilean servers using the R(U)n server list automation (I'm from there :p)
I'm pretty sure 10 is between 1 and 999 LOL
I tried with different numbers. Always get the invalid entry error. Any ideas?

Oh bah! Nice find! Let me see if I can sort this out real quick...
 
I'm pretty sure 10 is between 1 and 999 LOL
I tried with different numbers. Always get the invalid entry error. Any ideas?

OK... the newest v0.7b addresses this issue. All good! Let me know if that works better for you. :)
 
Merry Christmas! And we're live! 🎄 🎅 🍷

What's new?
v1.01 - December 24, 2023
- FINAL RELEASE
- Throughout the development of VPNMON-R2, I had many requests from those who were running multiple VPN connections. R2 was designed to support a single VPN connection, and would have been tough to integrate the ability to manage multiple VPN connections within it. I decided it was just better to start from the ground up with R3. Also, I wanted R3 to be a more open platform, that gives you the freedom and ability to use whatever VPN provider you want, without being tied to certain BIG-NAME VPN providers out there. Ultimately, R3 just needs a single column list of VPN Server IPs that it can randomly choose from should a connection need to be reset. And if you don't have a list? That's fine too... and it will just try to reconnect with whatever server you currently have configured in your VPN Slot. Having created a completely different thread that covers examples how you can pull the necessary VPN Server IP data from various sources, this should give you enough to go on to support your own efforts! I brought a couple of features over from R2, the biggest one being the integration with Unbound. In this day and age of privacy, I believe this is a must-have feature which allows your DNS queries to remain private from your ISP or other monitoring agencies. All in all, R3 is a slimmed down, more efficient and more open version of R2. I hope it serves your purposes well! :)

UPGRADE NOTES: For those who want to upgrade from R2, to R3... If you want to keep both for now, simply stop R2, make it's no longer starting after a reboot, and install R3. You don't want R2 and R3 running at the same time, else they might be competing to reset your VPN connections. If you want to remove R2 completely, go under the setup/config menu in R2, and uninstall. You will lose all your settings. Then install R3.

Download link:
Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/VPNMON-R3/main/vpnmon-r3-1.01.sh" -o "/jffs/scripts/vpnmon-r3.sh" && chmod 755 "/jffs/scripts/vpnmon-r3.sh"

Significant screenshots:

FINAL RELEASE - v1.01
1703424814656.png


NOTE: To those who were on Beta v0.7 - there are no other changes between it and v1.01 other than a few cosmetic items!
 
Last edited:
Merry Christmas @Viktor Jaep!

Thank you for all your contributions!
 
Merry Christmas! And we're live! 🎄 🎅 🍷

What's new?
v1.01 - December 24, 2023
- FINAL RELEASE
- Throughout the development of VPNMON-R2, I had many requests from those who were running multiple VPN connections. R2 was designed to support a single VPN connection, and would have been tough to integrate the ability to manage multiple VPN connections within it. I decided it was just better to start from the ground up with R3. Also, I wanted R3 to be a more open platform, that gives you the freedom and ability to use whatever VPN provider you want, without being tied to certain BIG-NAME VPN providers out there. Ultimately, R3 just needs a single column list of VPN Server IPs that it can randomly choose from should a connection need to be reset. And if you don't have a list? That's fine too... and it will just try to reconnect with whatever server you currently have configured in your VPN Slot. Having created a completely different thread that covers examples how you can pull the necessary VPN Server IP data from various sources, this should give you enough to go on to support your own efforts! I brought a couple of features over from R2, the biggest one being the integration with Unbound. In this day and age of privacy, I believe this is a must-have feature which allows your DNS queries to remain private from your ISP or other monitoring agencies. All in all, R3 is a slimmed down, more efficient and more open version of R2. I hope it serves your purposes well! :)

UPGRADE NOTES: For those who want to upgrade from R2, to R3... If you want to keep both for now, simply stop R2, make it's no longer starting after a reboot, and install R3. You don't want R2 and R3 running at the same time, else they might be competing to reset your VPN connections. If you want to remove R2 completely, go under the setup/config menu in R2, and uninstall. You will lose all your settings. Then install R3.

Download link:
Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/VPNMON-R3/main/vpnmon-r3-1.01.sh" -o "/jffs/scripts/vpnmon-r3.sh" && chmod 755 "/jffs/scripts/vpnmon-r3.sh"

Significant screenshots:

FINAL RELEASE - v1.01
View attachment 55095

NOTE: To those who were on Beta v0.7 - there are no other changes between it and v1.01 other than a few cosmetic items!
Upgraded, and it is working has it should...Thank you!

Have a rest after the good work :)

Merry Christmas @Viktor Jaep!

P.S: In the future it will be added to amtm, I hope :)
 
v0.6b - ADDED: New menu item under the setup/configuration menu: "Refresh Custom Server Lists on -RESET Switch", with thanks to @salvo for the suggestion. This option will refresh any custom VPN Client Slot Server Lists you have defined, and will refresh these when running a VPNMON-R3 with a -reset command. This is typically done through a CRON job, but can be run manually at any time as well depending on your needs.
Thank you for this feature, I can confirm that works just fine.

The only thing to consider is stopping/pausing the monitoring slots while the RESET routine is running. It was a sort of "fight" between the VPN slot reset from the monitoring routine and the RESET switch routine. The monitor was resetting the VPNX slot at the same time the RESET switch was adding new IPs and resetting the client as well, so like 2 client resets with some offset. If I recall correctly behaviour of R2, when RESET was iniated, the monitor was paused or stopped.
 
Thank you for this feature, I can confirm that works just fine.

The only thing to consider is stopping/pausing the monitoring slots while the RESET routine is running. It was a sort of "fight" between the VPN slot reset from the monitoring routine and the RESET switch routine. The monitor was resetting the VPNX slot at the same time the RESET switch was adding new IPs and resetting the client as well, so like 2 client resets with some offset. If I recall correctly behaviour of R2, when RESET was iniated, the monitor was paused or stopped.
Nice catch, @salvo... I hadn't run across that issue yet, but it is certainly sounding plausible now that you experienced it. I'll work on getting a pause in there while an external -RESET is executed. Thanks!
 
The script managed to establish standard behaviour eventualy without any problems, although there was some struggle to reset the VPN slot (I tried to simulate this scenario 3 times).

Few more comments:
1. does the (R)eset VPN CRON Scheduler: 01:00 also execute Refresh Custom Server Lists ?
2. I did observe some unstandard behaviour below after slot reset "Unexpected token":
- I tried to resett VPN1 slot "Reset/Reconnect VPN 1:(1)" and get below output after reset "awk: cmd. line:1: Unexpected token"
- after second cycle "awk: cmd. line:1: Unexpected token" dissapear dissapeared
- I tried several times to reset again but no more "awk: cmd. line:1: Unexpected token"

Code:
VPNMON-R3 - v1.01 | (S)how/(H)ide Operations Menu   Sat Jan  6 14:30:48 CET 2024


  Slot | Mon |  Svrs  | Health | VPN State    | Public VPN IP   | Ping-->VPN | City Exit / Time
-------|-----|--------|--------|--------------|-----------------|------------|-----------------------
  VPN1 | [X] | [0005] | [ OK ] | Connected    | 193.142.203.178 | [0029.614] | Prague: 0d 00h:00m - NEW
awk: cmd. line:1: Unexpected token
  VPN2 | [X] | [0005] | [ OK ] | Connected    | 045.129.032.171 |  | Prague: 0d 00h:50m - NEW
  VPN3 | [X] | [0005] | [ OK ] | Connected    | 193.142.203.001 | [0031.464] | Prague: 0d 00h:50m - NEW
-------|-----|--------|--------|--------------|-----------------|------------|-----------------------


  10s / 16% [e=Exit] [Selection?  ]
 
The script managed to establish standard behaviour eventualy without any problems, although there was some struggle to reset the VPN slot (I tried to simulate this scenario 3 times).
Not a problem... already working on getting a pause in there! ;)

Few more comments:
1. does the (R)eset VPN CRON Scheduler: 01:00 also execute Refresh Custom Server Lists ?
Yes it does!

2. I did observe some unstandard behaviour below after slot reset "Unexpected token":
- I tried to resett VPN1 slot "Reset/Reconnect VPN 1:(1)" and get below output after reset "awk: cmd. line:1: Unexpected token"
- after second cycle "awk: cmd. line:1: Unexpected token" dissapear dissapeared
- I tried several times to reset again but no more "awk: cmd. line:1: Unexpected token"

Code:
VPNMON-R3 - v1.01 | (S)how/(H)ide Operations Menu   Sat Jan  6 14:30:48 CET 2024


  Slot | Mon |  Svrs  | Health | VPN State    | Public VPN IP   | Ping-->VPN | City Exit / Time
-------|-----|--------|--------|--------------|-----------------|------------|-----------------------
  VPN1 | [X] | [0005] | [ OK ] | Connected    | 193.142.203.178 | [0029.614] | Prague: 0d 00h:00m - NEW
awk: cmd. line:1: Unexpected token
  VPN2 | [X] | [0005] | [ OK ] | Connected    | 045.129.032.171 |  | Prague: 0d 00h:50m - NEW
  VPN3 | [X] | [0005] | [ OK ] | Connected    | 193.142.203.001 | [0031.464] | Prague: 0d 00h:50m - NEW
-------|-----|--------|--------|--------------|-----------------|------------|-----------------------


  10s / 16% [e=Exit] [Selection?  ]
I've seen that error on a rare occasion as well. I'll see what I can do to catch it. It seems related to being unable to get a ping value of some sorts... but then on the next round, it goes away. Hard to catch these things when they misbehave so infrequently, ya know? :)
 
I've seen that error on a rare occasion as well. I'll see what I can do to catch it. It seems related to being unable to get a ping value of some sorts... but then on the next round, it goes away. Hard to catch these things when they misbehave so infrequently, ya know? :)
Right, I tried many things but was not able to replicate this issue. I assume there will be very specific output from ping execution where awk utility is not able to handle correctly.
 

Similar threads

Support SNBForums w/ Amazon

If you'd like to support SNBForums, just use this link and buy anything on Amazon. Thanks!

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top