TGViewer
DevOps Ready | IT DevOps Ready | IT @devops_ready · 7.64K subscribers
Post #921 1.22K
Проверяем, каким маршрутом ядро отправит пакет с помощью ip route get!

Когда на сервере несколько интерфейсов, VPN, policy routing или просто странное сетевое поведение, читать таблицы маршрутов бывает недостаточно. В таких случаях проще напрямую спросить у ядра, какой маршрут оно выберет для пакета до конкретного адреса.

Для этого есть ip route get. Команда показывает, какой маршрут будет выбран при поиске маршрута (route lookup), а также исходный адрес и интерфейс, через который пакет будет отправлен.

Проверить маршрут до конкретного IP:
ip route get 8.8.8.8


В выводе обычно видно via, dev и src — через какой следующий узел пойдёт трафик, через какой интерфейс и с какого исходного адреса он будет отправлен.

Пример:
8.8.8.8 via 192.168.1.1 dev eth0 src 192.168.1.10


Здесь видно, что пакет будет отправлен через eth0, следующий узел — 192.168.1.1, а исходным адресом будет 192.168.1.10.

Понять, какой маршрут выберется для конкретного исходного IP:
ip route get 8.8.8.8 from 192.168.1.10


Это полезно на серверах с несколькими IP-адресами, когда нужно проверить выбор маршрута для конкретного исходного адреса.

Проверить поиск маршрута с указанием интерфейса:
ip route get 8.8.8.8 oif eth0


Опция oif позволяет выполнить поиск маршрута с учётом указанного выходного интерфейса.

Можно также выполнить lookup так, как если бы пакет пришёл на определённый интерфейс:
ip route get 1.1.1.1 iif eth1


Опция iif указывает входной интерфейс и позволяет посмотреть, какой маршрут выберет ядро для форвардинга такого пакета. Это полезно при разборе асимметричной маршрутизации (asymmetric routing), policy-маршрутизации (policy routing) и правил, завязанных на интерфейсы.

Если нужно посмотреть таблицы маршрутизации:
ip route


Если используется policy-маршрутизация, полезно также проверить правила:
ip rule


А чтобы увидеть маршруты во всех таблицах:
ip route show table all


ip route показывает записи в таблицах маршрутизации, а ip route get — какой маршрут ядро реально выберет для конкретного пакета при route lookup.

🔥 Особенно полезно на серверах с несколькими интерфейсами, VPN-узлах и в сложных сетевых конфигурациях.

➡️ DevOps Ready | #практика
  • ❤ 13
  • 👍 9
  • 🔥 8
More from @devops_ready
  1. Oct 2, 2026Знали, почему настройки systemd-сервиса лучше менять через systemctl edit? Допустим, прило…
  2. Oct 2, 2026⚡️5 фундаментальных курсов по ИБ по цене одного Это предложение для тех, кто готов войти в…
  3. Oct 2, 2026Этот инструмент поможет поять из чего на самом деле состоит Docker-образ! Он содержит терм…
  4. Oct 1, 2026Проверяем итоговую конфигурацию Docker Compose перед запуском! Когда проект использует баз…
  5. Oct 1, 2026Шпаргалка по жизненному циклу Pod в Kubernetes! На картинке показано, как запрос проходит…
  6. Sep 30, 2026DevOps Daily собирает материалы по инфраструктуре! На сайте есть разборы Docker, Kubernete…
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 →