GNU/Linux >> Tutoriels Linux >  >> Linux

Comment configurer Linux en tant que routeur statique

En tant qu'administrateur réseau, vous savez probablement à quel point les routeurs peuvent être coûteux.

Si vous configurez une architecture réseau complexe, vous aurez peut-être besoin de routeurs Cisco ou Netgear, car ils intègrent des fonctionnalités avancées pour la gestion du réseau.

Cependant, si vous envisagez de créer un petit réseau pour votre entreprise, il existe peut-être une alternative moins chère.

Et si vous pouviez configurer un simple serveur Linux pour agir comme un routeur statique ?

En utilisant ces fonctionnalités, vous pourriez avoir un Raspberry Pi sur votre site, qui pourrait gérer le trafic sur deux ou trois réseaux différents.

Dans ce didacticiel, nous allons voir comment vous pouvez configurer un hôte Linux pour qu'il agisse comme un simple routeur statique.

Nous allons également revoir les bases du subnetting afin que vous compreniez les règles que vous mettez en place.

Prérequis

Afin de configurer un serveur Linux en tant que routeur statique, vous devez disposer des privilèges sudo sur votre hôte.

Pour le vérifier, vous pouvez exécuter la commande "sudo" avec l'option "-v".

$ sudo -v

Si vous n'avez pas les droits sudo, vous pouvez consulter nos tutoriels pour devenir sudo sur les distributions Debian ou CentOS.

Maintenant que vous avez les privilèges sudo, il y a essentiellement trois étapes pour configurer votre routeur statique :

  • Vous devez avoir une vue globale de votre architecture réseau  :quelles sont les adresses IP du réseau et quels réseaux devront communiquer entre eux ;
  • Vous devez configurer la table de routage statique sur votre routeur Linux ;
  • Vous devez activer le transfert IP pour que les paquets transitent par votre routeur.

C'est un programme assez long, alors sans plus tarder, découvrons l'architecture du réseau et quelles sont nos adresses IP réseau.

Comprendre l'architecture réseau

Par souci de simplicité, nous allons configurer un simple routeur statique entre deux réseaux.

Afin de déterminer les adresses IP du réseau, choisissons deux hôtes dans chaque réseau :192.168.200.2/24 et 192.168.190.2/24.

Les deux hôtes n'appartiennent pas au même sous-réseau :par conséquent, ils ne peuvent pas communiquer directement.

Étant donné le masque de réseau du premier hôte, nous sommes en mesure de déterminer que le premier réseau a une adresse IP de 192.168.200.0/24.

De même, le deuxième réseau a une adresse IP de 192.168.190.0/24.

Grâce à ces informations, nous pourrons configurer les interfaces réseau sur notre routeur Linux.

Configuration des interfaces réseau du routeur

Afin de pouvoir acheminer des paquets d'un réseau à un autre, vous devez disposer de deux interfaces réseau :une dans le premier réseau et une autre dans le deuxième réseau.

Afin de garder le didacticiel simple, nous allons supposer que les deux hôtes utilisent le routeur comme passerelle par défaut pour leurs réseaux respectifs.

Cela signifie que le premier hôte contacte le routeur sur le 192.168.200.1/24 adresse IP et que le deuxième hôte contacte le routeur sur le 192.168.190.1/24 Adresse IP.

Tout d'abord, vous devez identifier les interfaces réseau utilisées pour le routage

$ ip link show

Sur cet hôte, nous avons deux interfaces réseau nommées "enp0s3" et "enp0s8".

Remarque :Vous devrez peut-être noter ces noms car vous devrez les utiliser dans la section suivante.

Maintenant que vous avez vos noms d'interfaces réseau, vous allez configurer votre routeur avec une adresse IP statique.

Configurer une adresse IP statique sur Debian

Si vous utilisez Debian ou Ubuntu, rendez-vous sur /etc/network/interfaces et ajoutez-y vos deux informations d'interface réseau.

$ sudo nano /etc/network/interfaces

# Defining the first interface
auto <interface_name>
iface <interface_name> inet static
address 192.168.190.1
netmask 255.255.255.0

# Defining the second interface
auto <interface_name>
iface <interface_name> inet static
address 192.168.200.1
netmask 255.255.255.0

Remarque :n'oubliez pas d'ajouter la directive "auto", sinon vos interfaces ne seront pas levées au démarrage.

Enregistrez votre fichier et redémarrez votre service réseau pour que les modifications soient appliquées.

$ sudo systemctl restart networking.service

$ sudo systemctl status networking.service

Dans ce cas, nous n'utilisons pas le NetworkManager :nous gérons les interfaces à l'aide de l'utilitaire ifupdown (un peu comme dans les anciennes distributions).

À présent, vos interfaces devraient être opérationnelles, vous pouvez les vérifier en exécutant la commande "ip" avec l'option "a".

Si vos interfaces ne sont pas en cours d'exécution ou marquées comme "DOWN", vous pouvez les afficher en exécutant la commande "ifup".

$ ifup <interface_name>

Configuration de l'adresse IP statique sur CentOS

Afin de configurer votre hôte CentOS avec une adresse IP statique, rendez-vous dans le répertoire "/etc/sysconfig/network-scripts" et créez deux fichiers distincts pour vos interfaces réseau.

$ touch ifcfg-enp0s3 && touch ifcfg-enp0s8

Pour configurer une adresse IP statique, vous pouvez ajouter les informations suivantes dans votre fichier.

# Content of enp0s3

