IP空間飛び地実験(IPアドレスの飛び地を作る)
〜プライベートセグメントにグローバル空間を置く〜

最終更新日:14/11/25 JST


1.アドレスの空間異なるセグメントにIPアドレス的な飛び地を作るとは?

下図のようにプライベートアドレスセグメント(192.168.0.0/24)にグローバルアドレスを与えた計算機(hostA,hostB)を設置する。
アドレス空間的に見ればプライベートアドレス側にグローバルアドレス(202.224.193.28,202.224.193.27)があたかも飛び地のように存在する。
ここからInternetにアクセス出来るようにするのが本目的である。

以前はOpenBSD側でdc0とrl0をブリッジ構成してしていたがプライベート側に不要なパケットまで流入するのでセキュリティを確保するためにフィルタルールを大量に書かねばならなった。
これが意外に手間。限定出来れば労力が少くて済む。

[ブロック図]

2.手段および前提条件

「IP空間飛び地」を実現するためにProxy ARPを使ってプライベート側にグローバルIPのパケットを飛ばす。
具体的には OpenBlockS266(以下OBS266)にてパケットの中継をする。
本来はOpenBSDでやりたかったのだがLinuxのarpのようにインターフェイス毎に設定出来なかったのでBSDのarpよりキメ細かい設定が出来るLinuxを使った。

また、OBS266のEthernet-I/Fは以下のようになっているものとする。
eth1 IP 202.224.193.30	MAC 00:0A:85:01:88:77 
eth0 IP 192.168.0.9	MAC 00:0A:85:01:08:77

3.設定

4.プライベート側に設置されたグローバル計算機の設定

グローバル空間側に設置してあった時と全く同じで良い。
例えば202.224.193.28上においてはデフォルト経路を202.224.193.25に向ける設定をするだけで良い。
基本的にそれ以上の設定は不要。
あとはOBS266が良きにはからってくれる。
プライベート側にいながらグローバル側にあるのと同じ感覚で操作が可能。

5.考察


Copyright(C)2005,Shinichi KAYANUMA/STEEL Communications AllRightsReserved.
E-mail:shin@steel-communications.net