mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
cc6aece1fd
introduced --subnet, --ip-range and --gateway options in docker network command. Also, user can allocate driver specific ip-address if any using the --aux-address option. Supports multiple subnets per network and also sharing ip range across networks if the network-driver and ipam-driver supports it. Example, Bridge driver doesnt support sharing same ip range across networks. Signed-off-by: Madhu Venugopal <madhu@docker.com>
46 lines
1.3 KiB
Go
46 lines
1.3 KiB
Go
package network
|
|
|
|
import "github.com/docker/docker/pkg/nat"
|
|
|
|
// Address represents an IP address
|
|
type Address struct {
|
|
Addr string
|
|
PrefixLen int
|
|
}
|
|
|
|
// IPAM represents IP Address Management
|
|
type IPAM struct {
|
|
Driver string `json:"driver"`
|
|
Config []IPAMConfig `json:"config"`
|
|
}
|
|
|
|
// IPAMConfig represents IPAM configurations
|
|
type IPAMConfig struct {
|
|
Subnet string `json:"subnet,omitempty"`
|
|
IPRange string `json:"ip_range,omitempty"`
|
|
Gateway string `json:"gateway,omitempty"`
|
|
AuxAddress map[string]string `json:"auxiliary_address,omitempty"`
|
|
}
|
|
|
|
// Settings stores configuration details about the daemon network config
|
|
// TODO Windows. Many of these fields can be factored out.,
|
|
type Settings struct {
|
|
Bridge string
|
|
EndpointID string
|
|
SandboxID string
|
|
Gateway string
|
|
GlobalIPv6Address string
|
|
GlobalIPv6PrefixLen int
|
|
HairpinMode bool
|
|
IPAddress string
|
|
IPPrefixLen int
|
|
IPv6Gateway string
|
|
LinkLocalIPv6Address string
|
|
LinkLocalIPv6PrefixLen int
|
|
MacAddress string
|
|
Networks []string
|
|
Ports nat.PortMap
|
|
SandboxKey string
|
|
SecondaryIPAddresses []Address
|
|
SecondaryIPv6Addresses []Address
|
|
}
|