ネットワークアドレス計算

使い方

IPアドレスとサブネットマスクからネットワークアドレスやIPアドレス範囲などを計算するツールです。

(1)IPアドレスを入力します。

(2)サブネットマスクを選択します。

(3)計算ボタンのクリックでネットワークアドレスの計算をします。

サブネットマスクとは

IPアドレスのうちネットワークアドレスとホストアドレスを区別するための数値です。主に、コンピュータが同じLANネットワークにいるのか判断する際に利用されています。表記方法は「255.255.255.0」のような形が一般的ですが「/24」のように表記する場合もあります。

ネットワークアドレスとは

ホスト部のビットが全て「0」のIPアドレスで、ネットワークアドレスが同一のグループは1つの「ネットワーク」として扱われます。

ブロードキャストアドレスとは

ホスト部のビットが全て「1」のIPアドレスで、ネットワークに接続された全てのコンピュータに対して、一斉にデータを送信するために利用されます。

アドレスクラスとは

IPアドレスの値によって、IPアドレスを幾つかのカテゴリに分類したもので、IPアドレスの最上位部分のビット・パターンの値によって、下記に分類されています。

クラスA

・最上位の1bitが「0」なら、そのIPアドレスは「クラスA」で「0.0.0.0~127.255.255.255」が該当します。

クラスB

・最上位の2bitが「10」なら、そのIPアドレスは「クラスB」で「128.0.0.0~191.255.255.255」が該当します。

クラスC

・最上位の3bitが「110」なら、そのIPアドレスは「クラスC」で「192.0.0.0~223.255.255.255」が該当します。

サンプルコード

<?php

$nIp   = ip2long('192.168.0.1');
$nMask = ip2long('255.255.255.0');
$nNetwork   = $nIp & $nMask;
$nBroadcast = $nIp | ~$nMask;

//ネットワークアドレス
var_dump(long2ip($nNetwork));

//ブロードキャストアドレス
var_dump(long2ip($nBroadcast));

?>
							
//ネットワークアドレス
string(11) "192.168.0.0"

//ブロードキャストアドレス
string(13) "192.168.0.255"
							
<?php

/**
 * IPアドレス変換(10進数→2進数)
 * 引数:対象
 * 戻値:結果
 */
function _chgIPDecToBin($p_sValue) {
	$sConvert = false;
	$arrWk    = explode('.', $p_sValue);
	if (count($arrWk) === 4) {
		$sWk = '';
		foreach ($arrWk as $key=>$row) {
			$sWk .= sprintf('%08b', $row);
		}
		$arrWk2 = str_split($sWk, 8);
		$sConvert = implode(' ', $arrWk2);
	}
	return $sConvert;
}

//IPアドレス
var_dump(_chgIPDecToBin('192.168.0.1'));

//サブネットマスク
var_dump(_chgIPDecToBin('255.255.255.0'));

//ネットワークアドレス
var_dump(_chgIPDecToBin('192.168.0.0'));

//ブロードキャストアドレス
var_dump(_chgIPDecToBin('192.168.0.255'));

?>
							
//IPアドレス
string(35) "11000000 10101000 00000000 00000001"

//サブネットマスク
string(35) "11111111 11111111 11111111 00000000"

//ネットワークアドレス
string(35) "11000000 10101000 00000000 00000000"

//ブロードキャストアドレス
string(35) "11000000 10101000 00000000 11111111"
							

最近の投稿