пятница, 12 сентября 2008 г.

Швейцарский нож для сетей - netcat

Уж очень мне понравился один блог. Парочка статей от туда. Авось и пригодится когданибудь.

Оригинал статьи взят ОТСЮДА!!!

Простая и очень нужная утилита, способная передавать данные по сети. Особенно полезна для небольших локальный сетей, где незачем городить огород с SSH и где требуется просто передать данные на другую машину.


Утилита netcat (или nc) должна быть в любом дистрибутиве, и даже в Knoppix она тоже есть. Если вдруг её нет, установка netcat проблем не составляет:

apt-get install netcat
Работать с ней очень просто, и на примере далее я покажу, как легко и просто передавать файлы при помощи nc. Идея netcat очень проста: он просто перенаправляет поток данных в порт сетевого устройства, а на другом конце поток перенаправляется в файл. Отсюда и название: NETcat - тот же cat, но сетевой. При передаче файлов следует первым запускать nc на сервере (куда будут передаваться данные), а потом уже с клиента (откуда передаются данные) пересылать файлы.


На стороне сервера (куда передаём данные):
Нужно запустить netcat так, чтобы он слушал определённый порт, и перенаправлял получаемый поток в файл. Вот так:
nc -l -p 3333 > file.txt
Это откроет на прослушивание порт 3333, и сохранит полученные данные в файл file.txt в текущем каталоге. При этом программа не вернёт управление консоли, и будет ждать, пока вы вручную завершите её.


На стороне клиента (откуда передаются данные):
Для этого передаём по конвейеру файл nc так:
cat file.txt | nc 192.168.1.1 3333
Это передаст файл file.txt на машину с IP-адресом 192.168.1.1, где уже запущен nc, слушающий порт 3333.

А кроме того
Можно с помощью nc устроить чат с пользователем на другой машине. Со стороны клиента просто пишете
nc 192.168.1.1 3333
и на том конце будет видно всё, что вы печатаете, в том числе кириллицу.


Ссылки:
Первоначально идея была любезно утянута отсюда, разбавлена вот этим и приправлена вот этим материалом.

Комментариев нет: