저는 클라이언트 사용자의 IP를 얻기 위해 오랫동안 http://fw.qq.com/ipaddress를 사용해 왔습니다. 이 방법은 간단하고 빠르며 실용적입니다.
우리가 부르는 방식은 다음과 같습니다.
1 | <script type= "text/javascript" src= "http://fw.qq.com/ipaddress" ></script>
|
로그인 후 복사
사용자 IP와 위치, 메타포를 반환할 수 있습니다.
1 | var IPData = new Array( "220.181.108.85" , "" , "北京市" , "" );
|
로그인 후 복사
이제 IPData[0]를 사용자 IP로 사용할 수 있습니다.
그런데 최근 Tencent에 무슨 일이 일어났는지 모르겠습니다. 이 위치에 오류가 발생하여 "HTTP 500 내부 서버 오류"가 발생했습니다.
js를 사용하여 클라이언트 IP를 얻는 또 다른 방법
최근에는 클라이언트 IP를 얻는 또 다른 방법을 배웠습니다. 이 서비스는 해외 웹사이트에서 제공됩니다.
신청 방법은 다음과 같습니다.
1 2 3 4 5 6 7 8 9 10 | <script language= "JavaScript" >
VIH_BackColor = "palegreen" ;
VIH_ForeColor = "navy" ;
VIH_FontPix = "16" ;
VIH_DisplayFormat = "You are visiting from:
IP Address: %%IP%%
Host: %%HOST%%";
VIH_DisplayOnPage = "yes" ;
</script>
<script language= "JavaScript" src= "http://www.hashemian.com/js/visitorIP.js.php" ></script>
|
로그인 후 복사
귀하의 IP는 다음과 같습니다.
귀하의 방문 주소: IP 주소: 117.87.4.102 호스트: 102.4.87.117.broad.xz.js.dynamic.163data.com.cn
웹페이지에 표시하고 싶지 않고 단지 다른 목적으로 IP를 얻으려는 경우에는 VIH_DisplayOnPage = "yes"를 VIH_DisplayOnPage = "no"로 변경해야 합니다. IP 변수는 VIH_HostIP입니다.
호출 방법은 다음과 같습니다.
1 2 3 4 5 6 7 | <script language= "JavaScript" >
VIH_DisplayOnPage = "no" ;
</script>
<script language= "JavaScript" src= "http://scripts.hashemian.com/js/visitorIPHOST.js.php" ></script>
<script language= "JavaScript" >
alert( "你的IP是:" + VIH_HostIP);
</script>
|
로그인 후 복사
클라이언트 IP와 MAC 주소를 얻기 위한 JavaScript를 소개하겠습니다
구입할 수 없는 경우 IE 브라우저를 설정해야 합니다. 구체적인 설정은 다음과 같습니다.
IE 브라우저-도구-보안-사용자 정의 수준-ActiveX의 세 번째 항목을 '안전하지 않은 것으로 표시된 ActiveX 컨트롤 초기화 및 스크립트 실행'을 활성화하도록 설정하고 확인을 클릭한 후 새로 고침하고 다시 로그인하세요!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | <html>
<head>
<meta http-equiv= "Content-Type" content= "text/html; charset=gb2312" >
<title>JavaScript获取客户端IP</title>
<script type= "text/javascript" language= "javascript" >
<!--
function GetLocalIPAddress()
{
var obj = null;
var rslt = "" ;
try
{
obj = new ActiveXObject( "rcbdyctl.Setting" );
rslt = obj.GetIPAddress;
obj = null;
}
catch (e)
{
}
return rslt;
}
function getMac(){
var locator = new ActiveXObject ( "WbemScripting.SWbemLocator" );
var service = locator.ConnectServer( "." );
var properties = service.ExecQuery( "Select * from Win32_NetworkAdapterConfiguration Where IPEnabled =True" );
var e = new Enumerator (properties);
{
var p = e.item();
var mac = p.MACAddress;
return mac
}
}
function init () {
var ip = GetLocalIPAddress();
var mac = getMac();
fm.clientIP.value = ip;
fm.clientMAC.value = mac;
}
</script>
</head>
<body onload= "init();" >
<form name = 'fm' >
通过JavaScript获取的IP信息:<input type = 'text' name = 'clientIP' ><br>
通过JavaScript获取的MAC信息:<input type= 'text' name = 'clientMAC' >
通过JSP获取的IP信息:<%= request.getRemoteAddr() %>
</form>
</body>
</html>
|
로그인 후 복사