Как работаю VPN приложения, в крайне общем виде
Добрый день, можете подсказать, допустим вот есть какое-то впн приложение для линукс. В самом общем виде, был допустим у нас какое-то TCP приложение которое открывало сокет и отсылало туда содержимое буфера в памяти. Затем ядро наверное там писало в буфер сетевой карты и дальше уже пакет шел по ethernet. А что при запуске VPN происходит, у нас приложение все также наверное делаешь connect к требуемому нами адресу, а дальше строится что-то типа внутренней таблицы маршрутизации и пакет идет на адрес впн, а на том конце деинкапсулируются? Понимаю, что очень сумбурно написал, что бы такое почитать, максимально доходчивое и просто?