const kubeServicesChain …
const kubeExternalServicesChain …
const kubeNodePortsChain …
const kubePostroutingChain …
const kubeMarkMasqChain …
const kubeForwardChain …
const kubeProxyFirewallChain …
const kubeProxyCanaryChain …
const kubeletFirewallChain …
const largeClusterEndpointsThreshold …
const sysctlRouteLocalnet …
const sysctlNFConntrackTCPBeLiberal …
func NewDualStackProxier(
ctx context.Context,
ipt [2]utiliptables.Interface,
sysctl utilsysctl.Interface,
exec utilexec.Interface,
syncPeriod time.Duration,
minSyncPeriod time.Duration,
masqueradeAll bool,
localhostNodePorts bool,
masqueradeBit int,
localDetectors map[v1.IPFamily]proxyutil.LocalTrafficDetector,
hostname string,
nodeIPs map[v1.IPFamily]net.IP,
recorder events.EventRecorder,
healthzServer *healthcheck.ProxierHealthServer,
nodePortAddresses []string,
initOnly bool,
) (proxy.Provider, error) { … }
type Proxier …
var _ …
func NewProxier(ctx context.Context,
ipFamily v1.IPFamily,
ipt utiliptables.Interface,
sysctl utilsysctl.Interface,
exec utilexec.Interface,
syncPeriod time.Duration,
minSyncPeriod time.Duration,
masqueradeAll bool,
localhostNodePorts bool,
masqueradeBit int,
localDetector proxyutil.LocalTrafficDetector,
hostname string,
nodeIP net.IP,
recorder events.EventRecorder,
healthzServer *healthcheck.ProxierHealthServer,
nodePortAddressStrings []string,
initOnly bool,
) (*Proxier, error) { … }
type servicePortInfo …
func newServiceInfo(port *v1.ServicePort, service *v1.Service, bsvcPortInfo *proxy.BaseServicePortInfo) proxy.ServicePort { … }
type endpointInfo …
func newEndpointInfo(baseInfo *proxy.BaseEndpointInfo, svcPortName *proxy.ServicePortName) proxy.Endpoint { … }
type iptablesJumpChain …
var iptablesJumpChains …
var iptablesKubeletJumpChains …
var iptablesCleanupOnlyChains …
func CleanupLeftovers(ctx context.Context, ipt utiliptables.Interface) (encounteredError bool) { … }
func computeProbability(n int) string { … }
func (proxier *Proxier) precomputeProbabilities(numberOfPrecomputed int) { … }
func (proxier *Proxier) probability(n int) string { … }
func (proxier *Proxier) Sync() { … }
func (proxier *Proxier) SyncLoop() { … }
func (proxier *Proxier) setInitialized(value bool) { … }
func (proxier *Proxier) isInitialized() bool { … }
func (proxier *Proxier) OnServiceAdd(service *v1.Service) { … }
func (proxier *Proxier) OnServiceUpdate(oldService, service *v1.Service) { … }
func (proxier *Proxier) OnServiceDelete(service *v1.Service) { … }
func (proxier *Proxier) OnServiceSynced() { … }
func (proxier *Proxier) OnEndpointSliceAdd(endpointSlice *discovery.EndpointSlice) { … }
func (proxier *Proxier) OnEndpointSliceUpdate(_, endpointSlice *discovery.EndpointSlice) { … }
func (proxier *Proxier) OnEndpointSliceDelete(endpointSlice *discovery.EndpointSlice) { … }
func (proxier *Proxier) OnEndpointSlicesSynced() { … }
func (proxier *Proxier) OnNodeAdd(node *v1.Node) { … }
func (proxier *Proxier) OnNodeUpdate(oldNode, node *v1.Node) { … }
func (proxier *Proxier) OnNodeDelete(node *v1.Node) { … }
func (proxier *Proxier) OnNodeSynced() { … }
func (proxier *Proxier) OnServiceCIDRsChanged(_ []string) { … }
func portProtoHash(servicePortName string, protocol string) string { … }
const servicePortPolicyClusterChainNamePrefix …
const servicePortPolicyLocalChainNamePrefix …
const serviceFirewallChainNamePrefix …
const serviceExternalChainNamePrefix …
const servicePortEndpointChainNamePrefix …
func servicePortPolicyClusterChain(servicePortName string, protocol string) utiliptables.Chain { … }
func servicePortPolicyLocalChainName(servicePortName string, protocol string) utiliptables.Chain { … }
func serviceFirewallChainName(servicePortName string, protocol string) utiliptables.Chain { … }
func serviceExternalChainName(servicePortName string, protocol string) utiliptables.Chain { … }
func servicePortEndpointChainName(servicePortName string, protocol string, endpoint string) utiliptables.Chain { … }
func isServiceChainName(chainString string) bool { … }
func (proxier *Proxier) appendServiceCommentLocked(args []string, svcName string) []string { … }
func (proxier *Proxier) forceSyncProxyRules() { … }
func (proxier *Proxier) syncProxyRules() { … }
func (proxier *Proxier) writeServiceToEndpointRules(natRules proxyutil.LineBuffer, svcPortNameString string, svcInfo proxy.ServicePort, svcChain utiliptables.Chain, endpoints []proxy.Endpoint, args []string) { … }