RTRMON RTRMON v1.54 -Jan 03, 2023- Monitor your Router's Health (New: AMTM, Network Conn/Bandwidth/Diag + Port Scanner, GT-AXE/AX Compatibility + Speedtest)

Viktor Jaep

Very Senior Member
As soon as the VPN client 1 connection displays info on page 2 of RTRMON, kill the VPN client connection via router web GUI — I see the two errors until page refreshes and removes VPN info. Turn it back on, waitt for VPN info to populate, rinse, and repeat.
I believe I have nabbed the bug!! It was trying to read traffic stats from a non-existent VPN slot as it got killed... and became a big fat null. Let's see how this performs for you! :)

v1.33b7
BETA Download Link:

Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/RTRMON/master/rtrmon-1.33b7.sh" -o "/jffs/scripts/rtrmon.sh" && chmod a+rx "/jffs/scripts/rtrmon.sh"
 

visortgw

Very Senior Member
I believe I have nabbed the bug!! It was trying to read traffic stats from a non-existent VPN slot as it got killed... and became a big fat null. Let's see how this performs for you! :)

v1.33b7
BETA Download Link:

Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/RTRMON/master/rtrmon-1.33b7.sh" -o "/jffs/scripts/rtrmon.sh" && chmod a+rx "/jffs/scripts/rtrmon.sh"
Closer, but not perfect — yet...
  • No more errors.
  • VPN client numbers correct for active connections.
  • If I disconnect VPN client 2, both VPN clients 1 and 2 are still displayed, but header tab changes from VPN2 to VPN5 — display for VPN client 2 should be cleared.
    • If I subsequently disconnect VPN client 1, display for both is cleared.
 

Viktor Jaep

Very Senior Member
Closer, but not perfect — yet...
  • No more errors.
  • VPN client numbers correct for active connections.
  • If I disconnect VPN client 2, both VPN clients 1 and 2 are still displayed, but header tab changes from VPN2 to VPN5— display for VPN client 2 should be cleared.
    • If I subsequently disconnect VPN client 1, display for both is cleared.
I believe I have nixed that issue as well... forgot to set a flag to "false" if no other VPN slots were found, which is why it just stuck on the very last one (vpn5). Let me know if this one works for you! :)

v1.33b8
BETA Download Link:

Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/RTRMON/master/rtrmon-1.33b8.sh" -o "/jffs/scripts/rtrmon.sh" && chmod a+rx "/jffs/scripts/rtrmon.sh"
 

visortgw

Very Senior Member
I believe I have nixed that issue as well... forgot to set a flag to "false" if no other VPN slots were found, which is why it just stuck on the very last one (vpn5). Let me know if this one works for you! :)

v1.33b8
BETA Download Link:

Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/RTRMON/master/rtrmon-1.33b8.sh" -o "/jffs/scripts/rtrmon.sh" && chmod a+rx "/jffs/scripts/rtrmon.sh"
Yes, this one appears to be a keeper!
 

Viktor Jaep

Very Senior Member

visortgw

Very Senior Member
Thanks for your extensive testing on this, @visortgw! You rock!!

I think we're about ready for a formal release... :)
Glad to help! You did all of the heavy lifting. ;)

FYI, I changed the entry in /jffs/configs/profile.add to (in favor of commend that I use the most):

alias rtrmon="sh /jffs/scripts/rtrmon.sh -monitor" # RTRMON
 

Viktor Jaep

Very Senior Member
Glad to help! You did all of the heavy lifting. ;)

FYI, I changed the entry in /jffs/configs/profile.add to (in favor of commend that I use the most):

Code:
alias rtrmon2="sh /jffs/scripts/rtrmon.sh -monitor" # CUSTOM RTRMON
:p You may want to modify that slightly, because RTRMON may overwrite your modification with the default... perhaps add something like:

Code:
alias rtrmon2="sh /jffs/scripts/rtrmon.sh -monitor" # CUSTOM RTRMON
 

Viktor Jaep

Very Senior Member
HUGE release v1.41 today... with many thanks to @visortgw for his extensive testing on the newly added VPN stats... ;)

