listaddrinfo.go 570 B

123456789101112131415161718192021222324252627282930
  1. package main
  2. import (
  3. "fmt"
  4. "net"
  5. )
  6. func main() {
  7. ifs, err := net.Interfaces()
  8. if err != nil {
  9. fmt.Printf("Error: %s\n", err.Error())
  10. return
  11. }
  12. for _, i := range ifs {
  13. fmt.Printf("name: %s\n", i.Name)
  14. fmt.Printf("hwaddr: %s\n", i.HardwareAddr.String())
  15. fmt.Printf("index: %d\n", i.Index)
  16. fmt.Printf("addrs:\n")
  17. addrs, _ := i.Addrs()
  18. for _, a := range addrs {
  19. fmt.Printf(" %s\n", a.String())
  20. }
  21. fmt.Printf("multicast:\n")
  22. mc, _ := i.MulticastAddrs()
  23. for _, m := range mc {
  24. fmt.Printf(" %s\n", m.String())
  25. }
  26. fmt.Printf("\n")
  27. }
  28. }