내 시나리오는 인터넷을 통하지 않고 LAN을 통해 로컬로 연결된 PC의 MAC 및 IP 주소 를 가져 오는 것이며 ,이 데이터 를 데이터베이스에 저장하고 싶었습니다 .
Google을 검색 한 결과 Javascript를 사용하여 이러한 값을 얻을 수 있음을 알았습니다. 그러나 나는 이것에 대해 누군가가 적절한 해결책을 정교하게 만들 수 있습니까?
아마의 중복 이 .
다음 코드를 시도하여 클라이언트 시스템 의 IP 주소 를 얻을 수 있습니다 .
window.RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection; //compatibility for firefox and chrome
var pc = new RTCPeerConnection({iceServers:[]}), noop = function(){};
pc.createDataChannel(""); //create a bogus data channel
pc.createOffer(pc.setLocalDescription.bind(pc), noop); // create offer and set local description
pc.onicecandidate = function(ice){ //listen for candidate events
if(!ice || !ice.candidate || !ice.candidate.candidate) return;
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];
console.log('my IP: ', myIP);
pc.onicecandidate = noop;
};
대한 있지만 MAC 주소 나는 확신 당신이 becuase 웹 응용 프로그램에서 자바 스크립트를 사용하여 할 수있는 아니다 MAC 주소 는 보안 문제가 될 수 있도록 유일하게 클라이언트 컴퓨터를 식별합니다.
이제 응용 프로그램에서 클라이언트 컴퓨터를 고유하게 식별하는 고유 식별자를 사용하려면 암호화를 수행하고 클라이언트 쿠키를 사용하여 값을 저장할 수 있습니다.
MAC 주소는 IE 에서만 액세스 할 수 있으며 사용자가 다음을 통해 플러그인 실행을 허용 한 경우에만
function networkInfo(){
var wmi = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = wmi.ConnectServer(".");
e = new Enumerator(service.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True"));
for(; !e.atEnd(); e.moveNext()) {
var s = e.item();
var macAddress = unescape(s.MACAddress);
}
return macAddress;
}
출처 : - 자바 스크립트의 MAC 주소는 - 어떻게 자바 스크립트를 사용하여 클라이언트 MAC 주소를 얻으려면? - 당신은 사용자 로컬 LAN IP 주소를 통해 자바 스크립트를받을 수 있습니까?
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다