Нещодавно я виявив існування інтерфейсів TUN / TAP Linux і досі намагаюся їх зрозуміти. Я думаю, що я отримую основну концепцію - створюються псевдопристрої, що імітують мережевий інтерфейс, а замість передачі даних до апаратного забезпечення передаються програмі простору користувачів.
Як би ви скеровували незв'язану програму для використання цього тунелю?
Наприклад, перед створенням тунелю моя система містить лише eth0 і lo, звичайний інтерфейс Ethernet (підключений до моєї локальної мережі) та інтерфейс зворотного зв'язку. Після того, як програма створює і налаштовує тунель, у мене з'явився новий інтерфейс gr0, який я вказав IP-адресу, яка знаходиться в моїй локальній мережі, але не використовується (тому ми всі в одній підмережі). Як я можу змусити неспоріднену програму використовувати цей "тунель"? Скажіть, у мене був простий додаток для передачі повідомлень клієнт / сервер Python, який використовує TCP-з'єднання, як я можу налаштувати його на використання тунелю?
Прошу вибачення, якщо я пропускаю щось базове, але, як завжди, мені вдалося заплутатися в схемі речей. Знову ж таки, все, що я хочу, - це проста програма TCP використовувати цей тунель.
Дякую!