How to get client MAC address by a access on a website?
Asked Answered
T

4

34

I have my website, and it records the number of visitors, IP and time of access...

I want to identify each visitor... I think that this was possible recording IP Address... but when the IP is dynamic, my system fails. So I think that I can solve it recording MAC address... is possible? What language should use? PHP, ASP, Javascript?

Thanks

Edit: What I can use to identify each user without having login information (username & pwd).

Teetotum answered 11/8, 2010 at 2:29 Comment(3)
Impossible to get MAC addressHelmuth
Regarding your edit: That should be a new question.Tambac
Look up how to use cookies, every web service language should support them. Cookies will be tied to an individual machine--even on a dynamic ip.Quickie
A
55

The MAC address, by TCP/IP standards, is never communicated outside of the local-area network to which it pertains — routers beyond that LAN don't even get the information you're trying to record.

There are many other ways to try and identify unique visitors, including matching the user-agent's details in addition to the IP, serving cookies as part of your response, etc… it is, after all, a core functionality in the field of "web analytics".

MAC addresses are simply not part of the gamut of techniques that it makes sense to utilize for it!

Afresh answered 11/8, 2010 at 2:39 Comment(4)
Please tel me how i can get clients ip address?Saltation
i tried with $_SERVER['REMOTE_ADDR'] but it returns loop back ip on local and on live it returns an ip which is same, i loged in from any machineSaltation
i also tried $_SERVER['HTTP_CLIENT_IP'] ,$_SERVER['HTTP_X_FORWARDED_FOR'] , but no solutionSaltation
@Engr - This is probably what you're looking for: #1635282Shoemaker
R
7

It is only possible if you use a technique where you install a "native" app on the client machine. For example, an activeX component, java applet or a client application. Then that application, once installed can get the MAC and then call to your web server with the MAC as an argument. In other words, you have to build your own front end "browser" to handle logging in. Then once the user is logged in, you can launch the app in the default browser.

It would be nice if future browsers allowed users to give permission to specific sites to access the MAC. Then if a site had a button that said "Register this device" the web application could do so without needing an additional native app installed (after all, the browser IS a native app).

Randee answered 6/11, 2012 at 17:51 Comment(1)
I disagree with the "It would be nice..." - MACs can be spoofed easily and would provide no real security.Unwilling
O
5

Can't you just have them store a cookie, so that when they come back they can be uniquely identified? No username/password requirement.

http://en.wikipedia.org/wiki/HTTP_cookie

Omophagia answered 11/8, 2010 at 3:24 Comment(4)
But cookie isn't reliable... isn't it?Pericarp
@Pericarp Kind of, but what is really completely reliable in the internet? I did change my computer's MAC address to gain more data, it was in a library and they only allow every user to transfer 200MB data through the wifi. You are right, cookie isn't reliable, but in some situations, it's acceptable.Godhead
So that doesn't solves the problem to get client MAC address :)Pericarp
The consistency of cookies may hugely vary based upon the use case and relies upon the fact that if the client is interested in respecting it or not. e.g. If I want to breach the limit SLA via concurrently requesting from my terminalGina
G
4

Sorry but sending MAC address isn't part of the HTTP. However, you can use cookie to identify different users. Any backend language will do (add cookie in the server side). You can set the cookie in the client side using JavaScript too.

Godhead answered 24/8, 2017 at 11:54 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.