Andrew Rynhard 6efd6fbe08 chore: move gRPC API to public
In order for other projects to make use of our APIs, they must not
reside underneath the internal directory. This moves the protobuf
definitions to a top-level "api" directory and scopes them according to
their domain. This change also removes generated code from the gitignore
file so that users don't have to generate the code themseleves.

Signed-off-by: Andrew Rynhard <andrew@andrewrynhard.com>
2019-09-19 08:55:13 -07:00
..
2019-09-19 08:55:13 -07:00
2019-09-19 08:55:13 -07:00

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