iproute2/ip
Eric W. Biederman 0dc34c7713 iproute2: Add processless network namespace support
The goal of this code change is to implement a mechanism such that it is
simple to work with a kernel that is using multiple network namespaces
at once.

This comes in handy for interacting with vpns where there may be rfc1918
address overlaps, and different policies default routes, name servers
and the like.

Configuration specific to a network namespace that would ordinarily be
stored under /etc/ is stored under /etc/netns/<name>.  For example if
the dns server configuration is different for your vpn you would create
a file /etc/netns/myvpn/resolv.conf.

File descriptors that can be used to manipulate a network namespace can
be created by opening /var/run/netns/<NAME>.

This adds the following commands to iproute.
ip netns add NAME
ip netns delete NAME
ip netns monitor
ip netns list
ip netns exec NAME cmd ....
ip link set DEV netns NAME

ip netns exec exists to cater the vast majority of programs that only
know how to operate in a single network namespace.  ip netns exec
changes the default network namespace, creates a new mount namespace,
remounts /sys and bind mounts netns specific configuration files to
their standard locations.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
2011-07-13 09:48:26 -07:00
..
.gitignore Another .gitignore file. 2006-08-08 12:11:23 -07:00
Makefile iproute2: Add processless network namespace support 2011-07-13 09:48:26 -07:00
ifcfg Remove trailing whitespace 2006-12-05 10:10:22 -08:00
ip.c iproute2: Add processless network namespace support 2011-07-13 09:48:26 -07:00
ip6tunnel.c Add checks for fgets() when reading proc 2011-04-12 14:23:17 -07:00
ip_common.h iproute2: Add processless network namespace support 2011-07-13 09:48:26 -07:00
ipaddress.c ip: Support IFLA_TXQLEN in ip link command 2011-05-12 08:55:49 -07:00
ipaddrlabel.c ip: addrlabel fix set never used warning 2011-06-20 14:33:55 -07:00
iplink.c iproute2: Add processless network namespace support 2011-07-13 09:48:26 -07:00
iplink_can.c iproute2: netlink support for bus-error reporting and counters 2010-03-03 16:45:10 -08:00
iplink_macvlan.c macvlan/macvtap: support 'passthru' mode 2011-03-16 17:01:58 -07:00
iplink_macvtap.c macvlan/macvtap: support 'passthru' mode 2011-03-16 17:01:58 -07:00
iplink_vlan.c iplink_vlan: add support for VLAN loose binding flag 2009-12-26 11:07:16 -08:00
ipmaddr.c ip: fix memory leak in ipmaddr.c 2011-04-12 14:23:52 -07:00
ipmonitor.c iproute2: drop equalize support. 2009-03-27 11:11:12 -07:00
ipmroute.c Add checks for fgets() when reading proc 2011-04-12 14:23:17 -07:00
ipneigh.c Remove #ifdef's 2011-02-25 20:00:54 -08:00
ipnetns.c iproute2: Add processless network namespace support 2011-07-13 09:48:26 -07:00
ipntable.c Remove trailing whitespace 2006-12-05 10:10:22 -08:00
ipprefix.c Remove trailing whitespace 2006-12-05 10:10:22 -08:00
iproute.c ip: iproute fix set never used warning 2011-06-20 14:34:11 -07:00
iprule.c iproute2: Add dsfield as alias for tos for ip rules 2010-07-23 12:27:14 -07:00
iptunnel.c Add checks for fgets() when reading proc 2011-04-12 14:23:17 -07:00
iptuntap.c Add 'ip tuntap' support. 2009-09-19 12:49:41 -07:00
ipxfrm.c xfrm: Update documentation 2011-07-11 10:12:06 -07:00
link_gre.c Use standard routines for interface name to index etc 2010-11-28 10:35:28 -08:00
link_veth.c iproute2: support device group semantics 2011-02-25 12:43:14 -08:00
routef ip/routef lifesaver 2007-07-10 18:29:20 -07:00
routel (Logical change 1.3) 2004-04-15 20:56:59 +00:00
rtm_map.c (Logical change 1.3) 2004-04-15 20:56:59 +00:00
rtmon.c iproute2: Support IFF_LOWER_UP and IFF_DORMANT 2007-06-19 16:40:40 -07:00
rtpr (Logical change 1.3) 2004-04-15 20:56:59 +00:00
static-syms.c support static-only systems 2009-11-10 10:44:20 -08:00
tunnel.c Use standard routines for interface name to index etc 2010-11-28 10:35:28 -08:00
tunnel.h Use standard routines for interface name to index etc 2010-11-28 10:35:28 -08:00
xfrm.h xfrm security context support 2011-03-17 09:58:23 -07:00
xfrm_monitor.c xfrm: Update documentation 2011-07-11 10:12:06 -07:00
xfrm_policy.c xfrm: Update documentation 2011-07-11 10:12:06 -07:00
xfrm_state.c xfrm: Update documentation 2011-07-11 10:12:06 -07:00