I eventually got this working by trial-and-error.
My thinking was that somehow the networking had become corrupted. Don’t know how, but from my earlier notes, it was clear that the networking had worked (fully) in the past and I hadn’t made any changes to the networking.
So, I experimented with unsetting the IP address assigned to the container. Detaching the bridge. Changing the IP address assigned to the container etc.
Changing the IP address assigned to the container proved to be the answer, because after assigning a different IP address to the container. The default route configuration in the container was different to before.
Working config
root@Ubuntu-DR6:~# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default _gateway.lxd 0.0.0.0 UG 100 0 0 eth0
10.254.247.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
_gateway.lxd 0.0.0.0 255.255.255.255 UH 100 0 0 eth0
Once I was able to get networking working, I performed the apt update/upgrade.
I figured that once networking was working, the underlying problem had been resolved and I could return the IP address of the container to it’s original IP address. But that changed the routing configuration (back to broken)
root@Ubuntu-DR6:~# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.254.247.10 0.0.0.0 UG 100 0 0 eth0
10.254.247.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
10.254.247.10 0.0.0.0 255.255.255.255 UH 100 0 0 eth0
root@Ubuntu-DR6:~# ping 10.254.247.10
PING 10.254.247.10 (10.254.247.10) 56(84) bytes of data.
^C
--- 10.254.247.10 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3080ms
So, I changed the IP address back to 10.254.247.60, which updated (and restored) the routing.
Changed the ssh-redirect to 10.254.247.60
Long story, short, the answer was to change the IP address of the container. Which doesn’t make much sense to me as the previous IP address was not in use. Anyway, it is what it is.
I did need to re-allow 2222 through ufw on the container host.
This looks like a bug. Still the main thing is that it is now working.
Cheers
Thanks for your assistance. I find it really helpful to be able to chat to someone about these things, particularly when I’m not completely across the detail myself.