Why so hard to give friendly name to a client?

In most Routers/Firewalls/HotSpots I have used, there is some very simple & consistent method of giving a friendly/memorable name to a client, which is used throughout the interface. Usually it works by treating the ‘Hostname’ field as a multi-purpose field that would contain in the worst case a Mac Address (if the client does not set a host name), otherwise the HostName , but where the field contents can be overwritten with a friendly name identifying the host in a language I understand a little better than hexadecimal…

As a RouterOS newbie I really struggle with the lack of a consistent approach to this - for example in DHCP Server I can add a ‘Comment’ to give a friendly name to a client, but that comment remains local to only the DHCP window - if I navigte to ‘Kid Control’ I lose my DHCP assigned comment, but here, (in Kid Control) instead of ‘Active Hostname’ I have ‘Name’ - and here I can override that name into a friendly name (which will not appear anywhere else in RouterOS…)

If I open My Mikrotik Home app and navigate to ‘Clients’, I see a MAC address if the client did not supply a Hostname - and again here I need to navigate to ‘Edit device Details’, and rename the device with my friendly name…

Open Dude Server… Here we go again - no friendly name, and another need to rename the client.

…and so on… I actually found myself writing down MAC addresses with a pen and paper… and I can barely read my own writing…

If RouterOS can’t be consistent about this, at least it would be helpful if ‘DCHP Client Comment’ could be ‘Global’ - and an available column anywhere I see the MAC address assoicated with that client, seen EVERYWHERE in all RouterOS windows, apps etc.

Your DNS server is responsible for providing that name, I would think ?
IP / DNS / Static would be the place to look IF your router is also acting as your DNS server.

DNS only applies to IP, there is no equivalent database/mapping for name to MAC address.

The hostname which appears in the DHCP server leases list is provided by the client in the DHCP request, so may be anything and is not guaranteed to be unique.

With iOS15 came the Private Wi-Fi Address feature that uses different MAC-address for every Wi-Fi network, AND also doesn’t send device’s name to DHCP-server anymore. So. it’s much harder now to keep eye on new devices in DHCP-Server → Leases. And if you switch off Private Wi-Fi Address feature in Settings → Wi-Fi → networkname (to see device’s name again in DHCP-server), then this network will have a text “Privacy Warning” under the network’s name in Wi-Fi netoworks list. User won’t like it and will switchi Private Wi-Fi Address on again.

Thanks, but none of those responses really get close to the core issue. This is a home network but with many (60+) Devices. All mobile devices have been set to use hardware MAC, and all devices have Static DCHP Leases. I have even gone one step further, with a script that sends me an Email every time an unknown device receives an IP Address: (DHCP Server → DHCP → Scripts)

# Based on http://forum.mikrotik.com/t/get-alert-by-email-on-new-device/134486/1

:local recipient "email@address.com"
/ip dhcp-server lease
:if (($leaseBound=1) && ([/ip dhcp-server lease find where dynamic mac-address=$leaseActMAC]!="")) do {
	:do {
		:tool e-mail send to=$recipient subject="DHCP Address Alert [MAC: $leaseActMAC]" body="The following device received an Dynamic IP address:
		Mac: $leaseActMAC
		Ip: $leaseActIP,
		Host: $lease-hostname,
		Bound: $leaseBound"
		:log info "Sent Dynamic IP alert for MAC $leaseActMAC, $leaseActIP, $lease-hostname"
	} on-error={:log error "Failed to send alert email to $recipient"}
}}

…so I have very good control over what is on my network, and I have added a ‘Comment’ identifying each device - but the only place I can make use of that comment is on the ‘DHCP Server’ → ‘Leases’ Tab. Anywhere else, and I am back to the lottery of IP Addresses, MAC Addresses, & Host Names (if the device was kind enough to provide a host name) I have no way to reliably see the clients with a ‘friendly name’ across the entire Mikrotik experience. There are different methods per app and per window to ‘name’ a client - and none of those methods are consistently used across the various interfaces.

Compare that for example to my TP Link Omada Controller - I simply click ‘Name’ (A name which has been derived from the client Host Name if supplied, or the MAC Address) then rename it to whatever I want. Now that friendly name is seen wherever I see that client across the entire interface, alongside MAC Address and IP Address.

I do not believe there is currently any RouterOS equivalent method of giving a client a ‘friendly name’ that is used globally across all windows and apps.

I’d imagine not, but several workarounds.

Since you have static DHCP lease entries, you can use the “address-list” option as the unique name field. It populate IP>Firewall>Address List with the same with IP address (but no MAC there)., but you’d have at least a list of names (and then use those names in firewall rules to restrict to the user level using a friendly name). The “Address List” can be used as column in winbox to proximate a name. Only side-effect is you have a few unused Address Lists in IP>Firewall>AddressLists.

Alternatively you could try new User Manager in V7 at somepoint, and then use RADIUS to auth your users. A bit overkill for a typical home, but your whitelisting your clients already, 60 devices, etc… That give you even more ability to set a “name”, and likely add another measure of control.

