Как определить направление пакета в программе вердикта BPF_PROG_TYPE_SK_SKB? - PullRequest
0 голосов
/ 07 апреля 2019

Я пишу BPF_PROG_TYPE_SK_SKB программу вердикта для принятия решений о перенаправлении.Как мне определить направление пакета (вход / выход)?

У меня есть доступ к локальному и удаленному порту каждого пакета, но я не могу определить, какой из нихпорт источника или назначения и поэтому не может определить направление.Это должно быть возможно?А если нет, то почему нет?

uname -a: Linux ubuntu-bionic 4.18.0-16-generic # 17 ~ 18.04.1-Ubuntu SMP Вт 12 февраля 13:35:51 UTC 2019 x86_64 x86_64 x86_64GNU / Linux

1 Ответ

1 голос
/ 17 июля 2019

Возможно, есть какое-то очень элегантное решение.Я решил это, используя sockmap только с 2 элементами: таким образом, вам не нужно иметь дело с указаниями, потому что это тривиально.К сожалению, с помощью этого метода вы должны создать карту sockmap для каждой пары сокетов.

...