What's new

Network Map - Client Section - Strange Behavior

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

Nathan MIller

Occasional Visitor
I'm new to Asuswrt-Merlin having just bought my RT-AC87R yesterday and getting it installed. I did a lot of research and immediately loaded Asuswrt-Merlin and did a full default and build from scratch. First thing I want to say is THANK YOU for making this...it is AWESOME...Everything is working great but I've noticed a few strange things that I thought I'd mention. Maybe it is just me because I'm new :)

- In the client section...to be clear, not the LAN/DHCP Server manual assignment section, I was able to name all of my devices with the exception of 1 that keeps giving me this message back when I hit OK "This entry has been in list." I've tried everything to change it but it just won't. 19 out of my 20 host names changed just fine but I couldn't get this one to. I ssh'd to the box and tried to find where this host name correlation is being done but couldn't find that to just edit it there, so I'm stuck with this one host that just shows as a MAC address. I've also tried rebooting and there is nothing showing in syslog for this. So outside of defaulting and trying again I'm stuck. I'd rather not go that route and possibly get to the bottom of it with some assistance here :)

- In the client section as well, just like the issue above. I noticed that when I select a host to edit and click the lock button "Binding IP and MAC Address" it will then perform an apply. When this is in place and I go to the LAN/DHCP Server page it no longer loads correctly. So something about how this is doing the configuration for the manually assignment is breaking this page from properly loading. If I go back into the client section and remove the lock / binding on the host in there it applies it again and then the LAN/DHCP Server page loads normally.

Sorry for the long first post but I wanted to make sure I thoroughly described the issues I was seeing. Thanks for reading!
 
- In the client section...to be clear, not the LAN/DHCP Server manual assignment section, I was able to name all of my devices with the exception of 1 that keeps giving me this message back when I hit OK "This entry has been in list."

Trying to keep this client list (which Asus only uses for a descriptive label) with the actual hostnames om the DHCP reservation list (which are actual hostnames) is tricky. I might eventually stop trying to keep them in sync (which was something people asked for, so I decided to give it a try). What is probably happening is you already have an entry on the LAN-> DHCP page with the same hostname/MAC/IP, causing a conflict. My recommendation is to avoid using the Networkmap, and rely on the (much more reliable and useful) DHCP list instead.

- In the client section as well, just like the issue above. I noticed that when I select a host to edit and click the lock button "Binding IP and MAC Address" it will then perform an apply. When this is in place and I go to the LAN/DHCP Server page it no longer loads correctly. So something about how this is doing the configuration for the manually assignment is breaking this page from properly loading. If I go back into the client section and remove the lock / binding on the host in there it applies it again and then the LAN/DHCP Server page loads normally.

Make sure your device description only contains alphanumerics. That means avoid using quotes, amongst other things, as they can break the webui.
 
First of all, thank you for the quick response!

Trying to keep this client list (which Asus only uses for a descriptive label) with the actual hostnames om the DHCP reservation list (which are actual hostnames) is tricky. I might eventually stop trying to keep them in sync (which was something people asked for, so I decided to give it a try). What is probably happening is you already have an entry on the LAN-> DHCP page with the same hostname/MAC/IP, causing a conflict. My recommendation is to avoid using the Networkmap, and rely on the (much more reliable and useful) DHCP list instead.
I confirmed that I do not have an entry in the LAN-> DHCP page that is causing a conflict. Maybe something got corrupted as my naming didn't "only" contain alphanumerics for all of my other entries in the client list. The one is question I've never been able to adjust or change. I'm have no problem not using the client list any longer and using the DHCP list instead, I just want to confirm that you're referring to the LAN-> DHCP page...if so, then I'd need to be creating a manual DHCP MAC to IP binding for all things I want to place a custom (non DNS or otherwise) correct? Or are you referring to a place where I can create a MAC to custom name so that no matter what the IP is that it DHCP's it will always have a familiar name. I hope that makes sense :)

