TGViewer
Linux Ninja Linux Ninja @linux_ninjas · 3.42K subscribers
Post #1178 477
nsntrace — инструмент для захвата трафика нужного приложения в Linux.

С помощью создания виртуальных интерфейсов и отдельного сетевого пространства имён, nsntrace запускает нужное нам приложение, и выполняет трассировку трафика только для него используя libpcap. Результат работы может быть либо перенаправлен в другое приложение, либо в файл, который можно будет прочитать любой стандартной утилитой, умеющей работать с pcap.

1. Ставим nsntrace из репозитория:

# apt install nsntrace
# dnf install nsntrace


2. Пробуем выполнить захват трафика для обычного wget, который обращается к сайту. По-умолчанию, дамп будет иметь имя nsntrace.pcap:

# nsntrace --use-public-dns wget -q -O /dev/null https://sysadmin.pm/
Starting network trace of 'wget' on interface enp1s0.
Your IP address in this trace is 172.19.28.255.
Use ctrl-c to end at any time.
Finished capturing 131 packets.


Аналогично для PHP скрипта, например:

# nsntrace php -f index.php
Starting network trace of 'php' on interface enp1s0.
Your IP address in this trace is 172.19.213.255.
Use ctrl-c to end at any time.
Finished capturing 52 packets.


3. Работаем с дампом привычной утилитой, в данном случае tcpick:

# tcpick -r nsntrace.pcap 
Starting tcpick 0.2.1 at 2023-04-28 12:28 MSK
Timeout for connections is 600
tcpick: reading from nsntrace.pcap
1 SYN-SENT 172.19.28.255:40638 > 104.244.78.134:https
1 SYN-RECEIVED 172.19.28.255:40638 > 104.244.78.134:https
1 ESTABLISHED 172.19.28.255:40638 > 104.244.78.134:https
1 FIN-WAIT-1 172.19.28.255:40638 > 104.244.78.134:https
1 FIN-WAIT-2 172.19.28.255:40638 > 104.244.78.134:https
1 RESET 172.19.28.255:40638 > 104.244.78.134:https
tcpick: done reading from nsntrace.pcap

131 packets captured
1 tcp sessions detected


Собрать nsntrace из исходников, при необходимости можно так:

# apt install automake docbook-xml docbook-xsl iptables libnl-route-3-dev libpcap-dev pkg-config xsltproc git make gcc
# git clone https://github.com/nsntrace/nsntrace
# cd nsntrace/
# ./autogen.sh
# ./configure
# make


Github проекта: https://github.com/nsntrace/nsntrace

✈️ Linux Ninja
  • ❤ 7
More from @linux_ninjas
  1. Oct 6, 2026Linux 7.4 готовится к поддержке Mac на Apple M4. В список также попал MacBook Neo на A18 P…
  2. Oct 3, 2026Linux-совет: сколько места занимают файлы и папки Чтобы проверить место, занимаемое папкой…
  3. Oct 3, 2026Теперь VMware можно заменить неизменяемой Linux-платформой, на которой одновременно работа…
  4. Oct 2, 2026От DNS до Pod: как работает Kubernetes Gateway API Типичная схема с облачным балансировщик…
  5. Oct 2, 2026👩‍💻 Всем программистам посвящается! Вот 14 авторских обучающих IT каналов по самым востр…
  6. Oct 2, 2026Linux-совет: как проверить свободное место на диске Выполните: df -h Команда покажет занят…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →