Gostaria de criar um novo namespace de rede no Linux.
http://www.spinics.net/lists/linux-containers/msg10895.htmlme diz que posso anexar um shell a um namespace existente com ID X executando:
$ chnetns X /bin/sh
Isso funciona bem se o namespace já existir, mas se eu tentar com um namespace inexistente, recebo o seguinte:
$ chnetns 100 /bin/sh
setsocketopt: Invalid argument
Como posso criar o namespace? Estou no Red Hat Linux, V6.1.
Responder1
A resposta é 'ip netns add vnet1'.
ip netns list
ip netns add vnet1
Veja tambémintrodução à rede virtual Linux:blog.scottlowe.org: Introdução aos namespaces de rede Linux,opencloudblog.com: Namespaces de rede Linux brilhantes e mais bonitoseopencloudblog.com: Namespaces de rede Linux brilhantes e ainda mais detalhados com belos diagramas
Links para outras referências para ajudar outras pessoas a começarem a usar namespaces de rede virtual. Veja também tambémArtigo LWN sobre namespaces de rede,Exemplo de rede Open Stack,iproute2,conjunto de patches vrf do linuxRoteamento e encaminhamento virtual para Linux eConceitos de rede OpenStack.
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