CLI AI

Сетевая диагностика по-человечески: коннекты, порты, DNS

2026-02-13

Сетевой дебаг — область, где у всех утилит одна работа и слегка разный синтаксис. netstat депрекейтнут в пользу ss. dig, host, nslookup пересекаются. route на macOS — не тот же route на Linux. Спрашивая по сути задачи, а не по утилите, обходим всю эту историю.

1. Слушающие порты

clai
$ clai покажи все слушающие TCP-порты с именем процесса→ ss -ltnpState    Recv-Q  Local Address:Port    ProcessLISTEN   0       0.0.0.0:22            users:(("sshd",pid=812))LISTEN   0       127.0.0.1:5432        users:(("postgres",pid=1234))

2. Кто подключён к сервису

clai
$ clai кто сейчас подключён к моему postgres→ ss -tnp 'sport = :5432'ESTAB   10.0.1.12:54322    10.0.1.50:5432   users:(("postgres",pid=1234))

3. Почему DNS медленный

clai
$ clai проследи, почему DNS для example.com резолвится медленно→ dig +trace +stats example.com;; Query time: 312 msec;; SERVER: 8.8.8.8#53(8.8.8.8) (UDP)

+stats — половина, которую никто не печатает. Разница между «знаю, что медленно» и «знаю, какой hop медленный».

4. Проверка MTU

clai
$ clai проверь MTU до 8.8.8.8→ ping -M do -c 3 -s 1472 8.8.8.81480 bytes from 8.8.8.8: ttl=58 time=12.4 ms

-M do ставит бит don't-fragment. Если 1472+8+20 = 1500 проваливается — эффективный MTU ниже стандартного.

5. Таблица маршрутов — читаемая

clai
$ clai покажи таблицу маршрутов в читаемом виде→ ip -4 route showdefault via 10.0.0.1 dev eth0 proto dhcp src 10.0.1.1210.0.0.0/16 dev eth0 proto kernel scope link src 10.0.1.12

См. также