W dniu 2017-05-08 o 21:19, niepełnosprawny intelektualnie 'POPIS/EU pisze:
Najprościej to niech urządzenie po pobraniu IP robi w odstępach czasu jakiś broadcast informujący "jestem i mam IP a.b.c.d". Albo odwrotnie - niech program pod Windows broadcastuje, a urządzenie odpowiada.
Ale skoro to musi być LAN, bo tylko tam broadcasty przechodzą, to ja bym: olał protokół IP, wyłuskał urządzenie po Ethernecie i gadał wyłącznie po Ethernecie, nawet w razie potrzeby zestawił połączenie TCP over Ethernet.
W dniu 2017-05-08 o 23:24, Grzegorz Niemirowski pisze:
Jedyna trudność to obejście zabezpieczeń, zwłaszcza na platformie Windows. Z uwagi na malware używający podsystemu sieciowego Windowsa w różny dziwny sposób, Microsoft poblokował wiele rzeczy, np. otwierając socket w trybie gołym IP (bez TCP czy UDP), nie możemy wysłać pakietu IP z identyfikatorem protokołu 6 (TCP) albo 17 (UDP), bo w ten sposób omijamy normalną implementację TCP i zdaniem Microsoftu możemy narobić jakichś szkód. Jak otworzymy socket w trybie Ethernet Frame, pewnie będzie jeszcze więcej ograniczeń, ale ogólnie to się da, bo mam taki stary już programik wysyłający ramkę Wake-on-lan i on działa poprawnie nawet pod najnowszymi windowsami.
Zaś jeśli chodzi o resztę implementacji, to ja nie widzę większej trudności w pracy z ramką Ethernet, niż z datagramem UDP. Przynajmniej na *NIX-ach.
Nadal jednak jest to niepotrzebne kombinowanie, szczególnie jeśli naprawdę chcesz nawiązać połączenie TCP bez warstwy IP. Prościej po prostu wysłać broadcast żeby poznać IP drugiego hosta, tak jak pisałeś, i korzystać z istniejącego stosu zamiast tworzyć alternatywny.
W dniu 2017-05-09 o 22:19, Grzegorz Niemirowski pisze:
Ale istnieje pojęcie Ethernet Przemysłowy (Industrial Ethernet) i tam takie rozwiązania są standardem - są na to gotowe biblioteki.
A jedna z korzyści jest taka, że haker nie może wówczas z zewnątrz połączyć się z takim urządzeniem - jeśli nie ma IP, to na zewnątrz ono nie istnieje, nawet jeśli po tym samym LAN-ie biegają pakiety IP.
Ale co bz tego? Więlkszośćb popularnych ataków wykorzystuje (przejęte) urządzenia brzegowe jako punktu styku z celem, to że cel atalu nie ma IP nie ma znaczenia.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.