Documentation ¶
Index ¶
- Constants
- func GetDnsInterceptIpRange() *net.IPNet
- func GetInterceptAddresses(service *entities.Service, protocols []string, resolver dns.Resolver, ...) error
- func SetDnsInterceptIpRange(cidr string) error
- type AddressTracker
- type DnsAnswer
- type DnsMessage
- type DnsQuestion
- type InterceptAddrCB
- type InterceptAddress
- func (addr *InterceptAddress) Contains(ip net.IP, port uint16) bool
- func (addr *InterceptAddress) HighPort() uint16
- func (addr *InterceptAddress) IpNet() *net.IPNet
- func (addr *InterceptAddress) LowPort() uint16
- func (addr *InterceptAddress) Proto() string
- func (addr *InterceptAddress) RouteRequired() bool
- func (addr *InterceptAddress) String() string
- type Interceptor
- type Protocol
- type ServiceListener
- type ServiceListenerGroup
Constants ¶
View Source
const ( A = 1 MX = 15 TXT = 16 SRV = 33 )
record type
View Source
const ( NOERROR = 0 FORMERR = 1 SERVFAIL = 2 NXDOMAIN = 3 NOTIMP = 4 REFUSED = 5 )
response code
Variables ¶
This section is empty.
Functions ¶
func GetDnsInterceptIpRange ¶ added in v0.33.0
func GetInterceptAddresses ¶
func SetDnsInterceptIpRange ¶
Types ¶
type AddressTracker ¶
type DnsMessage ¶
type DnsMessage struct { Id int `json:"id"` Status int `json:"status"` Question []*DnsQuestion `json:"question"` Answer []*DnsAnswer `json:"answer"` Comment string `json:"comment,omitempty"` }
type DnsQuestion ¶
type InterceptAddrCB ¶
type InterceptAddrCB interface {
Apply(*InterceptAddress)
}
type InterceptAddress ¶
type InterceptAddress struct { TproxySpec []string AcceptSpec []string // contains filtered or unexported fields }
func (*InterceptAddress) Contains ¶
func (addr *InterceptAddress) Contains(ip net.IP, port uint16) bool
func (*InterceptAddress) HighPort ¶
func (addr *InterceptAddress) HighPort() uint16
func (*InterceptAddress) IpNet ¶
func (addr *InterceptAddress) IpNet() *net.IPNet
func (*InterceptAddress) LowPort ¶
func (addr *InterceptAddress) LowPort() uint16
func (*InterceptAddress) Proto ¶
func (addr *InterceptAddress) Proto() string
func (*InterceptAddress) RouteRequired ¶ added in v0.33.0
func (addr *InterceptAddress) RouteRequired() bool
func (*InterceptAddress) String ¶
func (addr *InterceptAddress) String() string
type Interceptor ¶
type Interceptor interface { Stop() Intercept(service *entities.Service, resolver dns.Resolver, tracker AddressTracker) error StopIntercepting(serviceName string, tracker AddressTracker) error }
type ServiceListener ¶
func NewServiceListener ¶
func NewServiceListener(interceptor Interceptor, resolver dns.Resolver) *ServiceListener
func (*ServiceListener) HandleProviderReady ¶
func (self *ServiceListener) HandleProviderReady(provider tunnel.FabricProvider)
func (*ServiceListener) HandleServicesChange ¶
func (self *ServiceListener) HandleServicesChange(eventType ziti.ServiceEventType, service *rest_model.ServiceDetail)
func (*ServiceListener) WaitForShutdown ¶
func (self *ServiceListener) WaitForShutdown()
type ServiceListenerGroup ¶
func NewServiceListenerGroup ¶
func NewServiceListenerGroup(interceptor Interceptor, resolver dns.Resolver) *ServiceListenerGroup
func (*ServiceListenerGroup) NewServiceListener ¶
func (self *ServiceListenerGroup) NewServiceListener() *ServiceListener
func (*ServiceListenerGroup) WaitForShutdown ¶
func (self *ServiceListenerGroup) WaitForShutdown()
Source Files ¶
Click to show internal directories.
Click to hide internal directories.