2

how can get user Intranet ip in Vue.js?

if I used this method just can got internet IP not got Intranet ip.

<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script>


var ip = returnCitySN["cip"];
console.log(ip);

So how could I do?

I had tried this way, but it can't get anythings.

getUserIP(onNewIP) {
  const MyPeerConnection =
    window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection
  const pc = new MyPeerConnection({
    iceServers: [],
  })
  const noop = () => {}
  const localIPs = {}
  const ipRegex = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/g
  const iterateIP = (ip) => {
    if (!localIPs[ip]) onNewIP(ip)
    localIPs[ip] = true
  }
  pc.createDataChannel('')
  pc.createOffer()
    .then((sdp) => {
      sdp.sdp.split('\n').forEach(function (line) {
        if (!line.includes('candidate')) return
        line.match(ipRegex).forEach(iterateIP)
      })
      pc.setLocalDescription(sdp, noop, noop)
    })
    .catch((reason) => {})
  pc.onicecandidate = (ice) => {
    if (!ice || !ice.candidate || !ice.candidate.candidate || !ice.candidate.candidate.match(ipRegex))
      return
    ice.candidate.candidate.match(ipRegex).forEach(iterateIP)
  }
},

...
this.getUserIP((ip) => {
  this.remoteIp = ip
})
kissu
  • 40,416
  • 14
  • 65
  • 133
Stanley
  • 31
  • 4
  • Does this answer your question? [Can You Get A Users Local LAN IP Address Via JavaScript?](https://stackoverflow.com/questions/20194722/can-you-get-a-users-local-lan-ip-address-via-javascript) – Rafael de Freitas May 31 '21 at 11:59

0 Answers0