Skip to content

Conversation

@ethanjli
Copy link
Collaborator

This PR adds form fields in the advanced NetworkManager connection editor to edit various IPv4 settings:

  • IPv4 method
  • Link-local address acquisition behavior
  • DHCP timeout
  • Whether IPv4 address assignment is required for the connection profile to be considered successful

@ethanjli
Copy link
Collaborator Author

The new section of the connection editor form looks like this:
image

And now the connection editor page looks like this:
image

@ethanjli ethanjli marked this pull request as ready for review January 20, 2026 15:46
@ethanjli ethanjli enabled auto-merge January 20, 2026 15:47
@ethanjli ethanjli added this pull request to the merge queue Jan 20, 2026
Merged via the queue into main with commit d365829 Jan 20, 2026
2 checks passed
@ethanjli ethanjli deleted the nm-ipv4-settings-editor branch January 20, 2026 15:50
github-merge-queue bot pushed a commit to openUC2/rpi-imswitch-os that referenced this pull request Jan 20, 2026
This PR configures NetworkManager to always try to acquire link-local
IPv4 addresses (`169.254.x.y/16`) on its direct connections to other
devices, so that they can be used in the following cases:

- ~If an RPi is trying to get an IP address via DHCP but the request
times out, then the RPi might be able to get internet access via the
link-local address as a fallback~ (I tested this and it didn't work, so
I've removed it from this PR)
- If multiple RPis are connected to the same computer, their
statically-assigned IP addresses will conflict but they'll still be
accessible via their link-local addresses (though mDNS probably won't
use those link-local addresses instead, so an IP address scanner would
be needed to discover the devices on their link-local addresses)

In other words, here the link-local addresses are a last-resort escape
hatch for still being able to access the RPi even if things have gone
very wrong.

This PR also stops trying to acquire static IP addresses on connections
which use DHCP for dynamic IP address assignment, because then DHCP
fails if the network on the other end already uses that static IP
address. This was a bug I discovered in testing, and things seem to work
fine after removal.

This PR also bumps the device-admin ctr img to integrate
openUC2/device-admin#27,
openUC2/device-admin#28, and
openUC2/device-admin#29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants