Использование BusyBox версии netcat для прослушивания tcp-порта

Мне нужно прослушать какой-то произвольный порт внутри встроенной коробки Linux. Я выбрал порт 6660, потому что он в любом случае предназначен для незашифрованных подключений, а поскольку на Linux-машине работает настроенная ОС Linux, открытых портов не так много. Я обнаружил, что netcat (nc в командной строке) будет самым простым и лучшим готовым решением для этого, поэтому мне не нужно начинать программировать какую-то программу на C для этой цели.

Мне удалось понять команду и параметры, и я реализовал простейший способ прослушивания обычного текста на моем ПК с другого ПК, например:

sven@sven:~$ nc 192.168.4.110 6660
sven@sven:~$ hello there!
anotherUser@userg:~$ nc -l -p 6660
anotherUser@userg:~$ hello there!

Но дело в том, что инструмент netcat поставляется с пакетом busybox на этом компьютере с Linux. И я не уверен, каким будет синтаксис прослушивания порта (например, 6660). Я всегда получаю один и тот же диалог:

~ # 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

Также я пробовал много других способов реализовать прослушивание, но не могу этого сделать. Я полагаю, по крайней мере, это даст мне какие-то варианты? также

nc -h

or

nc --help

не давайте никаких "минусовых" вариантов

Но отправка текста из встроенного ящика Linux на мой компьютер работает:

~ # nc 192.168.4.130 6660
fsdf
tere
^C
~ #
sven@sven:~$ nc -l -p 6660
fsdf
tere

Встроенная коробка Linux имеет полнофункциональное сетевое соединение внутри той же локальной сети и имеет существующие каналы eth0 и lo.

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öövõite!


person arapEST    schedule 14.03.2012    source источник


Ответы (1)


Вот страница руководства по реализации nc в busybox.

Правильный синтаксис

nc -l -p <port>

Проблема, я думаю, в том, что ваша версия busybox скомпилирована без возможности прослушивания nc. Действительно, во время сборки есть параметр конфигурации NC_SERVER, который необходимо включить, чтобы включить эту функцию.

Можете ли вы собрать еще один nc, возможно, из этой версии, и скопировать двоичный файл на встроенный хост? Возможно, вам потребуется создать кросс-компиляторную среду.

person jmtd    schedule 14.03.2012