Moar link.

Le NAS dont je vous entretenais recemment, comme un bon NAS qu’il est, effectue beaucoup de traffic sur le réseau privé d’hébergement. Il sert et il leeche à tout va; Or, ce gentil petit équipement est muni de deux cartes réseau Gigabit, et a la bonne idée d’être branché sur un switch lui aussi Gigabit… hmmm… et si ?

Et si.

Le switch en question ET l’OS en question, OpenSolaris, implémentent le protocole LACP (Link Aggregation Control Protocol), ou 802.3ad.

Ce protocole permet :

  • d’augmenter la capacité du lien
  • le failover
  • le load balancing
    Il serait dommage de s’en priver.

Coté Solaris, on désactive nwam (j’aime pas les trucs “automagic”) et on prépare l’interface d’aggregation :

# svcadm disable nwam
# cd /etc
# echo "192.168.0.2/24" > hostname.aggr1
# echo "192.168.0.254" > defaultrouter
# chmod u+w inet/hosts
# echo "192.168.0.2 machine.domaine.tld" >> inet/hosts
# cat > resolv.conf < < EOF
domainname domaine.tld
nameserver 192.168.0.1
EOF
# cp nsswitch.dns nsswitch.conf
# svcadm enable network/physical:default

On unplumb les deux interfaces réseau :

ifconfig igb0 unplumb

ifconfig igb1 unplumb

ifconfig -a # verification que les interfaces sont bien descendues

lo0: flags=2001000849 mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
lo0: flags=2002000849
mtu 8252 index 1
inet6 ::1/128

Puis on crée l’interface aggrégée à l’aide de dladm :

dladm create-aggr -d igb0 -d igb1 1

ifconfig aggr1 plumb 192.168.0.2 netmask 255.255.255.0 up

ifconfig -a # verification de l’activité du lien

lo0: flags=2001000849 mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
aggr1: flags=1000843
mtu 1500 index 2
inet 192.168.0.2 netmask ffffff00 broadcast 192.168.0.255
ether 0:24:81:a9:ab:10
lo0: flags=2002000849
mtu 8252 index 1
inet6 ::1/128

Ça a l’air pas mal.

Coté switch maintenant. On déclare un lien EtherChannel (qui supporte le protocole LACP) auquel on affecte un identifiant :


interface port-channel 1

Puis on “attache” les ports 1 et 2 du switch à ce lien aggrégé :


interface range ethernet g(1-2)
channel-group 1 mode auto

C’est tout.

L’interface EtherChannel ainsi configurée est manipulable comme un port classique du switch, on peut donc par exemple l’affecter à un VLAN de cette façon :


interface port-channel 1
switchport access vlan 3

C’est prêêêt !

Vous pouvez désormais épater vos amis en débranchant l’un ou l’autre des RJ45 alors que vous sauvegardez des documentations multimedia à haute teneur informatives.