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 // Адрес не найден
}