3

How to get Computer Name and IP address by jquery or JS ?

7 Answers7

3

I found this code snippet that actually worked for me

var RTCPeerConnection = /*window.RTCPeerConnection ||*/    
     window.webkitRTCPeerConnection || window.mozRTCPeerConnection;
    
 if (RTCPeerConnection) (function () {    
     var rtc = new RTCPeerConnection({ iceServers: [] });
     if (1 || window.mozRTCPeerConnection) {          
         rtc.createDataChannel('', { reliable: false });    
     };

     rtc.onicecandidate = function (evt) {    
         if (evt.candidate)
             grepSDP("a=" + evt.candidate.candidate);
     };

     rtc.createOffer(function (offerDesc) {    
         grepSDP(offerDesc.sdp);
         rtc.setLocalDescription(offerDesc);
     }, function (e) { console.warn("offer failed", e);
     });

     var addrs = Object.create(null);
     addrs["0.0.0.0"] = false;
     function updateDisplay(newAddr) {
         if (newAddr in addrs) return;
         else addrs[newAddr] = true;
         var displayAddrs = Object.keys(addrs).filter(function(k) {
             return addrs[k];
         });
         document.getElementById('list').textContent =
             displayAddrs.join(" or perhaps ") || "n/a";    
     }

     function grepSDP(sdp) {
         var hosts = [];
         sdp.split('\r\n').forEach(function (line) { 
             if (~line.indexOf("a=candidate")) {   
                 var parts = line.split(' '),   
                     addr = parts[4],
                     type = parts[7];
                 if (type === 'host') updateDisplay(addr);
             } else if (~line.indexOf("c=")) {      
                 var parts = line.split(' '),
                     addr = parts[2];
                 updateDisplay(addr);
             }
         });
     }
 })(); else

 {
     document.getElementById('list').innerHTML = "<code>ifconfig| grep inet | grep -v inet6 | cut -d\" \" -f2 | tail -n1</code>";
     document.getElementById('list').nextSibling.textContent = "In Chrome and Firefox your IP should display automatically, by the power of WebRTCskull.";
  }
<div id="list"></div>

And unlike other codes which mostly returns server IP address it return client ip address of machine.Refer this article https://www.c-sharpcorner.com/blogs/getting-client-ip-address-or-local-ip-address-in-javascript

georgeawg
  • 48,608
  • 13
  • 72
  • 95
Shubham
  • 443
  • 2
  • 10
  • On my machine, it returns a random (version 4) [uuid](https://en.wikipedia.org/wiki/Universally_unique_identifier). If it returned the machine name, I would consider it a security flaw. – georgeawg Sep 10 '19 at 21:01
  • @georgeawg me too i think its someting related to security either our PC's are encrypted or some issue with the code – Ahmed amin shahin Oct 16 '21 at 15:16
  • 2023 checking in. On my Chrome this returns random uuids, different every time. – Iain Mar 20 '23 at 02:52
2

To get Computer Name and IP Address using JavaScript,

-- ComputerName

var network = new ActiveXObject('WScript.Network');
    // Show a pop up if it works
    alert(network.computerName);

-- IP Address

$.getJSON("http://jsonip.com/?callback=?", function (data) {
    console.log(data);
    alert(data.ip);
});
Asbar Ali
  • 955
  • 1
  • 13
  • 26
1

You can get IP address by using simple ajax request as:-

let xhttp = new XMLHttpRequest();
xhttp.open("GET", "https://api.ipify.org/?format=json", true);
xhttp.send();
xhttp.onreadystatechange = function () {
    if (this.readyState == 4 && this.status == 200) {
        let ip = JSON.parse(this.responseText).ip;
    }
};
Mansi Teharia
  • 1,037
  • 11
  • 11
1

You can get an IP address by using a simple fetch request as:-

async function getIP(){
    let req = await fetch("https://peerip.glitch.me/");
    let data = await req.json();
    let IP = data.ip;
    return IP;
}
0

If you need these details client side, you could use third party service like https://www.ipify.org/ and make API call to get the details like IP.

For other details, use similar service/services.

But if you are looking this details server side, then it depends what programming language you have used, though on server side this information readily available in HTTP Headers.

Refer similar questions for server side details.

How to get the exact client browser name and version in Spring MVC?

Red Boy
  • 5,429
  • 3
  • 28
  • 41
0

for computer name

<script type="text/javascript">
    var network = new ActiveXObject('WScript.Network');
    alert(network.computerName);
</script>
Mehmet Topçu
  • 1
  • 1
  • 16
  • 31
0

Browser, Operating System, Screen Colors, Screen Resolution, Flash version, and Java Support should all be detectable from JavaScript (and maybe a few more). However, computer name is not possible

MikePappa
  • 48
  • 1
  • 1
  • 11