Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

22.6. Añadir un dispositivo de red

El proceso de añadir un dispositivo de red ha cambiado en gran medida debido a la migración del kernel desde 2.4 a 2.6:
  • El sistema de archivos proc ya no se utiliza para controlar u obtener el estado de los dispositivos de red.
  • El nuevo sistema de archivos sys ahora proporciona facilidades para controlar dispositivos.
  • /sys/class/net/interface_name/device ahora proporciona el estado de los dispositivos activos.
    interface_name es un nombre como eth0 o eth2 que el controlador de dispositivo le da a una interfaz de red cuando ésta se configura.
  • /etc/chandev.conf ya no existe.
    El sistema de archivos sys ahora contiene la información que se colocó en /etc/chandev.conf.
  • /etc/modules.conf ya no existe.
    Las especificaciones de alias para las interfaces se colocan ahora en /etc/modprobe.conf.
Sección 22.6.1, “Procedimiento para añadir un dispositivo qeth describes in detail how to add a qeth device to an existing instance of Red Hat Enterprise Linux. Sección 22.6.2, “Referencia rápida para añadir nuevas interfaces” is a quick reference for installing other IBM System z network interfaces.

22.6.1. Procedimiento para añadir un dispositivo qeth

Primero determine si están cargados los módulos controladores del dispositivo qeth.
# lsmod | grep qeth
qeth                  135240  0
qdio                   45360  2 qeth
ipv6                  303984  13 qeth
ccwgroup               15104  1 qeth
Si la salida del comando lsmod muestra que los módulos no están cargados, debe volver a ejecutar el comando modprobe para cargarlos:
# modprobe qeth
Luego, cree un grupo de dispositivos qeth.
# echo read_device_bus_id,write_device_bus_id,
data_device_bus_id > /sys/bus/ccwgroup/drivers/qeth/group
Due to the length of this command, it has been broken into two lines.
En el ejemplo siguiente, read_device_bus_id es 0.0.0600, write_device_bus_id es 0.0.0601, y data_device_bus_id es 0.0.0602. El dispositivo es una NIC z/VM virtual y 192.168.70.69 es la dirección IP a asignar a esta interfaz.
# echo 0.0.0600,0.0.0601,0.0.0602 > /sys/bus/ccwgroup/drivers/qeth/group
Luego verifique que el grupo de dispositivos qeth haya sido creado correctamente:
# ls /sys/bus/ccwgroup/drivers/qeth
0.0.0600  0.0.09a0  group  notifier_register
Opcionalmente puede añadir un nombre de puerto. Primero debe verificar si se requiere un nombre de puerto:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname
no portname required
La respuesta indica que no necesita proporcionar un nombre de puerto.
Para añadir un nombre de puerto, verifique que los dispositivos estén desconectados y luego ejecute el comando siguiente:

Nota

El dispositivo debe estar desconectado cuando añada un nombre de puerto.
# echo portname > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname
A continuación vuelva a colocar en línea el dispositivo:
# echo 1 /sys/bus/ccwgroup/drivers/qeth/0.0.0600/online
Luego verifique el estado del dispositivo:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/online1
A return value of "1" indicates that the device is online, while a return value '0' indicates that the device is offline.
Verifique el nombre de interfaz asignada al dispositivo:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name
eth1
Para cambiar el valor de if_name ejecute el comando siguiente:
# echo new_if_name > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name
Opcionalmente, puede configurar parámetros y funcionalidades adicionales dependiendo de la forma en que esté configurando su sistema y de las funcionalidades requeridas.
  • add_hhlen
  • broadcast_mode
  • buffer_count
  • canonical_macaddr
  • card_type
  • checksumming
  • chpid
  • detach_state
  • fake_broadcast
  • fake_ll
  • ipa_takeover
  • portno
  • priority_queueing
  • recover
  • route4
  • rxip
  • state
  • ungroup
  • vipa
