Назад | Перейти на главную страницу

Утилита командной строки для проверки fwmark в ip rule / ip route?

Я пытаюсь найти инструмент, который позволит мне найти маршрут, по которому будет идти пакет, который поступает на устройство и имеет конкретный адрес назначения.

ip route get буду делать большую часть того, что я ищу.

Проблема в том, что я хотел бы проверить, находят ли пакеты правильные маршруты, когда у них есть метка fwmark в довольно сложной среде маршрутизации.

Идеальный инструмент позволил бы подделать общий пакет с помощью fwmark (или других свойств) и мог бы либо отправить его через все цепочки IpTables и наборы правил ip route / ip, либо просто найти маршрут, который будет возвращен.

Я хотел бы иметь возможность запустить команду, чтобы убедиться, что определенный набор маршрутов работает должным образом.

Минимальные требования будут примерно такими: ip route get но с поддержкой fwmark.

Хотя на этом этапе любые предложения по тестированию утилит маршрутизации были бы очень признательны! Это довольно быстро усложняется, так как маршруты накапливаются.

Вы можете использовать опцию mark в команде ip route get. Также вы можете указать в этой команде адрес источника и интерфейсы ввода и вывода.

Примеры:

ip route get 8.8.8.8 mark 0x20 - проверить маршрут отмеченных пакетов на адрес 8.8.8.8.

ip route get 8.8.8.8 from 192.168.0.200 iif eth1 - проверить маршрут пересылаемых пакетов с хоста 192.168.0.200, полученных через интерфейс eth1. В этом случае вы должны указать iif, если адрес отправителя отсутствует на этом хосте (не локальном).

ip route get 8.8.8.8 from 192.168.0.100 iif eth1 mark 0x30 - аналогично предыдущему примеру, но с указанием отметки.

Чтобы проверить путь пакетов через набор правил netfilter, вы можете использовать цель TRACE и scapy для создания желаемых пакетов.

Техническое название инструмента, который вы ищете, - "создатель пакетов"

Конкретные рекомендации по продукту не относятся к теме ServerFault, но один такой список с инструментами, альтернативными их собственному nping, поддерживается проект nmap и можно найти на http://SecTools.org/tag/packet-crafters/ а другой на Википедия.