nc (netcat) — минимальный инструмент для работы с TCP/UDP прямо из терминала.

Проверка порта:

nc -zv 192.168.1.10 22        # открыт ли SSH
nc -zv -w 3 host.example 443  # таймаут 3 сек

-z — не отправлять данные, только проверить; -v — вывести результат.

Мини-сервер для тестов:

# слушать на порту 9000 и выводить всё входящее
nc -lp 9000

# с другой машины — отправить данные
echo "hello" | nc 192.168.1.10 9000

Передача файла по сети (без scp, без авторизации):

# получатель
nc -lp 9999 > received.tar.gz

# отправитель
tar czf - /path/to/dir | nc 192.168.1.10 9999

Banner grabbing — что отвечает сервис:

echo "" | nc -w 1 smtp.example.com 25
nc -w 1 192.168.1.1 80 <<< "HEAD / HTTP/1.0"$'\r\n\r\n'

В Debian/Ubuntu доступны два варианта: netcat-openbsd (рекомендуется) и netcat-traditional. Проверить: nc -h 2>&1 | head -1.

#linux #bash #network #sysadmin