What's new

Kamoj Kamoj Addon 5.5 Beta for Netgear R7800/R8900/R9000 with Voxel FW

  • 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!

Changes in kamoj-addon beta version 2023-07-27 5.5b33
---------------------------------------------------------------
- entware_install.sh : Fixed to work again. Tested with R7800 only. See FAQ.txt!
NOT fixed for R9000 yet.
Please PM me if still any problem. (@Philip Stevenson)
- Cleared up and corrected a more bugs in the code that mounts/unmounts USB and SATA-devices.
(hotplug2.mount, hotplug2.umount, cmddlna, green_download.sh)
- FAQ.txt updated. You must read about Entware if you're gonna use entware_install.sh .
- Minor changes

EDIT: 2023-07-27 21:20: FAQ.txt updated
Hi Kamoj,

Not entirely sure this is related to the mounts/unmounts but figured I would start here with question/issue.

** Summary ** On a Netgear R9000 /dev/sda1 will not mount as /mnt/sda1.


Details
=====
For some reason after fully resetting and wiping ... the first (and only) USB flash drive plugged into USB port 1 is mounted as /mnt/sdg1 and I can't figure out to have it as /mnt/sda1 other than temporarily by executing mount via telnet... which has to be done after each reboot.

I have the R9000 and have completely reset/wiped it multiple times in past few days trying to get /dev/sda1 USB flash drive to mount as /mnt/sda1 (/tmp/mnt/sda1). It mounts as /mnt/sdg1 (/tmp/mnt/sdg1) if it's in the USB 1 port and /sdh1 if it's in the USB 2 port. I can manually mount it via telnet with "mount /dev/sda1 /mnt/sda1" but it does not persist on reboot.

I have tried fully unisntalling, removing settings (for add-on) then resetting router and using old stock Netgear version, then resetting and going to Voxel version. I used the commands from previous posts and also using hardware switch (pin hole) and via UI reset. These are the commands used:

nvram default
nvram commit
ngmtd="$(awk -F: '/"netgear"$/ {print $1}' /proc/mtd | grep mtd)" [ -n "$ngmtd" ] && flash_erase /dev/"$ngmtd" 0 0
reboot

I have done this with USB in port 1 entirely time and done it without USB and adding the flash drive to port one after router is up and running.
I have tried with and without using ready SHARE setup to share the root of the USB flash drive. The USB device is named "optware" and I have tried it with multiple formats (FAT32, ext3, ext4... even NTFS).

I have also run (multiple times) the commands you posted to reset USB mounting points:

nvram show | awk -F= '/green_download_path/ {print $1}' | xargs -n1 nvram unset
nvram show | awk -F= '/^shared_usb_folder/ {print $1}' | xargs -n1 nvram unset
nvram show | awk -F= '/usbDeviceName/ {print $1}' | xargs -n1 nvram unset
nvram show | awk -F= '/^node[0-9]*/ {print $1}' | xargs -n1 nvram unset
nvram commit
reboot

Right now it is formatted ext4 (MBR) per Voxel's instructions. I also enabled ready Share and call share "optware" to share out the root (U:\ in router UI) as "optware". /dev/sda1 exists but maps to /mnt/sdg1 (/tmp/mnt/sdg1) and 2nd mount exists for /mnt/optware (/tmp/mnt/optware). If I create directly for sda1 in /mnt and then run command to mount /dev/sda1 as /mnt/sda1 it will work fine -- until reboot.

So my questions are:

1) Where can I configure a mount that will persist on reboot
or
2) Are there hidden places where /sdb1, /sdc1, /sdd1, /sde1, /sdf1 are saved from the past that does not get removed by the nvram commands above?

I was going to use fstab and /etc/fstab is empty -- and I realized I am way out of my depth with all the messy duplicated tmp mounts and non-obvious setup/boot activities where settings or config could be hidden. I have no idea what is "source" and what is copied version of files, when things run at boot and what needs to be edited or if it's OK to edit... etc.

Ideally I would like to correct the issue so after fully resetting the first USB flash drive plugged into USB port 1 becomes /mnt/sda1.
If not, is there a place where I can manually add a command to mount /dev/sda1 /mnt/sda1 on boot that persists on reboot?


More Info
=======
Here is the info from the add-on for the USB device:

Router Information > USB Device
-------------------------------------
USB Device 0.0 % 0.001 / 14.313 GB USB1 (sdg1): optware, USB DISK 3.0 (USB DISK 3.0) USB3.20. File system:ext3. Free: 13.573 GB

System Information > USB1 info
-------------------------------------
CONNECTED_USB_DEVICES='sda'
USB_BUS='2'
USB_CAT='3.20'
USB_DEV='sda'
USB_DEVID='/dev/sda1'
USB_FILESYS='ext3'
USB_FREEMEM='13.573 GB'
USB_IVL='0ms'
USB_LABEL='optware'
USB_MANUF=' '
USB_MODEL='USB DISK 3.0'
USB_MOUNTID='sdg1'
USB_MOUNTING='/tmp/mnt/sdg1'
USB_PARTITION_NO='1'
USB_PORT='USB1'
USB_PROD='USB DISK 3.0'
USB_PWR='504mA'
USB_SERIAL='071C253441137A61'
USB_SPEED='5000 Mbps'
USB_TOTMEM='14.313'
USB_TOTMEM_B='15007760.000'
USB_USEDMEM='0.001'
USB_USEDMEM_B='652.000'
USB_USEDPCT='0%'
USB_UUID='5297a6cf-0044-d342-afc6-ca33ef0795b7'
USB_VENDOR=''
USB_VOLUME='optware'

