code.fastix.org

Dateiansicht:

Datei:Projekte -> Javascript: Lokale IP (IP im lokalen Netz) im Browser anzeigen -> lokaleIP.html
md5:7991fd22ba35c085846661105144f803
sha1:02aa7de849406c4f3467a631cfd7f16b842b1a92
Download-Link:Download
  1. <!DOCTYPE html>
  2. <html lang="de">
  3.         <head>
  4.                 <meta charset="utf-8">
  5.                 <title>Lokale IP</title>
  6.         </head>
  7.         <body>
  8.                 <h1>Lokale IP (IP im lokalen Netz) im Browser anzeigen</h1>
  9.                 <div style="border: .3rem red solid; padding: .5rem">
  10.                 <h2>Bitte beachten Sie!</h2>
  11.                 <p>Die hier angezeigten <strong>Daten werden nicht zum Server gesendet und also von mir auch nicht verarbeitet oder gar gespeichert</strong>. Theretisch wäre das möglich, was ich als Problem ansehe, weil sich ein Angreifer so für ihn relevante Informationen verschaffen könnte.</p>
  12.                 </div>
  13.                 <h2>Ihre lokale IP-Adresse:</h2>
  14.                 <noscript>Diese Funktion benötigt aktiviertes Javascript.</noscript>
  15.                 <p><output id="locIP">Unbekannt</output></p>
  16.  
  17.                 <script>
  18. function checkLocal() {
  19.         window.RTCPeerConnection = window.RTCPeerConnection
  20.         || window.mozRTCPeerConnection
  21.         || window.webkitRTCPeerConnection;   //compatibility for firefox and chrome
  22.  
  23.         var pc = new RTCPeerConnection( { iceServers: [] } ), noop = function () { };
  24.         pc.createDataChannel("");    //create a bogus data channel
  25.         pc.createOffer(pc.setLocalDescription.bind(pc), noop);    // create offer and set local description
  26.    
  27.         pc.onicecandidate = function (ice) {  //listen for candidate events
  28.  
  29.                 if (!ice || !ice.candidate || !ice.candidate.candidate) {
  30.                         return;
  31.                 }
  32.  
  33.                 var myIP = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/.exec( ice.candidate.candidate )[1];
  34.                 document.getElementById('locIP').innerHTML = myIP;
  35.  
  36.                 pc.onicecandidate = noop;
  37.         };
  38. }
  39. checkLocal();
  40.  
  41.                 </script>
  42.         </body>
  43. </html>
  44.