mirror of
https://github.com/siderolabs/talos.git
synced 2025-08-29 10:31:12 +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>
15 lines
708 B
Markdown
15 lines
708 B
Markdown
# 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` )
|
|
- - Create rtnetlink message to set address based on config method
|
|
- - Create rtnetlink message to set any routes defined by the address method
|