Netplan y cómo prepararlo correctamente

Ubuntu es un sistema operativo increíble, no he trabajado con el servidor Ubuntu durante mucho tiempo y no tenía sentido actualizar mi escritorio desde la versión estable. Y no hace mucho tuve que lidiar con la última versión del servidor Ubuntu 18.04, mi sorpresa no tuvo límites cuando me di cuenta de que estaba infinitamente atrasado y no podía configurar una red porque el viejo sistema para configurar interfaces de red mediante editar el archivo /etc/network /interfaces se ha ido por el desagüe. ¿Y qué vino a reemplazarlo? algo terrible y a primera vista completamente incomprensible, te presentamos a “Netplan”.

Para ser honesto, al principio no podía entender cuál era el problema y "por qué es necesario, porque todo era tan conveniente", pero después de un poco de práctica me di cuenta de que tiene su propio encanto. Y ya basta de letras, sigamos con lo que es Netplan, esta es una nueva utilidad para la configuración de red en Ubuntu, al menos “no he visto nada parecido en otras distribuciones”. Una diferencia significativa entre Netplan es que la configuración está escrita en el lenguaje Ñame, sí, escuchaste bien YAML, los desarrolladores decidieron mantenerse al día (y no importa cuánto lo elogien, sigo pensando que es un lenguaje terrible). La principal desventaja de este lenguaje es que es muy sensible a los espacios, veamos la configuración con un ejemplo.

Los archivos de configuración se encuentran en la ruta /etc/netplan/filename.yaml, entre cada bloque debe haber + 2 espacios.

1) El encabezado estándar tiene este aspecto:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0f0:
      dhcp4:no

Veamos lo que hemos hecho ahora:

  • red: este es el comienzo del bloque de configuración.
  • renderer: networkd - aquí indicamos el administrador de red que usaremos, este es networkd o NetworkManager
  • versión: 2 - aquí, según tengo entendido, está la versión YAML.
  • ethernets: - este bloque indica que configuraremos el protocolo ethernet.
  • enps0f0: — indica qué adaptador de red configuraremos.
  • dhcp4:no - deshabilita DHCP v4, para 6 v6 dhcp6 respectivamente

2) Intentemos asignar direcciones IP:

    enp3s0f0:
      dhcp4:no
      macaddress: bb:11:13:ab:ff:32
      addresses: [10.10.10.2/24, 10.10.10.3/24]
      gateway4: 10.10.10.1
      nameservers:
        addresses: 8.8.8.8

Aquí configuramos el servidor poppy, ipv4, puerta de enlace y dns. Tenga en cuenta que si necesitamos más de una dirección IP, las escribimos separadas por comas con un espacio obligatorio después.

3) ¿Qué pasa si necesitamos? unión?

  bonds:
    bond0:
      dhcp4: no
      interfaces: [enp3s0f0, enp3s0f1]
      parameters: 
        mode: 802.3ad
        mii-monitor-interval: 1

  • bonds: - un bloque que explica que configuraremos los bonding.
  • bond0: - nombre de interfaz arbitrario.
  • interfaces: - un conjunto de interfaces recopiladas en un enlace, "como se indicó anteriormente, si hay varios parámetros, los describimos entre corchetes".
  • parámetros: — describe el bloque de configuración de parámetros
  • modo: especifique el modo mediante el cual funcionará la vinculación.
  • mii-monitor-interval: establece el intervalo de monitoreo en 1 segundo.

Dentro del bloque llamado bond, también puedes configurar parámetros como direcciones, gateway4, rutas, etc.

Hemos agregado redundancia para nuestra red, ahora solo queda instalar vlan y la configuración se puede considerar completa.

vlans: 
    vlan10:
      id: 10
      link: bond0
      dhcp4: no
      addresses: [10.10.10.2/24]
      gateway: 10.10.10.1
      routes:
        - to: 10.10.10.2/24
          via: 10.10.10.1
          on-link: true

  • vlans: declara el bloque de configuración de vlan.
  • vlan10: — nombre arbitrario de la interfaz vlan.
  • id: — etiqueta de nuestra vlan.
  • enlace: interfaz a través de la cual se podrá acceder a la VLAN.
  • rutas: declarar un bloque de descripción de ruta.
  • — para: — establecer la dirección/subred a la que se necesita la ruta.
  • vía: — especifique la puerta de enlace a través de la cual se podrá acceder a nuestra subred.
  • on-link: — indicamos que las rutas siempre deben registrarse cuando se levanta el enlace.

Presta atención a cómo coloco los espacios; esto es muy importante en YAML.

Entonces describimos las interfaces de red, creamos enlaces e incluso agregamos VLAN. Apliquemos nuestra configuración, el comando netplan apply verificará nuestra configuración en busca de errores y la aplicará si tiene éxito. A continuación, la configuración se generará por sí sola cuando se reinicie el sistema.

Habiendo recopilado todos los bloques de código anteriores, esto es lo que obtuvimos:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0f0:
      dhcp4: no
    ensp3s0f1:
      dhcp4: no
  bonds:
    bond0:
      dhcp4: no
      interfaces: [enp3s0f0, enp3s0f1]
      parameters: 
        mode: 802.3ad
        mii-monitor-interval: 1
  vlan10:
      id: 10
      link: bond0
      dhcp4: no
      addresses: [10.10.10.2/24]
      routes:
        - to: 10.10.10.2/24
          via: 10.10.10.1
          on-link: true
  vlan20:
    id: 20
    link: bond0
    dhcp4: no
    addresses: [10.10.11.2/24]
    gateway: 10.10.11.1
    nameserver:
      addresses: [8.8.8.8]
    

Ahora nuestra red está lista para funcionar, todo resultó no ser tan aterrador como parecía al principio y el código resultó ser muy hermoso y legible. PC gracias por netplan hay un excelente manual en el enlace https://netplan.io/.

Fuente: habr.com

Añadir un comentario