Telnet > df -h
----------------
Filesystem Size Used Available Use% Mounted on
devtmpfs 503.1M 0 503.1M 0% /rom/dev
tmpfs 512.0k 0 512.0k 0% /dev
ubi0:eek:verlay_volume 49.7M 11.2M 35.9M 24% /overlay
ubi1:plexmediaserver 257.3M 24.0k 252.5M 0% /tmp/plexmediaserver
overlayfs:/overlay 49.7M 11.2M 35.9M 24% /
/dev/sda1 14.3G 652.0k 13.6G 0% /tmp/mnt/sdg1


Any input is helpful.
 
Hi Kamoj,

Not entirely sure this is related to the mounts/unmounts but figured I would start here with question/issue.

** Summary ** On a Netgear R9000 /dev/sda1 will not mount as /mnt/sda1.


Details
=====
For some reason after fully resetting and wiping ... the first (and only) USB flash drive plugged into USB port 1 is mounted as /mnt/sdg1 and I can't figure out to have it as /mnt/sda1 other than temporarily by executing mount via telnet... which has to be done after each reboot.

I have the R9000 and have completely reset/wiped it multiple times in past few days trying to get /dev/sda1 USB flash drive to mount as /mnt/sda1 (/tmp/mnt/sda1). It mounts as /mnt/sdg1 (/tmp/mnt/sdg1) if it's in the USB 1 port and /sdh1 if it's in the USB 2 port. I can manually mount it via telnet with "mount /dev/sda1 /mnt/sda1" but it does not persist on reboot.

I have tried fully unisntalling, removing settings (for add-on) then resetting router and using old stock Netgear version, then resetting and going to Voxel version. I used the commands from previous posts and also using hardware switch (pin hole) and via UI reset. These are the commands used:

nvram default
nvram commit
ngmtd="$(awk -F: '/"netgear"$/ {print $1}' /proc/mtd | grep mtd)" [ -n "$ngmtd" ] && flash_erase /dev/"$ngmtd" 0 0
reboot

I have done this with USB in port 1 entirely time and done it without USB and adding the flash drive to port one after router is up and running.
I have tried with and without using ready SHARE setup to share the root of the USB flash drive. The USB device is named "optware" and I have tried it with multiple formats (FAT32, ext3, ext4... even NTFS).

I have also run (multiple times) the commands you posted to reset USB mounting points:

nvram show | awk -F= '/green_download_path/ {print $1}' | xargs -n1 nvram unset
nvram show | awk -F= '/^shared_usb_folder/ {print $1}' | xargs -n1 nvram unset
nvram show | awk -F= '/usbDeviceName/ {print $1}' | xargs -n1 nvram unset
nvram show | awk -F= '/^node[0-9]*/ {print $1}' | xargs -n1 nvram unset
nvram commit
reboot

Right now it is formatted ext4 (MBR) per Voxel's instructions. I also enabled ready Share and call share "optware" to share out the root (U:\ in router UI) as "optware". /dev/sda1 exists but maps to /mnt/sdg1 (/tmp/mnt/sdg1) and 2nd mount exists for /mnt/optware (/tmp/mnt/optware). If I create directly for sda1 in /mnt and then run command to mount /dev/sda1 as /mnt/sda1 it will work fine -- until reboot.

So my questions are:

1) Where can I configure a mount that will persist on reboot
or
2) Are there hidden places where /sdb1, /sdc1, /sdd1, /sde1, /sdf1 are saved from the past that does not get removed by the nvram commands above?

I was going to use fstab and /etc/fstab is empty -- and I realized I am way out of my depth with all the messy duplicated tmp mounts and non-obvious setup/boot activities where settings or config could be hidden. I have no idea what is "source" and what is copied version of files, when things run at boot and what needs to be edited or if it's OK to edit... etc.

Ideally I would like to correct the issue so after fully resetting the first USB flash drive plugged into USB port 1 becomes /mnt/sda1.
If not, is there a place where I can manually add a command to mount /dev/sda1 /mnt/sda1 on boot that persists on reboot?


More Info
=======
Here is the info from the add-on for the USB device:

Router Information > USB Device
-------------------------------------
USB Device 0.0 % 0.001 / 14.313 GB USB1 (sdg1): optware, USB DISK 3.0 (USB DISK 3.0) USB3.20. File system:ext3. Free: 13.573 GB

System Information > USB1 info
-------------------------------------
CONNECTED_USB_DEVICES='sda'
USB_BUS='2'
USB_CAT='3.20'
USB_DEV='sda'
USB_DEVID='/dev/sda1'
USB_FILESYS='ext3'
USB_FREEMEM='13.573 GB'
USB_IVL='0ms'
USB_LABEL='optware'
USB_MANUF=' '
USB_MODEL='USB DISK 3.0'
USB_MOUNTID='sdg1'
USB_MOUNTING='/tmp/mnt/sdg1'
USB_PARTITION_NO='1'
USB_PORT='USB1'
USB_PROD='USB DISK 3.0'
USB_PWR='504mA'
USB_SERIAL='071C253441137A61'
USB_SPEED='5000 Mbps'
USB_TOTMEM='14.313'
USB_TOTMEM_B='15007760.000'
USB_USEDMEM='0.001'
USB_USEDMEM_B='652.000'
USB_USEDPCT='0%'
USB_UUID='5297a6cf-0044-d342-afc6-ca33ef0795b7'
USB_VENDOR=''
USB_VOLUME='optware'

