
UNIX Cafe 第115回
イントロダクション
窓の外では、季節外れの強い風が街路樹を揺らしている。
ターミナルに流れるログを眺めていると、ふと1969年のあの不穏なギターのイントロが頭をよぎる。The Rolling Stonesの『Gimme Shelter』だ。
“Oh, a storm is threat’ning my very life today
If I don’t get some shelter, oh yeah, I’m gonna fade away”
(嵐が俺の命を脅かしている。避難所(シェルター)を見つけなきゃ、消えちまうぜ)
サイバー空間の嵐も、それと同じで、18.141.144.214 や 45.91.20.125 といった無機質なIPアドレスの群れは、こちらの設定ミスという「雨漏り」を探して、休むことなくノックを続けてくる。 僕らUNIX ユーザーにとって、POSIXという規約に基づいたネットワーク設定は、まさにこの嵐から身を守るための「シェルターの設計図」なんだ。
70’s Radio ON AIR
☠️ Track Title: Gimme Shelter
32個のトグルスイッチという真実
僕らがふだん目にしている 45.91.20.125 という表記。これは、人間が読みやすいように10進数で書かれた「親切な翻訳」に過ぎない。
コンピュータの視点に立てば、IPアドレスの本体は 32個の「0と1」のスイッチ(ビット) が並んだ列だ。このスイッチの組み合わせが、インターネット上の膨大な住所を一つ一つ識別している。
なぜ、IPアドレスの最後の一区切り(オクテット)は 255 までなのか? それは、1つのブロックに
8 bits
という枠が割り当てられているからだ。スイッチが1つ増えるごとに、作れるパターンの数は「2倍」ずつ増えていく。
28 = 256 パターン
0 から数え始めるから、最大値は 255 になる。この数学的な規約こそが、ネットワークという広大な地図を描くための最小単位なんだ。
スラッシュの後に引く「境界線」
さて、今日の核心は、アドレスの後ろに付いている /24 や /22 という数字だ。 これは「左から何個のスイッチを接着剤で固定し、動かせなくするか」を宣言している。これをCIDR(サイダー)表記と呼ぶ。
ここでの計算は、実は驚くほどシンプルだ。全32ビットから、固定する数を引くだけでいい。
32 (合計) – CIDRの数字 (固定) = 自由なビット数 (ホスト部)
/24 と /22 の決定的な違い
今回、攻撃IPが集中していた 45.91.20.x の一帯を遮断しようとしたとき、僕らはこの境界線をどこに引くか選ぶことになる。
| CIDR表記 | 固定される数 | 自由なビット数 | 遮断できるIPの総数 |
| /24 | 24 bits | 32 – 24 = 8 | 28 = 256 個 |
| /22 | 22 bits | 32 – 22 = 10 | 210= 1024 個} |
注目してほしいのは、/24 から /22 へと「固定」をたった2つ緩めるだけで、自由なビットが2つ増え、遮断される範囲がいきなり 4倍 に膨れ上がることだ。
210 (1024) ÷ 28 (256) = 4
この「指数の跳ね上がり」を知っているかどうかが、プロのエンジニアとアマチュアの分水嶺になる。/22 を選ぶということは、特定の悪意あるボットだけでなく、その近所に住む1000人近い無実のユーザーまでシェルターから閉め出してしまうリスクを負うということなんだ。
規約が担保する「静寂という自由」
僕らは結局、今回の嵐に対して 45.91.20.0/24 という境界線を引くことに決めた。
# 45.91.20.x 系統のスキャンをまとめて遮断
Require not ip 45.91.20.0/24.htaccess に書き込まれたこの一行は、単なる拒否設定ではない。 それは、嵐のエネルギーを論理的に計算し、必要最小限の力で平穏を取り戻すための「知的な盾」だ。
POSIXの規約がこれほどまでに厳格で数学的なのは、その先にこそ「自由」があるからだ。 正しい境界線を引ける者だけが、外で吹き荒れるデジタルの嵐をよそに、UNIX Cafeのカウンターで静かにコーヒーを味わう権利を得る。
ストーンズの曲がフェードアウトし、嵐が去った後のターミナルには、また一つ、静かな「Status 403」のログが刻まれている。

