Red Hat Training
A Red Hat training course is available for RHEL 8
19.6. Configuración de una ruta estática mediante RHEL System Roles
Puede utilizar el rol de sistema networking
RHEL para configurar rutas estáticas.
Cuando se ejecuta una obra que utiliza el rol de sistema networking
RHEL, el rol de sistema anula un perfil de conexión existente con el mismo nombre si la configuración no coincide con la especificada en la obra. Por lo tanto, especifique siempre toda la configuración del perfil de conexión de red en la obra, incluso si, por ejemplo, la configuración de IP ya existe. De lo contrario, la función restablece estos valores a sus valores por defecto.
Dependiendo de si ya existe, el procedimiento crea o actualiza el perfil de conexión enp7s0
con la siguiente configuración:
-
Una dirección IPv4 estática -
198.51.100.20
con una máscara de subred/24
-
Una dirección IPv6 estática -
2001:db8:1::1
con una máscara de subred/64
-
Una pasarela por defecto IPv4 -
198.51.100.254
-
Una pasarela por defecto IPv6 -
2001:db8:1::fffe
-
Un servidor DNS IPv4 -
198.51.100.200
-
Un servidor DNS IPv6 -
2001:db8:1::ffbb
-
Un dominio de búsqueda DNS -
example.com
Rutas estáticas:
-
192.0.2.0/24
con puerta de enlace198.51.100.1
-
203.0.113.0/24
con puerta de enlace198.51.100.2
-
Requisitos previos
-
Los paquetes
ansible
yrhel-system-roles
se instalan en el nodo de control. -
Si utiliza un usuario remoto diferente a
root
cuando ejecuta el libro de jugadas, este usuario tiene los permisos apropiados desudo
en el nodo gestionado.
Procedimiento
Si el host en el que desea ejecutar las instrucciones del libro de jugadas aún no está inventariado, añada la IP o el nombre de este host al archivo de inventario de Ansible
/etc/ansible/hosts
:nodo.ejemplo.com
Cree el libro de jugadas
~/add-static-routes.yml
con el siguiente contenido:--- - name: Configure an Ethernet connection with static IP and additional routes hosts: node.example.com become: true tasks: - include_role: name: linux-system-roles.network vars: network_connections: - name: enp7s0 type: ethernet autoconnect: yes ip: address: - 198.51.100.20/24 - 2001:db8:1::1/64 gateway4: 198.51.100.254 gateway6: 2001:db8:1::fffe dns: - 198.51.100.200 - 2001:db8:1::ffbb dns_search: - example.com route: - network: 192.0.2.0 prefix: 24 gateway: 198.51.100.1 - network: 203.0.113.0 prefix: 24 gateway: 198.51.100.2 state: up
Ejecuta el libro de jugadas:
Para conectarse como usuario de
root
al host gestionado, introduzca:#
ansible-playbook -u root ~/add-static-routes.yml
Para conectarse como usuario al host gestionado, introduzca:
#
ansible-playbook -u user_name --ask-become-pass ~/add-static-routes.yml
La opción
--ask-become-pass
asegura que el comandoansible-playbook
solicite la contraseñasudo
del usuario definido en la opción-u user_name
opción.
Si no se especifica la opción
-u user_name
ansible-playbook
se conecta al host gestionado como el usuario que ha iniciado la sesión en el nodo de control.
Pasos de verificación
Muestra la tabla de enrutamiento:
#
ip -4 route
default via 198.51.100.254 dev enp7s0 proto static metric 100 192.0.2.0/24 via 198.51.100.1 dev enp7s0 proto static metric 100 203.0.113.0/24 via 198.51.100.2 dev enp7s0 proto static metric 100 ...
Recursos adicionales
-
Para obtener detalles sobre los parámetros utilizados en
network_connections
y para obtener información adicional sobre el rol del sistemanetwork
, consulte el archivo/usr/share/ansible/roles/rhel-system-roles.network/README.md
. -
Para obtener más información sobre el comando
ansible-playbook
, consulte la página de manualansible-playbook(1)
.