el 04-23-2024 10:26 AM - fecha de última edición 04-25-2024 10:34 AM por Jimena Saez
Tengo una pregunta que no entiendo sobre las redes Docker, Macvlan e ipvlan. En el primer ejemplo, quiero mostrarles la red en modo bridge Macvlan. Esto me funciona correctamente, les muestro lo que he hecho para que funcione correctamente.
1. Primero he ejecutado estos comandos
sudo ip link add macvlan_int link enp0s3 type macvlan mode bridge
sudo ip address add 192.168.1.2/24 dev macvlan_int
sudo ip link set macvlan_int up
sudo ip route add 192.168.1.110/32 dev macvlan_int
2. Después de haber ejecutado Docker Compose, lo tengo funcionando de esta manera.
```
version:'3.8'
service:
profiles:
- net7
image: nginx
networks:
demo-macvlan:
ipv4_address: 192.168.1.110
stdin_open: true
tty: true
restart: 'no'
init: true
networks:
demo-macvlan:
driver: macvlan
ipam:
config:
- subnet: 192.168.1.0/24
gateway: 192.168.1.1
driver_opts:
parent: enp1s0
```
3. Ejecuto esto en mi navegador http://192.168.1.110 y el modo Macvlan Bridge funciona correctamente
Hasta ahora todo bien, me funciona correctamente, pero ahora vienen los problemas. Antes de comenzar con el siguiente ejemplo quiero mencionar algo al ejemplo anterior, si he hecho algo mal o quiero que me mencionen algo, soy nuevo en docker en redes. Ahora pasemos al segundo ejemplo del modo trunk bridge macvlan 802.1Q. Quiero implementar esto. Lo único que he hecho es lo siguiente en mi docker compose.
```
version:'3.8'
service:
ivlan2:
profiles:
- net8
image: nginx
networks:
ip-vlan:
ipv4_address: 192.168.1.130
stdin_open: true
tty: true
restart: 'no'
init: true
networks:
net-app:
external: true
net:
external: true
demo-macvlan50-net:
driver: macvlan
ipam:
config:
- subnet: 192.168.1.0/24
gateway: 192.168.1.1
driver_opts:
parent: enp1s0.50
```
Aquí lo que he hecho es lo siguiente, he cambiado la IP a esta 192.168.1.130 luego le he agregado el enp1s0.50, ok hasta ahora todo bien dentro del contenedor ejecuto el ping a la IP 192.168.1.130 y funciona , me da una señal, pero cuando ejecuto esto en mi host y agrego el ping 192.168.1.130 no funciona correctamente cuando lo ejecuto en mi host y agrego http://192.168.1.130 me dice conexión rechazada. Quiero mencionar que no tengo conflictos con nada. Lo he comprobado también y he ejecutado estos comandos netstat -rn | fgrep 0.0.0.0 || ip route, nmap -sn 192.168.1.0/24,ifconfig,netstat -a, ip -br -col add show para comprobar si hay algún problema, no puedo solucionar el problema para que funcione correctamente, ¿por qué me sale una señal que funciona al hacer ping a la dirección IP que tengo asignada, pero en mi host no recibo señal y no me deja acceder a la dirección IP de mi host?
Pasemos ahora al tercer ejemplo. Tengo un problema, quiero implementar ipvlan l2 y me pasa lo mismo que en el segundo ejemplo. No funciona en el host de mi sistema, pero en el contenedor funciona al hacer ping a la dirección IP.
```
version: '3.8'
services:
ivlan2:
profiles:
- "net9"
image: nginx
networks:
ip-vlan:
ipv4_address: 192.168.1.110
stdin_open: true
tty: true
restart: 'no'
init: true
networks:
ip-vlan:
driver: ipvlan
ipam:
config:
- subnet: 192.168.1.0/24
gateway: 192.168.1.1
driver_opts:
parent: enp1s0
mode: l2
```
el 04-27-2024 05:58 AM
He notado que no ha creado la interfaz VLAN en la máquina host antes de ejecutar el archivo docker-
composfile. Debe crear la interfaz VLAN mediante el comando ip link
. Puede hacer ping a la dirección IP desde el interior del contenedor pero no desde el host, probablemente debido al hecho de que la interfaz VLAN no está configurada correctamente en la máquina host. Asegúrese de que la interfaz VLAN esté activa y configurada correctamente mediante los comandos ip link
e ip address
.
Parece que ha creado la interfaz IPvlan en la máquina host antes de ejecutar el archivo docker-compose
, aquí también necesita crear la interfaz IPvlan.
Espero que esto ayude
Descubra y salve sus notas favoritas. Vuelva a encontrar las respuestas de los expertos, guías paso a paso, temas recientes y mucho más.
¿Es nuevo por aquí? Empiece con estos tips. Cómo usar la comunidad Guía para nuevos miembros
Navegue y encuentre contenido personalizado de la comunidad