Marc Branchaud
2018-Apr-05 14:28 UTC
Problems with ifconfig when starting all jails after 10.3 -> 10.4 upgrade
Hi all, I just upgraded from 10.3 to 10.4, and "/etc/rc.d/jail start" is having problems starting all of my jails: # /etc/rc.d/jail start Starting jails:xipbuild_3_3: created ifconfig:: bad value jail: xipbuild_3_3_8: /sbin/ifconfig lo1 inet 10.1.1.38/32 alias: failed xipbuild_3_4: created ifconfig:: bad value jail: xipbuild_4_0: /sbin/ifconfig lo1 inet 10.1.1.5/32 alias: failed xipbuild: created xipbuild_4_9: created ifconfig:: bad value jail: xipbuild9: /sbin/ifconfig lo1 inet 10.1.1.209/32 alias: failed . This worked fine in 10.3. I can individually start each jail, e.g. "/etc/rc.d/jail start xipbuild9". All the jails configure the same set of parameters. Here's my jail.conf: --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- xipbuild_3_3 { path="/usr/build-jails/jails/3.3"; host.hostname="xipbuild_3_3"; ip4.addr="10.1.1.3/32"; allow.chflags; allow.mount; mount.devfs; persist; mount="/usr/home /usr/build-jails/jails/3.3/usr/home nullfs rw 0 0"; interface="lo1"; } xipbuild_3_3_8 { path="/usr/build-jails/jails/3.3.8"; host.hostname="xipbuild_3_3_8"; ip4.addr="10.1.1.38/32"; allow.chflags; allow.mount; mount.devfs; persist; mount="/usr/home /usr/build-jails/jails/3.3.8/usr/home nullfs rw 0 0"; interface="lo1"; } xipbuild_3_4 { path="/usr/build-jails/jails/3.4"; host.hostname="xipbuild_3_4"; ip4.addr="10.1.1.4/32"; allow.chflags; allow.mount; mount.devfs; persist; mount="/usr/home /usr/build-jails/jails/3.4/usr/home nullfs rw 0 0"; interface="lo1"; } xipbuild_4_0 { path="/usr/build-jails/jails/4.0"; host.hostname="xipbuild_4_0"; ip4.addr="10.1.1.5/32"; allow.chflags; allow.mount; mount.devfs; persist; mount="/usr/home /usr/build-jails/jails/4.0/usr/home nullfs rw 0 0"; interface="lo1"; } xipbuild { path="/usr/build-jails/jails/latest"; host.hostname="xipbuild"; ip4.addr="10.1.1.200/32"; allow.chflags; allow.mount; mount.devfs; persist; mount="/usr/home /usr/build-jails/jails/latest/usr/home nullfs rw 0 0"; interface="lo1"; } xipbuild_4_9 { path="/usr/build-jails/jails/4.9"; host.hostname="xipbuild_4_9"; ip4.addr="10.1.1.90/32"; allow.chflags; allow.mount; mount.devfs; persist; mount="/usr/home /usr/build-jails/jails/4.9/usr/home nullfs rw 0 0"; interface="lo1"; } xipbuild9 { path="/usr/build-jails/jails/latest9"; host.hostname="xipbuild9"; ip4.addr="10.1.1.209/32"; allow.chflags; allow.mount; mount.devfs; persist; mount="/usr/home /usr/build-jails/jails/latest9/usr/home nullfs rw 0 0"; interface="lo1"; } --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- I use ipnat to give the jails network access. Here's ipnat.rules: --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- map em0 10.1.1.0/24 -> 0/32 proxy port ftp ftp/tcp map em0 10.1.1.0/24 -> 0/32 --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- And here's my rc.conf: --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- # Generated by Ansible # hostname must be FQDN hostname="devastator.xiplink.com" zfs_enable="False" # FIXME: previously auto-created? ifconfig_lo1="create" ifconfig_em0="DHCP SYNCDHCP" network_interfaces="em0" gateway_enable="YES" # Prevent rpc rpcbind_enable="NO" # Prevent sendmail to try to connect to localhost sendmail_enable="NO" sendmail_submit_enable="NO" sendmail_outbound_enable="NO" sendmail_msp_queue_enable="NO" # Bring up sshd, it takes some time and uses some entropy on first startup sshd_enable="YES" netwait_enable="YES" netwait_ip="10.10.0.35" netwait_if="em0" jenkins_swarm_enable="YES" jenkins_swarm_opts="-executors 8" # --- Build jails --- build_jails_enable="YES" jail_enable="YES" # Set rules in /etc/ipnat.rules ipnat_enable="YES" # Set interface name for ipnat network_interfaces="${network_interfaces} lo1" # Each jail needs to specify its IP address and mask bits in ipv4_addrs_lo1 ipv4_addrs_lo1="10.1.1.1/32" jail_chflags_allow="yes" varmfs="NO" --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- Any insight would be deeply appreciated! M.
Marc Branchaud
2018-Apr-06 18:26 UTC
Problems with ifconfig when starting all jails after 10.3 -> 10.4 upgrade
On 2018-04-05 10:28 AM, Marc Branchaud wrote:> Hi all, > > I just upgraded from 10.3 to 10.4, and "/etc/rc.d/jail start" is having > problems starting all of my jails: > > # /etc/rc.d/jail start > Starting jails:xipbuild_3_3: created > ifconfig:: bad value > jail: xipbuild_3_3_8: /sbin/ifconfig lo1 inet 10.1.1.38/32 alias: failed > xipbuild_3_4: created > ifconfig:: bad value > jail: xipbuild_4_0: /sbin/ifconfig lo1 inet 10.1.1.5/32 alias: failed > xipbuild: created > xipbuild_4_9: created > ifconfig:: bad value > jail: xipbuild9: /sbin/ifconfig lo1 inet 10.1.1.209/32 alias: failed > .More info: Things work fine with jail_parallel_start="YES". In 10.4, /etc/rc.d/jail now adds "-p1" to the jail command's arguments when starting all jails with jail_parallel_start="NO". It's definitely this parameter that's causing my problems -- changing /etc/rc.d/jail to not add the parameter fixes the problem. M.> This worked fine in 10.3.? I can individually start each jail, e.g. > "/etc/rc.d/jail start xipbuild9". > > All the jails configure the same set of parameters.? Here's my jail.conf: > > --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- > xipbuild_3_3 { > ? path="/usr/build-jails/jails/3.3"; > ? host.hostname="xipbuild_3_3"; > ? ip4.addr="10.1.1.3/32"; > > ? allow.chflags; > ? allow.mount; > ? mount.devfs; > > ? persist; > > ? mount="/usr/home? /usr/build-jails/jails/3.3/usr/home nullfs rw 0 0"; > ? interface="lo1"; > } > xipbuild_3_3_8 { > ? path="/usr/build-jails/jails/3.3.8"; > ? host.hostname="xipbuild_3_3_8"; > ? ip4.addr="10.1.1.38/32"; > > ? allow.chflags; > ? allow.mount; > ? mount.devfs; > > ? persist; > > ? mount="/usr/home? /usr/build-jails/jails/3.3.8/usr/home nullfs rw 0 0"; > ? interface="lo1"; > } > xipbuild_3_4 { > ? path="/usr/build-jails/jails/3.4"; > ? host.hostname="xipbuild_3_4"; > ? ip4.addr="10.1.1.4/32"; > > ? allow.chflags; > ? allow.mount; > ? mount.devfs; > > ? persist; > > ? mount="/usr/home? /usr/build-jails/jails/3.4/usr/home nullfs rw 0 0"; > ? interface="lo1"; > } > xipbuild_4_0 { > ? path="/usr/build-jails/jails/4.0"; > ? host.hostname="xipbuild_4_0"; > ? ip4.addr="10.1.1.5/32"; > > ? allow.chflags; > ? allow.mount; > ? mount.devfs; > > ? persist; > > ? mount="/usr/home? /usr/build-jails/jails/4.0/usr/home nullfs rw 0 0"; > ? interface="lo1"; > } > xipbuild { > ? path="/usr/build-jails/jails/latest"; > ? host.hostname="xipbuild"; > ? ip4.addr="10.1.1.200/32"; > > ? allow.chflags; > ? allow.mount; > ? mount.devfs; > > ? persist; > > ? mount="/usr/home? /usr/build-jails/jails/latest/usr/home nullfs rw 0 0"; > ? interface="lo1"; > } > xipbuild_4_9 { > ? path="/usr/build-jails/jails/4.9"; > ? host.hostname="xipbuild_4_9"; > ? ip4.addr="10.1.1.90/32"; > > ? allow.chflags; > ? allow.mount; > ? mount.devfs; > > ? persist; > > ? mount="/usr/home? /usr/build-jails/jails/4.9/usr/home nullfs rw 0 0"; > ? interface="lo1"; > } > xipbuild9 { > ? path="/usr/build-jails/jails/latest9"; > ? host.hostname="xipbuild9"; > ? ip4.addr="10.1.1.209/32"; > > ? allow.chflags; > ? allow.mount; > ? mount.devfs; > > ? persist; > > ? mount="/usr/home? /usr/build-jails/jails/latest9/usr/home nullfs rw 0 > 0"; > ? interface="lo1"; > } > --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- > > I use ipnat to give the jails network access.? Here's ipnat.rules: > > --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- > map em0 10.1.1.0/24 -> 0/32 proxy port ftp ftp/tcp > map em0 10.1.1.0/24 -> 0/32 > --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- > > And here's my rc.conf: > > --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- > # Generated by Ansible > > # hostname must be FQDN > hostname="devastator.xiplink.com" > > zfs_enable="False" > > # FIXME: previously auto-created? > ifconfig_lo1="create" > > > ifconfig_em0="DHCP SYNCDHCP" > > network_interfaces="em0" > gateway_enable="YES" > > # Prevent rpc > rpcbind_enable="NO" > > # Prevent sendmail to try to connect to localhost > sendmail_enable="NO" > sendmail_submit_enable="NO" > sendmail_outbound_enable="NO" > sendmail_msp_queue_enable="NO" > > # Bring up sshd, it takes some time and uses some entropy on first startup > sshd_enable="YES" > > netwait_enable="YES" > netwait_ip="10.10.0.35" > netwait_if="em0" > > jenkins_swarm_enable="YES" > jenkins_swarm_opts="-executors 8" > > # --- Build jails --- > build_jails_enable="YES" > jail_enable="YES" > > # Set rules in /etc/ipnat.rules > ipnat_enable="YES" > > # Set interface name for ipnat > network_interfaces="${network_interfaces} lo1" > > # Each jail needs to specify its IP address and mask bits in ipv4_addrs_lo1 > ipv4_addrs_lo1="10.1.1.1/32" > > jail_chflags_allow="yes" > > varmfs="NO" > --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- 8< --- > > Any insight would be deeply appreciated! > > ??????? M.