Telnet > df -h
----------------
Filesystem Size Used Available Use% Mounted on
devtmpfs 503.1M 0 503.1M 0% /rom/dev
tmpfs 512.0k 0 512.0k 0% /dev
ubi0:eek:verlay_volume 49.7M 11.2M 35.9M 24% /overlay
ubi1:plexmediaserver 257.3M 24.0k 252.5M 0% /tmp/plexmediaserver
overlayfs:/overlay 49.7M 11.2M 35.9M 24% /
/dev/sda1 14.3G 652.0k 13.6G 0% /tmp/mnt/sdg1


Any input is helpful.
Hello and thank you for the report!
I don't understand what your real issue is, can you please elaborate?
It's known that the R9000 has a strange way of where to mount devices.
It may be because of Plex.
There should be no place in the addon that depends on sda1 e.g.
If you have found that, I'll fix it a.s.a.p.
 
***** WARNING *****
AdGuard Home users:
The latest/current AdGuard Home, version v0.107.38 breaks the add-on function of AdGuard Home.
So DO NOT update to this version.
Details:
The config file has changed a lot again(...)/is no longer compatible with the add-on.

Temporary fix is to use old version of AdGuard Home (v0.108.0-b.46).
Here is a way to do it, using an old version:
  • Backup your AdGuardHome configuration file (AdGuardHome.yaml), since it will be lost.
  • Disable AdGuard Home in the kamoj addon (Use e.g. DNCCrypt-2-proxy or Stubby).
  • At the router prompt:
    Code:
    \rm /tmp/AdGuardHome/AdGuardHome
    \rm /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz
    \rm /opt/kamoj/addons/defaults/AdGuardHome.yaml
    curl --fail --insecure -o /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome_linux_armv7.tar.gz
    curl --fail --insecure -o /opt/kamoj/addons/defaults/AdGuardHome.yaml https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome.yaml
  • Enable AdGuard Home in then kamoj addon.
  • Wait a while for the program to start, and then refresh the kamoj addon GUI.
EDIT: There is now a patch available to download for this, making it possible to use latest Adguard Home:
https://www.snbforums.com/threads/k...0-r8900-r9000-with-voxel-fw.76440/post-866719
 
Last edited:
Hello guyz, I updated to latest Voxel fw as well as latest kamoj addon and went to make some changes to Adguard Home, which included adding more blocklists. I noticed that browsing was slow so i figured it was because of the ram being overwhelmed by the many blocklists, so just to confirm, i temporarily disabled Adguard selecting None for DNS filtering to see how it goes. Since then i cannot get Adguard to work again. Whenever i select it i do not have internet at all. I cannot even access the admin page. Clicking on Adguard Home takes me again to router's home. If i put routerIP:3000 nothing happens. I tried both with the Adguard backup file edited removing all the blacklists as well as without loading the backup from USB and still the same problem.

So i decided to erase all ADguard config and uninstall and reinstall it and start fresh, so now the system gives me the Adguard Home Setup. However during setup I am stuck at configuring the DNS Server as it keeps reporting that port 53 is already in use. I saw a guide in Adguard's github about how to fix this: https://github.com/AdguardTeam/AdGuardHome/wiki/FAQ#bindinuse but i cannot make the last restart/reload which requires sudo/systemctl. (the previous commands i did them with just root or winscp)
I was going to post this as well. I am not able to ping for example google.com from my Mac, but I am able to do it via the Router Prompt. Adguard Home does work, like I can test upstreams and apply, but none of my requests are going to AGH. This all happens after a reboot of the router after setting it up.

We usually use port 5300 for DNS requests / server, and it works fine, some even use port 54.

