|
|
|
@ -38,6 +38,10 @@ type Status struct {
|
|
|
|
TailscaleIPs []netaddr.IP // Tailscale IP(s) assigned to this node
|
|
|
|
TailscaleIPs []netaddr.IP // Tailscale IP(s) assigned to this node
|
|
|
|
Self *PeerStatus
|
|
|
|
Self *PeerStatus
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ExitNodeStatus describes the current exit node.
|
|
|
|
|
|
|
|
// If nil, an exit node is not in use.
|
|
|
|
|
|
|
|
ExitNodeStatus *ExitNodeStatus `json:"ExitNodeStatus,omitempty"`
|
|
|
|
|
|
|
|
|
|
|
|
// Health contains health check problems.
|
|
|
|
// Health contains health check problems.
|
|
|
|
// Empty means everything is good. (or at least that no known
|
|
|
|
// Empty means everything is good. (or at least that no known
|
|
|
|
// problems are detected)
|
|
|
|
// problems are detected)
|
|
|
|
@ -81,6 +85,18 @@ type TailnetStatus struct {
|
|
|
|
MagicDNSEnabled bool
|
|
|
|
MagicDNSEnabled bool
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ExitNodeStatus describes the current exit node.
|
|
|
|
|
|
|
|
type ExitNodeStatus struct {
|
|
|
|
|
|
|
|
// ID is the exit node's ID.
|
|
|
|
|
|
|
|
ID tailcfg.StableNodeID
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Online is whether the exit node is alive.
|
|
|
|
|
|
|
|
Online bool
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// TailscaleIPs are the exit node's IP addresses assigned to the node.
|
|
|
|
|
|
|
|
TailscaleIPs []netaddr.IPPrefix
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
func (s *Status) Peers() []key.NodePublic {
|
|
|
|
func (s *Status) Peers() []key.NodePublic {
|
|
|
|
kk := make([]key.NodePublic, 0, len(s.Peer))
|
|
|
|
kk := make([]key.NodePublic, 0, len(s.Peer))
|
|
|
|
for k := range s.Peer {
|
|
|
|
for k := range s.Peer {
|
|
|
|
|