multiple interfaces for jail.conf(1) and jail_set(2)
Michael Grimm
trashcan at ellael.org
Wed Dec 14 20:30:21 UTC 2016
Isaac (.ike) Levy <ike at blackskyresearch.net> wrote:
> Can I specify multiple IP interfaces and assign IP’s to them using jail.conf?
Not sure if I understand your question correctly, but I do define the following in my jail.conf for VNET jails:
#
# host dependent global settings
#
$ip6prefixLOCAL = "fd00:dead:beef:1234";
#
# global jail settings
#
host.hostname = "${name}";
path = "/usr/home/jails/${name}";
mount.fstab = "/etc/fstab.${name}";
exec.consolelog = "/var/log/jail_${name}_console.log";
vnet = "new";
vnet.interface = "epair${jailID}b";
exec.clean;
mount.devfs;
persist;
#
# network settings to apply/destroy during start/stop of every jail
#
exec.prestart = "sleep 2";
exec.prestart += "/sbin/ifconfig epair${jailID} create up";
exec.prestart += "/sbin/ifconfig bridge0 addm epair${jailID}a";
exec.start = "/sbin/sysctl net.inet6.ip6.dad_count=0";
exec.start += "/sbin/ifconfig lo0 127.0.0.1 up";
exec.start += "/sbin/ifconfig epair${jailID}b inet ${ip4_addr}";
exec.start += "/sbin/ifconfig epair${jailID}b inet6 ${ip6_addr}";
exec.start += "/sbin/route add default -gateway 10.1.1.254";
exec.start += "/sbin/route add -inet6 default -gateway ${ip6prefixLOCAL}::254";
exec.stop = "/sbin/route del default";
exec.stop += "/sbin/route del -inet6 default";
exec.stop += "/bin/sh /etc/rc.shutdown";
exec.poststop = "/sbin/ifconfig epair${jailID}a destroy";
#
# individual jail settings
#
dns {
$jailID = 1;
$ip4_addr = 10.1.1.1;
$ip4_addr_2 = 10.1.1.2;
$ip6_addr = ${ip6prefixLOCAL}::1/64;
$ip6_addr_2 = ${ip6prefixLOCAL}::2/64;
exec.start += "/sbin/ifconfig epair${jailID}b inet ${ip4_addr_2} alias";
exec.start += "/sbin/ifconfig epair${jailID}b inet6 ${ip6_addr_2} alias";
exec.start += "/bin/sh /etc/rc";
}
etc.
Again, not sure if I do understand your issue correctly, but the shown examples of exec.start, exec.stop, etc. are quite versatile to use.
I do start/stop my jails by "service jail start/stop".
Hope that helps,
Michael
More information about the freebsd-jail
mailing list