La otra bola de cristal

2 tarjetas de red en Archlinux

Hace algunas semanas, en mi instalación de Arch Linux os comentaba que tenía algunos problemas con la conexión a internet debido a que tengo 2 tarjetas de red, la que viene integrada en la placa base y otra que le pinché yo hace algunos años, supongo que agregé la segunda porque en su momento la de la placa me daría problemas o algo similar.

Parece ser que es un problema bastante común en Archlinux cuando tienes 2 tarjetas de red, la mayoría de las veces no tengo conexión a internet y si ejecuto el comando dhcpcd sin especificar nada más, automática y aleatoriamente elige con que interfaz conectarse, unos días eth0 y otros eth1. Incluso especificándolo en la sección Networking del archivo rc.conf va a su aire.

Pero encontré la solución en el wiki de Archlinux, bendito wiki ¡lo tiene todo!

Una de las soluciones posibles es agregar el módulo de nuestra tarjeta de red en la sección Modules del rc.conf y la otra es crear unas reglas para udev.

La primera opción es la que probé y la que me ha funcionado.

Si hacemos:

lspci | grep Ethernet

Obtendremos un listado de las tarjetas de red que tenemos conectadas en nuestro equipo (en mi caso):

lspci | grep Ethernet
03:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 12)
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

La que utilizo siempre es la Realtek y es la que quiero seguir utilizando, pero cómo saber ¿quién es quién?

Para conseguir esta información voy a averiguar primero quién es eth0:

dmesg | grep eth0

 8139too 0000:05:00.0: eth0: RealTek RTL8139 

Y para saber quien es eth1:

dmesg | grep eth1

sky2 0000:03:00.0: eth1:

Bien, con estas primeras líneas ya me es más que suficiente para saber cual es la quiero.

Editamos el archivo rc.conf:

nano /etc/rc.conf

Y en la sección Hardware – Modules, agregamos el módulo de la tarjeta de red que quiero que se inicie siempre y tenga conexión a internet sin intervención mía:

MODULES=(8139too)

Obviamente si existen otros módulos dentro de estos paréntesis no hay que eliminarlo, hay que agregarlo a continuación o como indica en el wiki, si se quieren añadir las 2 tarjetas de red poner primero el módulo de la que nos interesa, esto es para que cuando cargue siga un orden. Antes, al no tener nada añadido en ningún orden parece ser que las dos peleaban por cargarse primero y de ahí imagino que venía el lío.

Revisad también que la interfaz de red que hay especificada en la sección Networking del archivo rc.conf coincida.

Y listo ya funciona :-)

Categoría: GNU/Linux
Etiquetas: , , , ,

Tu dirección de correo no será publicada. Los campos obligatorios están marcados con *

*