记-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/

posted @ 2022-04-02 16:00  Biuget-Golang  阅读(358)  评论(0编辑  收藏  举报