 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.58 Kraj: Trzic
|
Objavljeno: Tor Jul 25, 2023 2:15 pm Naslov sporočila: MiTM spremembe UDP paketov |
|
|
Imam Etrelovo polnilnico za EV in njihov LoadGuard (merilec porabe). Zadeva žal ne podpira urnikov za porabo hiše ter podpira omejevanje samo na nivoju tokov po fazah. Zato si planiram sam implementirati podporo za časovne bloke, ki se uvajajo v 2024.
Ker mi izmerjena porabljena energija na polnilnici ne pomeni kaj dosti, bom zadevo realiziral tako, da bom pametno kvaril meritve LoadGuarda (izmerjene tokove in moči ustrezno premikal glede na dejanske meritve in časovni blok).
Rad bi se izognil samogradnji HW, zato tu iščem kakšno idejo - rad bi imel napravo z dvema Ethernet vmesnikoma, ki navidez deluje transparentno na Link nivoju. Če torej prileti paketek na eni strani, ga pošljem na drugi strani enakega ven (in obratno). Če pa naletim na paketek s točno znano strukturo, ga spremenim in prepošljem popravljenega.
Bi to šlo enostavno s kakšno ARM plato s linuxom, dvema NIC (npr. prek USB) in nekim procesom v user prostoru? V linux kernel se ne bi rad spuščal. Podatkov je relativno malo (nekaj paketov na sekundo).
_________________ Lp,
Matevž |
|
Nazaj na vrh |
|
 |
mosqito Član


Pridružen-a: Čet 07 Apr 2016 23:22 Prispevkov: 3534 Aktiv.: 31.40
|
Objavljeno: Tor Jul 25, 2023 2:52 pm Naslov sporočila: |
|
|
Opisal si funkcionalnost proxyja. Rabiš dve mrežni, pa enega, ki vmes posluša. Lahko narediš v pythonu. Tule je primer preprostega proxyja, ki ga lahko nadgradiš glede na to, kaj prileti in kako bi rad spremenil pakete:
https://github.com/EtiennePerot/misc-scripts/blob/master/udp-relay.py
_________________ Always going the extra mile. |
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.58 Kraj: Trzic
|
Objavljeno: Tor Jul 25, 2023 3:13 pm Naslov sporočila: |
|
|
Večino proxy-jev deluje na IP nivoju, za delovanje opisanega pa morajo biti nespremenjeni tudi MAC naslovi (napravi se prepoznata glede na MAC).
_________________ Lp,
Matevž |
|
Nazaj na vrh |
|
 |
bostjang Član

Pridružen-a: Tor 03 Jan 2006 15:29 Prispevkov: 3477 Aktiv.: 14.64 Kraj: Postojna
|
Objavljeno: Tor Jul 25, 2023 3:26 pm Naslov sporočila: |
|
|
Lahko pa se prestaviš na analogno stran in simuliraš dodatni tok. Skozi tokovnike spelješ več ovojev tanjše žice. Skozi navitje poženeš tok v fazi z omrežno napetostjo ustrezen nivoju, ki ga želiš zmanjšati. Tako bo LoadGuard mislil, da teče večji tok. Seveda je problem vektorskega seštevanja (in tudi oblike), ampak dokler so fazni koti majhni (odsotnost velikih motorjev ipd.) ne bi smel biti problem.
|
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.58 Kraj: Trzic
|
Objavljeno: Tor Jul 25, 2023 3:27 pm Naslov sporočila: |
|
|
bostjang je napisal/a: |
Lahko pa se prestaviš na analogno stran in simuliraš dodatni tok. Skozi tokovnike spelješ več ovojev tanjše žice. Skozi navitje poženeš tok v fazi z omrežno napetostjo ustrezen nivoju, ki ga želiš zmanjšati. Tako bo LoadGuard mislil, da teče večji tok. Seveda je problem vektorskega seštevanja (in tudi oblike), ampak dokler so fazni koti majhni (odsotnost velikih motorjev ipd.) ne bi smel biti problem. |
Tudi na to sem že pomislil. Težava je, da potem moram še dodaten merilnik postavit, da sploh vem kolikšen tok je potreben.
_________________ Lp,
Matevž |
|
Nazaj na vrh |
|
 |