@kamoj just made a post in this thread giving a warning that AGH is broken once again with the latest release v0.107.38 :(
 
Last edited:
Hello and thank you for the report!
I don't understand what your real issue is, can you please elaborate?
It's known that the R9000 has a strange way of where to mount devices.
It may be because of Plex.
There should be no place in the addon that depends on sda1 e.g.
If you have found that, I'll fix it a.s.a.p.

Hi Kamoj,

Ignore the /dev/sda1 question. I will send you direct message with some details how I got to point where I was considering crazy stuff as potential issue. Honestly... no surprised and kinda guessed the USB mapping was some Netgear "feature" and not a real issue.

I read the post above about potential new (or reoccurance) of AdGuard issue. I will check out updates if/when its fixed.

Right now so burnt I am glad I have my network OK for now (even if I now I have a mix of DD-WRT, Voxel/Kamoj & Netgear stock on 3 devices all running as good friends in one big local subnet including 6 APs with same 1 SSID). Literally worst practices across the board in design, mixing platforms (kinda)... and it's working.

I wasted too much time chasing issues and now burnt (plus rest of house sick of internet going down so many times). So just leaving it alone for week or so.

The worst part is I channeled all my frustration and my 15+ year hatred of Netgear (the company and software not HW) into motivation to just buy an Asus ZenWifi X12 setup and call it a day. In Amazon Cart and I blind flashed DD-WRT thinking it was a bad idea not preparing correctly but also hopping it bricked the R9000 and I had to buy the X12s. NOPE.

It worked first try and now I am just backing away (after a little setup) and leaving things alone.


Thanks (as always) for your quick reply.

Regards...
 
***** WARNING *****
AdGuard Home users:
The latest/current AdGuard Home, version v0.107.38 breaks the add-on function of AdGuard Home.
So DO NOT update to this version.
Details:
The config file has changed a lot again(...)/is no longer compatible with the add-on.

Temporary fix is to use old version of AdGuard Home (v0.108.0-b.46).
Here is a way to do it, using an old version:
  • Backup your AdGuardHome configuration file (AdGuardHome.yaml), since it will be lost.
  • Disable AdGuard Home in the kamoj addon (Use e.g. DNCCrypt-2-proxy or Stubby).
  • At the router prompt:
    Code:
    \rm /tmp/AdGuardHome/AdGuardHome
    \rm /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz
    \rm /opt/kamoj/addons/defaults/AdGuardHome.yaml
    curl --fail --insecure -o /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome_linux_armv7.tar.gz
    curl --fail --insecure -o /opt/kamoj/addons/defaults/AdGuardHome.yaml https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome.yaml
  • Enable AdGuard Home in then kamoj addon.
  • Wait a while for the program to start, and then refresh the kamoj addon GUI.
Hello,
I followed the instructions, after doing the commands in the router prompt, Adguard Home could not be accessed through port 8080, even though I waited a while.

I then did a reboot, and Adguard Home started up, so I was able to access it on the port 8080, and since I did not want to back up any .yaml file, I entered the default username and password which is x and x according to the Kamoj FAQ. Once I was in the GUI, I noticed all the settings, that was not mine, different upstream servers, safe mode on, alot of block lists enabled etc. I didn't mind since I can easily change the settings to my liking, but the weird thing is at the way bottom its using the most updated version v0.107.38??? So I did a reboot again, and sure enough AGH wasn't working.

I tried again to follow the instructions, then I did the erase config, and couldn't not get into port 3000 to install, then I did a reboot, and I was able to get into port 3000 to install, but sadly its still on the latest 0.107.38. I will try again later tonight.

EDIT: I also notice that the 'old version' of AdGuardHome which is Version: v0.108.0-b.46, is actually the latest beta version, I tried this as well by check marking 'Use Beta Version' but still AGH is broken on re boot :(
 
Last edited:
The Adguard Home configuration file has changed too much to work with the current Kamoj addon.
If your Adguard Home is running OK: DON'T update it.

If you have updated it and it's broken you can try to revert to an older version of Adguard Home:
#-----------------------------------------------------------------------------------------------------
# Revert to old Adguard Home version v0.107.29:
#-----------------------------------------------------------------------------------------------------
#Remove your USB device to avoid using "infected" configuration file
#
#Go to Kamoj: DNS Privacy/Ad-Blocking: DNS Filter/Encryption
#Switch OFF all encrypted DNS by selecting: "None - Not recommended"
#Wait a few seconds for command to execute
#
#Go to Kamoj: Supervision: SUPERVISION, LOGGING and SETTINGS: SUPERVISION
#Switch Supervision by deselecting: "Supervision On"
#
#Now from router command line:
Code:
\rm /tmp/AdGuardHome/AdGuardHome
\rm /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz
\rm /opt/kamoj/addons/defaults/AdGuardHome.yaml
\rm /tmp/AdGuardHome.yaml
curl --fail --insecure -o /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome_linux_armv7_v0.107.29.tar.gz
\cp -p /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz /tmp/AdGuardHome_linux_armv7.tar.gz
curl --fail --insecure -o /opt/kamoj/addons/defaults/AdGuardHome.yaml https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome_14.yaml
\cp -p /opt/kamoj/addons/defaults/AdGuardHome.yaml /tmp/AdGuardHome.yaml
tar -C /tmp/ --overwrite --warning=no-timestamp -xpf /tmp/AdGuardHome_linux_armv7.tar.gz
nvram unset kamoj_adguard_home_use_beta
nvram set kamoj_adguard_home=1; # Installed
nvram commit

#Go to Kamoj: DNS Privacy/Ad-Blocking: DNS Filter/Encryption
#Switch ON Adguard Home by selecting: "Adguard Home"
#
#Wait a while and then refresh the kamoj GUI, and see if "Adguard Home" is available in the Kamoj Menu.
#
#Go to Kamoj: Supervision: SUPERVISION, LOGGING and SETTINGS: SUPERVISION
#Switch Supervision by deselecting: "Supervision On"
#
#-----------------------------------------------------------------------------------------------------

EDIT: There is now a patch available to download for this, making it possible to use latest Adguard Home:
https://www.snbforums.com/threads/k...0-r8900-r9000-with-voxel-fw.76440/post-866719
 
Last edited:
The Adguard Home configuration file has changed too much to work with the current Kamoj addon.
If your Adguard Home is running OK: DON'T update it.

If you have updated it and it's broken you can try to revert to an older version of Adguard Home:
#-----------------------------------------------------------------------------------------------------
# Revert to old Adguard Home version v0.107.29:
#-----------------------------------------------------------------------------------------------------
#Remove your USB device to avoid using "infected" configuration file
#
#Go to Kamoj: DNS Privacy/Ad-Blocking: DNS Filter/Encryption
#Switch OFF all encrypted DNS by selecting: "None - Not recommended"
#Wait a few seconds for command to execute
#
#Go to Kamoj: Supervision: SUPERVISION, LOGGING and SETTINGS: SUPERVISION
#Switch Supervision by deselecting: "Supervision On"
#
#Now from router command line:
Code:
\rm /tmp/AdGuardHome/AdGuardHome
\rm /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz
\rm /opt/kamoj/addons/defaults/AdGuardHome.yaml
\rm /tmp/AdGuardHome.yaml
curl --fail --insecure -o /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome_linux_armv7_v0.107.29.tar.gz
\cp -p /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz /tmp/AdGuardHome_linux_armv7.tar.gz
curl --fail --insecure -o /opt/kamoj/addons/defaults/AdGuardHome.yaml https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome_14.yaml
\cp -p /opt/kamoj/addons/defaults/AdGuardHome.yaml /tmp/AdGuardHome.yaml
tar -C /tmp/ --overwrite --warning=no-timestamp -xpf /tmp/AdGuardHome_linux_armv7.tar.gz
nvram set kamoj_adguard_home=1; # Installed
nvram commit

#Go to Kamoj: DNS Privacy/Ad-Blocking: DNS Filter/Encryption
#Switch ON Adguard Home by selecting: "Adguard Home"
#
#Wait a while and then refresh the kamoj GUI, and see if "Adguard Home" is available in the Kamoj Menu.
#
#Go to Kamoj: Supervision: SUPERVISION, LOGGING and SETTINGS: SUPERVISION
#Switch Supervision by deselecting: "Supervision On"
#
#-----------------------------------------------------------------------------------------------------
Thank you!! I tried this and yes, this does work, and I was able to revert back to version v0.107.29 of AGH, I just had to make sure to uncheck 'install' for adguard home first and it worked for me. I did a reboot and AdGuard Home was still working!! but sadly for some reason it auto updated to the latest version .38, then when I did another reboot again, AGH stopped working, so for sure its the newer versions that do not work with Kamoj add on.
 
The Adguard Home configuration file has changed too much to work with the current Kamoj addon.
If your Adguard Home is running OK: DON'T update it.

If you have updated it and it's broken you can try to revert to an older version of Adguard Home:
#-----------------------------------------------------------------------------------------------------
# Revert to old Adguard Home version v0.107.29:
#-----------------------------------------------------------------------------------------------------
#Remove your USB device to avoid using "infected" configuration file
#
#Go to Kamoj: DNS Privacy/Ad-Blocking: DNS Filter/Encryption
#Switch OFF all encrypted DNS by selecting: "None - Not recommended"
#Wait a few seconds for command to execute
#
#Go to Kamoj: Supervision: SUPERVISION, LOGGING and SETTINGS: SUPERVISION
#Switch Supervision by deselecting: "Supervision On"
#
#Now from router command line:
Code:
\rm /tmp/AdGuardHome/AdGuardHome
\rm /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz
\rm /opt/kamoj/addons/defaults/AdGuardHome.yaml
\rm /tmp/AdGuardHome.yaml
curl --fail --insecure -o /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome_linux_armv7_v0.107.29.tar.gz
\cp -p /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz /tmp/AdGuardHome_linux_armv7.tar.gz
curl --fail --insecure -o /opt/kamoj/addons/defaults/AdGuardHome.yaml https://www.voxel-firmware.com/Downloads/Voxel/Kamoj/.Download/AdGuardHome_14.yaml
\cp -p /opt/kamoj/addons/defaults/AdGuardHome.yaml /tmp/AdGuardHome.yaml
tar -C /tmp/ --overwrite --warning=no-timestamp -xpf /tmp/AdGuardHome_linux_armv7.tar.gz
nvram unset kamoj_adguard_home_use_beta
nvram set kamoj_adguard_home=1; # Installed
nvram commit
I think I identified the problem with AGH not starting up following a reboot. The Great @kamoj addon is not parsing the /opt/kamoj/addons/defaults/AdGuardHome.yaml to properly extract the adguard_port_dns and adguard_bind_port_www values:
Code:
root@HAL9000:~$ xxd /tmp/addons/adguard_port_dns
00000000: 3630 3630 0a35 3330 300a                 6060.5300.
root@HAL9000:~$ xxd /tmp/addons/adguard_bind_port_www
00000000: 0a                                       .
root@HAL9000:~$
This results in the following broken script-
Code:
root@HAL9000:~$ cat /tmp/addons/firewall-start-adguardhome.sh
#!/bin/sh
iptables -w -t nat -A PREROUTING -i br0 -p udp --dport 53 -j DNAT --to 10.1.10.1:6060
5300
iptables -w -t nat -A PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to 10.1.10.1:6060
5300
Instead of
Code:
root@HAL9000:/tmp/mnt/sda1$ cat /tmp/addons/firewall-start-adguardhome.sh
#!/bin/sh
iptables -w -t nat -A PREROUTING -i br0 -p udp --dport 53 -j DNAT --to 10.1.10.1:5300
iptables -w -t nat -A PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to 10.1.10.1:5300
root@HAL9000:/tmp/mnt/sda1$
Even if you are up and running, by invoking addon_adguard.sh stop, the script will write the errant script and values but you could copy over a good firewall-start-adguardhome.sh to /tmp/addons and then run
firewall-start-adguardhome.sh start. That will bring you up once, but the start command will also overwrite with bad values.



-nomobyes
 
Last edited:
I think I identified the problem with AGH not starting up following a reboot. The Great @kamoj addon is not parsing the /opt/kamoj/addons/defaults/AdGuardHome.yaml to properly extract the adguard_port_dns and adguard_bind_port_www values:
Code:
root@HAL9000:~$ xxd /tmp/addons/adguard_port_dns
00000000: 3630 3630 0a35 3330 300a                 6060.5300.
root@HAL9000:~$ xxd /tmp/addons/adguard_bind_port_www
00000000: 0a                                       .
root@HAL9000:~$
This results in the following broken script-
Code:
root@HAL9000:~$ cat /tmp/addons/firewall-start-adguardhome.sh
#!/bin/sh
iptables -w -t nat -A PREROUTING -i br0 -p udp --dport 53 -j DNAT --to 10.1.10.1:6060
5300
iptables -w -t nat -A PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to 10.1.10.1:6060
5300
Instead of
Code:
root@HAL9000:/tmp/mnt/sda1$ cat /tmp/addons/firewall-start-adguardhome.sh
#!/bin/sh
iptables -w -t nat -A PREROUTING -i br0 -p udp --dport 53 -j DNAT --to 10.1.10.1:5300
iptables -w -t nat -A PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to 10.1.10.1:5300
root@HAL9000:/tmp/mnt/sda1$
Even if you are up and running, by invoking addon_adguard.sh stop, the script will write the errant values but you could copy over a good firewall-start-adguardhome.sh to /tmp/ and then run
firewall-start-adguardhome.sh start. That will bring you up once, but the start command will also overwrite the bad values.



-nomobytes

I'm currently running v0.108.0-b.46 and I copy to /tmp/addons a good firewall-start-adguardhome.sh and then issue the start command. When you run the addon_adguard.sh start with the bad nat format you will generate the following errors:
Code:
root@HAL9000:/tmp/mnt/sda1/entware/kamoj/addons/defaults$ addon_adguard.sh start
Starting Firewall...
Done!
/tmp/addons/firewall-start-adguardhome.sh: /tmp/addons/firewall-start-adguardhome.sh: 3: 5300: not found
/tmp/addons/firewall-start-adguardhome.sh: /tmp/addons/firewall-start-adguardhome.sh: 5: 5300: not found
Hope this helps.

Here are the first few lines of my current default AdGuardHome.yaml file
Code:
http:
  pprof:
    port: 6060
    enabled: false
  address: 10.1.10.1:8080
  session_ttl: 720h
users:
  - name: x
    password:
auth_attempts: 5
block_auth_min: 15
http_proxy: ""
language: en
theme: light
dns:
  bind_hosts:
    - 0.0.0.0
  port: 5300
 
Last edited:
I think I identified the problem with AGH not starting up following a reboot. The Great @kamoj addon is not parsing the /opt/kamoj/addons/defaults/AdGuardHome.yaml to properly extract the adguard_port_dns and adguard_bind_port_www values:
Code:
root@HAL9000:~$ xxd /tmp/addons/adguard_port_dns
00000000: 3630 3630 0a35 3330 300a                 6060.5300.
root@HAL9000:~$ xxd /tmp/addons/adguard_bind_port_www
00000000: 0a                                       .
root@HAL9000:~$
This results in the following broken script-
Code:
root@HAL9000:~$ cat /tmp/addons/firewall-start-adguardhome.sh
#!/bin/sh
iptables -w -t nat -A PREROUTING -i br0 -p udp --dport 53 -j DNAT --to 10.1.10.1:6060
5300
iptables -w -t nat -A PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to 10.1.10.1:6060
5300
Instead of
Code:
root@HAL9000:/tmp/mnt/sda1$ cat /tmp/addons/firewall-start-adguardhome.sh
#!/bin/sh
iptables -w -t nat -A PREROUTING -i br0 -p udp --dport 53 -j DNAT --to 10.1.10.1:5300
iptables -w -t nat -A PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to 10.1.10.1:5300
root@HAL9000:/tmp/mnt/sda1$
Even if you are up and running, by invoking addon_adguard.sh stop, the script will write the errant script and values but you could copy over a good firewall-start-adguardhome.sh to /tmp/ and then run
firewall-start-adguardhome.sh start. That will bring you up once, but the start command will also overwrite the bad values.



-nomobyes
I did notice in "Router Information" for AdGuard Home, I did see port 6060 and I thought it was just a typo. Thank you for this! Really want to get AGH working again, when a reboot happens :)
 
I'm currently running v0.108.0-b.46 and I copy to /tmp/addons a good firewall-start-adguardhome.sh and then issue the start command. When you run the addon_adguard.sh start with the bad nat format you will generate the following errors:
Code:
root@HAL9000:/tmp/mnt/sda1/entware/kamoj/addons/defaults$ addon_adguard.sh start
Starting Firewall...
Done!
/tmp/addons/firewall-start-adguardhome.sh: /tmp/addons/firewall-start-adguardhome.sh: 3: 5300: not found
/tmp/addons/firewall-start-adguardhome.sh: /tmp/addons/firewall-start-adguardhome.sh: 5: 5300: not found
Hope this helps.

Here are the first few lines of my current default AdGuardHome.yaml file
Code:
http:
  pprof:
    port: 6060
    enabled: false
  address: 10.1.10.1:8080
  session_ttl: 720h
users:
  - name: x
    password:
auth_attempts: 5
block_auth_min: 15
http_proxy: ""
language: en
theme: light
dns:
  bind_hosts:
    - 0.0.0.0
  port: 5300


I think it makes better sense not to revert to an old version if it can be avoided. New features and bug fixes are added all the time. I'm sure @kamoj will come up with a clever solution.

Maybe revert back to an earlier version of kamoj-addon. 5.5b33-to 5.5b35 is readily available online.

This denial of service following a reboot is a big deal.

Note that @R. Gerrits has been reporting this problem using 55b32 on his R7800. But he was able to recover using 'restore from usb'.
 
Last edited:
I did notice in "Router Information" for AdGuard Home, I did see port 6060 and I thought it was just a typo. Thank you for this! Really want to get AGH working again, when a reboot happens :)
I think that has been around for a few years for downloading performance measuring code from the Adguard guys, and its value is set to false.

