How to get IP address and MAC address of client in java | Code Factory

public String getClientIPAddress(HttpServletRequest request) { 
if (request.getHeader("x-forwarded-for") == null) {
return request.getRemoteAddr();
return request.getHeader("x-forwarded-for");
public String getClientMACAddress(String clientIp){ 
String str = "";
String macAddress = "";
try {
Process p = Runtime.getRuntime().exec("nbtstat -A " + clientIp);
InputStreamReader ir = new InputStreamReader(p.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
for (int i = 1; i <100; i++) {
str = input.readLine();
if (str != null) {
if (str.indexOf("MAC Address") > 1) {
macAddress = str.substring(str.indexOf("MAC Address") + 14, str.length());
} catch (IOException e) {
return macAddress;




Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Code Factory

Code Factory

More from Medium

First Step to Tune gRPC in Java

You should be making your microservices more scannable, not just readable.

Strategy Pattern — java — get the gist of it in 2 min.

Functional Interfaces in Java