Scapy не отправляет пакеты IPv6 с глобальным адресом назначения

Я пытаюсь отправить пакеты 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.

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


person devil0150    schedule 03.06.2017    source источник
comment
Stack Overflow — это сайт для вопросов по программированию и разработке. Этот вопрос кажется не по теме, потому что он не о программировании или разработке. См. раздел О каких темах я могу задать здесь в Справочном центре. Возможно, Суперпользователь или Unix & Linux Stack Exchange лучше спросить. См. также раздел Где размещать вопросы о Dev Ops?   -  person jww    schedule 04.06.2017
comment
Я написал здесь только потому, что увидел аналогичный вопрос (stackoverflow.com/questions/18153044/)   -  person devil0150    schedule 04.06.2017


Ответы (1)


Передающий интерфейс должен иметь глобальный адрес IPv6.

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

person devil0150    schedule 04.06.2017