diff options
Diffstat (limited to 'network/network.go')
-rw-r--r-- | network/network.go | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/network/network.go b/network/network.go index 0b7fab7..322487b 100644 --- a/network/network.go +++ b/network/network.go @@ -4,10 +4,12 @@ import ( "bufio" "encoding/json" "fmt" - "go.uber.org/zap" + "log/slog" "net" "sync" "time" + + "go.uber.org/zap" ) var logger *zap.Logger @@ -210,3 +212,15 @@ func (n *TCPNetwork) IsConnected() bool { defer n.Unlock() return n.isConnected } + +func GetOutboundIP() net.IP { + conn, err := net.Dial("udp", "8.8.8.8:80") + if err != nil { + slog.Error("err", err) + } + defer conn.Close() + + localAddr := conn.LocalAddr().(*net.UDPAddr) + + return localAddr.IP +} |