Documentation ¶
Index ¶
- func ConfigureInterface(ifname string, netconf *NetConf) (err error)
- func IfUp(ifname string, timeout time.Duration) (_ *net.Interface, err error)
- func RequestNetbootv4(ifname string, timeout time.Duration, retries int, ...) ([]*dhcpv4.DHCPv4, error)
- func RequestNetbootv6(ifname string, timeout time.Duration, retries int, ...) ([]dhcpv6.DHCPv6, error)
- type AddrConf
- type BootConf
- type NetConf
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConfigureInterface ¶
ConfigureInterface configures a network interface with the configuration held by a NetConf structure
func IfUp ¶
IfUp brings up an interface by name, and waits for it to come up until a timeout expires
func RequestNetbootv4 ¶
func RequestNetbootv4(ifname string, timeout time.Duration, retries int, modifiers ...dhcpv4.Modifier) ([]*dhcpv4.DHCPv4, error)
RequestNetbootv4 sends a netboot request via DHCPv4 and returns the exchanged packets. Additional modifiers can be passed to manipulate both the discover and offer packets.
func RequestNetbootv6 ¶
func RequestNetbootv6(ifname string, timeout time.Duration, retries int, modifiers ...dhcpv6.Modifier) ([]dhcpv6.DHCPv6, error)
RequestNetbootv6 sends a netboot request via DHCPv6 and returns the exchanged packets. Additional modifiers can be passed to manipulate both solicit and advertise packets.
Types ¶
type AddrConf ¶
type AddrConf struct { IPNet net.IPNet PreferredLifetime time.Duration ValidLifetime time.Duration }
AddrConf holds a single IP address configuration for a NIC
type BootConf ¶
type BootConf struct { // NetConf is the network configuration of the client NetConf // BootfileURL is "where is the image (kernel)". // See RFC5970 section 3.1 for IPv6 and RFC2132 section 9.5 ("Bootfile name") for IPv4 BootfileURL string // BootfileParam is "what arguments should we pass (cmdline)". // See RFC5970 section 3.2 for IPv6. BootfileParam []string }
BootConf is a structure describes everything a host needs to know to boot over network
func ConversationToNetconf ¶
ConversationToNetconf extracts network configuration and boot file URL from a DHCPv6 4-way conversation and returns them, or an error if any.
type NetConf ¶
type NetConf struct { Addresses []AddrConf DNSServers []net.IP DNSSearchList []string Routers []net.IP NTPServers []net.IP }
NetConf holds multiple IP configuration for a NIC, and DNS configuration
func GetNetConfFromPacketv4 ¶
GetNetConfFromPacketv4 extracts network configuration information from a DHCPv4 Reply packet and returns a populated NetConf structure