Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

257
Views
Conectar contenedores docker directamente a la subred del host

Estoy enfrentando algunos problemas al intentar conectar directamente los contenedores docker a la red del host.

La configuración es la siguiente: Un host tiene una interfaz (eth0) en la subred, por ejemplo, 10.0.15.0/24. La IP en eth0 es 10.0.15.5/24. Personalicé el puente docker0 para usar una subred dentro de la subred disponible desde eth0, a saber, 10.0.15.64/26. Entonces, Docker puede usar direcciones IP de este /26 para dar a los contenedores, y quiero que se pueda acceder directamente a los contenedores desde el resto de la red. El puente docker también tiene un conjunto de IP, a saber, 10.0.15.65/26.

Cuando se crea un contenedor, obtiene una IP, digamos 10.0.15.66/26. Ahora, hice algunas pruebas con ping:

  • cualquier cosa en la red puede hacer ping 10.0.15.5 (eth0 del host)
  • cualquier cosa en la red puede hacer ping 10.0.15.65 (puente docker0 del host)
  • host puede hacer ping 10.0.15.66 (ip del contenedor)
  • contenedor puede hacer ping a cualquier cosa en la red
  • cualquier otra cosa que no sea el host no puede hacer ping al contenedor en 10.0.15.66

El reenvío de IP está activado

 [root@HOSTNAME~]# cat /proc/sys/net/ipv4/ip_forward 1

¿Que me estoy perdiendo aqui? Los contenedores conectados al puente docker0 deberían ser accesibles desde la red, creo.

Comportamiento esperado Se debe poder hacer ping a los contenedores desde cualquier lugar de la red, al igual que el puente docker0, etc.

¡Cualquier idea o ayuda sería muy apreciada!

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Finalmente descubrí por qué no funcionaba para nosotros. La máquina en la que estaba ejecutando el contenedor docker era una máquina virtual en un hipervisor. El hipervisor solo acepta una dirección MAC de la NIC adjunta a la máquina virtual. En otras palabras, la NIC de la máquina virtual no se configuró en modo promiscuo.

Lo que hice para solucionar este problema fue simplemente usar una máquina completa. Otra solución sería configurar manualmente la NIC en modo promiscuo, de modo que acepte todos los paquetes, en lugar de solo los paquetes para su propia MAC.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!