es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Preguntas sobre la variable de entorno DISPLAY

Recientemente, experimenté cómo ejecutar una interfaz de usuario gráfica en WSL2. La parte clave es instalar un servidor X11 en el host y definir una variable de entorno DISPLAY en la terminal de WSL2 como export DISPLAY=172.19.224.1:0.0. Aquí, la IP 172.19.224.1 es la IP de mi host en WSL2. Y este enfoque también funciona en la terminal de un servidor Linux de una máquina virtual.

Mis preguntas son las siguientes:

¿Por qué el :0.0? Siento que después de los dos puntos debería haber un número entero para un puerto, como 172.19.224.1:3306 para MySQL. ¿Qué significa :0.0?

Si uso la variable de entorno DISPLAY en la terminal del servidor remoto y el servidor remoto ve mi servidor X11 a través de un enrutador NAT y se utiliza reenvío de puertos, ¿a qué puerto debo reenviar? (Estoy intentando usar la interfaz gráfica de usuario en un servidor remoto, pero descubro que hay un enrutador NAT en medio y se necesita reenvío de puertos).

No sé el nombre del tema ni las palabras clave para buscar. ¿Alguien podría darme algunas pistas?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Respuesta

    ¿Por qué el :0.0?

    En X11, la pantalla se identifica por un nombre y un número, separados por dos puntos. El primer número antes de los dos puntos se refiere al número de pantalla, y el segundo número después de los dos puntos se refiere al número de la pantalla.

    :0.0 se refiere a la Pantalla 0, Pantalla 0. La Pantalla 0 es la pantalla X11 predeterminada en un sistema Unix o Linux, y Pantalla 0 se refiere a la pantalla física que se utilizará en una configuración de múltiples monitores.

    Entonces, cuando estableces export DISPLAY=172.19.224.1:0.0, estás indicando a tu shell de WSL2 que use el servidor X11 que se está ejecutando en tu host con IP 172.19.224.1, en la Pantalla 0 y Pantalla 0.

    Si uso la variable de entorno DISPLAY en la terminal del servidor remoto y el servidor remoto ve mi servidor X11 a través de un enrutador NAT y se utiliza el reenvío de puertos. ¿A qué puerto debo hacer reenvío?

    Cuando reenvías el tráfico X11 a través de un enrutador NAT, necesitas reenviar el puerto 6000 + el número de pantalla que estás usando. Por ejemplo, si has establecido export DISPLAY=172.19.224.1:1.0, necesitarás reenviar el puerto 6001.

    Por lo tanto, si estás utilizando la Pantalla 0 como en el ejemplo anterior, necesitarás reenviar el puerto 6000.

    En resumen, el puerto que debes reenviar sería 6000 + el número de pantalla que estás usando.

    Pistas para buscar

    Podrías intentar usar palabras clave como “reenvío X11 a través de enrutador NAT” o “reenvío de puertos para X11 a través de SSH”. Estos son escenarios comunes para usar X11 a través de una conexión de red.

Comments are closed.