What's new! (And there's a lot... take it all in, and ask questions below if you need further clarification!)
v1.41 - (November 2, 2022)
- ADDED:
Borrowing a little something from VPNMON-R2, and are now showing VPN client statistics under page 2 of RTRMON. The VPN section shows current public VPN IP, VPN IP city location, current TUN (tunnel) slot and TX/RX stats of the current connection. Having this alongside your WAN and LAN stats, gives you a good perspective on what level of network traffic is truly happening on your router. This feature will now show up to 2 connected VPN clients that you may currently have connected due to screen space contraints.
- ADDED: Now you are able to pick your own custom speedtest server ID to test against. This option is now available under the config menu. Please note, in order to find the ID, one method currently available is when using the browser and going to speedtest.net, when hoving your mouse over a specific test server, the digits on the end of the URL signify its ID. Enter these digits into the config menu item to always test against this preferred server. Leaving this field with a 0 entry will choose the closest/fastest test server to your WAN exit location. Look for item #10 under config.
- ADDED: An option to choose a more minimalist progress bar. Thanks to @ugandy, you can specify if you want the standard or minimalist progress bar under the config menu, item #12. For those who found it annoying or distracting, enjoy!
- ADDED: An auto-rotate option is now available by hitting the (R)otate pgs option from any of the currently 5 different stats screens. When doing so, RTRMON will automatically advance to the next page, and loop through each until you disable this feature by again hitting the (R)otate pgs key. Thanks for the suggestion, @Stephen Harrington!
- ADDED: More log events have been added, namely when the script started up, results of speed tests, and when your VPN changes so that it lets you know that an API call was made to determine your public VPN IP and exit city location.
- CHANGED: As with VPNMON-R2, now when you make changes to the config while running the program, upon return to the main UI, your changes will automatically be applied without needing to exit and restart.
- CHANGED: Modified the update functionality to allow you to force-update your current RTRMON script with the current build available on github.
- CHANGED: Added a prerequisite check for the existence of JQ, which is now required when pulling info about your VPN connection. Issued v1.41 HOTFIX 1... Thanks for the heads-up, @ugandy!
- FIXED: Under heavy load, I noticed that the CPU percentages did not add up (close to) 100%, and realized that I left out a vital component, namely the IRQ stat. This item has now been added under the CPU stats, giving you a little more accuracy on current CPU activity.
- FIXED: RTRMON is now able to recognize whether your VPN connection is using a public or private network, and will accommodate for each in the UI under page #2. Thanks to @visortgw for reporting this issue!
- FIXED: The minimalist progress bar will now also be visible during the initial booth sequence... thanks for the suggestion, @visortgw

Download Link (or update directly through AMTM):
Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/RTRMON/master/rtrmon-1.41.sh" -o "/jffs/scripts/rtrmon.sh" && chmod a+rx "/jffs/scripts/rtrmon.sh"

Significant Screenshots:
Lotsa stuff! Below, you'll find the currently connected VPN client stats under PG 2, alongside the WAN and LAN traffic stats...
rtrmon-1.33b2-vpn.jpg


By hitting the (R)otate Pgs button, RTRMON will automatically advance through all pages and keep looping...
rtrmon-1.33b2-rotate.jpg


The CPU IRQ was a vital stat accidentally left out that wasn't making the maths add up under heavy loads...
rtrmon-1.33b2-irq.jpg


The config menu has added item #10 to allow you to enter your own custom Ookla Speedtest server, as well as #12 to let you choose between the normal progress bar, and one that is a bit more minimalist...
rtrmon-1.33b2-spdtest-progbar.jpg


And speaking of minimalist progress bars... here she be! :)
rtrmon-1.33b2-progbar.jpg


Enjoy! :p
 
Last edited:

visortgw

Very Senior Member
:p You may want to modify that slightly, because RTRMON may overwrite your modification with the default... perhaps add something like:

Code:
alias rtrmon2="sh /jffs/scripts/rtrmon.sh -monitor" # CUSTOM RTRMON
Or:
Code:
alias mon="sh /jffs/scripts/rtrmon.sh -monitor" # CUSTOM RTRMON
 

