hikan.ru/tools/other.go

31 lines
615 B
Go
Raw Permalink Normal View History

2025-02-02 16:43:55 +03:00
package tools
import (
"net"
"strings"
)
func IsIPInUse(targetIP string) (bool, error) {
// Получаем список всех сетевых интерфейсов
interfaces, err := net.Interfaces()
if err != nil {
return false, err
}
for _, iface := range interfaces {
// Получаем адреса для каждого интерфейса
addrs, err := iface.Addrs()
if err != nil {
return false, err
}
for _, addr := range addrs {
if strings.Split(addr.String(), "/")[0] == targetIP {
return true, nil
}
}
}
return false, nil // Адрес не найден
}