multicast

package
v0.3.17-0...-e06e18e Latest Latest
Warning

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

Go to latest
Published: Jun 14, 2021 License: LGPL-3.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GetMulticastInterfacesRequest

type GetMulticastInterfacesRequest struct{}

type GetMulticastInterfacesResponse

type GetMulticastInterfacesResponse struct {
	Interfaces []string `json:"multicast_interfaces"`
}

type Multicast

type Multicast struct {
	phony.Inbox
	// contains filtered or unexported fields
}

Multicast represents the multicast advertisement and discovery mechanism used by Yggdrasil to find peers on the same subnet. When a beacon is received on a configured multicast interface, Yggdrasil will attempt to peer with that node automatically.

func (*Multicast) Init

func (m *Multicast) Init(core *core.Core, nc *config.NodeConfig, log *log.Logger, options interface{}) error

Init prepares the multicast interface for use.

func (*Multicast) Interfaces

func (m *Multicast) Interfaces() map[string]net.Interface

func (*Multicast) IsStarted

func (m *Multicast) IsStarted() bool

IsStarted returns true if the module has been started.

func (*Multicast) SetupAdminHandlers

func (m *Multicast) SetupAdminHandlers(a *admin.AdminSocket)

func (*Multicast) Start

func (m *Multicast) Start() error

Start starts the multicast interface. This launches goroutines which will listen for multicast beacons from other hosts and will advertise multicast beacons out to the network.

func (*Multicast) Stop

func (m *Multicast) Stop() error

Stop stops the multicast module.

Jump to

Keyboard shortcuts

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