This is what I am looking for - a global ‘MAC address → friendly name’ label that can be seen wherever that MAC Address is displayed.


Thanks - this is useful, I have added the ‘Address List’ column to DHCP Server, but guess what, you can’t add it anywhere else, like Kid Control, Mikrotik Home App, and it is not visible in log entries, etc. I guess there is simply an acceptance in the RouterOS community that you must take multiple additional steps to translate an IP Address / MAC Address back into an understandable “Johns Mobile” or “The PC in the Conference Room


But would that name be visible everywhere I see the corresponding IP/MAC? I suspect not…

Fully agree

As i am a newbie it took for me at least an hour to figure out which MAC address / IP i need to block under KID control. Generally since i have like 20 devices connected it is difficult to track under different Router OS functions (DHCP Pool,etc.) the devices as there is no global “friendly name” possibility to add. And what seemed to be strange that i.e mobile phone internal MAC address after connecting to router was getting a different MAC… my only option to recognize what is what was to switch OFF/ON devices and look for what disappears/pops up in the list of connected devices.

Hope to have this centralized in some future update.

No, this is exactly how things are designed to work.
It does not depend on MikroTik.

Excellent request, I submitted it as an idea for consideration at the MT support site.

It is true that MikroTik is a bit lacking in this, in other home routers there is an integration between DHCP and DNS, so any device getting an address via DHCP will automatically get a DNS forward and reverse entry with e.g. the name hostname.local (when you are lucky you can configure the .local part to something else).
It is possible to do this with MikroTik routers, but it requires scripting. And that is a bit hard to do for the newbie user, unless they can find some good-quality ready-made script to do it.
It could be a solution when MikroTik provides ready scripts for such purposes so you only need to connect them to the DHCP service.

Also, some home routers have an internal MAC address to name table, not as a DNS service, but as part of the DHCP service (similar to DHCP static entries in RouterOS) and refer to devices under this name everwhere in the user interface. RouterOS does not offer that, and it is hard to add that using scripts as you cannot add a custom column to data tables. It would have to be done via comments, and dynamic entries (like Kid Control devices that have been automatically found) cannot have comments.

Someone should be asked to (re)do this script… :unamused:

Joke apart, is impossible to have it: empty hosts or duplicate names…
Real examples of duplicate device names among different MAC:
Redmi7A-Redmi-A
Galaxy-A6
Galaxy-A3-2017
C530-IP
and other problems…
like number at the start:
16173WL82191696

It is not guaranteed that the name is unique (e.g. you may have multiple Galaxy-A6 names) but it can be solved by adding some suffix when it is a duplicate.
At least when you see a Galaxy-A6 and a Galaxy-A6-97-8a-03 (say those are the last 3 bytes of the MAC) you know that these are the kids’ telephones, and you do not have to look at all the other devices when you want to restrict them.
And as said, some other home routers do have this. It isn’t impossible.

One could claim that MikroTik isn’t a home router, and in the past that was true, but several recent additions (both the RouterOS and the product line) show that MikroTik’s intention is to take a part of that market.
So it could be useful to add this kind of features.

But first fix BGP!

BGP, boring geek problem? Big Giant Pita?
I like the idea of the name thingy first LOL…

BGP
Best Gateway Protocol :laughing:

Isn’t the answer to this to set the Hostname on the client?

“Active Hostname” means the hostname that the client is announcing for itself.

Kid Control is based on MAC address for a reason, everything else is just ‘fluff’ to help you see things a bit easier..

If you need to write your hostname and MAC address down to keep track of them, arrange your Winbox windows to keep your DHCP server comments visible or just copy and paste into notepad..

since when does one have control over hostname? The admin has control over the router only, not the settings on the devices.

Except that for many devices, you have no control over that - Especially IoT devices. For example:
Of my five Amazon Echo devices, one shows a Host Name of “amazon-” followed by 9 hex digits that are not the MAC. The other four have no Host Name.
Of my four Techin outlets, they all have a Host Name of “ESP_” followed by the last 6 digits of the MAC.
Of my four Wyze outdoor switches, all four have a Host Name of “Wyze Outdoor Plug”
Of my 14 currently connected Wyze V2 cameras, none have a Host Name
Of my 13 currently connected Wyze V3 cameras, all have a Host Name of “WyzeCam”
My Garmin GPS has a Host Name of “rogue”
My one window air conditioner that has WiFi does not show a Host Name.

Most of the computers, and phones have a Host Name that reflects what is configured in the device.
This is all reported on the DHCP server leases listing of my RB4011 router.

Oh…
My Garmin DriveSmart76 is called… “koala”!!! :open_mouth:

Mine is a DriveSmart65. I do like the GPS and the ability to update it via WiFi. It's fast enough that by the time I back into driveway, the GPS has connected to the WiFi, connected to my NTP server (not sure why a GPS needs to check in with an NTP server), and it has checked in with the Garmin servers to determine if there is an update.