Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Hardware address client

Posted on 2010-09-03
4
Medium Priority
?
459 Views
Last Modified: 2013-11-23
If we all are in the same network then why cannot we get the MAC address of the client ?. NetworkInterface.getHardwareAddress gives the machine hardware address not the client which connects to the server. Anyone with any suggestions ?
0
Comment
Question by:Micheal_Male
  • 2
4 Comments
 
LVL 12

Expert Comment

by:geowrian
ID: 33602120
Even if you are on the same physical network, network policies and/or routing across subnets can make this (practically) impossible. As far as I'm aware, there is no "reliable" way to retrieve the MAC address of a remote network device short of having a way to send a command to a process running on the remote PC, or implementing discovery calls to the switch (i.e. via CDP for Cisco switches).

If within the same subnet and barring any network policies or configuration preventing it, you may be able to lookup the IP of the remote PC in the ARP table, then grab the MAC address from that. However, this is not guaranteed to work, and may actually give wrong information (i.e. if switching or routing is performed it may return the MAC of the switch/router).

http://my-addr.com/i/determine_mac_address_from_ip/lookup-ping-search/howto_find_remote_mac_address.php
0
 

Author Comment

by:Micheal_Male
ID: 33602136
Good article. That gives me an idea that it is impossible to get the MAC address of the client in java even it is connected on the same network. The only way is to run the Process Runtime.exec() command and give arp as a parameter and then compare the client ip with the ip we got from running the arp command in java and then parse the mac address.
0
 
LVL 2

Accepted Solution

by:
chataros earned 750 total points
ID: 33609477
also if you're running on windows you can run the "nbtstat -A/a server name/IP " command and parse the output

EX:
nbtstat -a NAME
nbtstat -A IP

0
 

Author Closing Comment

by:Micheal_Male
ID: 33610341
Thank you
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

For beginner Java programmers or at least those new to the Eclipse IDE, the following tutorial will show some (four) ways in which you can import your Java projects to your Eclipse workbench. Introduction While learning Java can be done with…
Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
Suggested Courses

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question