Jak wykonać broadcast w danej dowolnej sieci?

0

Witam, jestem w trakcie projektowania nowego programu i potrzebuję wysłać komunikat do każdego komputera podpiętego do danej sieci.

Czy jest lepsze rozwiązanie niż wysyłanie "na ślepo" do każdego adresu 192.168.0.0, 192.168.0.1, 192.168.0.2 itd?
Jak dokładnie działa broadcast na adresie 255.255.255.555, który protokoł jest potrzebny?

dodanie znaczników `` - furious programming

0
  1. Ryzykowne bo wymaga żeby twoja usługa stała na każdym komputerze na tym samym porcie. Poza tym wymaga zabawy w wyliczanie adresów, a tych mogą ci wyjść tysiące ;]
  2. Może multicast?
0

Może trochę lepiej wyjaśnię strukturę programu.

Program działa jednocześnie na każdym komputerze jako klient i serwer, który potrafi wysyłać dane i jednocześnie je odbierać z każdego innego komputera znajdującego się w tej samej sieci w której również ten program jest uruchomiony.

Jak najlepiej rozwiązać wyszukiwanie w danej sieci wszystkich komputerów które dany program mają uruchomiony?

Myślałem o tym aby właśnie każdy był an tym samym porcie i wysyłać pokolei do wszystkich adresów pakiet danych, ale istnieje chyba lepsze rozwiązanie?

0

Ponowie pytanie: czy mozesz użyć multicastu? Wtedy byłoby to trywialne -> każdy program robi join do grupy multicastowej a potem po prostu wysyłasz na adres grupy i wszyscy dostają :)

0

Jakie są do tego przeciwwskazania? To jest projekt hobbistyczny więc skorzystanie z tego mechanizmu to pewnie żaden kłopot. Czy mógłbyś coś wiedzieć powiedzieć na temat tego multicastu?

1

@pytanie_teoretyczne przeciwwskazanie jest takie że routery w twojej sieci mogą nie obsługiwać multicastów ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1