However your observation when looking at Router Information might be telling. Here's what I have:

Adguard HomeOK: AdGuard Home, version v0.108.0-b.46. port: 6060 port: 5300. DNS Servers: 7.

And my nvram settings-
Code:
root@HAL9000:~$ nvram show |grep -i adguard
kamoj_adguard_home_use_beta=1
node11=1*AdGuardHome*0*/mnt/sda1/AdGuardHome*0*folder
node2=1*adguard_home*0*/mnt/sda1/adguard_home*1*folder
kamoj_wait_for_internet_adguard=11
kamoj_adguard_home=2  <--what is this?
kamoj_adguard_extended_logging=1
kamoj_adguard_use_usb=1
 
Last edited:
It's no news. :-(
Every time the AGH changes the configuration file (and they do that very often...) something breaks.
It's impossible to guess what they do, and I don't have the time to check what's new in every release they do,
or synchroize addon relaeses with new AGH.
So I still recommend you to stay with a working AGH until there is a new addon.
I'll do some measures trying to mitigate the AGH teams efforts to break all automation.
I'm also making changes on how to handle usage of a USB-device.
(The AGH has a feature/bug that doen't handle links when updating from inside AGH,
and the addon uses linking to point out the USB-device if used.)
Thank's for your patience.
PS
I might make available a patch for this, since only 3 lines of code are needed to be changed.
PPS
kamoj_adguard_home=2; # AGH is "used". 1=Installed.
 
