mirror of
https://github.com/siderolabs/talos.git
synced 2025-08-27 09:31:14 +02:00
This is a major rewrite of our network subsystem. - This changes networkd to run as a standalone app versus internal goroutine - This changes out the netlink package with the more idiomatic netlink/rtnetlink packages - This changes the initial network bootstrap/discovery from using a single interface to attempting to bring up all interfaces - This moves us back on to the upstream dhcp library Signed-off-by: Brad Beam <brad.beam@talos-systems.com>
708 B
708 B
networkd
Networkd handles the addressing and interface configuration in Talos.
The general workflow is:
- Discover all network interfaces (
networkd.Discover()
) - Create an abstract representation of the network interface configuration (
nic.NetworkInterface
) - Merge userdata configuration options on top of the
nic.NetworkInterface
representation - Configure the network interfaces based on the abstract representation (
networkd.Configure(...)
) -
- Bring interface up
-
- Begin address configuration method (
address.DHCP
,address.Static
)
- Begin address configuration method (
-
- Create rtnetlink message to set address based on config method
-
- Create rtnetlink message to set any routes defined by the address method