
Tengo un servidor dedicado Hetzner con una única tarjeta de red y dos direcciones IP públicas (ambas IP tienen su propia puerta de enlace). Bien, sé que solo tiene una dirección configurada con neplan. A continuación se muestra mi configuración.
network:
version: 2
renderer: networkd
ethernets:
enp195s0:
addresses:
- x.x.x.x/32 #Main IPv4 address
- xx.xx.xx.xx::2/64 #IPv6
routes:
- on-link: true
to: 0.0.0.0/0
via: gx.gx.gx.gx #Main IPv4 address Gateway IP
nameservers:
addresses:
- 185.12.64.2
- 185.12.64.1
- 2a01:4ff:ff00::add:1
- 2a01:4ff:ff00::add:2
Y ahora quiero configurar la red para que tenga dos IP públicas como puente porque quiero compartirla con máquinas invitadas kvm. Aquí está uno de mis intentos:
network:
version: 2
renderer: networkd
ethernets:
enp195s0:
dhcp4: false
dhcp6: false
bridges:
kvmbr0:
interfaces:
- enp195s0
addresses:
- x.x.x.x/32 #Main IPv4 address
- y.y.y.y/32 #Additional IPv4 address
routes:
- to: 0.0.0.0/0
via: gx.gx.gx.gx #Main IPv4 address Gateway IP
table: 1
metric: 100
- to: 0.0.0.0/0
via: gy.gy.gy.gy #Additional IPv4 address Gateway IP
table: 2
metric: 200
mtu: 1500
dhcp4: no
dhcp6: no
nameservers:
addresses:
- 185.12.64.2
- 185.12.64.1
- 2a01:4ff:ff00::add:1
- 2a01:4ff:ff00::add:2
parameters:
stp: false
forward-delay: 4
El problema es que después de aplicar netplan siempre pierdo la conexión a Internet :/ Tengo un script que recupera la configuración predeterminada de netplan después de unos minutos si no lo detengo, por lo que me resulta difícil comprobar qué sucede en el servidor, pero supongo que es algo con enrutamiento. Soy nuevo en las configuraciones de netplan, ¿podrían ayudarme a encontrar la solución adecuada?
Respuesta1
Encontré una solución. Esta debajo
network:
version: 2
renderer: networkd
ethernets:
enp195s0:
dhcp4: false
dhcp6: false
bridges:
kvmbr0:
interfaces:
- enp195s0
addresses:
- x.x.x.x/26 # <- netmask here
- y.y.y.y/29 # <- netmask here
routes:
- to: 0.0.0.0/0
via: gx.gx.gx.gx
metric: 100
- to: nx.nx.nx.nx/26 # <- route to main IP network
via: gx.gx.gx.gx # <- via main IP gateway
metric: 100
table: 1 # <- with routing table assignment
- to: 0.0.0.0/0
via: gy.gy.gy.gy
metric: 200
- to: ny.ny.ny.ny/29 # <- route to additional IP network
via: gy.gy.gy.gy # <- via additional IP gateway
metric: 200
table: 2 # <- with routing table assignment
routing-policy: # <- routing policies for IPs networks
- from: nx.nx.nx.nx/26
table: 1 # <- appropriate routing table
- from: ny.ny.ny.ny/29
table: 2 # <- appropriate routing table
dhcp4: no
dhcp6: no
nameservers:
addresses:
- 185.12.64.2
- 185.12.64.1
- 2a01:4ff:ff00::add:1
- 2a01:4ff:ff00::add:2
parameters:
stp: true
forward-delay: 4
El principal problema eran las máscaras de red. No debería ser de 32 bits porque no contenían las IP de las puertas de enlace. Esa fue la razón por la que estaba perdiendo la conexión de red. Entonces puse allí las máscaras de red correctas de las redes de direcciones IP.
Se necesitaban otros cambios para permitir que IP adicionales se comunicaran con Internet.