Help us shape the future of Go! Take the 2026 Go Developer Survey

ip

package
v0.0.34 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 19, 2017 License: Apache-2.0 Imports: 2 Imported by: 122

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NetworkInterfaceToAddrsFunc

func NetworkInterfaceToAddrsFunc(interfaceName string) ([]gonet.Addr, error)

Types

type InterfaceAddress

type InterfaceAddress interface {
	GetInterfaceName() string
	// GetIP gets the exposed internet protocol address of the above interface
	GetIP() (string, error)
}

func NewResolvingInterfaceAddress

func NewResolvingInterfaceAddress(
	interfaceName string,
	ipResolver Resolver,
) InterfaceAddress

func NewSimpleInterfaceAddress

func NewSimpleInterfaceAddress(interfaceName string, ip string) InterfaceAddress

type InterfaceAddressesProvider

type InterfaceAddressesProvider interface {
	Get() ([]InterfaceAddress, error)
}

func NewSystemInterfaceAddressesProvider

func NewSystemInterfaceAddressesProvider() InterfaceAddressesProvider

type InterfaceAddressesValidator

type InterfaceAddressesValidator interface {
	Validate(desiredInterfaceAddresses []InterfaceAddress) error
}

func NewInterfaceAddressesValidator

func NewInterfaceAddressesValidator(interfaceAddrsProvider InterfaceAddressesProvider) InterfaceAddressesValidator

type InterfaceToAddrsFunc

type InterfaceToAddrsFunc func(string) ([]gonet.Addr, error)

type Resolver

type Resolver interface {
	// GetPrimaryIPv4 always returns error unless IPNet is found for given interface
	GetPrimaryIPv4(interfaceName string) (*gonet.IPNet, error)
}

func NewResolver

func NewResolver(ifaceToAddrsFunc InterfaceToAddrsFunc) Resolver

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL