I know that we can get the MAC address of a user via IE (ActiveX objects).
Is there a way to obtain a user's MAC address using JavaScript?
This question is related to
javascript
mac-address
i was looking for the same problem and stumbled upon the following code.
How to get Client MAC address(Web):
To get the client MAC address only way we can rely on JavaScript and Active X control of Microsoft.It is only work in IE if Active X enable for IE. As the ActiveXObject is not available with the Firefox, its not working with the firefox and is working fine in IE.
This script is for IE only:
function showMacAddress() {_x000D_
var obj = new ActiveXObject("WbemScripting.SWbemLocator");_x000D_
var s = obj.ConnectServer(".");_x000D_
var properties = s.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration");_x000D_
var e = new Enumerator(properties);_x000D_
var output;_x000D_
output = '<table border="0" cellPadding="5px" cellSpacing="1px" bgColor="#CCCCCC">';_x000D_
output = output + '<tr bgColor="#EAEAEA"><td>Caption</td><td>MACAddress</td></tr>';_x000D_
while (!e.atEnd()) {_x000D_
e.moveNext();_x000D_
var p = e.item();_x000D_
if (!p) continue;_x000D_
output = output + '<tr bgColor="#FFFFFF">';_x000D_
output = output + '<td>' + p.Caption; +'</td>';_x000D_
output = output + '<td>' + p.MACAddress + '</td>';_x000D_
output = output + '</tr>';_x000D_
}_x000D_
output = output + '</table>';_x000D_
document.getElementById("box").innerHTML = output;_x000D_
}_x000D_
_x000D_
showMacAddress();
_x000D_
<div id='box'></div>
_x000D_
The quick and simple answer is No.
Javascript is quite a high level language and does not have access to this sort of information.
If this is for an intranet application and all of the clients use DHCP, you can query the DHCP server for the MAC address for a given IP address.
No you cannot get the MAC address in JavaScript, mainly because the MAC address uniquely identifies the running computer so it would be a security vulnerability.
Now if all you need is a unique identifier, I suggest you create one yourself using some cryptographic algorithm and store it in a cookie.
If you really need to know the MAC address of the computer AND you are developing for internal applications, then I suggest you use an external component to do that: ActiveX for IE, XPCOM for Firefox (installed as an extension).
Nope. The reason ActiveX can do it is because ActiveX is a little application that runs on the client's machine.
I would imagine access to such information via JavaScript would be a security vulnerability.
Source: Stackoverflow.com