What's new

[Fork] Asuswrt-Merlin 374.43 LTS releases (Archive)

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

@john9527 I think I discovered a code bug, preventing me from enabling DFS on my AC66U.

When I set wl_dfs_enable=1 and do 'restart_wireless', I get a segmentation fault, and the command terminates prematurely. Both wifi leds turn off and only 2.4G comes on again (network stays down though).

Code:
admin@RT-AC66U-5ED8:/tmp/home/root# nvram set wl_dfs_enable=1
admin@RT-AC66U-5ED8:/tmp/home/root# restart_wireless
restart wireless...
vlan1: cmd=14: Operation not supported
vlan1: cmd=14: Operation not supported
Segmentation fault
admin@RT-AC66U-5ED8:/tmp/home/root#

I can recover from this, by settings wl_dfs_enable=0 and do another 'restart_wireless'.
If I were to commit the wl_dfs_enable=1 setting to nvram, and reboot, the router will not come back online again, and I have to do a clear nvram on the WPS button, to get the router back into working condition. So obviously that setting also makes the boot process/network init crash.

Could you please look at line 398 of /release/src/router/rc/lan.c

I believe that
Code:
(nvram_get_int("wl1_dfs" == 1))) ||
should be
Code:
(nvram_get_int("wl1_dfs") == 1)) ||

Correct me if I'm wrong. I'm not sure this is the cause of my problems, but it looks to me like its related though, since the entire block from line 394 to 404, including the above syntax error only runs if wl_dfs_enable=1

Also, where can I find the latest source code? The version at github linked in post 1 does not seem to be up to date.

Best regards,
Miwer
 
Last edited:
After the latest update 384.9 for rt ac86u, the Download master is not working please check that
Yup, this thread is about John's fork. Current version is 37EA/37LA
9-January-2019.
The issue you are reporting, does not apply to this one.
Enviado desde mi Moto Z2 Play mediante Tapatalk
 
/edit
Nevermind.
I must have made a type-o, repeatedly.
Remade the config just now, and it worked.
The original post is moved to spoiler.

RE: ASUSwrt.Merlin_RT-AC66U_v3004-374.43xx_d20190109_b37LA.J9527
RE: VPN NETMASK MIS-VALIDATION
RE: OPENVPN SERVER1

Request: Please fix a long standing bug in the VPN server validation: The DHCP vs OpenVPN subnet 'check' code does so incorrectly. My thanks in advance. Test beds across multiple RT-AC66U are able to be provided (10? 15? I forget how many I have deployed).

History: In the beginning, there was no problem. I could configure an ASUS router to an IP+SubNet+DHCP which properly excluded a range (ie: 192.168.1.1/25)(eg: 192.168.1.1/255.255.255.128)(eg: 192.168.1.1 .. 192.168.1.127). I could then enable OpenVPN to an IP+SubNet also with uniqueness (ie: 192.168.1.192/26)(eg:192.168.1.192/255.255.255.192)(eg: 192.168.1.192 .. 192.168.1.255). This was able to be configured via the web interface, and turn on/off the VPN server, without error. Easy. Perhaps it was simply not validated, which was fine -- It worked. (Firmware: ASUS.RT-AC66U_v3004-374.13000_d20130801 ; Firmware: ASUSwrt.Merlin_RT-AC66U_v3004-374.3402_d20131101)

