1

Я пытаюсь отправить пакеты IPv6 с scapy. Мне все равно, какой протокол более высокого уровня используется, поэтому я просто отправляю:

send(IPv6(dst="2001:db9:1::4"))

У меня есть маршрут к этому месту назначения, на котором запущен ip -6 route show

2001:db9:1::4 dev vt0  metric 1024

Если я отправляю запрос ping из командной строки, я вижу его в tcpdump на целевом устройстве. Но если я отправляю пакет IPv6 со scapy, я получаю эти сообщения и ничего не вижу в tcpdump:

WARNING: No route found for IPv6 destination 2001:db9:1::4 (no default route?)
WARNING: No route found for IPv6 destination 2001:db9:1::4 (no default route?)
WARNING: more No route found for IPv6 destination 2001:db9:1::4 (no default route?)
.
Sent 1 packets.

Но это работает, если я использую локальный адрес ссылки устройства назначения. Я получаю только одно предупреждающее сообщение (аналогично первой строке в приведенных выше сообщениях) и вижу пакет в tcpdump.

Любая идея, почему это происходит, и как я могу это исправить?

1 ответ1

0

Интерфейс отправки должен иметь глобальный адрес IPv6.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .