2016-08-05 3 views
0

Я хочу подключить Tun к сокету, чтобы любые данные, хранящиеся в файле Tun, затем были вытолкнуты в сокет, который получит данные. Я борюсь с концептуальным пониманием более высокого уровня того, как я должен подключать сокет и Tun. Тон получает выделенный сокет, который затем обменивается данными с другим сокетом (приемным сокетом)? Или Tun напрямую взаимодействует с приемным сокетом? Или мне все равно? Благодаря!Подключение туннеля к гнезду

+0

Что такое 'Tun' файл? – larsks

+0

файл, расположенный в/dev/net/tun, который записывается в/read из – user3662531

ответ

0

Если я понимаю вашу проблему, вы должны иметь возможность написать приложение, которое подключается к устройству tun, а также поддерживает другой сетевой сокет. Вам понадобится какое-то мультиплексирование, такое как epoll или select. Но, в основном, всякий раз, когда вы видите данные на интерфейсе tun, вы можете получать данные в буфер, а затем предоставлять этот буфер (с правильным количеством принятых октетов) в ответ на вызов другого сокета. Обычно вы используете такую ​​настройку, когда вы вставляете какой-то пользовательский заголовок или что-то еще, например, реализуете собственное VPN-решение.

Смежные вопросы