¿Alguien tiene una idea de cómo burlarse de webrtc ip local y pública?
Puedo ver en algunos softwares como multilogin, que le permiten establecer cualquier valor para la IP local y pública.
entonces, ¿hay alguna forma de hacer lo mismo con Javascript o dramaturgo o cualquier otro control de automatización del navegador en C#?
gracias
hasta ahora, hemos intentado usar algunas muestras que encontramos en StackOverflow en javascript como se muestra a continuación, pero no funcionan:
function wrapPeerConnectionEvent(window, eventNameToWrap, wrapper) {if (!window.RTCPeerConnection) {return;}const proto = window.RTCPeerConnection.prototype;const nativeAddEventListener = proto.addEventListener;proto.addEventListener = function(nativeEventName, cb) {if (nativeEventName !== eventNameToWrap) {return nativeAddEventListener.apply(this, arguments);}const wrappedCallback = (e) => {const modifiedEvent = wrapper(e);if (modifiedEvent) {cb(modifiedEvent);}};this._eventMap = this._eventMap || {};this._eventMap[cb] = wrappedCallback;return nativeAddEventListener.apply(this, [nativeEventName,wrappedCallback]);}; const nativeRemoveEventListener = proto.removeEventListener;proto.removeEventListener = function(nativeEventName, cb) {if (nativeEventName !== eventNameToWrap || !this._eventMap|| !this._eventMap[cb]) {return nativeRemoveEventListener.apply(this, arguments);}const unwrappedCb = this._eventMap[cb];delete this._eventMap[cb];return nativeRemoveEventListener.apply(this, [nativeEventName,unwrappedCb]);}; Object.defineProperty(proto, 'on' + eventNameToWrap, {get() {return this['_on' + eventNameToWrap];},set(cb) {if (this['_on' + eventNameToWrap]) {this.removeEventListener(eventNameToWrap,this['_on' + eventNameToWrap]);delete this['_on' + eventNameToWrap];}if (cb) {this.addEventListener(eventNameToWrap,this['_on' + eventNameToWrap] = cb);}},enumerable: true,configurable: true});} wrapPeerConnectionEvent(window, 'icecandidate', (e) => { //console.log(e);if (e.candidate) { const parts = e.candidate.candidate.split(' '); parts[4] = '127.0.0.1'; // replace the local ip with 127.0.0.1 parts[9] = '65.65.0.0'e.candidate.candidate = parts.join(' '); console.log(parts); console.log(e.candidate.candidate);}return e;})