Request to enable setting the nested network namespace

3 messages, 2 authors, 2018-06-26 · open the first message on its own page

Request to enable setting the nested network namespace

From: Pamela Mei <hidden>
Date: 2018-06-14 08:05:38

In linux, set up 2 network namespaces, ns1 and ns2. "ip netns list"
can view the 2 network namespaces.
Move one network device from linux root namespace to ns1 then from ns1
to ns2, then delete ns2,
expect that network device can move back to ns1,
but actual result is that eth1 is back to linux root network
namespace. I'm not sure whether it's as expected.

Here is the detail test steps:

1.ip netns add ns1

2.ip netns add ns2

3.ip link set eth1 netns ns1

4.ip netns exec ns1 ip link set eth1 netns ns2

5.ip netns del ns2

Expected result: eth1 will be in ns1

Actual result: eth1 is back in linux root namespace 1

Question: is there any method to realize such scenario to make sure
device can be back to ns1 not linux root network namespace 1?

How about if there's a function to enable nest network namespace e.g.
can set ns1 as the parent namespace of ns2, then device can return to
ns1 when ns2 is gone.


Cheers,

Pamela MEI

Re: Request to enable setting the nested network namespace

From: Jiri Pirko <jiri@resnulli.us>
Date: 2018-06-14 09:28:56

Thu, Jun 14, 2018 at 10:04:57AM CEST, pamela.mei@gmail.com wrote:
In linux, set up 2 network namespaces, ns1 and ns2. "ip netns list"
can view the 2 network namespaces.
Move one network device from linux root namespace to ns1 then from ns1
to ns2, then delete ns2,
expect that network device can move back to ns1,
but actual result is that eth1 is back to linux root network
namespace. I'm not sure whether it's as expected.

Here is the detail test steps:

1.ip netns add ns1

2.ip netns add ns2

3.ip link set eth1 netns ns1

4.ip netns exec ns1 ip link set eth1 netns ns2

5.ip netns del ns2

Expected result: eth1 will be in ns1

Actual result: eth1 is back in linux root namespace 1

Question: is there any method to realize such scenario to make sure
device can be back to ns1 not linux root network namespace 1?

How about if there's a function to enable nest network namespace e.g.
can set ns1 as the parent namespace of ns2, then device can return to
ns1 when ns2 is gone.
You would have to track the whole history of netns changes for each
netdevice. That does not sound right. Move back to initial netns seems
correct to me.


Cheers,

Pamela MEI

Re: Request to enable setting the nested network namespace

From: Pamela Mei <hidden>
Date: 2018-06-26 09:11:16

I don't mean to track the whole history of netns changes as mandatory.
I mean it's better to have an option to ask user to set the new parent
of the child netns, not only the initial one.
Is there any technical bottle neck on this request?

Cheers,
Pamela MEI

On Thu, Jun 14, 2018 at 5:27 PM, Jiri Pirko [off-list ref] wrote:
Thu, Jun 14, 2018 at 10:04:57AM CEST, pamela.mei@gmail.com wrote:
quoted
In linux, set up 2 network namespaces, ns1 and ns2. "ip netns list"
can view the 2 network namespaces.
Move one network device from linux root namespace to ns1 then from ns1
to ns2, then delete ns2,
expect that network device can move back to ns1,
but actual result is that eth1 is back to linux root network
namespace. I'm not sure whether it's as expected.

Here is the detail test steps:

1.ip netns add ns1

2.ip netns add ns2

3.ip link set eth1 netns ns1

4.ip netns exec ns1 ip link set eth1 netns ns2

5.ip netns del ns2

Expected result: eth1 will be in ns1

Actual result: eth1 is back in linux root namespace 1

Question: is there any method to realize such scenario to make sure
device can be back to ns1 not linux root network namespace 1?

How about if there's a function to enable nest network namespace e.g.
can set ns1 as the parent namespace of ns2, then device can return to
ns1 when ns2 is gone.
You would have to track the whole history of netns changes for each
netdevice. That does not sound right. Move back to initial netns seems
correct to me.

quoted

Cheers,

Pamela MEI
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help