James Gritton
2021-06-06 16:23:58 UTC
Hi,
for vnet jails, one needs to move some interface into created virtual
stack. In jail.conf, this could be achieved using
jail0
{vnet;
vnet.interface = re2;
}
and initialize moved interface using standard /etc/rc.conf
configuration
file in jail jail0.
Adding small paragraph about this in jail.conf man page would be
useful. I know it is in jail man page in some form, but it deserves
mentioning this in example section in jail.conf man page. At least,
this makes it easier to find for first comers :) (Well, that's not me,
I am using vnet jails aka VIMAGE from the start as an experimental
feature in FreeBSD 4 or 5, almost 20 years ago.)
True, it would make sense to add a vnet example, since it's now includedfor vnet jails, one needs to move some interface into created virtual
stack. In jail.conf, this could be achieved using
jail0
{vnet;
vnet.interface = re2;
}
and initialize moved interface using standard /etc/rc.conf
configuration
file in jail jail0.
Adding small paragraph about this in jail.conf man page would be
useful. I know it is in jail man page in some form, but it deserves
mentioning this in example section in jail.conf man page. At least,
this makes it easier to find for first comers :) (Well, that's not me,
I am using vnet jails aka VIMAGE from the start as an experimental
feature in FreeBSD 4 or 5, almost 20 years ago.)
in the default kernel.
I need more interfaces moved this way. It is no problem issue manually
ifconfig re3 vnet jail0
but trying to write
jail0
{vnet;
vnet.interface = re2;
vnet.interface = re3;
}
in jail.conf means only re3 is moved and can be configured with
standard rc.conf config file. First instance (re2) is kind of
overwritten and forgotten.
Is it possible to move more interfaces this way at all? I'd like to
avoid any hacks if possible, and any workaround for this is ugly...
It's not possible to add more than one interface that way. It wouldifconfig re3 vnet jail0
but trying to write
jail0
{vnet;
vnet.interface = re2;
vnet.interface = re3;
}
in jail.conf means only re3 is moved and can be configured with
standard rc.conf config file. First instance (re2) is kind of
overwritten and forgotten.
Is it possible to move more interfaces this way at all? I'd like to
avoid any hacks if possible, and any workaround for this is ugly...
make sense for vnet.interface to be an array, so you could say have a
comma-separated list or say "vnet.interface += re3".
Currently, anything more than one interface would need to be an ifconfig
command added to "exec.created".
- Jamie