2012-03-14 8 views
8

Ho bisogno di ascoltare alcune porte arbitrarie all'interno della Linux embedded box. Ho scelto la porta 6660 perché è pensata per le connessioni non crittografate e dal momento che la scatola Linux con sistema operativo Linux personalizzato non ha molte porte aperte. Ho scoperto che netcat (nc su riga di comando) sarebbe la soluzione più facile e la soluzione migliore per questo, quindi non devo iniziare a programmare un programma C per questo scopo.Utilizzo della versione BusyBox di netcat per l'ascolto della porta TCP

sono riuscito a cogliere il comando e opzioni e ho implementato modo più semplice per ascoltare testo in chiaro sul mio PC da un altro PC in questo modo:

[email protected]:~$ nc 192.168.4.110 6660 
[email protected]:~$ hello there! 
[email protected]:~$ nc -l -p 6660 
[email protected]:~$ hello there! 

Ma il caso è che lo strumento netcat è in arrivo con la busybox pacchetto su quella macchina Linux. E non sono sicuro di quale sarebbe la sintassi su come ascoltare una porta (6660 per esempio). Ho sempre trovato la stessa finestra di dialogo:

~ # nc -l -p 6660 
BusyBox v1.17.1 (Debian 1:1.17.1-8) multi-call binary. 
Usage: nc [IPADDR PORT]  
Open a pipe to IP:PORT 

Anche io ho provato molti altri modi come implementare l'ascolto, ma cant avere fatto. Suppongo che almeno mi darebbe qualche possibilità? anche

nc -h 

o

nc --help 

Non dia alcuna opzione "meno"

ma l'invio il testo dalla casella di Linux embedded al mio PC funziona: scatola da incasso

~ # nc 192.168.4.130 6660 
fsdf 
tere 
^C 
~ # 
[email protected]:~$ nc -l -p 6660 
fsdf 
tere 

Linux ha una connessione di rete completamente funzionale all'interno della stessa rete locale e ha collegamenti eth0 e lo esistenti

eth0  Link encap:Ethernet HWaddr D0:E3:47:00:03:5F 
      inet addr:192.168.4.179 Bcast:192.168.4.255 Mask:255.255.255.0 
      UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 
      RX packets:28046281 errors:0 dropped:0 overruns:0 frame:0 
      TX packets:428464 errors:0 dropped:0 overruns:0 carrier:0 
      collisions:0 txqueuelen:1000 
      RX bytes:2458890234 (2.2 GiB) TX bytes:83021395 (79.1 MiB) 

lo  Link encap:Local Loopback 
      inet addr:127.0.0.1 Mask:255.0.0.0 
      UP LOOPBACK RUNNING MTU:16436 Metric:1 
      RX packets:2282 errors:0 dropped:0 overruns:0 frame:0 
      TX packets:2282 errors:0 dropped:0 overruns:0 carrier:0 
      collisions:0 txqueuelen:0 
      RX bytes:444956 (434.5 KiB) TX bytes:444956 (434.5 KiB) 

Tööõite!

risposta

11

Here's the manual page for busybox's nc implementation.

La sintassi corretta è

nc -l -p <port> 

Il problema è, credo, che la versione di busybox viene compilato senza NC capacità di ascolto. Effettivamente c'è un'opzione di configurazione in fase di compilazione, NC_SERVER, che deve essere abilitata per attivare quella funzione.

È possibile creare un altro e copiare il file binario nell'host incorporato? Potrebbe essere necessario creare un ambiente cross-compiler.

Problemi correlati