프로젝트에서 IP 인증을 설정해야 하므로(데이터베이스에 설정된 IP 주소가 있는 네트워크 주소만 인터페이스 주소에 접근할 수 있으며, 그렇지 않으면 이 권한이 없습니다), 더 많은 벤더에 접근해야 하므로 IP 주소가 특정 목적에 속할 수 있습니다. 예를 들어, 어떤 벤더가 127.0.0.1, 127.0.0.2, 127.0.0.3, 127.0.0.4, 127.0.0.5, 127.0.0.6을 가지고 있을 수 있습니다. 우리는 127.0.0.*만 설정하면 접근 권한을 허용할 수 있습니다. 즉, 처음 세 자리만 판단하면 됩니다. 하지만 페이지에서 IP 인증 목록을 만들 때는 IP 주소를 쿼리 조건으로 사용해야 합니다.
인터넷에는 판단할 수 있는 IP 주소가 많지만, 쿼리할 때 127.0.0.* 주소도 입력해야 하는데, 그런 IP 주소는 분명히 IP 주소와 일치하지 않아서, 먼저 페이지의 처음 세 자리만 가로채고 나서 처음 세 자리만 판단할 수 있을지 생각하며 연습을 시작했습니다. 코드는 다음과 같습니다:
- 1.function checkIP()
- 2.{
- 3. var sIPAddress=document.getElementById("ipAddr").value;
- 4. var ipAddr = sIPAddress.substring(0, sIPAddress.lastIndexOf('.')); //截取IP地址中最后一个.前面的数字
- 5.
- 6. var exp=/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
- 7. var reg = ipAddr.match(exp);
- 8. var ErrMsg= "你输入的是一个非法的IP地址段!\nIP段为::xxx.xxx.xxx.xxx(xxx为0-255)\n或xxx.xxx.xxx.*(xxx为0-255)! ";
- 9. if(sIPAddress!=""){
- 10. if(reg==null)
- 11. {
- 12. alert(ErrMsg);
- 13. return false;
- 14. }
- 15. }
- 16. return true;
- 17.}
코드 복사
|