add basic support for jail network namespaces
authorDaniel Golle <daniel@makrotopia.org>
Mon, 30 Dec 2019 12:57:47 +0000 (14:57 +0200)
committerDaniel Golle <daniel@makrotopia.org>
Sat, 18 Jan 2020 11:39:45 +0000 (13:39 +0200)
commit1321c1bd8fe921986c4eb39c3783ddd827b79543
tree89c1af96541324a445e683ea978f8f4aede3f2ee
parent64f4eb79fe2977320660f8940bc908fa4def807b
add basic support for jail network namespaces

Prepare netifd for handling procd service jails having their own
network namespace.
Intefaces having the jail attribute will only be brought inside the
jail's network namespace by procd calling the newly introduced ubus
method 'netns_updown'.
Currently proto 'static' is supported and configuration changes are
not yet being handled (ie. you'll have to restart the jailed service
for changes to take effect).

Example /etc/config/network snippet:

config device 'veth0'
    option type 'veth'
    option name 'vhost0'
    option peer_name 'virt0'

config interface 'virt'
    option type 'bridge'
    list ifname 'vhost0'
    option proto 'static'
    option ipaddr '10.0.0.1'
    option netmask '255.255.255.0'

config interface 'virt0'
    option ifname 'virt0'
    option proto 'static'
    option ipaddr '10.0.0.2'
    option netmask '255.255.255.0'
    option gateway '10.0.0.1'
    option dns '10.0.0.1'
    option jail 'transmission'

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
interface-ip.c
interface-ip.h
interface.c
interface.h
system-dummy.c
system-linux.c
system.h
ubus.c