Повторим, ваше приложение генерирует пакет с некоторым адресом источника, помещает его в Tun-интерфейс, ваш хост-компьютер пересылает его, маскирует его eth0
, а затем из eth0 он каким-то таинственным образом отправляется через WLAN на ваш ноутбук. Это работает для 10.0.0.2 в качестве источника, но не для 192.168.2.112.
Однако, в действительности, не имеет eth0
интерфейса, но интерфейсы enp0s31f6
, wlp4s0
и wwp0s20f0u3c2
.
Это правильно?
Если да, вероятный виновник в том, что вам нужно маскироваться на интерфейсе WLAN eth0
, а не маскироваться на все адреса источника, а не только на 10.0.0.0/8. Реальный вопрос заключается в том, как он работал в первую очередь для 10.0.0.2, но это, вероятно, объясняется той частью вашей конфигурации, о которой вы нам не сказали.
Скорее всего, вам придется маскироваться в WLAN, потому что в противном случае вам придется устанавливать маршруты в другой части вашей сети.
Инструменты для отладки: ip route get 1.2.3.4
для проверки маршрутов и т. tcpdump -ni wlp4s0
Д. На всех интерфейсах, которые могут быть интересны, чтобы увидеть, куда на самом деле идут пакеты.