1. 程式人生 > 其它 >記-Golang獲取本機IP及快速搭建局域FTP

記-Golang獲取本機IP及快速搭建局域FTP

 1 package main
 2 
 3 import (
 4     "fmt"
 5     "net"
 6     "net/http"
 7     "strings"
 8 )
 9 
10 func main() {
11     addrs, err := net.InterfaceAddrs() //局域檔案傳輸程式碼
12     if err != nil {
13         fmt.Println(err)
14         return
15     }
16     for _, address := range addrs {
17         // 檢查ip地址判斷是否迴環地址
18 if ipnet, ok := address.(*net.IPNet); ok && !ipnet.IP.IsLoopback() { 19 if ipnet.IP.To4() != nil { 20 ipv4 := ipnet.IP.String() 21 if strings.Contains(ipv4,"10.") { //此處需根據公司ip段進行判斷 22 fmt.Printf("訪問:http://%s:8080", ipnet.IP.String())
23 } 24 } 25 } 26 } 27 http.Handle("/", http.FileServer(http.Dir("."))) 28 http.ListenAndServe(":8080", nil) 29 30 31 32 //獲取本機IP 33 //addrs, err := net.InterfaceAddrs() 34 //if err != nil { 35 // fmt.Println(err.Error()) 36 // 37 //} 38 //
39 //var ip_arr []string 40 //for _, address := range addrs {41 // if ipnet, ok := address.(*net.IPNet); ok && !ipnet.IP.IsLoopback() { 42 // if ipnet.IP.To4() != nil { 43 // ip_arr = append(ip_arr, ipnet.IP.String()) 44 // } 45 // } 46 //} 47 //fmt.Println(ip_arr) 48 }

轉載請宣告出處哦~,本篇文章釋出於Biuget-Golang的部落格:

https://www.cnblogs.com/Biuget-Golang/