func GetInstance() Network {
	return networkIns
}
GetInstance returns the networkImpl struct
package networkhelper
import (
	"github.com/lf-edge/edge-home-orchestration-go/internal/common/logmgr"
	"net"
	"os"
	"path/filepath"
	"strings"
	"github.com/lf-edge/edge-home-orchestration-go/internal/common/errormsg"
	"github.com/lf-edge/edge-home-orchestration-go/internal/common/errors"
	"github.com/lf-edge/edge-home-orchestration-go/internal/common/networkhelper/detector"
)
type networkImpl struct{}
var (
	networkIns              networkImpl
	detectorIns             detector.Detector
	netInfo                 networkInformation
	getNetworkInformationFP func()
	log                     = logmgr.GetInstance()
)
const (
	virtualInterfaceName = "tun"
	virtualNetworkString = "virtual"
)
type Network interface {
	StartNetwork()
	CheckConnectivity() error
	GetOutboundIP() (string, error)
	GetIPs() ([]string, error)
	GetMACAddress() (string, error)
	GetNetInterface() ([]net.Interface, error)
	AppendSubscriber() chan []net.IP
	GetVirtualIP() (string, error)
}
func init() {
	detectorIns = detector.GetInstance()
	getNetworkInformationFP = getNetworkInformation
}