Skip to content

Latest commit

Β 

History

History

myip

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

θŽ·ε–ζœ¬ζœΊε†…η½‘ / 公网 IP

使用

package main

import (
	"fmt"

	"github.com/fufuok/utils/myip"
)

var (
	// ζœεŠ‘ε™¨ IP
	InternalIPv4  string
	ExternalIPv4  string
	ExternalIPAny string
)

func init() {
	// ζŽ¨θζ–ΉεΌ
	go func() {
		InternalIPv4 = myip.InternalIPv4()
	}()
	go func() {
		ExternalIPv4 = myip.ExternalIPv4()
	}()
	go func() {
		ExternalIPAny = myip.ExternalIPAny(5)
	}()
}

func main() {
	fmt.Println("MyIP(可能为空, δ½†δΈι˜»ε‘ž)", InternalIPv4, ExternalIPv4, ExternalIPAny)

	fmt.Println("θŽ·ε–ε€–η½‘εœ°ε€ (IPv4):", myip.ExternalIPv4())
	fmt.Println("θŽ·ε–ε€–η½‘εœ°ε€ (IPv6):", myip.ExternalIPv6())
	fmt.Println("θŽ·ε–ε€–η½‘εœ°ε€ (ε‡Ίε£ε…¬η½‘εœ°ε€, δΌ˜ε…ˆθŽ·ε– IPv6):", myip.ExternalIP())
	fmt.Println("θŽ·ε–ε€–η½‘εœ°ε€ (ε‡Ίε£ε…¬η½‘εœ°ε€ IPv4):", myip.ExternalIP("ipv4"))
	fmt.Println("θŽ·ε–ε€–η½‘εœ°ε€ (ε‡Ίε£ε…¬η½‘εœ°ε€ IPv6):", myip.ExternalIP("ipv6"))

	fmt.Println("θŽ·ε–ε†…η½‘εœ°ε€ (IPv4):", myip.InternalIPv4())
	fmt.Println("θŽ·ε–ε†…η½‘εœ°ε€ (δΈ΄ζ—Ά IPv6 εœ°ε€):", myip.InternalIPv6())
	fmt.Println("θŽ·ε–ε†…η½‘εœ°ε€ (ε‡Ίε£ζœ¬εœ°εœ°ε€):", myip.InternalIP("", ""))
	fmt.Println("θŽ·ε–ε†…η½‘εœ°ε€ (ε‡Ίε£ζœ¬εœ°εœ°ε€):", myip.InternalIP("1.1.1.1:53", "udp"))
	fmt.Println("θŽ·ε–ε†…η½‘εœ°ε€ (ε‡Ίε£ζœ¬εœ°εœ°ε€):", myip.InternalIP("baidu.com:443", "tcp"))
	fmt.Println("θŽ·ε–ε†…η½‘εœ°ε€ (ε‡Ίε£ζœ¬εœ°εœ°ε€):", myip.InternalIP("1.1.1.1", "ip4:icmp"))

	fmt.Println("θŽ·ε–ζœ¬εœ°εœ°ε€ (第一δΈͺ):", myip.LocalIP())
	fmt.Println("θŽ·ε–ζ‰€ζœ‰ζœ¬εœ°εœ°ε€ (IPv4):", myip.LocalIPv4s())

	fmt.Println("MyIP:", InternalIPv4, ExternalIPv4, ExternalIPAny)
}

ff