[PHP-users 19853]Re: ネットマスク付きIPアドレスの正当性検査など

Osamu Shigematsu shige @ ravi.ne.jp
2004年 1月 13日 (火) 08:48:33 JST


重松です。こんにちは。

ネットマスクですが、ないものは、/32 でしょう。
だから、整理すると、

(1) xxx.xxx.xxx.xxx/yyy.yyy.yyy.yyy のもの
(2) xxx.xxx.xxx.xxx/n のもの

の 2 パターンですね。

その上で、xxx の部分は、unsinged 8 bit だから、0 -- 255 までの数値、
yyy.yyy.yyy.yyy も同様だが、2 進にしたときに MSB がわから n ビット分
1 が続き、その後に m ビット分 0 が続き、n + m = 32 である、
ということくらいでしょうか。

すなわち、n >= 0 && n <= 32 ということだと思いますが、
現実的に考えると、n == 0 というのはマスクしないという意味なので、
扱いをどうするかは実装しだいだと思います。

あくまでも、私の感想としては、NET_IPv4::parseAddress を
以前見たときに「なんじゃこりゃ」と思いました。
この程度のものをわざわざ PEAR に入れる意味がわかりませんし、
少なくとも私は使おうとも思いません。

わざわざ他人に頼るまでもないことだと思うので、
自分が実装するのが吉と思いますが。
調べるコストのほうが明らかに高いでしょうから。

-- 
Osamu Shigematsu
http://www.ravi.ne.jp/%7eshige/



PHP-users メーリングリストの案内