Last edited:
It's no news. :-(
Every time the AGH changes the configuration file (and they do that very often...) something breaks.
It's impossible to guess what they do, and I don't have the time to check what's new in every release they do,
or synchroize addon relaeses with new AGH.
So I still recommend you to stay with a working AGH until there is a new addon.
I'll do some mesures trying to mitigate the AGH teams efforts to break all automation.
I'm also making changes on how to handle usage of a USB-device.
(The AGH has a feature/bug that doen't handle links when updating from inside AGH,
and the addon uses linking to point out the USB-device if used.)
Thank's for your patience.
PS
I might make available a patch for this, since only 3 lines of code are needed to be changed.
PPS
kamoj_adguard_home=2; # AGH is "used". 1=Installed.
Thanks @kamoj!
 
just installed 5.5b32 and it still has some bug that is affecting me, but never took the time to figure it out.

Issue:
After reboot of the router, AdGuardHome is not working.
Process is running, but can't access the GUI via 8080 and also DNS lookups aren't working.

Looking at the log-file, I first see this (the logging of the Kamoj addon that downloads and starts AGH)
(times in CEST)
Code:
2023-07-13 19:10:59 51.32 [ADGUARD] addon_adguard.sh 7365: Information: Time is OK
2023-07-13 19:10:59 52.06 [ADGUARD] addon_adguard.sh 7365: INSTALL: Download Release archive:/tmp/AdGuardHome_linux_armv7.tar.gz https://static.adguard.com/adguardhome/release/AdGuardHome_linux_armv7.tar.gz
2023-07-13 19:11:00 52.95 [ADGUARD] addon_adguard.sh 7365: INSTALL: Release version found!: https://static.adguard.com/adguardhome/release/AdGuardHome_linux_armv7.tar.gz
2023-07-13 19:11:00 53.99 [ADGUARD] addon_adguard.sh 7365: INSTALL: Release archive unpacked 1: /tmp/AdGuardHome_linux_armv7.tar.gz
2023-07-13 19:11:00 54.01 [ADGUARD] addon_adguard.sh 7365: INSTALL: Release archive unpacked 3: /opt/kamoj/addons/AdGuardHome_linux_armv7.tar.gz
2023-07-13 19:11:00 54.04 [ADGUARD] addon_adguard.sh 7365: INSTALL: Copy configuration file from USB to persistent storage
2023-07-13 19:11:01 54.39 [ADGUARD] addon_adguard.sh 7365: INSTALL: Finished: AdGuard Home, version v0.107.34
2023-07-13 19:11:01 54.46 [ADGUARD] addon_adguard.sh 8680: Start called
2023-07-13 19:11:02 55.35 [ADGUARD] addon_adguard.sh 8680: Information: Time is OK