Make sure your device description only contains alphanumerics. That means avoid using quotes, amongst other things, as they can break the webui.
I changed the name to contain alphanumerics only as you specified and that indeed stopped that problem from happening...Thanks!
 
I confirmed that I do not have an entry in the LAN-> DHCP page that is causing a conflict. Maybe something got corrupted as my naming didn't "only" contain alphanumerics for all of my other entries in the client list. The one is question I've never been able to adjust or change. I'm have no problem not using the client list any longer and using the DHCP list instead, I just want to confirm that you're referring to the LAN-> DHCP page...if so, then I'd need to be creating a manual DHCP MAC to IP binding for all things I want to place a custom (non DNS or otherwise) correct? Or are you referring to a place where I can create a MAC to custom name so that no matter what the IP is that it DHCP's it will always have a familiar name. I hope that makes sense :)

Stick to the LAN -> DHCP page.
 
Stick to the LAN -> DHCP page.

Got it, thanks. Are there any plans on the roadmap for being able to tie a common name to a MAC so that it doesn't require a DHCP reservation? I'm not at risk of hitting the 128 limit, just curious more than anything else. It just helps me recognize devices without an internal DNS server to reverse against as this is for home use and having to create a DHCP manual entry / reservation seems like overkill. No worries either way...love the product and thanks again!
 
Got it, thanks. Are there any plans on the roadmap for being able to tie a common name to a MAC so that it doesn't require a DHCP reservation? I'm not at risk of hitting the 128 limit, just curious more than anything else. It just helps me recognize devices without an internal DNS server to reverse against as this is for home use and having to create a DHCP manual entry / reservation seems like overkill. No worries either way...love the product and thanks again!

That's what Asus is doing with the Networkmap, and people complained at me that it wasn't tied to the DHCP reservations in addition to the networkmap display itself. We see how well it turned out when the two are tied together...
 
That's what Asus is doing with the Networkmap, and people complained at me that it wasn't tied to the DHCP reservations in addition to the networkmap display itself. We see how well it turned out when the two are tied together...
Maybe I'm not following your response clearly, but for the record, I had modified 19 of the 20 "descriptions" under the networkmap --> client page and none of them show up in the LAN --> DHCP page as DHCP reservations. I do have two reservations there, but that isn't for any of the hosts I changed the description on in the networkmap --> client page. The only page that reflects my descriptive changes is the networkmap --> client page. Sorry for the repetition of the same thing but I'm making sure I'm not confusing the situation :)

I'll be honest...I never tried this with the vanilla firmware unmodified from Asus, I've only ever used yours...so I don't know the specific differences.
 
FWIW, I have DHCP reservations only and the names appearing in the client and traffic analyzer sections vary between the MAC address, device's name in its setup (android and xbox mostly) and my reservation name. Not a big deal to me, just sayin'...
 
Last edited:
I was able to name all of my devices with the exception of 1 that keeps giving me this message back when I hit OK "This entry has been in list." I've tried everything to change it but it just won't. 19 out of my 20 host names changed just fine but I couldn't get this one to.

I have an ASUS RT-AC66U and was experiencing the same problem for two devices. I did a few Google-searches but didn't find an answer (just found your question).
Though, I think I figured out what the problem was after trying to debug the javascript-code causing the alert. My conclusion was that the code is case sensitive so it matters if you type the MAC-address in upper- or lowercase.

Once I had removed and re-added the MAC-address on the "LAN - DHCP server - Manually Assigned IP" page to match the casing shown on the on the "Network Map - Client status" page, I could give it a name in the client list.

Just thought I'd share my experience for anyone else having this problem.
 
