TGViewer
LinuxSkill - Сводки с прода и Шпаргалки LinuxSkill - Сводки с прода и Шпаргалки @linuxskill · 10.7K subscribers
Post #1237 1.07K
🔥 Знаешь только ip a? 10 неочевидных команд ip для Linux

Большинство админов знают про ip ровно две команды — ip a и ip r, а дальше ifconfig по старой памяти. Держи 10 команд, которые покажут то, чего не видно в ip a: скрытые маршруты VPN, дропы на интерфейсе и мёртвый шлюз. Проверил на iproute2 6.1.

1️⃣ Вся сеть одним экраном, в цвете:

ip -br -c a

Интерфейс, состояние и адреса — по строке на каждый. -br работает и с link.

2️⃣ Куда реально уйдёт пакет:

ip route get 8.8.8.8

# какая запись в таблице сработала
ip route get fibmatch 8.8.8.8

Покажет интерфейс, шлюз и source-адрес. Незаменимо, когда маршрутов много и непонятно, какой победил.

3️⃣ Маршруты, которых нет в ip route:

ip rule
ip route show table all

ВАЖНО: ip route показывает только таблицу main. wg-quick с AllowedIPs = 0.0.0.0/0 уводит дефолт в таблицу 51820, а ip route делает вид, что всё как раньше.

4️⃣ Сменить шлюз без риска потерять сервер:

sudo ip route replace default via <gw>

Атомарно: нет окна без маршрута, как между del и add. Упадёт с ошибкой — старый маршрут останется на месте.

5️⃣ Дропы и ошибки на интерфейсе:

ip -s link show <iface>

# двойной -s — ошибки с разбивкой: crc, frame, fifo
ip -s -s link show <iface>

Растут errors или dropped — копай в кабель, драйвер или буферы, а не в приложение.

6️⃣ Жив ли шлюз на L2:

ip neigh show dev <iface>

REACHABLE и STALE — норма. Шлюз висит в FAILED или INCOMPLETE — он не отвечает на ARP, и пинговать дальше бесполезно.

7️⃣ Сеть в прямом эфире:

ip -ts monitor link route

Каждое изменение с меткой времени: упал линк, DHCP или VPN переписали маршрут. Оставь в tmux и лови, кто ломает сеть по ночам.

8️⃣ Отрезать IP без фаервола:

sudo ip route add blackhole 203.0.113.5/32

# проверить и убрать
ip route show type blackhole
sudo ip route del blackhole 203.0.113.5/32

Ответы на этот адрес уходят в никуда, TCP-сессия с ним не установится. ip route get по нему вернёт Invalid argument — так ядро отвечает на blackhole, это не ошибка.

9️⃣ IP интерфейса в скрипте без awk-акробатики:

ip -j -4 addr show dev <iface> \
| jq -r '.[0].addr_info[0].local'

-j отдаёт JSON: парсинг не сломается, когда поменяется формат вывода. Нужен пакет jq.

🔟 Процесс без сети за две команды:

sudo ip netns add lab
sudo ip netns exec lab <command>

# убрать за собой
sudo ip netns del lab

В новом namespace только выключенный lo. Удобно проверить, как приложение переживёт падение сети, не трогая хост.

Всё, что меняешь через ip, живёт до перезагрузки. Постоянные настройки — в netplan, NetworkManager или systemd-networkd.

А какую из десяти ты уже держишь в алиасах?

❗️ Нравится формат? Ставь 👍

👉 Рубрика: #шпаргалка@LinuxSkill

#Linux #Networking #iproute2 #CheatSheet #SysAdmin #DevOps
  • 👍 16
  • 🔥 2
More from @linuxskill
  1. Oct 2, 2026📊 Диск тормозит, а iostat показывает норму? Ищем хвост задержек Приложение подвисает на з…
  2. Sep 30, 2026💀 CPU под 100%, а в top пусто? Ловим невидимые процессы через eBPF Сервер греется, в шапк…
  3. Sep 25, 2026Разобрать строку штатным <regex.h> и не получить молчаливое «нет совпадения». Проверял на…
  4. Sep 23, 2026Закрыть периметр правилами iptables и не остаться при этом за дверью вместе с атакующим. П…
  5. Sep 21, 2026Добавить пользователя в группу и не выкинуть его при этом из sudo Добавить во вторичную гр…
  6. Sep 18, 2026Собрать архив с исключениями и не обнаружить потом, что исключения не сработали. Исключить…
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 →