Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Dec 2016 21:30:09 +0100
From:      Michael Grimm <trashcan@ellael.org>
To:        freebsd-jail@FreeBSD.org
Subject:   Re: multiple interfaces for jail.conf(1) and jail_set(2)
Message-ID:  <45822529-2096-4B32-8515-F5875BEF7101@ellael.org>
In-Reply-To: <0ED7F403-F14E-4A72-8E54-AF74AAE15061@blackskyresearch.net>
References:  <0ED7F403-F14E-4A72-8E54-AF74AAE15061@blackskyresearch.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Isaac (.ike) Levy <ike@blackskyresearch.net> wrote:

> Can I specify multiple IP interfaces and assign IP=E2=80=99s 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		 =3D "fd00:dead:beef:1234";

#
# global jail settings
#
host.hostname		 =3D "${name}";
path			 =3D "/usr/home/jails/${name}";
mount.fstab		 =3D "/etc/fstab.${name}";
exec.consolelog 	 =3D "/var/log/jail_${name}_console.log";
vnet			 =3D "new";
vnet.interface		 =3D "epair${jailID}b";
exec.clean;
mount.devfs;
persist;

#
# network settings to apply/destroy during start/stop of every jail
#
exec.prestart		 =3D "sleep 2";
exec.prestart		+=3D "/sbin/ifconfig epair${jailID} create up";
exec.prestart		+=3D "/sbin/ifconfig bridge0 addm =
epair${jailID}a";
exec.start		 =3D "/sbin/sysctl net.inet6.ip6.dad_count=3D0";
exec.start		+=3D "/sbin/ifconfig lo0 127.0.0.1 up";
exec.start		+=3D "/sbin/ifconfig epair${jailID}b inet =
${ip4_addr}";
exec.start		+=3D "/sbin/ifconfig epair${jailID}b inet6 =
${ip6_addr}";
exec.start		+=3D "/sbin/route add default -gateway =
10.1.1.254";
exec.start		+=3D "/sbin/route add -inet6 default -gateway =
${ip6prefixLOCAL}::254";
exec.stop		 =3D "/sbin/route del default";
exec.stop		+=3D "/sbin/route del -inet6 default";
exec.stop		+=3D "/bin/sh /etc/rc.shutdown";
exec.poststop 		 =3D "/sbin/ifconfig epair${jailID}a destroy";

#
# individual jail settings
#
dns {
	$jailID		 =3D 1;
	$ip4_addr	 =3D 10.1.1.1;
	$ip4_addr_2	 =3D 10.1.1.2;
	$ip6_addr	 =3D ${ip6prefixLOCAL}::1/64;
	$ip6_addr_2	 =3D ${ip6prefixLOCAL}::2/64;
	exec.start	+=3D "/sbin/ifconfig epair${jailID}b inet  =
${ip4_addr_2} alias";
	exec.start	+=3D "/sbin/ifconfig epair${jailID}b inet6 =
${ip6_addr_2} alias";
	exec.start	+=3D "/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






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45822529-2096-4B32-8515-F5875BEF7101>