¿Qué es el reemplazo del adaptador de red minipuerto de Windows en Linux?

¿Qué es el reemplazo del adaptador de red minipuerto de Windows en Linux?

Hemos recibido una tarea en el trabajo que incluye portar algún producto de Windows a Linux. Parte de la funcionalidad de ese producto es un adaptador de red minipuerto NDIS6, que aparentemente sólo pasa a través de buffers de red. Tiene un identificador y una dirección MAC. Una aplicación de servicio independiente activa ese controlador de red e inicia servicios IP que pasan el tráfico de red a través de este adaptador.

Mi pregunta es ¿cuál sería el reemplazo funcional de dicho controlador de red "ficticio" en Linux?

Respuesta1

¿Qué es el reemplazo del adaptador de red minipuerto de Windows en Linux?

"Adaptador de red minipuerto" no explica mucho –conductor de minipuertoes algo bastante específico del modelo de controlador de Windows y describe cómo se escribió el controlador, pero no qué hace.

Alguna entidad (¿módulo?) que se comportará como un paso para paquetes de Ethernet, y que puede activarse y desactivarse mediante programación, y que puede usarse mediante programación para configurar redes IP a través de ella.

Si su objetivo es crear una interfaz de red controlada por software (es decir, los paquetes enviados a través de la interfaz son recibidos por un programa a través de un identificador de archivo, y viceversa), entonces debe usar untapotuninterfaz. (El primero transporta paquetes con un encabezado Ethernet de capa 2, el segundo sin él, pero por lo demás son iguales).

  • Documentación oficial:

    https://www.kernel.org/doc/Documentation/networking/tuntap.txt

    (Esta documentación es bastante antigua; en todas las distribuciones modernas de Linux no es necesario crear nodos de dispositivo a mano ni cargar módulos del kernel manualmente. Sin embargo, la sección 3 "Interfaz del programa" y la API basada en ioctl siguen siendo precisas).

La mayoría del software VPN y VM en Linux utiliza las interfaces TUN/TAP; de hecho, los controladores NDIS "TAP-Windows" y "Wintun" que están disponibles en Windows fueron escritos para imitarlos.

También es posible escribir su propio controlador de interfaz de red que haga lo mismo (como 'vboxnetadp' usado por VirtualBox y 'sheep_net' usado por el emulador SheepShaver Mac), pero la mayoría de los administradores de sistemas le agradecerán que no lo haga y que use el en su lugar, tun/tap estándar.

información relacionada