But A long time ago (3yrs+), some time after the firmwares listed above, there was a change. The change was not critical, and permitted work-arounds. The change was only in the web/gui: checks for conflicts before committing actions were added to the OpenVPN server-settings commit options. This now prevented /25+ subnets from passing validation, incorrectly 'detecting' conflicts, and thus preventing the server from starting. In the past, the work-around was to simply make the change outside of the webgui/validator (ie: use ssh; execute "nvram set vpn_server1_sn=192.168.1.192). Due to how it was designed, it only checked upon webgui settings change, so this worked. That is, once the setting was set, the router didn't check any more, and the VPN could start easily. Everything worked, because the NetIDs were properly laid out. (Firmware: ASUSwrt.Merlin_RT-AC66U_v3004-378.5000_d20150207 and higher ; Firmware: ASUSwrt.Merlin_RT-AC66U_v3004-374.43xx_d20181127_b37E4.J9527)

However, the problem remains, and migrates, and gets worse. Upon finding this fork of the ASUSwrt.Merlin (which I greatly prefer, and am thankful for), I now find that the same incorrect 'correctness-bug' exists, but is now integrated into the OpenVPN start command. So now I can't hack around the interface, to avoid incorrect correctness. Whom ever designed the script simply was moving a bit too fast, and didn't validate network masks correctly, between DHCP vs OpenVPN. If the ranges don't overlap, by correct bit-wise comparison, it should succeed. However, it appears that if the DHCP and the VPN are in different /24 (eg: 255.255.255.0) subnets, there simply is 'no conflict' detected (irrespective of any actual checking). Which... sortof is ok; Correctness is irrelevant, if it works for most users. Nevertheless, this requires hacks to fix, and pushing multiple network configs to clients that dial-in, so as to ensure clients can do DNS, VPN-DNS, Routes, and not everything can be solved because of glitches in the OpenVPN-Client OS specific implementations themselves. It's also... well, incorrect.

Thanks for reading. Regardless of fix or not, I am thankful.

Code:
LOG
Feb 15 05:30:00 crond[357]: USER admin pid 795 cmd service start_vpnserver1
Feb 15 05:30:04 openvpn[811]: Options error: --server directive network/netmask combination is invalid
Feb 15 05:30:04 openvpn[811]: Use --help for more information.
Code:
CONFIG
Firmware: ASUSwrt.Merlin_RT-AC66U_v3004-374.43xx_d20190109_b37LA.J9527
manf     ASUS
model    RT-AC66U
cpu      600MHz (Broadcom BCM4706)
ram      256MB (2x SAMSUNG K4T1G164QF-BCF7)
sn       D8IA0B004829
hw.ver   A2
...
/lan     /address /hostname   xxxx
                  /ip         10.11.14.1
                  /subnet     255.255.255.128
         /dhcp    /domain     xxxxx
                  /dhcp       enabled
                  /dhcp       range-65:126, lease-4320, gw-10.11.14.1
                  /dhcp       dns1-10.11.14.1, dns2-8.8.8.8, log-on
                  /dhcp       forward.local-off, manual.assignment-on
...
/vpn     /pptp    /pptp       off
         /openvpn /users      xxxxxx
                  /server1    on
                  /server1    iface-tun, proto-udp, port-1194, fw-auto, mode-tls
                  /server1    userpass-on, userpassonly-off, hmacauth-bidirectional
                  /server1    ip-10.11.14.192, sub-255.255.255.192 (/26, x.x.x.193-254)
                  /server1    poll-5min, pushlan-on, redirectinet-off
                  /server1    dns-on, dnsadvertise-on
                  /server1    ciphernegotiation-off, cipher-aes256cbc, digest-sha256
                  /server1    compression-lzo.adaptive, tlsrenegotiation--1
                  /server1    manageclients-on, allowc2c-on, allowonlyspecific-off
                  /server1    options: push "route 10.11.14.0 255.255.255.0"
                  /server2    off
          /client /client     off
 
Last edited:
I'd like to make sure I understand correctly. Apologies if this is obvious and repetitive.

I have an AC66U running Merlin 374.40. I want to update the firmware, in part because the router has been randomly disconnecting (if ,as likely, this is a hardware problem firmware won't really help).

Should I:

1) Get the Asus restoration utility (Rescue_2000.zip)

2) Get Update-37EA.zip and extract the AC66U build.

3) Follow the directions at https://www.asus.com/us/support/FAQ/1000814/ to update the firmware.

4) Change firmware settings as desired

Thank you
 
I'd like to make sure I understand correctly. Apologies if this is obvious and repetitive.

I have an AC66U running Merlin 374.40. I want to update the firmware, in part because the router has been randomly disconnecting (if ,as likely, this is a hardware problem firmware won't really help).

Should I:

1) Get the Asus restoration utility (Rescue_2000.zip)

2) Get Update-37EA.zip and extract the AC66U build.

3) Follow the directions at https://www.asus.com/us/support/FAQ/1000814/ to update the firmware.

4) Change firmware settings as desired

Thank you
Correct apart from:

3.5) Factory reset (The easiest way would be to wait a couple of minutes for the router to fully boot up after the firmware update, and then just press the Reset button for about 5 seconds).
 
Hi! I am at a loss right now:

