5

特定のIPが内部であるかどうか、またはjavascriptのみを使用していないかどうかをどのように確認しますか?

たとえば、192.168.1.1のIPが与えられた場合、スクリプトはこれを検証し、これが内部IPか外部IPかを警告する必要があります。

4

4 に答える 4

13

プライベートを意味する場合は、次のいずれかの範囲にあることを確認してください。

プライベートIPアドレスの範囲

使用可能なIPの範囲と量は次のとおりです。

10.0.0.0-10.255.255.255アドレス:16,777,216

172.16.0.0-172.31.255.255アドレス:1,048,576

192.168.0.0-192.168.255.255アドレス:65,536

このような機能が役立つはずです:

function isPrivateIP(ip) {
   var parts = ip.split('.');
   return parts[0] === '10' || 
      (parts[0] === '172' && (parseInt(parts[1], 10) >= 16 && parseInt(parts[1], 10) <= 31)) || 
      (parts[0] === '192' && parts[1] === '168');
}
于 2012-12-20T10:07:26.650 に答える
4

内部 IP は次のとおりです。

10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255

それらの正しい正規表現を書きます。

/10\.\d+\.\d+\.\d+/
/192\.168\.\d+\.\d+/

172.xxx の範囲の正しい正規表現を見つけるのはあなたに任せます。

于 2012-12-20T10:09:23.620 に答える