PR
Keyword Search
Calendar
ホームズ探偵さんComments
Freepage List
前回はskypeP2P上に仮想LANについて考えてみた。
そこでは、自分のマシン上に仮想LAN上のマシンのIPをマッピングすることを考えてみたが、
行き先がローカルアドレスのIPパケットがLAN上に出てゆくためには、ARPによるアドレス解決が必要となる。前回はこの点を保留したが、今回はMACアドレスの解決について考えてみる。
案1)
UIにて、適当なMACアドレスを設定する。
この方法だと、自分のLAN上の範囲でMACアドレスが重複しなければいいので適当な値で設定しても実用上まず、衝突することはない。
とはいうものの、ベンダーIDぐらいは調査して、空きとなっている部分を使用すればまず衝突はない。実験用に作るレベルであれば考え方として、最もお手軽な方法である。
案2)
自分のマシン(NIC)のMACアドレスを使用する。
つまり、外のマシンからは同じNICに複数のIPアドレスを割り付けられているように見える。
これは、昔からUNIXでは設定可能となっているので、特に問題はないと思われる。(WindowsでもDHCPを使用しないで固定IPアドレスなら複数の割付が可能。やってみたことはないが。。)
案3)
接続先のマシン(NIX)のMACアドレスを使用する。
当然、A2Aで接続後は情報の交換が可能なのでお互いのMACアドレスの情報を交換することは可能なのでこれも、ありかなと思う。
案4)
そもそも、MACアドレスの管理を自分でしない。
すなわち、ARPパケットも相手マシンまで送ってしまう。(IPアドレスの書き換えは行う。)
案1)~案3)は自分でARPパケットを終端してしまうことが前提であるが、も終端せずに伝送路にのせてしまう。最初に考えたバカHUBのようであるが、IPアドレス部の書き換えを行うので自分のマシンからは、仮想マシンのIP-MACの組が見えて、相手のマシンからは相手のマシンのLAN上の仮想マシンとしてみえるハズである。
欠点は時間がかかること。通常のタイムアウトに引っかかるかどうかはやってみないとわからないですね。
現実問題としては、案4)を試してだめなら案3)かな。。たぶんプログラミング量も、案1>案2、案3>案4と思われる。
OrangeMakerホームページ
http://www4.ocn.ne.jp/~dragonoo/
skypeどこへゆ 2009.09.02
skypeネットワーク 2009.07.23
skype コネクションが10本 2009.07.13