RT-AC68U is the main wifi router, running Merlin FW 384.9. I have an RT-N66U which until yesterday ran Merlin FW 380.70 in repeater mode (connects to the AC68 via 5GHz; both router and repeater and both bands use same SSID; static IP for the N66). For me this setup works perfectly - clients roam and use the available bands w/o problem. I could not be happier, except occasional restarts of the wifi on the N66 (restart_wlcmode) and the fact that there will be no further FW updates.

So I decided to switch to 37EA. I installed it via the Asus firmware restoration tool and reset the N66. I then set it up as repeater but it does only see and connect via the 2.4GHz band of the AC68 (for this exercise I gave the AC68's 5GHz band a unique SSID). Next I changed the SSID it should connect to to the 5GHz SSID of the AC68. After that I cannot access the N66 anymore, not even via ethernet and the static IP. The LEDs look OK but it does not appear in the list of clients on the AC68.

Is that a limitation of the older firmware (compared to 380.70) or am I doing something wrong?

Thanks for your help!
 
@nephilim Are you using a DFS channel on your 5GHz band? If so that's probably the problem. What region are you in, EU, USA, etc.?

You can test this by changing the 5GHz channel on the RT-AC68U to 36. Then see if your repeater can see it.

If DFS is the issue and your N66U is an EU model then you need to do the following (as explained in the Merlin_Fork_Options.txt file):

nvram set wl_dfs_enable=1
nvram commit && reboot
 
Many thanks Colin, that solved the problem.
 
Just stumbled upon the TX power setting. On the recent Merlin FW there is a slider whereas here the power is specified in mW. Is there a table showing power values for the individual slider settings? At the moment both bands are set to 80mW while my AC68 is set to "balanced".
 
Just stumbled upon the TX power setting. On the recent Merlin FW there is a slider whereas here the power is specified in mW. Is there a table showing power values for the individual slider settings? At the moment both bands are set to 80mW while my AC68 is set to "balanced".
Not really. The slider settings were a bit of a nonsense, as the actual power output varies depending on region, band, channel and bandwidth. So it's pretty meaningless. The idea that you could set the power level to "performance" or "balanced", etc. was just a marketing gimmick IMHO to make it sound "eco-friendly".
 
Hi,

I hope someone can help me with this. I'm having trouble building the latest source from github for my AC66U.
It always errors out at wget, and I've tried a lot of different build environments (ubuntu 12.04, debian 7, and also ubuntu 16.04 after I found the readme from Merlin, stating this is the official build env as of 2016)

First time I try to build after cloning the source, I get an error in the configure stage of wget:

cd wget && ./configure --host=mipsel-linux --build= \
--with-ssl=openssl --with-libssl-prefix=/home/miwer/asuswrt/release/src-rt-6.x/router/openssl \
--sysconfdir=/etc --disable-opie --disable-ntlm --disable-debug --disable-nls --disable-rpath \
--disable-iri --without-included-regex \
--disable-dependency-tracking \
CFLAGS="-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -DDEBUG_NOISY -DDEBUG_RCTEST -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32r2 -mips32r2 -DRTCONFIG_NVRAM_64K -DLINUX_KERNEL_VERSION=132630 -ffunction-sections -fdata-sections -I/home/miwer/asuswrt/release/src-rt-6.x/router/openssl/include -I/home/miwer/asuswrt/release/src-rt-6.x/router/zlib" \
LDFLAGS=" -Wl,--gc-sections -L/home/miwer/asuswrt/release/src-rt-6.x/router/openssl -lssl -lcrypto -L/home/miwer/asuswrt/release/src-rt-6.x/router/zlib -lz"
configure: configuring for GNU Wget 1.19.5
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for mipsel-linux-strip... mipsel-uclibc-strip -R .note -R .comment
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking build system type... i686-pc-linux-uclibc
checking host system type... mipsel-unknown-linux-gnu
checking whether make supports nested variables... (cached) yes
checking for mipsel-linux-gcc... mipsel-uclibc-gcc
checking whether the C compiler works... yes
...
------- SNIP ---------
...
checking for INET6 protocol support... yes
checking for struct sockaddr_in6... yes
checking for struct sockaddr_storage... (cached) yes
checking for struct sockaddr_in6.sin6_scope_id... yes
configure: Enabling support for IPv6.
checking for makeinfo... ${SHELL} /home/miwer/asuswrt/release/src/router/wget/build-aux/missing makeinfo
checking for perl5... no
checking for perl... /usr/bin/perl
checking for pod2man... /usr/bin/pod2man
configure: disabling IRIs at user request
checking uuid.h usability... no
checking uuid.h presence... no
checking for uuid.h... no
checking uuid/uuid.h usability... no
checking uuid/uuid.h presence... no
checking for uuid/uuid.h... no
checking for PCRE... no
checking pcre.h usability... no
checking pcre.h presence... no
checking for pcre.h... no
checking for fsetxattr... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating doc/Makefile
config.status: creating util/Makefile
config.status: creating po/Makefile.in
config.status: creating tests/Makefile
config.status: error: cannot find input file: `fuzz/Makefile.in'
Makefile:3623: recipe for target 'wget/Makefile' failed
make[3]: *** [wget/Makefile] Error 1
make[3]: Leaving directory '/home/miwer/asuswrt/release/src/router'
Makefile:185: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/miwer/asuswrt/release/src-rt-6.x'
Makefile:2549: recipe for target 'bin' failed
make[1]: *** [bin] Error 2
make[1]: Leaving directory '/home/miwer/asuswrt/release/src-rt-6.x'
Makefile:2619: recipe for target 'rt-ac66u' failed
make: *** [rt-ac66u] Error 2
miwer@ubuntu:~/asuswrt/release/src-rt-6.x$

Subsequent tries to build this, errors out on some wierd form of automake command for wget:

cd . && /bin/bash /home/miwer/asuswrt/release/src/router/wget/build-aux/missing automake-1.15 --gnu
configure.ac:202: warning: gl_HOST_CPU_C_ABI is m4_require'd but not m4_defun'd
m4/lib-prefix.m4:162: AC_LIB_PREPARE_MULTILIB is expanded from...
m4/lib-link.m4:181: AC_LIB_LINKFLAGS_BODY is expanded from...
m4/iconv.m4:10: AM_ICONV_LINKFLAGS_BODY is expanded from...
m4/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
configure.ac:202: the top level
configure.ac:285: warning: gl_LOCALTIME_BUFFER_DEFAULTS is m4_require'd but not m4_defun'd
m4/gettimeofday.m4:77: gl_FUNC_GETTIMEOFDAY_CLOBBER is expanded from...
m4/gettimeofday.m4:10: gl_FUNC_GETTIMEOFDAY is expanded from...
m4/gnulib-comp.m4:318: gl_INIT is expanded from...
configure.ac:285: the top level
configure.ac:285: warning: gl_HOST_CPU_C_ABI is m4_require'd but not m4_defun'd
m4/gnulib-comp.m4:318: gl_INIT is expanded from...
configure.ac:285: the top level
configure.ac:285: warning: gl_LOCALTIME_BUFFER_DEFAULTS is m4_require'd but not m4_defun'd
m4/gnulib-comp.m4:318: gl_INIT is expanded from...
configure.ac:285: the top level
configure.ac:285: warning: gl_PREPROC_O_CLOEXEC is m4_require'd but not m4_defun'd
m4/open.m4:7: gl_FUNC_OPEN is expanded from...
m4/gnulib-comp.m4:318: gl_INIT is expanded from...
configure.ac:285: the top level
configure.ac:285: warning: gl_LIMITS_H is m4_require'd but not m4_defun'd
m4/gnulib-comp.m4:318: gl_INIT is expanded from...
configure.ac:285: the top level
configure.ac:202: warning: The 'AM_PROG_MKDIR_P' macro is deprecated, and its use is discouraged.
configure.ac:202: You should use the Autoconf-provided 'AC_PROG_MKDIR_P' macro instead,
configure.ac:202: and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.
configure.ac:801: error: required file 'tests/certs/interca.conf.in' not found
configure.ac:801: error: required file 'tests/certs/rootca.conf.in' not found
parallel-tests: error: required file 'build-aux/test-driver' not found
parallel-tests: 'automake --add-missing' can install 'test-driver'
lib/Makefile.am:3472: error: GL_GENERATE_UTIME_H does not appear in AM_CONDITIONAL
Makefile:1462: recipe for target 'Makefile.in' failed
make[4]: *** [Makefile.in] Error 1
make[4]: Leaving directory '/home/miwer/asuswrt/release/src/router/wget'
Makefile:3632: recipe for target 'wget' failed
make[3]: *** [wget] Error 2
make[3]: Leaving directory '/home/miwer/asuswrt/release/src/router'
Makefile:185: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/miwer/asuswrt/release/src-rt-6.x'
Makefile:2549: recipe for target 'bin' failed
make[1]: *** [bin] Error 2
make[1]: Leaving directory '/home/miwer/asuswrt/release/src-rt-6.x'
Makefile:2619: recipe for target 'rt-ac66u' failed
make: *** [rt-ac66u] Error 2

I can't even do a 'make clean'. It also errors out like the last error above. I have to delete my local copy entirely to properly clean it.

Anyone have a clue what's wrong? because I don't. Help greatly appreciated.

Thank you,

Br,
Miwer

Edit: Oh well, I replaced wget with the older version 1.19.2 from the original RMerl/asuswrt-merlin repository, and now it compiles just fine on 16.04.
 
Last edited:
@john9527 I think I discovered a code bug, preventing me from enabling DFS on my AC66U.

When I set wl_dfs_enable=1 and do 'restart_wireless', I get a segmentation fault, and the command terminates prematurely. Both wifi leds turn off and only 2.4G comes on again (network stays down though)....

Ok, so I think I was right on the money with that bug I found. After correcting the code as stated in my previous post, and compiling a new image, I no longer get the segmentation fault after setting wl_dfs_enable=1 and running 'restart_wireless'. I also had to set wl1_dfs=1 to reveal the checkbox in the web interface, and enabling the checkbox it now selects a DFS channel. I'm assuming, that auto channel changing works, but time will tell (Update: it does!). So far I'm a happy camper. :)

So, looking at the code for AC66U it seems the requirements for working DFS are as follows:
  • Country code must be EU
  • nvram set wl_dfs_enable=1
  • nvram set wl1_dfs=1
  • ... and enabling the DFS checkbox in the UI under 5G wifi settings
Since the source version on github is not the latest, I hope this fix will be included in the next release.

Br,
Miwer
 
Last edited:
Is there any recommended settings for setting up QoS for this fork? My problem is that if one user in the network starts downloading something, no others can access the internet anymore i.e. no server error or the page can not be reached message in browsers.

I apologize if this question had been asked before but SNB won't allow me to search this thread with 'QoS' key word cause it was too short
 
Is there any recommended settings for setting up QoS for this fork? My problem is that if one user in the network starts downloading something, no others can access the internet anymore i.e. no server error or the page can not be reached message in browsers.

I apologize if this question had been asked before but SNB won't allow me to search this thread with 'QoS' key word cause it was too short
QoS for high speed connections is pain in the ....
 
Is there any recommended settings for setting up QoS for this fork? My problem is that if one user in the network starts downloading something, no others can access the internet anymore i.e. no server error or the page can not be reached message in browsers.

I apologize if this question had been asked before but SNB won't allow me to search this thread with 'QoS' key word cause it was too short

I've had no luck with QOS but I didn't mess with it much. Bandwidth Limiter is simpler to setup and works effectively for me though. I ration other devices enough bandwidth to watch Netflix or download at a decent rate and things work smoothly for everyone. But I've found out the same. Some devices like Xbox One will absolutely hog all the bandwidth it can get with no way to respect the traffic of other devices on the network, ie, limit bandwidth like other OS's built in this century allow you to do. Iphones are also bad to hog upload when syncing to the cloud and when that happens, good luck doing anything else on the internet.
 
@Mike_1990 Can you post a screen shot of System Log > Wireless Log please?

Are you still using this as a repeater? You said you were having problems even via Ethernet, presumably that's plugged into the repeater?

It might be helpful is you were to upload the entire syslog to somewhere like pastebin.

Regarding the messages in the log, that's normal. It's always done that.


again sorry for late reply. it is no longer used as a repeater as I now have internet installed in my house and not repeating it from my aunts next door. But the issues I described I had previously been using E4 with no issues with it setup as router, and then noticed negative effects after E7. And no changes were made to enviorment or anything at all between firmware changes. I did lots of testing.

Also I have a couple questions. Is it possible to plug iphone up to the router via usb and get a internet connection? If so how would I achieve this? I assume through a jffs script?

Also I have an bros trend ac3 dual band wifi usb adapter. It has a cradle with a rather long usb cable and it has 2 5db high gain omni directional antennas on it. Is it possible to hook this up to the router and have the adapter broadcast the routers signal as well? The wifi usb adapter can also act as ap. Ive set it up that way in windows and linux and it preforms pretty good surprisingly.
 

Sign Up For SNBForums Daily Digest

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