Viktor Jaep

Very Senior Member

ugandy

Very Senior Member
one of my vpn clients exit point in portugal, yet it displays 'unknown'. the other client exits in US and info is correct
 

Viktor Jaep

Very Senior Member
one of my vpn clients exit point in portugal, yet it displays 'unknown'. the other client exits in US and info is correct
Unfortunately the luck of the draw... the API provider that provides IP -> City geolocation lookups are usually pretty accurate, but understand with the crazy amount of IP addresses being traded/moved on a continuous basis, sometimes they don't hit the mark. Give it some time, and it will usually resolve when they fix the addressing schemes on the back-end.
 

SomeWhereOverTheRainBow

Part of the Furniture
HUGE release v1.41 today... with many thanks to @visortgw for his extensive testing on the newly added VPN stats... ;)

What's new! (And there's a lot... take it all in, and ask questions below if you need further clarification!)
v1.41 - (November 2, 2022)
- ADDED:
Borrowing a little something from VPNMON-R2, and are now showing VPN client statistics under page 2 of RTRMON. The VPN section shows current public VPN IP, VPN IP city location, current TUN (tunnel) slot and TX/RX stats of the current connection. Having this alongside your WAN and LAN stats, gives you a good perspective on what level of network traffic is truly happening on your router. This feature will now show up to 2 connected VPN clients that you may currently have connected due to screen space contraints.
- ADDED: Now you are able to pick your own custom speedtest server ID to test against. This option is now available under the config menu. Please note, in order to find the ID, one method currently available is when using the browser and going to speedtest.net, when hoving your mouse over a specific test server, the digits on the end of the URL signify its ID. Enter these digits into the config menu item to always test against this preferred server. Leaving this field with a 0 entry will choose the closest/fastest test server to your WAN exit location. Look for item #10 under config.
- ADDED: An option to choose a more minimalist progress bar. Thanks to @ugandy, you can specify if you want the standard or minimalist progress bar under the config menu, item #12. For those who found it annoying or distracting, enjoy!
- ADDED: An auto-rotate option is now available by hitting the (R)otate pgs option from any of the currently 5 different stats screens. When doing so, RTRMON will automatically advance to the next page, and loop through each until you disable this feature by again hitting the (R)otate pgs key. Thanks for the suggestion, @Stephen Harrington!
- ADDED: More log events have been added, namely when the script started up, results of speed tests, and when your VPN changes so that it lets you know that an API call was made to determine your public VPN IP and exit city location.
- CHANGED: As with VPNMON-R2, now when you make changes to the config while running the program, upon return to the main UI, your changes will automatically be applied without needing to exit and restart.
- CHANGED: Modified the update functionality to allow you to force-update your current RTRMON script with the current build available on github.
- CHANGED: Added a prerequisite check for the existence of JQ, which is now required when pulling info about your VPN connection. Issued v1.41 HOTFIX 1... Thanks for the heads-up, @ugandy!
- FIXED: Under heavy load, I noticed that the CPU percentages did not add up (close to) 100%, and realized that I left out a vital component, namely the IRQ stat. This item has now been added under the CPU stats, giving you a little more accuracy on current CPU activity.
- FIXED: RTRMON is now able to recognize whether your VPN connection is using a public or private network, and will accommodate for each in the UI under page #2. Thanks to @visortgw for reporting this issue!
- FIXED: The minimalist progress bar will now also be visible during the initial booth sequence... thanks for the suggestion, @visortgw

Download Link (or update directly through AMTM):
Code:
curl --retry 3 "https://raw.githubusercontent.com/ViktorJp/RTRMON/master/rtrmon-1.41.sh" -o "/jffs/scripts/rtrmon.sh" && chmod a+rx "/jffs/scripts/rtrmon.sh"

Significant Screenshots:
Lotsa stuff! Below, you'll find the currently connected VPN client stats under PG 2, alongside the WAN and LAN traffic stats...
rtrmon-1.33b2-vpn.jpg


