diff options
author | Oyvind Bakksjo <bakksjo@yahoo-inc.com> | 2016-06-24 11:29:31 +0200 |
---|---|---|
committer | Oyvind Bakksjo <bakksjo@yahoo-inc.com> | 2016-06-27 12:44:09 +0200 |
commit | 8fca98c2564ad843035e4b3c4ff7f6541f1431b9 (patch) | |
tree | 6e635317680cc35aa1e130f375560473b9bff99e /node-admin/scripts | |
parent | 51b1b190f780641f966a7f1f6b72b7a91ff72296 (diff) |
Factor out function to move network interface (name/namespace).
Diffstat (limited to 'node-admin/scripts')
-rwxr-xr-x | node-admin/scripts/configure-container-networking.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/node-admin/scripts/configure-container-networking.py b/node-admin/scripts/configure-container-networking.py index b53e8065ebf..19ec99ee3c5 100755 --- a/node-admin/scripts/configure-container-networking.py +++ b/node-admin/scripts/configure-container-networking.py @@ -162,6 +162,13 @@ def create_interface_in_namespace(network_namespace, ip_address_textual, interfa index_of_created_interface = network_namespace.link_lookup(ifname=interface_name)[0] return index_of_created_interface +def move_interface(src_interface_index, dest_namespace_pid, dest_interface_name): + ipr.link('set', + index=src_interface_index, + net_ns_fd=str(dest_namespace_pid), + ifname=dest_interface_name) + + flag_local_mode = "--local" local_mode = flag_local_mode in sys.argv if local_mode: @@ -227,8 +234,9 @@ if not container_ns.link_lookup(ifname=container_interface_name): # Move interface from host namespace to container namespace, and change name from temporary name. # exploit that node_admin docker container shares net namespace with host: - ipr.link('set', index=interface_index, net_ns_fd=str(container_pid), - ifname=container_interface_name) + move_interface(src_interface_index=interface_index, + dest_namespace_pid=container_pid, + dest_interface_name=container_interface_name) # Find index of interface now in container namespace. |