Para obtener información sobre cómo funcionan estas características, consulte http://www-128.ibm.com/developerworks/linux/linux390/october2005_documentation.html#3 (Device Drivers, Features, and Commands - SC33-8289-02).
Ahora necesita crear el archivo de configuración para su nueva interfaz. Los archivos de configuración para las interfaces de red están en /etc/sysconfig/network-scripts/.
Los archivos de configuración de red utilizan la convención de nombres ifcfg-dispositivo, donde dispositivo es el valor encontrado en el archivo if_name en el grupo de dispositivo qeth que fue creado anteriormente. En este ejemplo es eth1.
Si hay un archivo de configuración existente ya definido para otro dispositivo del mismo tipo, la solución más simple es copiarlo al nuevo nombre.
# cd /etc/sysconfig/network-scripts
# cp ifcfg-eth0 ifcfg-eth1
Si no dispone de un dispositivo similar definido, entonces deberá crear uno. Utilice este ejemplo de ifcfg-eth0 como una plantilla.
/etc/sysconfig/network-scripts/ifcfg-eth0
# IBM QETH
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:06:29:FB:5F:F1
IPADDR=9.12.20.136
NETMASK=255.255.255.0
ONBOOT=yes
NETTYPE=qeth
SUBCHANNELS=0.0.09a0,0.0.09a1,0.0.09a2
TYPE=Ethernet
Edite el nuevo archivo ifcfg-eth1.
Por ahora elimine la línea HWADDR.
Modifique la sentencia DEVICE para reflejar los contenidos del archivo if_name desde su ccwgroup.
Modifique la sentencia IPADDR para reflejar la dirección IP de su nueva interfaz.
Modifique la sentencia NETMASK como sea necesario.
Si desea que su nueva interfaz sea activada al momento del arranque, entonces asegúrese de que ONBOOT esté configurado a yes.
Asegúrese de que la sentencia SUBCHANNELS coincida con las direcciones de hardware para su dispositivo qeth.
/etc/sysconfig/network-scripts/ifcfg-eth1
# IBM QETH
DEVICE=eth1
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
TYPE=Ethernet
Un dispositivo qeth requiere de una definición de alias en /etc/modprobe.conf. Modifique este archivo y añada un alias para su interfaz.
/etc/modprobe.conf
alias eth0 qeth
alias eth1 qeth
options dasd_mod dasd=0.0.0100,0.0.4b19
Ahora puede iniciar la nueva interfaz.
# ifup eth1
Verifique el estado de la interfaz:
# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 02:00:00:00:00:01
          inet addr:192.168.70.87  Bcast:192.168.70.255  Mask:255.255.255.0
          inet6 addr: fe80::ff:fe00:1/64 Scope:Link
          UP BROADCAST RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:23 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:644 (644.0 b)  TX bytes:264 (264.0 b)
Observe el campo HWaddr en la primera línea de la salida del comando ifconfig. Añada el valor al archivo ifcfg-eth1. Añada una línea como la siguiente a ese archivo:
HWADDR=02:00:00:00:00:01
Ahora ifcfg-eth1 se asemeja a:
# IBM QETH
DEVICE=eth1
HWADDR=02:00:00:00:00:01
BOOTPROTO=static
IPADDR=192.168.70.69
NETMASK=255.255.255.0
ONBOOT=yes
NETTYPE=qeth
SUBCHANNELS=0.0.0600,0.0.0601,0.0.0602
TYPE=Ethernet
Verifique el enrutamiento para la nueva interfaz:
# route
Kernel IP routing table
Destination     Gateway         Genmask        Flags Metric Ref  Use Iface
192.168.70.0    *               255.255.255.0  U     0      0      0 eth1
9.12.20.0       *               255.255.255.0  U     0      0      0 eth0
169.254.0.0     *               255.255.0.0    U     0      0      0 eth1
default         pdlrouter-if5.p 0.0.0.0        UG    0      0      0 eth0
Verifique sus cambios ejecutando el comando ping para hacer 'ping' a la puerta de enlace:
# 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
Si la información de enrutamiento por defecto ha cambiado, debe actualizar /etc/sysconfig/network de la forma correspondiente.