4

同じサブネットに属する 2 つのネットワーク名前空間があるとします。このコンテキストでは、同じ IP アドレスを意味しますが、到達するために必要なルートが異なります。

ip netns add myns1 
ip netns add myns2

また、Java プログラムは Linux グローバル名前空間で実行されており、Java から Linux 名前空間を使用して接続するにはどうすればよいですか?

Socket s = new Socket(ip, port);
// the following allows to pass which name space to select...
Socket nameSpace Socket = new SocketWithNameSpace(ip,port,namespace);

Linux 名前空間を渡す API はありますか、またはこれを実現するネイティブの既存のライブラリがあり、Java から呼び出すことができますか?

アップデート:

名前空間を切り替えるために C プログラム内で使用されるNetlink Protocol Library Suite ( http://www.infradead.org/~tgr/libnl/ ) があります。Linux名前空間を切り替えるために、このライブラリを使用するJava APIが存在するかどうかは誰にもわかりません。

ポインター、ヘルプ、または詳細情報は大歓迎です!

タンク、

バベシュ

4

0 に答える 0