Linux で新しいネットワーク名前空間を作成する

Linux で新しいネットワーク名前空間を作成する

Linux 上に新しいネットワーク名前空間を作成したいと思います。

http://www.spinics.net/lists/linux-containers/msg10895.html次のコマンドを実行すると、ID X を持つ既存の名前空間にシェルをアタッチできることがわかります。

$ chnetns X /bin/sh

名前空間がすでに存在する場合は正常に動作しますが、存在しない名前空間で試すと、次のようになります。

$ chnetns 100 /bin/sh
setsocketopt: Invalid argument

名前空間を作成するにはどうすればいいですか? Red Hat Linux、V6.1 を使用しています。

答え1

答えは「ip netns add vnet1」です。

ip netns list
ip netns add vnet1

参照Linux 仮想ネットワーク入門:blog.scottlowe.org: Linux ネットワーク名前空間の紹介opencloudblog.com: Linux ネットワーク名前空間がさらに美しく輝きを増すそしてopencloudblog.com: Linux ネットワーク名前空間が美しく、さらに詳細になり、美しい図表も追加されました

仮想ネットワーク名前空間を使い始めるのに役立つ他の参考資料へのリンク。ネットワーク名前空間に関する LWN の記事オープンスタックネットワーキングの例iproute2Linux VRF パッチセットLinux向け仮想ルーティングおよび転送、およびOpenStack ネットワークの概念

マンIPネットワーク

NAME
   ip-netns - process network namespace management

SYNOPSIS
   ip [ OPTIONS ] netns  { COMMAND | help }

   ip netns { list }

   ip netns { add | delete } NETNSNAME

   ip netns identify PID

   ip netns pids NETNSNAME

   ip netns exec NETNSNAME command ...

   ip netns monitor

関連情報