посмотреть активные сетевые подключения и адреса

Ответить
ya
^-^
Сообщения: 3214
Зарегистрирован: 16 дек 2021, 19:56

посмотреть активные сетевые подключения и адреса

Сообщение ya »

В 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
```
Ответить