-
released this
2026-10-20 01:00:05 +00:00 | 4 commits to master since this releaseLXC templates 1.6.6 (ifupdown2 dhcp-wait boot hang fix)
Artifacts (Forgejo generic registry):
debian-13-trixie-ECS01_13-1.6.6_amd64.tar.zst(171 MB)devuan-6-excalibur-ECS01_6-1.6.6_amd64.tar.zst(166 MB)devuan-6-excalibur_6-1.6.6_amd64.tar.zst(91 MB)ubuntu-26.04-resolute-ECS01_26.04-1.6.6_amd64.tar.zst(140 MB)
Changes
1.6.6 (+ qemu 0.2.8: boot hang on every ifupdown2 image since the
ifupdown2 switch (1.6.5 / 0.2.6), found on a real PVE container
(CT "pega", ip=dhcp,ip6=auto): console came up, ssh never did.
DHCP-1: PVE writes "iface eth0 inet dhcp" + "iface eth0 inet6
auto". ifupdown2 3.0.0 rejects method "auto" (error line, then
carries on), squashes all stanzas of an interface into ONE
object whose addr_method is the FIRST stanza's but whose
families are inet+inet6, and therefore starts BOTH dhclient and
dhclient -6. Its dhcp addon waits for each client to daemonize
(policy dhcp-wait=yes, no -nw); ISC dhclient -6 never
daemonizes without a DHCPv6 server, soifup -anever returns,
the networking service never finishes and nothing after it
starts (cron, ecs-firstboot, nullmailer, ssh). Same on Debian
13 (ifupdown2's networking.service is Type=oneshot with no
start timeout) and on the Devuan/Debian VM images. 1.6.4
(ifupdown, no dhclient) failed fast instead. Fix: ship
src/ecs-ifupdown2-policy.json as
/etc/network/ifupdown2/policy.d/ecs.json (dhcp-wait: no ->
dhclient -nw) on every ifupdown2 image (both builders, Devuan +
Debian; Ubuntu has no ifupdown2). Verified in a namespace boot
rig: pega's exact interfaces boot to a listening sshd in ~45 s.
Residual: a background dhclient -6 -nw keeps soliciting on
inet dhcp + inet6 auto (no DHCPv6 on ECS segments; SLAAC via the
sysctl policy is unaffected).
SLAAC-2: the ecs-slaac if-up.d hook assumed ifupdown's per-
family calls (ADDRFAM=inet6, METHOD=static, IF_ADDRESS = the v6
address). ifupdown2 calls hooks once per interface with
ADDRFAM="inet,inet6", METHOD = first stanza's and IF_* = the
IPv4 stanza's, so the "static preferred" branch (accept_ra 2,
static address as default-route source) never ran on 1.6.5.
The hook now also finds a static v6 address on the live
interface (global + permanent, i.e. not SLAAC/dynamic) and the
non-RA default route, waits for DAD (<= 3 s) before pinning the
source, and serves both ifupdown and ifupdown2.
DHCP-2 (known, NOT fixed — ifupdown2 squash semantics): with
"inet dhcp" as the first stanza, a following "inet6 static"
stanza is NOT applied (only its default route is): ifupdown2
keeps one addr_method per interface, so PVE ip=dhcp + ip6=
yields no static v6 on 1.6.5+. Use a static ip= (or ip6=auto)
on ifupdown2 images when a static v6 is wanted.
TEST-1: test-devuan-template.sh section D demanded isc-dhcp-
client be absent — a FAIL on every 1.6.5 ifupdown2 image; now
only enforced where ifupdown + dhcpcd are used. Section C
checks the DHCP-1 policy file; the dhcpcd ipv4only check is
skipped where dhcpcd is not installed; the per-interface sysfs
loop skips plain files (bonding_masters on hosts with bonds).
Refs: #46SHA256SUMS
a3195bc40948e947819237f9b594794984e190b047764c95c155773d7a8760eb debian-13-trixie-ECS01_13-1.6.6_amd64.tar.zst db6c685a85b15959cda2f4719dbebc8a607e195d5acffda256f13bd675465695 devuan-6-excalibur-ECS01_6-1.6.6_amd64.tar.zst f1b4fe30bd875bf2181645ea06c215d73deef49ac4f7df9d21efbcdd3558f5a3 devuan-6-excalibur_6-1.6.6_amd64.tar.zst 87aa971371c0076431ee6ec7f38bad65da39cf35696b524db300ab517d379cc9 ubuntu-26.04-resolute-ECS01_26.04-1.6.6_amd64.tar.zst ea145530a5bae4e223c553d9c1dd7b42d2405a7d2ac1826e2278b1eed7182339 debian-13-trixie-ECS01_13-1.6.6_amd64.manifest.txt 2bb13b139036eee339f767082e72a58636091040d169b3a75ee386bce7acad11 devuan-6-excalibur-ECS01_6-1.6.6_amd64.manifest.txt b371e129a0af7a8ff11db10444eaa250c3cfcc7d7857ebea7591c439f59ddfb0 devuan-6-excalibur_6-1.6.6_amd64.manifest.txt 51044e55adfe3997334ee5367cad09b067a709268bdc637944639f3691c09aaa ubuntu-26.04-resolute-ECS01_26.04-1.6.6_amd64.manifest.txtPull
forgejo-curl -sLO https://git.cloudoffice.co.za/api/packages/ECS-Public-Infra/generic/lxc-templates/1.6.6/<file> # or .../latest/<file>Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads