Что точно происходит с пакетами, записанными в устройство БОЧКИ/TAP?

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

Что я, может казаться, не нахожу, что хорошая документация для является точным способом, которым устройство БОЧКИ/TAP взаимодействует с остальной частью сетевого стека? Пакеты передаются к eth0, если они направляются в удаленный хост? Будут пакеты, обращенные для localhost быть переданными к приложению пространства пользователя по умолчанию? В каких этапах пакеты появляются в ядре относительно стека Netfilter?

Поведение не кажется хорошо зарегистрированным (http://openvpn.net/archive/openvpn-users/2005-05/msg00224.html, https://www.kernel.org/doc/Documentation/networking/tuntap.txt)).

1
задан 26 February 2015 в 09:38
1 ответ

Устройство tun tap выглядит одинаково для ядра в том смысле, что оно не может определить, поступают ли данные по проводу, подключенному к интерфейсам Ethernet, или из пользовательского приложения. Когда данные записываются, они пересылаются приложению пользовательского пространства, а не устройству физического интерфейса, например. eth0

Интерфейс, на который пересылается пакет, будет, как обычно, основан на таблице маршрутизации, которую можно просмотреть с помощью ip route или netstat -r . Это также будет применяться к пакетам, адресованным локальному хосту.

Кроме того, интерфейс TUN / TAP также может использоваться в качестве интерфейса для маршрута, который появляется в таблице маршрутизации.

1
ответ дан 4 December 2019 в 00:11

Теги

Похожие вопросы