bostjang Član

Pridružen-a: Tor 03 Jan 2006 15:29 Prispevkov: 3477 Aktiv.: 14.64 Kraj: Postojna
|
Objavljeno: Tor Jul 25, 2023 3:32 pm Naslov sporočila: |
|
|
Si povprašal na Etrel? Mogoče pa kaj načrtujejo v smeri urnikov in nadgradnje FW.
|
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.58 Kraj: Trzic
|
Objavljeno: Tor Jul 25, 2023 4:08 pm Naslov sporočila: |
|
|
Sem, pa ni zaslediti interesa. Drugače sem jim že v začetku leta pisel glede enega drugega bug-a (neupoštevanje omejitev ob procesu zagona polnilnice, ko dejansko začne polniti čeprav sistem še ni pognan do konca), pa še ni rešitve.
_________________ Lp,
Matevž |
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.58 Kraj: Trzic
|
Objavljeno: Tor Jul 25, 2023 4:38 pm Naslov sporočila: |
|
|
Našel https://scapy.net/. Mogoče bo celo šlo s starim RPi 1...
_________________ Lp,
Matevž |
|
Nazaj na vrh |
|
 |
Dorijan Član



Pridružen-a: Ned 22 Jun 2008 10:48 Prispevkov: 2564 Aktiv.: 12.36 Kraj: južnoprimorska
|
Objavljeno: Tor Jul 25, 2023 11:38 pm Naslov sporočila: |
|
|
Poglej bolho za kak ethernet Hub namesto switch.
_________________ Če nekaj deluje, razstavi in ugotovi zakaj. |
|
Nazaj na vrh |
|
 |
bostjang Član

Pridružen-a: Tor 03 Jan 2006 15:29 Prispevkov: 3477 Aktiv.: 14.64 Kraj: Postojna
|
Objavljeno: Sre Jul 26, 2023 6:33 am Naslov sporočila: |
|
|
Na OS (Linux, Windows) bi najbrž imel težave z delovanjem mrežnega servisa. Paket bi namreč iz NIC-a moral poslati na naslov, ki ga ima drugi NIC. OS bi tak paket kar lokalno dostavil sam sebi, brez vmesne žice. Torej najprej to preveri.
Mikrokrmilniki imajo običajno sem en MAC. Lahko pa bi vzel dva NIC-a na SPI in ju povezal na isti mikrokrmilnik. FW bi lahko pripravil na osnovi lwIP. Mogoče bi tudi spodnjega moral prilagoditi, da bi se izognil zgornji težavi.
|
|
Nazaj na vrh |
|
 |
yacksy Član


Pridružen-a: Pon 23 Nov 2009 8:27 Prispevkov: 499 Aktiv.: 2.62 Kraj: Okolica Šmarjeških toplic
|
Objavljeno: Sre Jul 26, 2023 7:07 am Naslov sporočila: |
|
|
Nisem prepričan, če je spodnji predlog odgovor na vprašanje, sigurno pa je povezano z njim. Ko berem prvi post, mi pade na pamet "hardverski sniffer" za omrežje. Mislim, da je tole ena cenejših variant na trgu:
https://midbittech.com/index.html
http://midbittech.com/files/GigE/Details.htm#features
Če nič drugega, mogoče sproži kako idejo ...
_________________ [slovenščina je zame španska vas] happens. |
|
Nazaj na vrh |
|
 |
mosqito Član


