Cómo hacer un vínculo entre interfaces, ruta y proceso.

Cómo hacer un vínculo entre interfaces, ruta y proceso.

Estoy usando openvpn muy felizmente, tengo más de 50 vpn definidos en una máquina Debian jessie.
Tengo una pregunta sobre la capacidad de trazar alguna ruta hacia algún proceso.
Me gustaría saber qué interfaz tun está asignada a qué proceso openvpn.
En este momento, mi única solución es escanear el syslog en busca de alguna cadena como /ovpn-([^\[]*).*(tun\d+)/, donde puedo recuperar casi todo en el momento del arranque, pero no está limpio y la información desaparece a medida que se limpia el registro.
Entonces, ¿hay alguna manera de asignar el dispositivo tun al proceso openvpn?
no puedo encontrar en/proc/{openvpn process}/*

Respuesta1

Si las VPN se conectan a sitios dedicados, ¿por qué no (a) identificar la interfaz por su dirección IP (no debe saber qué rango de IP interno utiliza cada sitio), o (b) configurar cada OpenVPN con un número específico, por ejemplo, tun100para tun150? Consulte devel argumento en la configuración man openvpnpara obtener más detalles.

Respuesta2

dada esta publicación¿Cómo encontrar la conexión entre la interfaz tap y su descriptor de archivo?

Fui con una solución conps ax |awk '/[o]penvpn/{print $7" "$1;system("grep iff /proc/"$1"/fdinfo/*")}'

información relacionada