Internet - Communication & Réseau

Paramétrage des réseaux et des VLAN avec la commande ip

Dernière mise à jour : 29/01/2020 à 10h51
Table des matières ethernet_cable

Définition de la commande IP


La commande IP est une commande un peu fourre-tout très utile pour faire beaucoup de choses ayants traits au réseau. Il permet notamment de modifier et visualiser vos adresses IP.

Visualisation et modification des adresses IP


Visualisations


On peut faire la commande suivante :
Code BASH :
ip addr


Ceci va lister toutes les interface et afficher toutes les informations disponibles (adresses IP, adresses MAC, masques de sous-réseaux, adresses de broadcast…;) :
Code BASH :
 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp2f0s1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000
    link/ether 00:0c:29:8c:b2:02 brd ff:ff:ff:ff:ff:ff
    inet 192.168.74.128/24 brd 192.168.74.255 scope global enp2f0s1
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe8c:b202/64 scope link
       valid_lft forever preferred_lft forever
 


On peut aussi filtrer les résultats, et n'afficher que les adresses IPv4 :
Code BASH :
ip -4 addr


Ou encore les IPv6 :
Code BASH :
ip -6 addr


On peut aussi afficher seulement l'IPv4 sur une interface définie :
Code BASH :
ip -4 addr show enp2f0s1


On peut aussi afficher seulement les interfaces qui ont été démarrées (état "up")
Code BASH :
ip link ls up


Modifications


En effet, la commande IP permet également d'effectuer des modifications sur nos interfaces réseaux. On peut notamment assigner une adresse IP à une interface :
Code BASH :
ip addr add 192.168.74.100/255.255.255.0 dev enp2f0s1


Le masque (255.255.255.0) peut être raccourci grâce au CIDR (équivalence du masque représentant le nombre de bits à 1 du masque. 255.255.255.0 = 24) ce qui nous donne la commande suivance :
Code BASH :
ip addr add 192.168.74.100/24 dev enp2f0s1


On peut activer (up) ou desactiver (down) une interface :
Code BASH :
 
ip link set dev enp2f0s1 up
ip link set dev enp2f0s1 down
 


Si besoin, on peut aussi supprimer l'adresse que l'on a allouée.
Code BASH :
ip addr del 192.168.74.100/24 dev enp2f0s1


On peut modifier la passerelle par défaut.
Code BASH :
ip route add default via 192.168.74.254


On peut également modifier le mtu ( taille maximale des paquets transmis par la carte, peut être modifié, en connaissance de cause, notemment pour améliorer la transmission des données pour les jeux vidéos notemment ) grace à la commande suivante :
Code BASH :
ip link set mtu 9000 dev enp2f0s1



Gestion des vlans


Un vlan, c'est quoi ?


Pour résumer, un vlan permet d'avoir plusieurs switchs en un seul. Ainsi, on peut faire cohabiter plusieurs réseaux sur un seul switchs. Cette technique est très utilisée notamment en entreprise, le plus souvent pour séparer la partie voix sur IP de la partie réseau purement informatique (entre bien d'autres cas plus exotiques les uns que les autres)
En règle générale, si vous ne savez pas ce que c'est un vlan, et que vous ne bidouillez pas du réseau, cet article n'est pas pour vous. Ceci concerne en effet du paramétrage réseau assez avancé, dont vous n'aurez pas besoin pour faire fonctionner votre ordinateur derrière une simple box. De fait, pour pouvoir suivre, vous devrez avoir des bases en matières de réseaux IP.

Créer un vlan sur sa carte réseau


Il existe plusieurs types de ports : Les ports en accès et les ports tagués. Pour les ports en accès, il n'y a aucun problème, ça se comporte comme un port normal (on branche, et ça marche). Avec un port tagué, c'est un peu plus compliqué : il faut que la carte réseau de l'ordinateur ajoute un tag aux trames qu'elle envoi. Du côté de Windows, il faut souvent avoir des pilotes spéciaux pour pouvoir le faire, et ça peut être assez compliqué. Sous Linux et Mageia (comme souvent) c'est beaucoup plus simple. Bien que la carte réseau doit être compatible avec la norme pour les tags de vlan (802.1q).

Comment on fait ?


C'est l'affaire de trois petites lignes de commandes pour faire fonctionner tout ça. Les lignes de commandes suivantes seront à lancer en tant que root. Nous utiliserons essentiellement la commande " ip ".

Création d'une interface virtuelle


Code BASH :
ip link add link enp2s0f1 name enp2s0f1.100 type vlan id 100

On voit donc ici qu'on ajoute un lien à l'interface enp2s0f1 (interface ethernet). On indique le nom de cette nouvelle interface (enp2s0f1.100 avec 100 pour le numéro de notre vlan) puis on indique que le type de cette interface est pour le vlan dont l'id est 100.

On indique une adresse IP à cette interface


Oui, c'est quand mieux si on veut pouvoir se connecter aux autres éléments présents dans le réseau virtuel.
Code BASH :
ip addr add 192.168.100.1/24 brd 192.168.100.255 dev enp2s0f1.100

On indique donc ici l'adresse ip avec son CIDR (masque de sous-réseau 24=255.255.255.0). On doit aussi indiquer une adresse de broadcast, puis on met tout ça sur notre interface virtuelle enp2s0f1.100.

On démarre l'interface


Ici rien de sorcier, on démarre l'interface crée précédemment.
Code BASH :
ip link set dev enp2s0f1.100 up



À cette étape tout est sensé fonctionné normalement.

Et pour enlever tout ça ?


Si vous voulez tout remettre en état, vous avez la possibilité soit de désactiver l'interface que vous avez crée :
Code BASH :
ip link set dev enp2s0f1.100 down

Vous pouvez aussi carrément la supprimer :
Code BASH :
ip link delete enp2s0f1.100



(Article librement inspiré de l'article de Linuxtricks sur la commande IP et du wiki ArchLinux sur les VLAN)
Cette page a été vue 9190 fois