Red Hat Training

A Red Hat training course is available for RHEL 8

11.11. Añadir persistentemente un dispositivo qeth

Para que su nuevo dispositivo qeth sea persistente, necesita crear el archivo de configuración para su nueva interfaz. Los archivos de configuración de la interfaz de red se colocan en el directorio /etc/sysconfig/network-scripts/.

Los archivos de configuración de red utilizan la convención de nomenclatura ifcfg-device, donde device es el valor que se encuentra en el archivo if_name en el dispositivo del grupo qeth que se creó anteriormente, por ejemplo enc9a0. Los comandos cio_ignore se manejan de forma transparente para las configuraciones de dispositivos persistentes y no es necesario liberar los dispositivos de la lista de ignorados manualmente.

Si ya existe un archivo de configuración para otro dispositivo del mismo tipo, la forma más sencilla de añadir el archivo de configuración es copiarlo al nuevo nombre y luego editarlo:

# cd /etc/sysconfig/network-scripts
# cp ifcfg-enc9a0 ifcfg-enc600

Para conocer los ID de sus dispositivos de red, utilice la lsqeth utilidad:

# lsqeth -p
devices                    CHPID interface        cardtype       port chksum prio-q'ing rtr4 rtr6 lay'2 cnt
-------------------------- ----- ---------------- -------------- ---- ------ ---------- ---- ---- ----- -----
0.0.09a0/0.0.09a1/0.0.09a2 x00   enc9a0    Virt.NIC QDIO  0    sw     always_q_2 n/a  n/a  1     64
0.0.0600/0.0.0601/0.0.0602 x00   enc600    Virt.NIC QDIO  0    sw     always_q_2 n/a  n/a  1     64

Si no tiene definido un dispositivo similar, deberá crear un nuevo archivo. Utilice este ejemplo de /etc/sysconfig/network-scripts/ifcfg-0.0.09a0 como plantilla:

# IBM QETH
DEVICE=enc9a0
BOOTPROTO=static
IPADDR=10.12.20.136
NETMASK=255.255.255.0
ONBOOT=yes
NETTYPE=qeth
SUBCHANNELS=0.0.09a0,0.0.09a1,0.0.09a2
PORTNAME=OSAPORT
OPTIONS='layer2=1 portno=0'
MACADDR=02:00:00:23:65:1a
TYPE=Ethernet

Edite el nuevo archivo ifcfg-0.0.0600 como sigue:

  1. Modifique la declaración DEVICE para reflejar el contenido del archivo if_name de su grupo ccw.
  2. Modifique la declaración IPADDR para reflejar la dirección IP de su nueva interfaz.
  3. Modifique la declaración NETMASK según sea necesario.
  4. Si la nueva interfaz debe activarse en el momento del arranque, asegúrese de que ONBOOT esté configurado en yes.
  5. Asegúrese de que la declaración SUBCHANNELS coincide con las direcciones de hardware de su dispositivo qeth.
  6. Modifique la declaración PORTNAME o elimínela si no es necesaria en su entorno.
  7. Puede añadir cualquier atributo válido de sysfs y su valor al parámetro OPTIONS. El programa de instalación de Red Hat Enterprise Linux actualmente utiliza esto para configurar el modo de capa (layer2) y el número de puerto relativo (portno) de los dispositivos qeth.

    El controlador de dispositivo qeth por defecto para los dispositivos OSA es ahora el modo de capa 2. Para seguir utilizando las antiguas definiciones de ifcfg que se basan en el anterior valor predeterminado del modo de capa 3, añada layer2=0 al parámetro OPTIONS.

/etc/sysconfig/network-scripts/ifcfg-0.0.0600

# IBM QETH
DEVICE=enc600
BOOTPROTO=static
IPADDR=192.168.70.87
NETMASK=255.255.255.0
ONBOOT=yes
NETTYPE=qeth
SUBCHANNELS=0.0.0600,0.0.0601,0.0.0602
PORTNAME=OSAPORT
OPTIONS='layer2=1 portno=0'
MACADDR=02:00:00:b3:84:ef
TYPE=Ethernet

Los cambios en un archivo ifcfg sólo se hacen efectivos después de reiniciar el sistema o después de la adición dinámica de nuevos canales de dispositivos de red cambiando la configuración de E/S del sistema (por ejemplo, adjuntando bajo z/VM). Alternativamente, puedes activar un archivo ifcfg para los canales de red que antes no estaban activos todavía, ejecutando los siguientes comandos:

  1. Utilice la utilidad cio_ignore para eliminar los canales de red de la lista de dispositivos ignorados y hacerlos visibles para Linux:

    # cio_ignore -r read_device_bus_id,write_device_bus_id,data_device_bus_id

    Sustituya read_device_bus_id,write_device_bus_id,data_device_bus_id por los tres ID de bus de dispositivo que representan un dispositivo de red. Por ejemplo, si el read_device_bus_id es 0.0.0600, el write_device_bus_id es 0.0.0601, y el data_device_bus_id es 0.0.0602:

    #  cio_ignore -r 0.0.0600,0.0.0601,0.0.0602
  2. Para desencadenar el uevent que activa el cambio, emite:

    # echo add > /sys/bus/ccw/devices/read-channel/uevent

    Por ejemplo:

    # echo add > /sys/bus/ccw/devices/0.0.0600/uevent
  3. Compruebe el estado del dispositivo de red:

    # lsqeth
  4. Ahora inicie la nueva interfaz:

    # ifup enc600
  5. Compruebe el estado de la interfaz:

    # ip addr show enc600
    3: enc600:  <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 3c:97:0e:51:38:17 brd ff:ff:ff:ff:ff:ff
    inet 10.85.1.245/24 brd 10.34.3.255 scope global dynamic enc600
    valid_lft 81487sec preferred_lft 81487sec
    inet6 1574:12:5:1185:3e97:eff:fe51:3817/64 scope global noprefixroute dynamic
    valid_lft 2591994sec preferred_lft 604794sec
    inet6 fe45::a455:eff:d078:3847/64 scope link
    valid_lft forever preferred_lft forever
  6. Comprueba el enrutamiento de la nueva interfaz:

    # ip route
    default via 10.85.1.245 dev enc600  proto static  metric 1024
    12.34.4.95/24 dev enp0s25  proto kernel  scope link  src 12.34.4.201
    12.38.4.128 via 12.38.19.254 dev enp0s25  proto dhcp  metric 1
    192.168.122.0/24 dev virbr0  proto kernel  scope link  src 192.168.122.1
  7. Verifique los cambios utilizando la utilidad ping para hacer un ping a la puerta de enlace o a otro host en la subred del nuevo dispositivo:

    # ping -c 1 192.168.70.8
    PING 192.168.70.8 (192.168.70.8) 56(84) bytes of data.
    64 bytes from 192.168.70.8: icmp_seq=0 ttl=63 time=8.07 ms
  8. Si la información de la ruta por defecto ha cambiado, también debe actualizar /etc/sysconfig/network en consecuencia.