How to get Computer Name and IP address by Jquery or JS

Viewed 44207

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

7 Answers

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

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;
    }
};

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;
}
Related