By hitting the (R)otate Pgs button, RTRMON will automatically advance through all pages and keep looping...
rtrmon-1.33b2-rotate.jpg


The CPU IRQ was a vital stat accidentally left out that wasn't making the maths add up under heavy loads...
rtrmon-1.33b2-irq.jpg


The config menu has added item #10 to allow you to enter your own custom Ookla Speedtest server, as well as #12 to let you choose between the normal progress bar, and one that is a bit more minimalist...
rtrmon-1.33b2-spdtest-progbar.jpg


And speaking of minimalist progress bars... here she be! :)
rtrmon-1.33b2-progbar.jpg


Enjoy! :p
Amazing work!
 

dickensr4lf

New Around Here
Viktor, truly impressive work and a valuable contribution to the Merlin AMTM community!

So I just installed this (easily) on my RT-AC86U, and ran the network diagnostics and it failed the Dig Functionality test.
I'm not sure what this is telling me, and whether I should be concerned. I couldn't find

I'm assuming this is related to Domain Information Groper (dig) - a network administration command-line tool for querying the Domain Name System (DNS).

The only other AMTM packages I have running is Diversion.
I am not running a VPN, but I do have the DNS Privacy Protocol set to DNS-over-TLS (DoT)

Are these legitimate reasons it would fail the Dig Functionality test?

I know enough about this to be dangerous... but willing to learn more if someone can point me...
 

Viktor Jaep

Very Senior Member
Viktor, truly impressive work and a valuable contribution to the Merlin AMTM community!

So I just installed this (easily) on my RT-AC86U, and ran the network diagnostics and it failed the Dig Functionality test.
I'm not sure what this is telling me, and whether I should be concerned. I couldn't find

I'm assuming this is related to Domain Information Groper (dig) - a network administration command-line tool for querying the Domain Name System (DNS).

The only other AMTM packages I have running is Diversion.
I am not running a VPN, but I do have the DNS Privacy Protocol set to DNS-over-TLS (DoT)

Are these legitimate reasons it would fail the Dig Functionality test?

I know enough about this to be dangerous... but willing to learn more if someone can point me...
You're very welcome, @dickensr4lf! Wow, so that's very interesting! Dig is an ancient commandline tool to help resolve and troubleshoot DNS records, so if it's failing, there may be something else DNS-related on your end that might be preventing it from working? It's basically just running this command:

Code:
dig google.com

I would try running that manually from SSH on your router, and seeing if you get any further info about why it may not be resolving things correctly? In short, if you're not seeing any DNS-related resolution or timeouts on your end, you're probably fine... ;)
 

Amwjujo

Regular Contributor
Morning,
I am getting the same output after running the dig test.
Noob question, but how do i run the dig command in putty ... it keeps returning not found ...
 

Viktor Jaep

Very Senior Member
Morning,
I am getting the same output after running the dig test.
Noob question, but how do i run the dig command in putty ... it keeps returning not found ...
Hmm... I had always thought dig was part of the "default" install that came along with Merlin's FW, enabling JFFS/Scripts and installing a default flavor of Entware. Needless to say, you can always install it separately by running these 2 commands... the first just updates your repositories with the latest available versions of tools available out there, and the second one just installs the latest version of dig:

Code:
opkg update

opkg install bind-dig
 

Amwjujo

Regular Contributor
Hmm... I had always thought dig was part of the "default" install that came along with Merlin's FW, enabling JFFS/Scripts and installing a default flavor of Entware. Needless to say, you can always install it separately by running these 2 commands... the first just updates your repositories with the latest available versions of tools available out there, and the second one just installs the latest version of dig:

Code:
opkg update

opkg install bind-dig
Thank you.
I can confirm that after running the code above it installed the dig. Also the RTRMON passes the dig test now.

Edit: I installed your script to a remote site where I am using an AC66U_B1 with the latest firmware and the very same test from above worked right away.
Did a dig test in putty and worked as well .. so it was installed.
I think you are right, dig it is part of the default install, but for some reason it was removed from our routers ... maybe another script did this when we uninstalled ...
 
Last edited:

Latest threads

Sign Up For SNBForums Daily Digest

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