Я пытаюсь отправить пакеты 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.
Любая идея, почему это происходит, и как я могу это исправить?