Witam, piszę drobnego klienta i napotkałem na mały problem, a mianowicie nie mogę nigdzie znaleźć jak pobrać z sieci LAN ip i nazwy urządzeń do niej podłączonych. Podpowie kto gdzie szukać, ewentualnie podepnie jakieś linki do artykułów? Pozdrawiam.
Musiałbyś przeskanować całą podsieć np. poprzez pingi. Ale nie ma gwarancji, że ping nie jest filtrowany przez router/switch (globalnie) albo że dany komputer w ogóle odpowie na ping (bo nie musi).
Na windzie odpalasz CMD i wpisujesz polecenie arp -a i ci pokaże urządzenia w LAN'ie.
Polaczenia wewnatrz sieciowa tak naprawde nie wymagaja IP (tak naprawde ;) )
W tablicy arp znajduja sie wpisy dynamiczne albo statyczne.
Można zrobić taki hack (pod warunkiem że nie ma filtrowania pomiedzy hostami).
Ping po calej sieci a potem arp. Odpowiedz na pinga jest najmniej potrzebna :)
Trzeba spróbować zainicjowac dowolne polaczenie na IP ze zgodną maską (hosta inicjujacego),
aby uruchomić mechanizm arp dla anycast'owego macadress.
tablica arp jest w ogóle ciekawa, dzieki niej np. mozna uzyskac polaczenie bez routowania do innego hosta ktory ma IP z innej sieci a jest fizycznie podpiety do naszej
Jeżeli potrzebujesz wyszukiwać swoje usługi to przeczytaj też właśnie o protokołach wyszukiwania usług: SSDP, DNS-SD, mDNS, może nawet AllJoyn. Ogólnie cała kategoria https://en.wikipedia.org/wiki/Zero-configuration_networking może być przydatna.