Pridružen-a: Čet 07 Apr 2016 23:22 Prispevkov: 3534 Aktiv.: 31.40
|
Objavljeno: Sre Jul 26, 2023 7:56 am Naslov sporočila: |
|
|
bostjang je napisal/a: |
Mikrokrmilniki imajo običajno sem en MAC. Lahko pa bi vzel dva NIC-a na SPI in ju povezal na isti mikrokrmilnik. FW bi lahko pripravil na osnovi lwIP. Mogoče bi tudi spodnjega moral prilagoditi, da bi se izognil zgornji težavi. |
To se da rešiti s kakim WizNET MAC krmilnikom na SPI. Ena opcija bi bila RP2040 in dva W5500.
Jaz sem po tem viru naredil svoj mrežni vmesnik z analognimi in digitalnimi I/O in dela odličćno. Programiraš kar v uPython dialektu (circuitpython). Brez težav lahko dodaš dva (ali več) W5500 na SPI. Glede na to, da je paketov malo, ne bi bila neka težava to pohendlat.
_________________ Always going the extra mile. |
|
Nazaj na vrh |
|
 |
Proteus Član



Pridružen-a: Sre 15 Jun 2005 10:03 Prispevkov: 1943 Aktiv.: 8.18
|
Objavljeno: Sre Jul 26, 2023 10:50 am Naslov sporočila: |
|
|
Tole diši po hudih komplikacijah.
Ad1: Tokove lahko fejkaš tudi tako, da vklapljaš neko majhno breme (n.pr. s Shellijem, ki je itak časovno sinhroniziran), njegov tok pa povečaš tako, da okrog tokovnika od LoadGuarda naviješ več ovojev.
Ad2: zakaj bi prestrezal in kvaril podatke iz LoadGuarda, če ga pa lahko simuliraš? To gre že z navadno malino.
|
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.58 Kraj: Trzic
|
Objavljeno: Sre Jul 26, 2023 7:13 pm Naslov sporočila: |
|
|
Proteus je napisal/a: |
Tole diši po hudih komplikacijah.
Ad1: Tokove lahko fejkaš tudi tako, da vklapljaš neko majhno breme (n.pr. s Shellijem, ki je itak časovno sinhroniziran), njegov tok pa povečaš tako, da okrog tokovnika od LoadGuarda naviješ več ovojev.
Ad2: zakaj bi prestrezal in kvaril podatke iz LoadGuarda, če ga pa lahko simuliraš? To gre že z navadno malino. |
Testiram paket scapy in zaenkrat kaže dobro - na RPi B (1!) z dodatnim USB Ethernet vmesnikom lahko snifam vse pakete, pošiljam pa tudi lahko poljubne (tudi s poljubnim izhodnim MAC-om). Funkcijo proxy-ja planiram implementirat v Pythonu.
Drugače pa ja, lahko bi vzel dva MCU-ja z Ethernetom, ju povezal preko SPI ter naredil nekaj z ali brez RTOS-a. Za DIY značko super, ampak precej okorno.
Protokol LoadGuard-a ni objavljen, polnilnica in LoadGuard se najdeta preko UDP broadcastov. Vsebine vseh paketov še ne razumem čisto, vem pa, kateri je paket z meritvami in kaj vsebuje. Če bi hotel emulirati LoadGuard, potrebujem 3-f merilnik porabe (ne vem katere vse podatke polnilnica uporablja), v priponki je screenshot iz njihovega testnega programa.
Opis: |
|
Velikost datoteke: |
150.97 KB |
Pogledana: |
9 krat |

|
_________________ Lp,
Matevž |
|
Nazaj na vrh |
|
 |
bostjang Član

Pridružen-a: Tor 03 Jan 2006 15:29 Prispevkov: 3477 Aktiv.: 14.64 Kraj: Postojna
|
Objavljeno: Čet Jul 27, 2023 7:09 am Naslov sporočila: |
|
|
NeoTO je napisal/a: |
bostjang je napisal/a: |
Lahko pa se prestaviš na analogno stran in simuliraš dodatni tok. |
:) Tudi na to sem že pomislil. Težava je, da potem moram še dodaten merilnik postavit, da sploh vem kolikšen tok je potreben. |
Iz tvoje zadnje priponke sklepam, da imaš samo eno fazo. V tem primeru ne bi rabil dodatne meritve (toka), saj bi preprosto simuliral tok, ki ustreza razliki med nastavljenim maksimumom in trenutno želenim maksimumom.
|
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 9 dni
Powered by phpBB © 2001, 2005 phpBB Group
|