посмотреть активные сетевые подключения и адреса
Добавлено: 07 май 2026, 06:52
В Debian (как и в большинстве других дистрибутивов Linux) есть несколько отличных способов посмотреть активные сетевые подключения и адреса, с которыми связывается ваша система.
Выбор инструмента зависит от того, что именно вам нужно: быстрый снимок текущих соединений, интерактивный мониторинг в реальном времени или детальный анализ трафика.
Вот лучшие и самые популярные утилиты для этой задачи.
---
## 1. Утилита `ss` (Современный стандарт)
Команда `ss` (socket statistics) — это современная замена старой утилиты `netstat`. Она работает быстрее и выводит подробную информацию о сетевых сокетах.
Чтобы увидеть все установленные TCP-соединения с адресами и именами процессов, выполните:
```bash
sudo ss -tupn
```
**Расшифровка ключей:**
* `-t` — показывать только TCP-соединения.
* `-u` — показывать UDP-соединения.
* `-p` — показать, какому процессу/программе принадлежит соединение (требуются права `sudo`).
* `-n` — показывать числовые значения портов и IP-адресов (без преобразования их в доменные имена, что ускоряет вывод).
> **Совет:** Если вы хотите, наоборот, видеть доменные имена сайтов (например, `google.com` вместо IP-адреса), уберите ключ `-n`:
> `sudo ss -tup`
---
## 2. Утилита `lsof` (Связь файлов и процессов)
В Linux «всё есть файл», и сетевые сокеты тоже. Утилита `lsof` (list open files) отлично показывает, какие процессы открыли сетевые соединения.
Для просмотра интернет-соединений выполните:
```bash
sudo lsof -i -P -n
```
**Расшифровка ключей:**
* `-i` — выбирать только сетевые файлы (соединения).
* `-P` — показывать номера портов цифрами (а не именами служб вроде `http`/`ssh`).
* `-n` — не разрешать IP-адреса в имена хостов (работает быстрее).
Если вам нужны только установленные соединения (без прослушиваемых портов):
```bash
sudo lsof -i ESTABLISHED -P -n
```
---
## 3. Интерактивный мониторинг в реальном времени
Если вам нужно в живом режиме видеть, какое приложение "жрёт" трафик и куда именно оно обращается, стандартных утилит может не хватить. Здесь помогут интерактивные инструменты.
### `iftop` (Трафик по направлениям)
Показывает сетевую активность на выбранном интерфейсе в виде удобной таблицы, которая обновляется в реальном времени.
1. Установите её:
```bash
sudo apt update && sudo apt install iftop
```
2. Запустите (указав ваш сетевой интерфейс, например `eth0` или `wlan0`):
```bash
sudo iftop -i eth0
```
### `nethogs` (Трафик в разрезе процессов)
Эта утилита уникальна тем, что группирует весь сетевой трафик по конкретным процессам (PID), показывая, какая именно программа качает данные прямо сейчас и куда.
1. Установите её:
```bash
sudo apt update && sudo apt install nethogs
```
2. Запустите:
```bash
sudo nethogs
```
---
## 4. Классический `netstat` (Если привыкли к старому)
В современных версиях Debian утилита `netstat` по умолчанию не установлена, так как считается устаревшей. Но если она вам нужна:
1. Установите пакет `net-tools`:
```bash
sudo apt update && sudo apt install net-tools
```
2. Запустите команду для просмотра активных соединений:
```bash
sudo netstat -tunp
```
Выбор инструмента зависит от того, что именно вам нужно: быстрый снимок текущих соединений, интерактивный мониторинг в реальном времени или детальный анализ трафика.
Вот лучшие и самые популярные утилиты для этой задачи.
---
## 1. Утилита `ss` (Современный стандарт)
Команда `ss` (socket statistics) — это современная замена старой утилиты `netstat`. Она работает быстрее и выводит подробную информацию о сетевых сокетах.
Чтобы увидеть все установленные TCP-соединения с адресами и именами процессов, выполните:
```bash
sudo ss -tupn
```
**Расшифровка ключей:**
* `-t` — показывать только TCP-соединения.
* `-u` — показывать UDP-соединения.
* `-p` — показать, какому процессу/программе принадлежит соединение (требуются права `sudo`).
* `-n` — показывать числовые значения портов и IP-адресов (без преобразования их в доменные имена, что ускоряет вывод).
> **Совет:** Если вы хотите, наоборот, видеть доменные имена сайтов (например, `google.com` вместо IP-адреса), уберите ключ `-n`:
> `sudo ss -tup`
---
## 2. Утилита `lsof` (Связь файлов и процессов)
В Linux «всё есть файл», и сетевые сокеты тоже. Утилита `lsof` (list open files) отлично показывает, какие процессы открыли сетевые соединения.
Для просмотра интернет-соединений выполните:
```bash
sudo lsof -i -P -n
```
**Расшифровка ключей:**
* `-i` — выбирать только сетевые файлы (соединения).
* `-P` — показывать номера портов цифрами (а не именами служб вроде `http`/`ssh`).
* `-n` — не разрешать IP-адреса в имена хостов (работает быстрее).
Если вам нужны только установленные соединения (без прослушиваемых портов):
```bash
sudo lsof -i ESTABLISHED -P -n
```
---
## 3. Интерактивный мониторинг в реальном времени
Если вам нужно в живом режиме видеть, какое приложение "жрёт" трафик и куда именно оно обращается, стандартных утилит может не хватить. Здесь помогут интерактивные инструменты.
### `iftop` (Трафик по направлениям)
Показывает сетевую активность на выбранном интерфейсе в виде удобной таблицы, которая обновляется в реальном времени.
1. Установите её:
```bash
sudo apt update && sudo apt install iftop
```
2. Запустите (указав ваш сетевой интерфейс, например `eth0` или `wlan0`):
```bash
sudo iftop -i eth0
```
### `nethogs` (Трафик в разрезе процессов)
Эта утилита уникальна тем, что группирует весь сетевой трафик по конкретным процессам (PID), показывая, какая именно программа качает данные прямо сейчас и куда.
1. Установите её:
```bash
sudo apt update && sudo apt install nethogs
```
2. Запустите:
```bash
sudo nethogs
```
---
## 4. Классический `netstat` (Если привыкли к старому)
В современных версиях Debian утилита `netstat` по умолчанию не установлена, так как считается устаревшей. Но если она вам нужна:
1. Установите пакет `net-tools`:
```bash
sudo apt update && sudo apt install net-tools
```
2. Запустите команду для просмотра активных соединений:
```bash
sudo netstat -tunp
```