Page 1 of 1

No funciona Ethernet Channel Bonding

Posted: Wed Sep 14, 2016 4:09 pm
by khain
Hola,
Estoy intentado hacer "Ethernet Channel Bonding" con la tarjeta de red que tiene la propia pi y me he comprado el siguiente adaptador http://es.aliexpress.com/item/Hot-100Mb ... 134.i3AWwq. El adaptador la pi lo reconoce directamente sin hacer nada
especial.

Para realizar la instalación lo único que he tenido que hacer:

- instalar ifslave
- Añadir en el fichero /etc/module la linea "bonding"

Y el fichero de configuracion /etc/network/interfaces he añadido:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The first network bond
auto bond0
iface bond0 inet static
address 192.168.1.5
netmask 255.255.255.0
gateway 192.168.1.1
slaves eth0 eth1
bond-mode 2
bond-miimon 100
bond_downdelay 200
bond_updelay 200

Para ver si el bonding esta activo ejecuto la siguiente consulta:
cat /proc/net/bonding/bond0
que me devuelve:

Bonding Mode: load balancing (xor)
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 200
Down Delay (ms): 200

Slave Interface: eth0
MII Status: down
Speed: 10 Mbps
Duplex: half
Link Failure Count: 0
Permanent HW addr: b8:27:eb:7b:99:29
Slave queue ID: 0

Slave Interface: eth1
MII Status: up
Speed: 100 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: 00:00:00:00:01:32
Slave queue ID: 0

En teoría esta correcto pero me pasa algo curioso. Si conecto los cables de red no funciona pero si solo dejo el cable de red del adaptador funciona correctamente. Y alguna vez, y durante días, han funcionando los dos adaptadores a la vez.

Pido ayuda porque no tengo ni idea que me pasa y como para mi todo es correcto no se que hacer. La unica explicacion que yo le puedo dar es que tengo una raspberry pi 3 y un adaptador de 2 amperios. Nunca pense que fuese un problema porque lo unico que alimenta la pi es un pendrive de 64 GB y el adaptador. Que ahora mismo es la conexion de red que estoy usando ya que la otra ha dejado funcionar.


Un saludo.

Re: No funciona Ethernet Channel Bonding

Posted: Thu Sep 15, 2016 12:56 am
by 56kbps
En el supuesto que tu intención sea aumentar la velocidad de transmisión: ¿Has pensando en usar simplemente un adaptador USB3 gigabit en lugar de unir dos fast ethernet? No conseguirás todo el ancho de banda que una interfaz gigabit puede ofrecer, pero tampoco está mal.

Por curiosidad, ¿el invento funciona si lo levantas manualmente en lugar de hacer "auto bond0"? (supongo que el sistema no estará levantando interfaces por su cuenta jodiéndote el invento, ¿verdad?) ¿Qué pasa si no la levantas (bond0), hay alguna interfaz (eth0, eth1) autoconfigurada? funcione o no.

Re: No funciona Ethernet Channel Bonding

Posted: Thu Sep 15, 2016 12:19 pm
by khain
Lo pense y fue mi primera alternativa. Para eso me compre este adaptador http://es.aliexpress.com/store/product/ ... db743cb8bc. El cual no es muy estable. Me pasa tanto en el debian de la pi como en el ubuntu de mi equipo principal. No le doy mucha importancia porque apenas lo uso como rj45, la placa ya tiene conector rj45, y mas como hub usb.

Sobre lo segundo que indicas. ¿ Que te refieres exactamente? Ejecutar el siguiente comando:
ifenslave -d bood0
para forzar un reinicio del interfaz. Y si tengo dos ethernet configurada pero por alguna razón solo funciona una.

Re: No funciona Ethernet Channel Bonding

Posted: Fri Sep 16, 2016 4:33 am
by 56kbps
Sobre mi segundo párrafo: Al menos en Raspbian ya no se utiliza en exclusiva el archivo "/etc/network/interfaces" para configurar las interfaces de red, (bueno, en la versión Lite sí, no así en la versión con entorno gráfico), hay otro método preferido por Raspbian para levantarlas. Yo uso la versión Lite, así que como nunca he tenido que pelearme con este asunto poco más puedo decir.

Me parece significativo que solo te funcione el adaptador, ¿será porque Raspbian se queda eth0 (ethernet de la placa) para levantarla como interfaz estándar y entonces ya no puedes asignarla a bond0?

Esto podría ser el motivo por el cual no te funciona o solo a veces. Por eso preguntaba: ¿cual es el estado (¿tienen ya configuración IP?) de las interfaces eth0 y eth1 antes de levantar "bond0"?

Re: No funciona Ethernet Channel Bonding

Posted: Fri Sep 16, 2016 4:25 pm
by khain
¿Que ficheros ademas del "etc/network/interfaces" tengo que tocar? Había visto que otras distribuciones usaban mas ficheros de configuración para red pero pensaba que en debian no había cambiando.

El router tiene DHCP activado. ¿ Crees que eso me puede estar jodiendo ? Si es eso puedo hacer una prueba arrancarlo la pi y después le conecto los conectores rj45. <-- Tendría algo de sentido lo que tiene sentido es que a veces funciona y otras no. Sin cambiar nada.

Re: No funciona Ethernet Channel Bonding

Posted: Sat Sep 17, 2016 2:20 am
by 56kbps
Más que en Debian el cambio ha ocurrido para Raspbian con entorno gráfico.

Que el router tenga DHCP activado no tendría porque ser problemático: si el cliente hace una petición DHCP entonces el router le dará la configuración IP, pero si el cliente no le pide nada pues entonces el router no le enviará nada.

Que a veces te funcione y otras no podría ser debido a una condición de carrera: podría ser que los añadidos de Raspbian para asuntos de red lleguen tarde para "secuestrar" eth0, en otras ocasiones es más rápido que el fichero "interfaces" y te jode el invento.

Te propongo lo siguiente: deshabilita las interfaces bond0, eth0 y eth1 en "/etc/network/interfaces" (no solo que no sean "auto" sino que además no aparezcan en el archivo). Hecho esto reinicia y mira si tienes alguna interfaz levantada. Si es así... ¿cómo es posible? ¿qué las ha levantado? Más que nada mira eth0, si está levantada no creo que puedas unirla a bond0.

Otra propuesta: si tienes alguna tarjeta MicroSD por ahí que te sobre métele Raspbian Lite y prueba la misma configuración que nos has pasado. Sí en esta ocasión te funciona yo creo que es casi seguro que el problema viene por los añadidos de Raspbian para el entorno gráfico.

No soy capaz de indicar exactamente donde tienes que mirar porque siempre he usado Raspbian Lite, no estoy nada familiarizado con el entorno gráfico y su forma de gestionar los asuntos de conectividad. Aún así, tengo entendido que este asunto viene por el paquete "raspberrypi-net-mods". En los foros de Raspberry Pi encontrarás bastante información (sobre todo relacionados con IP estática).

Re: No funciona Ethernet Channel Bonding

Posted: Sat Sep 17, 2016 9:26 am
by khain
Buenas ideas lo voy a probar.

Re: No funciona Ethernet Channel Bonding

Posted: Sat Oct 01, 2016 12:00 pm
by khain
Ya lo he solucionado. El problema era que el router le asignaba una IP. Lo he desactivado y ya funciona correctamente.

Re: No funciona Ethernet Channel Bonding

Posted: Sat Oct 01, 2016 1:24 pm
by actkk2000
Buenisismo, si puedes agrega [solucionado] al titulo para que se sepa al verlo.

Slds!