qualcuno mi sa dire dove sbaglio ?
Utilizzando socat voglio effettuare un bridge "serial tcp / tcp
seriale".
Ambiente:
- C'è un server TCP in ascolto su di una macchina Windows
sull'indirizzo 172.30.1.119 sulla porta 2001.
- La macchina linux esegue questo comando " /usr/bin/socat -v -b4 /dev/
ttyS0,raw,echo=0,b19200,ixany=0 TCP4:172.30.1.119:2001 & ". Quindi
tutto quello che gli arriva su seriale, lo spara su tcp.
- C'è una seconda macchina Windows con la seriale sulla com1 e con
Hyper Terminal a 19200 8N1, mentre dall'altra estremità la seriale è
collegata sulla macchina Linux sulla porta TtyS0.
A funzionare funziona, solo non come dico io... ...con l'opzione -b
gli dico di passare 4 byte per volta (socat -b4).
Quando da Hyper Terminal gli passo 123456789abcdefghi, mi arriva sul
server TCP in ascolto 1423 (a capo) 56789abcdefghi. Mentre dovrei
ricevere qualcosa come 1234 (a capo) 5678 (a capo) 9abc (a capo) defg
(a capo) hi ..
capito il problema?
Trovate 3 immagini con l'ambiente:
http://www.invidea.it/emiliano/_ambiente.jpg
http://www.invidea.it/emiliano/_sniff_tcp_01.jpg
http://www.invidea.it/emiliano/_sniff_tcp_02.jpg
Mi sapete aiutare ?
Grazie!