TGViewer
Linux Ready | DevOps Linux Ready | DevOps @linux_ready · 11.2K subscribers
Post #1212 2.17K
Проверяем, каким маршрутом ядро отправит пакет с помощью 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-узлах и в сложных сетевых конфигурациях.

🚪 Linux Ready | #практика
  • 🔥 13
  • 👍 9
  • 🤝 9
  • ❤ 1
More from @linux_ready
  1. Oct 6, 2026В GNU/Linux есть отдельная утилита для преобразования чисел внутри текстовых потоков! Допу…
  2. Oct 6, 2026Удобный бот для мониторинга доступности сайтов и серверов Никаких сторонних сайтов и прило…
  3. Oct 6, 2026Большой файл можно клонировать почти мгновенно без полного копирования его данных! На файл…
  4. Oct 5, 2026Для отладки изолированного процесса необязательно заходить внутрь контейнера или менять ег…
  5. Oct 5, 2026Как оплачивать зарубежные сервисы в 2026 году? Можно бегать между посредниками и бояться б…
  6. Oct 5, 2026📂 Напоминалка для работы с SED! Например, sed 's/old/new/g' file.txt заменяет все вхожден…
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 →