Red Hat Training

A Red Hat training course is available for RHEL 8

11.11. Adicionando persistentemente um dispositivo qeth

Para tornar seu novo dispositivo qeth persistente, você precisa criar o arquivo de configuração para sua nova interface. Os arquivos de configuração da interface de rede são colocados no diretório /etc/sysconfig/network-scripts/.

Os arquivos de configuração da rede utilizam a convenção de nomenclatura ifcfg-device device é o valor encontrado no arquivo if_name no dispositivo de grupo qeth que foi criado anteriormente, por exemplo enc9a0. Os comandos cio_ignore são tratados de forma transparente para configurações persistentes de dispositivos e não é necessário liberar manualmente os dispositivos da lista de ignorados.

Se um arquivo de configuração para outro dispositivo do mesmo tipo já existe, a maneira mais simples de adicionar o arquivo de configuração é copiá-lo para o novo nome e depois editá-lo:

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

Para aprender as identificações de seus dispositivos de rede, use o lsqeth utilidade:

# 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

Se você não tiver um dispositivo semelhante definido, você deve criar um novo arquivo. Use este exemplo de /etc/sysconfig/network-scripts/ifcfg-0.0.09a0 como modelo:

# 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 o novo arquivo ifcfg-0.0.0600 como segue:

  1. Modifique a declaração DEVICE para refletir o conteúdo do arquivo if_name de seu grupo ccw.
  2. Modifique a declaração IPADDR para refletir o endereço IP de sua nova interface.
  3. Modifique a declaração NETMASK conforme necessário.
  4. Se a nova interface deve ser ativada no momento da inicialização, então certifique-se de que ONBOOT está configurado para yes.
  5. Certifique-se de que a declaração SUBCHANNELS corresponda aos endereços de hardware de seu dispositivo qeth.
  6. Modifique a declaração PORTNAME ou deixe-a de fora se não for necessário em seu ambiente.
  7. Você pode adicionar qualquer atributo sysfs válido e seu valor ao parâmetro OPTIONS. O programa de instalação do Red Hat Enterprise Linux atualmente usa isto para configurar o modo de camada (layer2) e o número relativo da porta (portno) dos dispositivos qeth.

    O driver padrão do dispositivo qeth para dispositivos OSA é agora o modo camada 2. Para continuar usando as antigas definições ifcfg que se baseiam no padrão anterior do modo camada 3, adicione layer2=0 ao 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

As mudanças em um arquivo ifcfg só se tornam efetivas após o reinício do sistema ou após a adição dinâmica de novos canais de dispositivos de rede, alterando a configuração de E/S do sistema (por exemplo, anexando sob z/VM). Alternativamente, pode-se acionar a ativação de um arquivo ifcfg para canais de rede que anteriormente ainda não estavam ativos, executando os seguintes comandos:

  1. Use o utilitário cio_ignore para remover os canais de rede da lista de dispositivos ignorados e torná-los visíveis para o Linux:

    # cio_ignore -r read_device_bus_id,write_device_bus_id,data_device_bus_id

    Substituir read_device_bus_id,write_device_bus_id,data_device_bus_id pelos três IDs de ônibus de dispositivos que representam um dispositivo de rede. Por exemplo, se o read_device_bus_id é 0.0.0600, o write_device_bus_id é 0.0.0601, e o data_device_bus_id é 0.0.0602:

    #  cio_ignore -r 0.0.0600,0.0.0601,0.0.0602
  2. Para acionar o evento que ativa a mudança, emitir:

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

    Por exemplo:

    # echo add > /sys/bus/ccw/devices/0.0.0600/uevent
  3. Verifique o status do dispositivo de rede:

    # lsqeth
  4. Agora inicie a nova interface:

    # ifup enc600
  5. Verifique o status da interface:

    # 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. Verifique o roteamento para a nova interface:

    # 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 suas mudanças usando o utilitário ping para pingar o gateway ou outro host na sub-rede do novo 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. Se a informação padrão da rota foi alterada, você também deve atualizar /etc/sysconfig/network de acordo.