then some logs that are actually generated by AGH -> this shows that AGH tries to bind to 53, with the GUI on port 3000
(times in UTC)
Code:
2023/07/13 17:11:02.403764 [info] AdGuard Home, version v0.107.34
2023/07/13 17:11:02.404108 [info] This is the first time AdGuard Home is launched
2023/07/13 17:11:02.404170 [info] Checking if AdGuard Home has necessary permissions
2023/07/13 17:11:02.404233 [info] warning: cannot check capability cap_net_bind_service: invalid argument
2023/07/13 17:11:02.404639 [info] AdGuard failed to bind to port 53: listen tcp 127.0.0.1:53: bind: address already in use
Please note, that this is crucial for a DNS server to be able to use that port.
2023/07/13 17:11:02.404701 [info] AdGuard Home can bind to port 53
2023/07/13 17:11:02.408981 [info] safesearch default: disabled
2023/07/13 17:11:02.434223 [info] Initializing auth module: /tmp/mnt/sda1/adguard_home/data/sessions.db
2023/07/13 17:11:02.442158 [info] auth: initialized.  users:0  sessions:3
2023/07/13 17:11:02.442314 [info] web: initializing
2023/07/13 17:11:02.442408 [info] This is the first launch of AdGuard Home, redirecting everything to /install.html
2023/07/13 17:11:02.442502 [info] AdGuard Home is available at the following addresses:
2023/07/13 17:11:02.446594 [info] go to http://127.0.0.1:3000
2023/07/13 17:11:02.446688 [info] go to http://[::1]:3000
2023/07/13 17:11:02.446813 [info] go to http://192.168.1.1:3000
(removed a few lines)

