|
@@ -13,6 +13,7 @@ import (
|
|
|
"image/png"
|
|
|
"math"
|
|
|
"math/rand"
|
|
|
+ "net"
|
|
|
"os"
|
|
|
"regexp"
|
|
|
"strconv"
|
|
@@ -766,3 +767,24 @@ func InArrayByStr(idStrList []string, searchId string) (has bool) {
|
|
|
}
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+func GetLocalIP() (ip string, err error) {
|
|
|
+ addrs, err := net.InterfaceAddrs()
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ for _, addr := range addrs {
|
|
|
+ ipAddr, ok := addr.(*net.IPNet)
|
|
|
+ if !ok {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ if ipAddr.IP.IsLoopback() {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ if !ipAddr.IP.IsGlobalUnicast() {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ return ipAddr.IP.String(), nil
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|