const cloudProviderNone … const cloudProviderExternal … // parseNodeIP implements ParseNodeIPArgument and ParseNodeIPAnnotation func parseNodeIP(nodeIP string, allowDual, sloppy bool) ([]net.IP, []string, error) { … } // ParseNodeIPArgument parses kubelet's --node-ip argument. // If nodeIP contains invalid values, they will be returned as strings. // This is done also when an error is returned. // The caller then can decide what to do with the invalid values. // Dual-stack node IPs are allowed if cloudProvider is unset or `"external"`. func ParseNodeIPArgument(nodeIP, cloudProvider string) ([]net.IP, []string, error) { … } // ParseNodeIPAnnotation parses the `alpha.kubernetes.io/provided-node-ip` annotation, // which can be either a single IP address or a comma-separated pair of IP addresses. // Unlike with ParseNodeIPArgument, invalid values are considered an error. func ParseNodeIPAnnotation(nodeIP string) ([]net.IP, error) { … }