and then finally I see again this line from Kamoj addon
(again in CEST)
Code:
2023-07-13 19:11:06 59.07 [ADGUARD] addon_adguard.sh 8680: Adguard Home started. Accessible GUI: http://192.168.1.1:8080

I.e. Kamoj addon is aware that it needs to start the GUI on 8080 instead of 3000
Also the yaml has port 5300:
[CODE]
root@R7800:/tmp/mnt/sda1/adguard_home$ cat /opt/kamoj/addons/defaults/AdGuardHome.yaml |grep 5300
  port: 5300

And AGH is started with that config yaml:
Code:
root@R7800:/tmp/mnt/sda1/adguard_home$ ps w |grep AdGuardHome
 9305 root      10924 S   /tmp/AdGuardHome/AdGuardHome --config /opt/kamoj/addons/defaults/AdGuardHome.yaml --work-dir /tmp/addons/a
19018 root        840 S   grep AdGuardHome

So why is it then ignoring the yaml? Could it be the part that should copy the yaml is running later than the part that is starting AGH?

(I always solve it by pressing "restore config from USB", as that is the quickest way to restart AGH that I'm aware of)
Kindly look over the latest troubleshooting as reported in this thread.
thx
 
Kindly look over the latest troubleshooting as reported in this thread.
thx
On the R9000 there are no workarounds. The current GUI forces the Install square to be checked in order to select AGH (from None). (If it's not checked, the AGH button will remain greyed out.) This will force the latested AGH to be downloaded/installed, and create a firewall script with faulty DNAT values, resulting in a denial of service, as addon_adguard.sh start fails.

-nomobytes
 
Last edited:
Thank you!! I tried this and yes, this does work, and I was able to revert back to version v0.107.29 of AGH, I just had to make sure to uncheck 'install' for adguard home first and it worked for me. I did a reboot and AdGuard Home was still working!! but sadly for some reason it auto updated to the latest version .38, then when I did another reboot again, AGH stopped working, so for sure its the newer versions that do not work with Kamoj add on.
So there is no workaround. You were good for only one reboot. Correct? And you never requested a download of the latest version from the GUI. Do you recall which version of kamoj-addon survived a reboot?

When you have lost internet access are you able to check out the DNS and WWW ports from the /tmp/addons directory and cat the firewall-start-adguardhome.sh, adguard_port_dns, and adguard_bind_port_www for bad values? As you recall "6060.5300" is not a valid DNAT value. And I assume that the AdguardHome URL does not point to x.x.x.x:8080, but rather x.x.x.x.

I'm not sure why @kamoj is attributing this to AGH as this anomalous behavior is generated by addon_adguard.sh and the GUI interactions.

Clearly @kamoj did not intend his workaround to force a download of the latest AGH on the 2nd reboot.

Have you enabled verbose adguard logging? Have you inspected the adguard logfiles at /var/log/AdGuardHome.log?

There should be a clearcut way to install/uninstall/stop/start/reset AGH using addon_adguard.sh without relying on the GUI interactions. And that is no longer the case.

-nomobytes
 
Last edited:

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