I think I have the solution to this issue. It is related to the logic behind manually assigned IPs. I am using a RT-AC87U with the 3.0.0.4.378_9177-ge585a63 firmware. I was using the previous release until this morning. I set up my DHCP clients using MAC addresses I had saved in an Excel spreadsheet when I had my previous Linksys router. I saw the strange behavior previously noted (not able to edit names, etc., and the 'This entry has been in list." error prior to this release. When trying to view the "View List", I initially got data, then subsequently got a blank page. I decided to debug the page using Chrome's debugging tools.

Here is bug #1 and the underlying cause, and the line numbers are from the source code in asuswrt-merlin main branch.
Root cause: I manually added MAC addresses in the manually assigned DHCP list in lower case.
The code in genClientList() in asuswrt-merlin/release/src/router/www/client_function.js line 202 loads data from both dynamic introspection and from NVRAM when you have made changes to the device names.
All the data stored in the array called clientList in the field mac are in upper case (this is important)
After populating the clientList, a number of modifications are made, including the customized names, and values from NVRAM, which begins at the loop that begins at line 458 with for(var i=0; i<originData.customList.length; i++)
Inside this loop at line 509, the mac address is overwritten with the value from NVRAM (which in my case is stored in lower case!)
When the "View List" is populated, it runs code in clients_functions.asp. In the debugger, it was failing to execute drawClientListBlock() (line 2342), failing at line 2482. clientListCode += (clientList[clientlist_sort[j].mac].isWebServer) saying that isWebServer is undefined. This is strange because the client object was being populated in genClientList() - I verified that previously
clientList[clientlist_sort[j].mac] is the culprit:
clientList is indexed by MAC address in upper case; clientList_sort is an array populated from the original genClientList(), with some of the MAC address overwritten by the contents of the NVRAM, and hence in lower case.
In the case where clientlist_sort.mac returns a lower case MAC, the line fails because it is used to index clientList[], which is in upper case. So, it finds no match.

Once I realized what happened, I went to my list of DHCP clients and deleted an entry with lower case MAC, saved it. I then manually entered the upper case MAC, and mysteriously the DHCP list already knew about my device name. I finished configuration and retested. It failed again.

I went back to the DHCP list and looked at the detail of the device by clicking on the icon, and the MAC address was in lower case.

Bug #2, when you delete from the DHCP list, it does not delete the entry from NVRAM. So, the data I saved originally is brought "back from the dead" even though I thought I had deleted it. The MAC address is in lower case and non-editable.
Here's the workaround if you are brave enough to use an HTML editor. In the manual DHCP list:
1) View the device detail by clicking on the device icon.
2) In Chrome (and supposedly any other browser with a built-in debugger), right click on the MAC address field, and choose 'inspect element'. A bottom panel will open up showing the source HTML of the page.
3) In the bottom panel you will see an <input> tag saying:
<input id="client_macaddr_field" type="text" value="" class="input_32_table client_input_text_disabled" disabled>
This is the field containing the MAC address, and the element is marked as 'disabled' to stop you editing it in the device detail panel. Edit the input element (typically by double-click) and set it to 'enabled'. Click enter to save the changes to the HTML.
4) In the DHCP form you can now overwrite the MAC address with the upper case value.
5) Click the Apply button. This sets the value correctly in NVRAM.
6) Repeat these steps for every lower case MAC in your DHCP table.
"View List" works like a charm.

So, in conclusion, if the manual DHCP assignment screen ensures MAC addresses are converted to upper case, none of these issues would exist. Also, deletion of a device from the manual DHCP table should also delete it from NVRAM.

I hope this helps everyone. It took me a couple of hours of debugging to work this out.
 
Once I had removed and re-added the MAC-address on the "LAN - DHCP server - Manually Assigned IP" page to match the casing shown on the on the "Network Map - Client status" page, I could give it a name in the client list.

Just thought I'd share my experience for anyone else having this problem.
I'm glad you did! I was having this same problem with my RT-N56U, which indeed turned out to be exactly this. I modified the entry in the table to use all uppercase and I was able to rename the client immediately thereafter.

Thank you for this post!
 

Similar threads

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