BOOTPROTO="static"
IPADDR=192.168.200.1
NETMASK=255.255.255.0
NAME="enp0s3"
ONBOOT="yes"

# Content of enp0s8
BOOTPROTO="static"
IPADDR=192.168.190.1
NETMASK=255.255.255.0
NAME="enp0s8"
ONBOOT="yes"

Remarque :n'oubliez pas d'ajouter le "ONBOOT ” afin que vos interfaces soient déclenchées au démarrage.

Maintenant que votre routeur est connecté aux deux réseaux, vous devez ajouter une route statique entre vos deux réseaux afin qu'ils puissent communiquer.

Création de routes statiques à l'aide d'ip

Avoir deux interfaces réseau ne signifie pas que votre noyau acheminera naturellement les paquets d'une interface à l'autre.

Tout d'abord, assurez-vous de lister les routes existantes qui peuvent exister sur votre serveur en exécutant le "ip route ” commande.

$ ip route

Suppression des routes statiques existantes

Si des routeurs statiques sont déjà définis pour vos interfaces réseau, vous devrez les supprimer :sinon, vous ne pourrez pas en ajouter de nouveaux.

Pour supprimer une route, utilisez la commande "ip route" avec l'option "delete" et spécifiez la route à supprimer.

$ ip route delete <route>

Dans notre cas, nous voulons supprimer les routes qui pointent vers les réseaux 192.168.190.0/24 et 192.168.200.0/24.

$ ip route delete 192.168.190.0/24

$ ip route delete 192.168.200.0/24

$ ip route

Maintenant que les itinéraires sont supprimés, vous pouvez ajouter ceux qui vous intéressent.

Création de nouvelles routes statiques

Pour que les paquets circulent du premier réseau vers le second, votre première carte réseau doit pointer vers le second et vice-versa.

Tout d'abord, vous pouvez créer une route entre la première adresse IP de la carte réseau et la deuxième adresse IP du réseau.

$ ip route add 192.168.200.0/24 via 192.168.190.1

En utilisant cette règle, tous les paquets utilisant l'interface 192.168.190.1 comme passerelle peuvent être redirigés vers le réseau 192.168.200.0.

De même, vous pouvez ajouter une autre route dans le sens opposé afin que vos paquets puissent refluer.

$ ip route add 192.168.190.0/24 via 192.168.200.1

Maintenant que vos routes sont ajoutées, vous pouvez vérifier qu'elles sont opérationnelles et actives en exécutant à nouveau la commande "ip route".

$ ip route

Maintenant que vos routes sont ajoutées, il vous reste une dernière étape à configurer pour que vos hôtes puissent se pinger mutuellement.

Activer le transfert IP sous Linux

Même si des routes existent, le noyau ne transmettra pas naturellement les paquets aux interfaces réseau correspondantes sans configuration.

Pour activer le transfert IP, accédez au fichier /etc/sysctl.conf et recherchez le paramètre "net.ipv4.ip_forward".

$ vi /etc/sysctl.conf

Par défaut, ce paramètre est défini sur "0", mais vous souhaitez le définir sur "1" afin d'activer le transfert IP.

Enregistrez votre fichier et actualisez la configuration du système en exécutant la commande "sysctl".

$ sysctl -p /etc/sysctl.conf

Tester la connectivité réseau

Maintenant que le transfert IP est activé, vous devriez pouvoir envoyer un ping d'un hôte du premier réseau à un hôte du deuxième réseau.

Afin de le vérifier, connectez-vous à un hôte sur le premier réseau et exécutez une commande "ping" sur un hôte situé sur le deuxième réseau.

$ ping <host_second_network>

Dans notre cas, nous voudrions envoyer un ping à l'hôte "192.168.190.2/24" à partir de celui "192.168.200.2/24".

Génial! Votre premier hôte peut envoyer un ping au second.

Comme vérification supplémentaire, vous pouvez vous assurer que votre deuxième hôte est capable d'envoyer un ping au premier.

Génial!

Maintenant que votre configuration est prête, vous devriez pouvoir ajouter de nouveaux hôtes aux deux réseaux et commencer à communiquer entre les deux réseaux.

Conclusion

Dans ce tutoriel, vous avez appris comment vous pouvez facilement configurer un système Linux en tant que routeur statique .

Cette configuration peut être très utile si vous envisagez de créer une petite infrastructure réseau pour votre entreprise.

Au lieu d'acheter et de devoir configurer un routeur Cisco, vous pouvez simplement utiliser un Raspberry Pi comme routeur statique.

Si votre entreprise se développe et que vous prévoyez d'avoir une plus grande infrastructure réseau, vous pouvez vérifier les routeurs gérés car ils offriront probablement plus de flexibilité à vos besoins.

Si vous êtes intéressé par l'administration système Linux , nous avons une section complète qui lui est consacrée sur le site Web, alors assurez-vous de la consulter !


Linux
  1. Comment configurer une adresse IP statique sur Debian Linux

  2. Comment définir une adresse IP statique et configurer le réseau sous Linux

  3. Comment configurer une adresse IP statique sur Fedora

  4. Comment configurer une adresse IP statique et dynamique dans Arch Linux

  5. Comment configurer Qt pour la compilation croisée de Linux vers la cible Windows ?

Comment configurer une adresse IP statique sous Linux et Unix

Comment configurer un VLAN sous Linux

3 façons de configurer une interface réseau sous Linux

Comment configurer une adresse IP statique sur Alpine Linux

Comment ajouter une route sous Linux

Comment configurer une adresse IP statique sur le système Linux