Поиск тонких клиентов в сети

Ответить

Смайлики
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ОТКЛЮЧЕН
Смайлики ВКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Поиск тонких клиентов в сети

Re: Поиск тонаких клиентов в сети

erasty » Вт май 20, 2025 9:34 pm

aka писал(а): Пн май 19, 2025 12:49 pm :shock:
Сработало? На С для отперавки броадкастов ещё опцию SO_BROADCAST надо прописать сокету.
Пока в процессе, как доделаю напишу если интересно

Re: Поиск тонаких клиентов в сети

aka » Пн май 19, 2025 12:49 pm

:shock:
Сработало? На С для отперавки броадкастов ещё опцию SO_BROADCAST надо прописать сокету.

Re: Поиск тонаких клиентов в сети

erasty » Пн май 19, 2025 10:21 am

aka писал(а): Вс май 18, 2025 10:48 pm Можно. Разослать широковещательный UDP пакет, состоящий из одного байта 0x01, на порт 779. Все активные тонкие клиенты ответят. Так делает втваревый конфигуратор, когда запускается.

Чем собираешься рассылать?
Собирался рассылать скриптом на golang, по типу такого:

Код: Выделить всё

func main() {
	// бродкаст
	broadcastAddr, err := net.ResolveUDPAddr("udp", "192.168.1.255:779")
	if err != nil {
		fmt.Println("Ошибка разрешения адреса:", err)
		return
	}
	// Создаем UDP-соединение
	conn, err := net.DialUDP("udp", nil, broadcastAddr)
	if err != nil {
		fmt.Println("Ошибка создания соединения:", err)
		return
	}
	defer conn.Close()

	message := []byte{0x01}
	_, err = conn.Write(message)
	if err != nil {
		fmt.Println("Ошибка отправки пакета:", err)
		return
	}

	conn.SetReadDeadline(time.Now().Add(2 * time.Second))

	buffer := make([]byte, 1024)
	respondedIPs := make(map[string]struct{})
	for {
		n, addr, err := conn.ReadFromUDP(buffer)
		if err != nil {
			break
		}
		respondedIPs[addr.IP.String()] = struct{}{}
		fmt.Printf("Ответ от %s: %s\n", addr.IP.String(), buffer[:n])
	}
	// Выводим список уникальных IP-адресов
	fmt.Println("Уникальные IP-адреса, которые ответили:")
	for ip := range respondedIPs {
		fmt.Println(ip)
	}
}

Re: Поиск тонаких клиентов в сети

aka » Вс май 18, 2025 10:48 pm

Можно. Разослать широковещательный UDP пакет, состоящий из одного байта 0x01, на порт 779. Все активные тонкие клиенты ответят. Так делает втваревый конфигуратор, когда запускается.

Чем собираешься рассылать?

Поиск тонких клиентов в сети

erasty » Вс май 18, 2025 4:30 pm

Добрый день, подскажите, можно ли найти все активные тонкие клиенты в сети? Например по какому-то уникальному порту, который слушает только wtware или т.п
Мне нужно собирать список активных терминалов и выводить в табличку.
Спасибо

Вернуться к началу