Göra om UDP-data till seriell data
Re: Göra om UDP-data till seriell data
Har jag fått det om bakfoten eller läst för snabbt, visst vill du dirigera om trafik som kommer in på nätverkskortet via UDP till ett program som lyssnar på serieporten på samma dator?
Då kommer väl inte netcat att funka, då skickas/reläas udp-datat UT på serieporten.(?)
Då kommer väl inte netcat att funka, då skickas/reläas udp-datat UT på serieporten.(?)
- Magnus_K
- EF Sponsor
- Inlägg: 5854
- Blev medlem: 4 januari 2010, 17:53:25
- Ort: Skogen mellan Uppsala-Gävle
Re: Göra om UDP-data till seriell data
@mankan:
Ok. Ska kika mer på det i helgen. Tack för hjälpen!
@@sc3:
Exakt så är det jag försöker göra/förklara
Ok. Ska kika mer på det i helgen. Tack för hjälpen!
@@sc3:
Exakt så är det jag försöker göra/förklara

Re: Göra om UDP-data till seriell data
Nu är jag dåligt påläst om netcat/socat, men kan dessa göra virtuella comportar i windows? Lösningen kan vara annars att använda http://com0com.sourceforge.net som skapar två virtuella comportar som är ihopkopplade med "nollmodemskabel" i kombination med tex netcat
detta gör att du får in din UDP trafik till comporten(virtuell) som Lizerds program lyssnar på
detta gör att du får in din UDP trafik till comporten(virtuell) som Lizerds program lyssnar på
Kod: Markera allt
UDP --> netcat(omvandlar UDP till virtuellcomport) --> virtuellcomport --nullmodem virtuell --virtuellcomport -> Lizerd program
- Magnus_K
- EF Sponsor
- Inlägg: 5854
- Blev medlem: 4 januari 2010, 17:53:25
- Ort: Skogen mellan Uppsala-Gävle
Re: Göra om UDP-data till seriell data
Vet inte om netcat kan lösa det så. Tycker mankan antyder det i alla fall, eller tolkar jag det fel?
Den setup:en skulle nog fungera sc3! Lite synd att man inte kan baka in com0com i .bat-filen men det går bra.
Får ta och testa lite nu men skulle någon komma på något annat så är det bara att hojta till.
Den setup:en skulle nog fungera sc3! Lite synd att man inte kan baka in com0com i .bat-filen men det går bra.
Får ta och testa lite nu men skulle någon komma på något annat så är det bara att hojta till.
- Magnus_K
- EF Sponsor
- Inlägg: 5854
- Blev medlem: 4 januari 2010, 17:53:25
- Ort: Skogen mellan Uppsala-Gävle
Re: Göra om UDP-data till seriell data
Tror jag är nära nu men behöver verkligen hjälp. Får inte till netcat-biten i windowsburken.
Det jag gjort hittills är:
Om jag öppnar "Command Prompt" och försöker mig på ett nc-kommando så förstår den inte vad jag försöker göra.
Tar jag mig till nc.exe och kör programmet så får jag upp: Cmd line: och kan därefter köra de kommandon jag vill.
Två problem:
Jag har provat alla möjliga varianter men antingen så verkar programmet låsa sig (får aldrig något svar) eller så får jag svar direkt att den hittar ingen data.
Det jag gjort hittills är:
- - Installerat lizerdboys mjukvara och satt upp den till att lyssna på COM55
- Installerat com0com och skapat två virtuella portar med nollmodem mellan (COM54 och COM55)
- Installerat netcat på RPi:n
- Skickat UDP data från RPi:n mha netcat och bekräftat att det fungerar med Wireshark
- Installerat netcat på windowsburken
- Skapat en .bat-fil som är körbar men dock ej fungerande.
Om jag öppnar "Command Prompt" och försöker mig på ett nc-kommando så förstår den inte vad jag försöker göra.
Tar jag mig till nc.exe och kör programmet så får jag upp: Cmd line: och kan därefter köra de kommandon jag vill.
Två problem:
- - När jag kör .bat-filen så vet jag inte hur jag gör för att först köra nc.exe och sedan sätta in raden som mankan skrev
- Vet inte heller hur jag ska få netcat att lyssna en viss stund. Det verkar bara lyssna 1 sek eller något och jag lyckas aldrig med tajmingen, tror jag.
Jag har provat alla möjliga varianter men antingen så verkar programmet låsa sig (får aldrig något svar) eller så får jag svar direkt att den hittar ingen data.
Re: Göra om UDP-data till seriell data
I den man-sidan till nc jag hittade (https://linux.die.net/man/1/nc) så står det att det är fel att använda -p i kombination med -l. Dessutom står det att -w inte fungerar med -l. (Nu vet jag visserligen inte om det är exakt samma version av nc som du kör.)
Så jag tror ditt kommando nc -lu -w 5 -p 5004 > \\.\COM54 inte är helt rätt.
Du borde ju ta ett steg i taget.
Börja med att kolla om den kan lyssna på port 5004 och ta emot udp-paket och visa dem på skärmen. Det borde vara nc -lu 5004
Då bör den visa datat som den tar emot på skärmen. Jag tror du kan testa att på rpin köra nc -u <windowsdatorns ip> 5004 och skriva nåt.
Men eftersom udp är "stateless" så kommer den antagligen att koppla ner efter första paketet. Enligt man-sidan ska man använda -k för att få den att fortsätta vänta på fler anslutningar.
Sen är väl inte> \\.\COM54 rätt syntax för att styra om till COM-port i Windows? Ska det inte vara bara > COM54?
Så jag tror ditt kommando nc -lu -w 5 -p 5004 > \\.\COM54 inte är helt rätt.
Du borde ju ta ett steg i taget.
Börja med att kolla om den kan lyssna på port 5004 och ta emot udp-paket och visa dem på skärmen. Det borde vara nc -lu 5004
Då bör den visa datat som den tar emot på skärmen. Jag tror du kan testa att på rpin köra nc -u <windowsdatorns ip> 5004 och skriva nåt.
Men eftersom udp är "stateless" så kommer den antagligen att koppla ner efter första paketet. Enligt man-sidan ska man använda -k för att få den att fortsätta vänta på fler anslutningar.
Sen är väl inte> \\.\COM54 rätt syntax för att styra om till COM-port i Windows? Ska det inte vara bara > COM54?
Re: Göra om UDP-data till seriell data
Har ingen dator framför mig just nu men jag kan göra ett försök till hjälp;
Du ska inte starta nc.exe och sedan ge kommando utan du startar det med växlarna mankan föreslog. Det som händer då är att netcat startar och kör en evig loop med instruktionerna som du angav. Prova detta;
Edit: Nerre hann svara innan, testa det han skriver
Du ska inte starta nc.exe och sedan ge kommando utan du startar det med växlarna mankan föreslog. Det som händer då är att netcat startar och kör en evig loop med instruktionerna som du angav. Prova detta;
Kod: Markera allt
nc.exe -lun -p 5004 > \\.\COM54
-
- Inlägg: 1409
- Blev medlem: 29 januari 2011, 21:06:30
- Ort: Lapplandet
Re: Göra om UDP-data till seriell data
Jo det är rätt. Kortformen COMx fungerar bara på port 1-9 för att de är reserverade alias för \\.\COMx (pga bakåtkompatibilitet med DOS). För högre nummer måste man använda prefix för att visa att det är en device vid namn COMx man vill använda. Annars tolkas det som ett filnamn istället.Nerre skrev:Sen är väl inte> \\.\COM54 rätt syntax för att styra om till COM-port i Windows? Ska det inte vara bara > COM54?
Re: Göra om UDP-data till seriell data
Intressant, jag hade ingen aning om att det fanns ett device-prefix i Windows, har aldrig sett det använt förr.
Nu när jag visste om det kunde jag snabbt hitta denna sida
https://msdn.microsoft.com/en-us/librar ... s.85).aspx
Nu när jag visste om det kunde jag snabbt hitta denna sida
https://msdn.microsoft.com/en-us/librar ... s.85).aspx
Re: Göra om UDP-data till seriell data
Fungerande länk. (Tips: "förhandsgranska" först och kolla att länken fungerar...)
https://msdn.microsoft.com/en-us/librar ... s.85).aspx
https://msdn.microsoft.com/en-us/librar ... s.85).aspx
Re: Göra om UDP-data till seriell data
Jag bara kopierade från adressfältet och klistrade in, med tanken att den som ville kolla sidan fick kopiera länken, jag hade ingen tanke på att forumet försöker omvandla det till en länk automatiskt.
Frågan är varför phpBB klipper länken innan första högerparantesen, det verkar ologiskt att den sväljer vänsterparantesen men inte högerparantesen...
(I t.ex. Word och Outlook på jobbet har jag slagit av det här med automatisk omvandling till klickbara länkar, jag tycker det är ett otyg eftersom det ofta blir fel.)
Frågan är varför phpBB klipper länken innan första högerparantesen, det verkar ologiskt att den sväljer vänsterparantesen men inte högerparantesen...
(I t.ex. Word och Outlook på jobbet har jag slagit av det här med automatisk omvandling till klickbara länkar, jag tycker det är ett otyg eftersom det ofta blir fel.)
Re: Göra om UDP-data till seriell data
Det kan finnas många anledningar till att en kopierad länk inte fungerar.
Jag brukar som rutin prova att öppna länkarna från förhandsgranskningen.
Och jag använder alltid URL-taggarna, det minskar risken för problem.
*Så* jäkla bråttom har man knappast...
Jag brukar som rutin prova att öppna länkarna från förhandsgranskningen.
Och jag använder alltid URL-taggarna, det minskar risken för problem.
*Så* jäkla bråttom har man knappast...

- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Göra om UDP-data till seriell data
Jag hittade mig en dator och fick lite tid att testa, tyvärr ingen windwsmaskin utan endast linux. Nerre har delvis rätt ovan, när netcat startar en UDP-server och tar emot första paketet så ligger den kvar och väntar på paket från samma ip-adress och port som det första kom ifrån. Det gör att den inte svarar på upprepade anrop, såvida det inte är en "uppkopplad" uppkoppling, likt TCP. Det verkar enligt internet ha att göra gentemot underliggande OS.Nerre skrev: Men eftersom udp är "stateless" så kommer den antagligen att koppla ner efter första paketet. Enligt man-sidan ska man använda -k för att få den att fortsätta vänta på fler anslutningar.
socat har löst det genom att forka en process för varje inkommande anrop. Dessvärre finns den inte lika lätt för windows som netcat.
Såhär startas serverdelen när man vill få ut det på skärmen:
Kod: Markera allt
socat - udp4-listen:5004,reuseaddr,fork
ref:
https://github.com/StudioEtrange/socat-windows