User Tools

Site Tools


informatique:linux:reseau

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revisionBoth sides next revision
informatique:linux:reseau [2016/11/14 09:45] – created pteuinformatique:linux:reseau [2018/01/02 16:32] pteu
Line 1: Line 1:
-======Le réseau sous Linux======+====== Le réseau sous Linux ====== 
 + 
 +=====Outils en vrac===== 
 + 
 +<code> 
 +nmap (http://www.nmap.org/), 
 +thcrut (http://www.thc.org/thcrut/), 
 +hping (http://www.hping.org/), 
 +dsniff (http://www.monkey.org/~dugsong/dsniff/), 
 +ettercap (http://ettercap.sourceforge.net/), 
 +ggsniff (http://ggsniff.sourceforge.net/), 
 +p0f (http://lcamtuf.coredump.cx/), 
 +amap (http://www.thc.org/amap/), 
 +vmap (http://www.thc.org/vmap/
 +nbtscan (http://www.unixwiz.net/tools/nbtscan.html). 
 +</code>
  
 =====IP secondaire===== =====IP secondaire=====
Line 49: Line 64:
 NAME=reseau_10.0.0 NAME=reseau_10.0.0
 </code> </code>
 +
 +
 +=====Bonding (agrégat)=====
 +
 +Le **bonding** sous Linux est l'agrégat de ports, c'est-à-dire l'association de plusieurs interfaces réseau physiques pour en créer une logique, plus rapide et/ou plus fiable. C'est l'équivalent de l'//etherchannel// en terminologie Cisco ou du //sharing// chez Extreme Networks.
 +
 +====Théorie====
 +
 +Il existe plusieurs modes de gestion de l'agrégat ; en bref les mode 0 (**balance-rr**), 1 (**active-backup**), 2 (**balance-xor**), 3 (**broadcast**), 4 (**802.3ad / LACP**), 5 (**balance-tlb**), et 6 (**balance-alb**).
 +
 +Dans la mesure du possible (si le commutateur d'en face le gère et est configuré pour), il est recommandé d'utiliser le **LACP** pour grouper ces interfaces entre elles et dialoguer avec l'équipement d'en face. Cela permet de créer un agrégat dynamique auquel on peut ajouter/retirer des interfaces à chaud par ex.
 +
 +Avec le LACP (comme le balance-xor) on peut alors configurer la méthode de répartition de charge entre les interfaces avec le paramètre **xmit_hash_policy**, qui peut prendre la valeur :
 +  * **layer2** : répartition par défaut (XOR des adresses MAC src/dst et packet type ID)
 +  * **layer2+3** (XOR des adresses MAC/IP src/dst)
 +  * **layer3+4** (XOR des ports src/dst (TCP-UDP) et des adresses IPs src/dst ; NB : ce mode n'est pas totalement respectueux de la norme 802.3ad et peux causer des dé-séquencements avec des paquets fragmentés))
 +
 +Il existe les modes **encap2+3** et **encap3+4**, identiques à layer2+3 et layer3+4, mais en utilisant les informations des protocoles encapsulés lorsque détection de tunnels)
 +
 +====Configuration sous centOS====
 +
 +Fichiers de configuration :
 +  * interfaces physiques : ''/etc/sysconfig/network/ifcfg-ethX''
 +  * agrégat : ''/etc/sysconfig/network/ifcfg-bond0''
 +  * driver bonding : ''/etc/modprobe.d/bonding.conf''
 +
 +Pour fonctionner, on doit disposer d'une ou plusieurs interfaces physiques similaires en terme de type et de débit. Par exemple eth2 et eth3 :
 +<code bash>
 +# eth2
 +DEVICE=eth2
 +BOOTPROTO=none
 +ONBOOT=yes
 +HWADDR=00:e0:ed:xx:xx:x2
 +MASTER=bond0
 +SLAVE=yes
 +TYPE=Ethernet
 +USERCTL=no
 +
 +# eth3
 +DEVICE=eth3
 +BOOTPROTO=none
 +ONBOOT=yes
 +HWADDR=00:e0:ed:xx:xx:x3
 +MASTER=bond0
 +SLAVE=yes
 +TYPE=Ethernet
 +USERCTL=no
 +</code>
 +
 +Il faut installer le module de bonding :
 +<code bash>
 +cat /etc/modprobe.d/bonding.conf 
 +alias bond0 bonding
 +options bond0 mode=4 xmit_hash_policy=layer2+3 miimon=100 downdelay=200 updelay=200
 +</code>
 +
 +Exemple de configuration :
 +<code bash>
 +cat /etc/sysconfig/network-scripts/ifcfg-bond0
 +
 +DEVICE='bond0'
 +BONDING_MASTER='yes'
 +BONDING_MODULE_OPTS='mode=802.3ad xmit_hash_policy=layer2+3 miimon=100'
 +BONDING_SLAVE0='eth2'
 +BONDING_SLAVE1='eth3'
 +BOOTPROTO='static'
 +BROADCAST=''
 +ETHTOOL_OPTIONS=''
 +IPADDR='10.1.8.200/24'
 +MTU='1500'
 +NAME='82599EB 10-Gigabit Network Connection'
 +NETWORK=''
 +REMOTE_IPADDR=''
 +STARTMODE='auto'
 +USERCONTROL='no'
 +</code>
 +
 +====Diagnostique====
 +
 +<code bash>
 +cat /proc/net/bonding/bond0
 +
 +Ethernet Channel Bonding Driver: v3.5.0 (November 4, 2008)
 +
 +Bonding Mode: IEEE 802.3ad Dynamic link aggregation
 +Transmit Hash Policy: layer2 (0)
 +MII Status: up
 +MII Polling Interval (ms): 100
 +Up Delay (ms): 0
 +Down Delay (ms): 0
 +
 +802.3ad info
 +LACP rate: slow
 +Aggregator selection policy (ad_select): stable
 +Active Aggregator Info:
 + Aggregator ID: 1
 + Number of ports: 2
 + Actor Key: 33
 + Partner Key: 101
 + Partner Mac Address: 74:8e:f8:xx:xx:x1
 +
 +Slave Interface: eth2
 +MII Status: up
 +Link Failure Count: 0
 +Permanent HW addr: 00:e0:ed:xx:xx:x2
 +Aggregator ID: 1
 +
 +Slave Interface: eth3
 +MII Status: up
 +Link Failure Count: 1
 +Permanent HW addr: 00:e0:ed:xx:xx:x3
 +Aggregator ID: 1
 +</code>
 +
 +====Références====
 +
 +  * [[https://www.kernel.org/doc/Documentation/networking/bonding.txt|Linux Ethernet Bonding Driver HOWTO]] sur kernel.org
  
informatique/linux/reseau.txt · Last modified: 2023/05/05 12:35 by pteu