<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<!--This file was converted to xhtml by LibreOffice - see https://cgit.freedesktop.org/libreoffice/core/tree/filter/source/xslt for the code.-->

<head profile="http://dublincore.org/documents/dcmi-terms/">
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8"/>
<title xml:lang="en-US">yannick</title>
<meta name="DCTERMS.title" content="yannick" xml:lang="en-US"/>

<meta name="DCTERMS.language" content="en-US" scheme="DCTERMS.RFC4646"/>
<meta name="DCTERMS.source" content="http://xml.openoffice.org/odf2xhtml"/>

<meta name="DCTERMS.issued" content="2025-05-24T08:41:15.236665236" scheme="DCTERMS.W3CDTF"/>

<meta name="DCTERMS.modified" content="2025-05-24T11:22:34.146473689" scheme="DCTERMS.W3CDTF"/>


<meta name="xsl:vendor" content="libxslt"/>
<link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" hreflang="en"/>
<link rel="schema.DCTERMS" href="http://purl.org/dc/terms/" hreflang="en"/>
<link rel="schema.DCTYPE" href="http://purl.org/dc/dcmitype/" hreflang="en"/>
<link rel="schema.DCAM" href="http://purl.org/dc/dcam/" hreflang="en"/>

<style>
    table { border-collapse:collapse; border-spacing:0; empty-cells:show }
    td, th { vertical-align:top; font-size:12pt;}
    h1, h2, h3, h4, h5, h6 { clear:both;}
    ol, ul { margin:0; padding:0;}
    li { list-style: none; margin:0; padding:0;}
    span.footnodeNumber { padding-right:1em; }
    span.annotation_style_by_filter { font-size:95%; font-family:Arial; background-color:#fff000;  margin:0; border:0; padding:0;  }
    span.heading_numbering { margin-right: 0.8rem; }* { margin:0;}
    .graphic-fr1{ background-color:transparent; font-size:12pt; font-family:'Liberation Serif'; text-align:center; vertical-align:top; writing-mode:horizontal-tb; direction:ltr; }
    .paragraph-Heading_20_3{ font-size:14pt; margin-bottom:0.212cm; margin-top:0.247cm; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;font-weight:bold; }
    .paragraph-P1{ font-size:12pt; line-height:115%; margin-bottom:0.247cm; margin-top:0cm; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;margin-left:0cm; margin-right:0cm; text-indent:0cm; font-style:italic; }
    .paragraph-P10{ font-size:12pt; line-height:115%; margin-bottom:0.247cm; margin-top:0cm; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;text-align:left ! important; }
    .paragraph-P11{ font-size:10pt; margin-bottom:0cm; margin-top:0cm; font-family:'Liberation Mono'; writing-mode:horizontal-tb; direction:ltr;background-color:#292d3e; margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-P12{ font-size:10pt; margin-bottom:0cm; margin-top:0cm; font-family:'Liberation Mono'; writing-mode:horizontal-tb; direction:ltr;margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-P13{ font-size:10pt; margin-bottom:0cm; margin-top:0cm; font-family:'Liberation Mono'; writing-mode:horizontal-tb; direction:ltr;background-color:#292d3e; margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-P14{ font-size:12pt; line-height:115%; margin-bottom:0cm; margin-top:0cm; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-P15{ font-size:12pt; line-height:115%; margin-bottom:0cm; margin-top:0cm; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;}
    .paragraph-P16{ font-size:12pt; line-height:115%; margin-bottom:0.247cm; margin-top:0cm; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;}
    .paragraph-P17{ font-size:10pt; margin-bottom:0.247cm; margin-top:0cm; font-family:'Liberation Mono'; writing-mode:horizontal-tb; direction:ltr;background-color:#292d3e; margin-left:0cm; margin-right:0cm; line-height:115%; text-indent:0cm; }
    .paragraph-P2{ font-size:12pt; line-height:115%; margin-bottom:0.247cm; margin-top:0cm; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-P3{ font-size:12pt; font-weight:bold; text-align:center ! important; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-P4{ font-size:12pt; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;margin-left:0cm; margin-right:0cm; text-align:center ! important; text-indent:0cm; }
    .paragraph-P5{ font-size:12pt; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;text-align:center ! important; }
    .paragraph-P6{ font-size:12pt; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-P7{ font-size:12pt; line-height:115%; margin-bottom:0cm; margin-top:0cm; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-P8{ font-size:12pt; line-height:115%; margin-bottom:0.247cm; margin-top:0cm; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-P9{ font-size:10pt; margin-bottom:0.499cm; margin-top:0cm; font-family:'Liberation Mono'; writing-mode:horizontal-tb; direction:ltr;background-color:#292d3e; margin-left:0cm; margin-right:0cm; text-indent:0cm; }
    .paragraph-Standard{ font-size:12pt; font-family:'Liberation Serif'; writing-mode:horizontal-tb; direction:ltr;}
    .table-Tableau1{ width:5.72cm; margin-left:0px; margin-right:auto;}
    .cell-Tableau1_A1{ border-top-style:none; border-left-style:none; border-bottom-style:none; border-right-style:none; vertical-align:middle; padding:0.049cm; }
    .col-Tableau1_A{ width:1.341cm; }
    .col-Tableau1_B{ width:1.939cm; }
    .col-Tableau1_C{ width:2.441cm; }
    .text-Emphasis{ font-style:italic; }
    .text-Source_20_Text{ font-family:'Liberation Mono'; }
    .text-Strong_20_Emphasis{ font-weight:bold; }
    .text-T11{ font-weight:bold; }
    .text-T12{ color:#c3e88d; }
    .text-T13{ color:#89ddff; font-style:normal; }
    .text-T2{ font-style:normal; }
    .text-T3{ color:#bfc7d5; }
    .text-T4{ color:#89ddff; }
    .text-T5{ color:#c792ea; }
    .text-T6{ color:#f78c6c; }
    .text-T7{ color:#bfc7d5; font-style:italic; }
    .text-T8{ color:#82aaff; }
    .text-T9{ color:#f78c6c; font-style:normal; }
    /* ODF styles with no properties representable as CSS:
    .dp1 .Numbering_20_Symbols .T1 .T10 .T14  { } */
</style>
</head>

<body>

<p class="paragraph-P1">Un réseau maillé est une topologie de réseau dans laquelle les nœuds d'infrastructure établissent des connexions directes, dynamiques et non hiérarchiques avec autant d'autres nœuds que possible et collaborent entre eux. Un réseau maillé est conçu pour acheminer efficacement les données entre les appareils et les clients. Il aide les organisations à établir une connexion uniforme et ininterrompue sur l'ensemble d'une zone physique. Un réseau maillé permet la communication entre les appareils via un réseau privé virtuel (VPN) sans dépendre d'un serveur central.</p>

<p class="paragraph-P2">WireGuard est un programme VPN (réseau privé virtuel) révolutionnaire, conçu pour fonctionner pratiquement partout et sur plusieurs plateformes. Comparé aux autres logiciels VPN, WireGuard se distingue par sa vitesse supérieure, sa sécurité renforcée et sa simplicité d'utilisation.</p>

<p class="paragraph-P2">Ce tutoriel démontre l'utilisation de WireGuard pour établir un réseau maillé privé, permettant la création d'une connexion sécurisée et exclusive entre différents serveurs et instances.</p>

<p class="paragraph-P2">Pour suivre ce tutoriel de configuration du VPN maillé WireGuard, vous devez disposer de quatre serveurs Linux Ubuntu 22.04 avec une adresse IP publique statique et un protocole UDP/51820 accessible depuis Internet. Nous utiliserons les noms et adresses IP suivants pour les nœuds <span class="text-T1">(nodes)</span> VPN :</p>
<p class="paragraph-Standard"> </p>

<table border="0" cellspacing="0" cellpadding="0" class="table-Tableau1"><colgroup><col width="59"/><col width="85"/><col width="107"/></colgroup><tr><td style="text-align:left;width:1.341cm; " class="cell-Tableau1_A1">
<p class="paragraph-P3">Name</p>
</td><td style="text-align:left;width:1.939cm; " class="cell-Tableau1_A1">
<p class="paragraph-P3">Public IP</p>
</td><td style="text-align:left;width:2.441cm; " class="cell-Tableau1_A1">
<p class="paragraph-P3">Allowed IPs</p>
</td></tr><tr><td style="text-align:left;width:1.341cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">Node1</p>
</td><td style="text-align:left;width:1.939cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">11.11.11.1</p>
</td><td style="text-align:left;width:2.441cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">10.0.1.1</p>
</td></tr><tr><td style="text-align:left;width:1.341cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">Node2</p>
</td><td style="text-align:left;width:1.939cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">11.11.11.2</p>
</td><td style="text-align:left;width:2.441cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">10.0.2.1</p>
</td></tr><tr><td style="text-align:left;width:1.341cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">Node3</p>
</td><td style="text-align:left;width:1.939cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">11.11.11.3</p>
</td><td style="text-align:left;width:2.441cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">10.0.3.1</p>
</td></tr><tr><td style="text-align:left;width:1.341cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">Node4</p>
</td><td style="text-align:left;width:1.939cm; " class="cell-Tableau1_A1">
<p class="paragraph-P4">11.11.11.4</p>
</td><td style="text-align:left;width:2.441cm; " class="cell-Tableau1_A1">
<p class="paragraph-P5">10.0.4.1</p>
</td></tr></table>

<p class="paragraph-Standard"> </p>
<p class="paragraph-P2"><span class="text-Strong_20_Emphasis">Tableau 1.</span> *Paramètres d'adresse IP pour l'échantillon de maillage WireGuard*</p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-Standard">
<!--Next 'span' is a draw:frame. -->
<span style="height:14.286cm;width:24.576cm; padding:0; " class="graphic-fr1" id="Image1"><img style="height:14.286cm;width:24.576cm;" alt="" src="data:image/png;base64,[encoded data, 359016 characters]"/></span></div>

<p class="paragraph-P6"><span class="text-Emphasis">Topologie VPN maillée WireGuard</span></p>

<p class="paragraph-P6"><span class="text-Emphasis"/></p>

<p class="paragraph-P2"><span class="text-Emphasis">Vous pouvez configurer WireGuard Mesh VPN en suivant les étapes principales suivantes :</span></p>
<ol><li><p class="P7" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">1.</span>Installation de WireGuard sur les serveurs Ubuntu <span class="odfLiEnd"/> </p></li><li><p class="P7" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">2.</span>Génération manuelle de clés privées et publiques <span class="odfLiEnd"/> </p></li><li><p class="P7" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">3.</span>Permettre aux nœuds VPN d'accéder aux réseaux locaux via d'autres nœuds VPN <span class="odfLiEnd"/> </p></li><li><p class="P7" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">4.</span>Génération manuelle des fichiers de configuration WireGuard <span class="odfLiEnd"/> </p></li><li><p class="P7" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">5.</span>Démarrage du serveur WireGuard et activation au démarrage <span class="odfLiEnd"/> </p></li><li><p class="P8" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">6.</span>Vérification de la connectivité VPN maillée <span class="odfLiEnd"/> </p></li></ol>
<p class="paragraph-P2">AVERTISSEMENT</p>

<p class="paragraph-P2">Accès privilégié à votre système Linux en tant que root ou via la commande <span class="text-Emphasis">sudo .</span></p>

<p class="paragraph-P2">Toutes les commandes ci-dessous doivent être exécutées avec les privilèges <span class="text-Emphasis">root</span> , soit directement en tant qu'utilisateur root, soit en utilisant la commande <span class="text-Emphasis">sudo .</span></p>
<h3 class="paragraph-Heading_20_3"><a id="a__Installation_de_WireGuard"><span/></a><a id="__RefHeading___Toc170_1111168717"/><span class="text-Emphasis"><span class="text-T2">Installation de WireGuard</span></span></h3>

<p class="paragraph-P2">Les serveurs Linux Ubuntu 22.04 seront configurés comme nœud VPN WireGuard. Vous pouvez facilement installer WireGuard sur tous les nœuds VPN Ubuntu en suivant les étapes suivantes :</p>

<p class="paragraph-P2">Assurez-vous que vos nœuds Ubuntu sont à jour en exécutant la commande suivante :</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">sudo apt update </span></span><span class="text-Source_20_Text"><span class="text-T4">&amp;&amp;</span></span><span class="text-Source_20_Text"><span class="text-T3"> sudo apt upgrade </span></span><span class="text-Source_20_Text"><span class="text-T4">-</span></span><span class="text-Source_20_Text"><span class="text-T3">y</span></span></p>

<p class="paragraph-P10">Installez WireGuard lui-même et toutes ses dépendances en exécutant la commande suivante :</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">sudo apt install wireguard wireguard-tools</span></span></p>

<p class="paragraph-P2">Après avoir installé WireGuard, suivez les étapes ci-dessous pour configurer davantage votre serveur.</p>
<h3 class="paragraph-Heading_20_3"><a id="a__Génération"><span/></a><a id="1-generating-private-and-public-keys-manually"/><a id="__RefHeading___Toc172_1111168717"/><span class="text-Emphasis"><span class="text-T2">Génération</span></span><span class="text-Emphasis"> </span></h3>

<p class="paragraph-P2">L'un des principaux avantages de WireGuard est qu'il repose sur des primitives cryptographiques de pointe. Il permet de créer un tunnel VPN sécurisé en chiffrant votre connexion à l'aide d'une paire de clés cryptographiques. Chaque homologue doit posséder ses propres clés privée et publique pour garantir la sécurité des communications dans les deux sens. Pour utiliser WireGuard, chaque nœud doit générer sa propre paire de clés, puis échanger ses clés publiques.</p>

<p class="paragraph-P2">Notez que sur le VPN WireGuard, la clé privée ne quitte jamais son nœud. L'importance réside dans le fait que seule la clé privée peut potentiellement usurper l'identité de ce nœud lors de la négociation d'une session WireGuard. Par conséquent, seul ce nœud spécifique est capable de coder les paquets provenant de lui-même ou de décoder les paquets qui lui sont destinés. Il est crucial de garder cela à l'esprit : les connexions des nœuds WireGuard sont chiffrées de bout en bout, selon le principe de l'accès réseau Zero Trust (ZTNA).</p>

<p class="paragraph-P2">Vous pouvez suivre les étapes suivantes pour générer des paires de clés privées et publiques pour tous les nœuds VPN maillés :</p>

<p class="paragraph-P2">Exécutez la commande suivante sur le serveur Ubuntu pour générer une paire de clés publique/privée pour le nœud n°1.</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">wg genkey </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> sudo tee </span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">etc</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">wireguard</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">node1_private</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">key </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> wg pubkey </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> sudo tee </span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">etc</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">wireguard</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">node1_public</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">key</span></span></p>

<p class="paragraph-P2">Exécutez la commande suivante pour générer une paire de clés publique/privée pour le nœud n° 2.</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">wg genkey </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> sudo tee </span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">etc</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">wireguard</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">node2_private</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">key </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> wg pubkey </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> sudo tee </span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">etc</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">wireguard</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">node2_public</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">key</span></span></p>

<p class="paragraph-P2">Exécutez la commande suivante pour générer une paire de clés publique/privée pour le nœud n° 3.</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">wg genkey </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> sudo tee </span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">etc</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">wireguard</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">node3_private</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">key </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> wg pubkey </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> sudo tee </span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">etc</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">wireguard</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">node3_public</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">key</span></span></p>

<p class="paragraph-P2">Exécutez la commande suivante pour générer une paire de clés publique/privée pour le nœud n° 3.</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">wg genkey </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> sudo tee </span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">etc</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">wireguard</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">node3_private</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">key </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> wg pubkey </span></span><span class="text-Source_20_Text"><span class="text-T4">|</span></span><span class="text-Source_20_Text"><span class="text-T3"> sudo tee </span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">etc</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">wireguard</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">node3_public</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">key</span></span></p>

<p class="paragraph-P2">Cela enregistrera les clés privées et publiques dans le <span class="text-Source_20_Text">/etc/wireguard</span>répertoire.</p>

<p class="paragraph-P2">avertissement</p>

<p class="paragraph-P2">La clé privée ne doit jamais être partagée avec qui que ce soit et doit toujours être conservée en sécurité.</p>

<p class="paragraph-P2">conseil</p>

<p class="paragraph-P2">Veuillez noter les paires de clés qui seront utilisées pour mettre à jour le fichier de configuration WireGuard dans les étapes suivantes.</p>
<h3 class="paragraph-Heading_20_3"><a id="a__Permettre_aux_nœuds_VPN_d'accéder_aux_réseaux_locaux"><span/></a><a id="2-enabling-vpn-nodes-to-access-the-lans-through-other-vpn-nodes"/><a id="__RefHeading___Toc174_1111168717"/><span class="text-Emphasis"><span class="text-T2">Permettre aux nœuds VPN d'accéder aux réseaux locaux</span></span></h3>

<p class="paragraph-P2">Vous pouvez autoriser l'accès au réseau/LAN de chaque site pour tous les nœuds VPN via WireGuard. Pour cela, vous devrez peut-être configurer les règles du pare-feu, notamment la redirection IP et la NAT.</p>

<p class="paragraph-P2">Pour que le serveur VPN puisse acheminer les paquets entre les nœuds VPN et le réseau local, vous devez activer la redirection IP sur tous les nœuds WireGuard. Suivez les instructions ci-dessous pour activer la redirection IP sur tous vos nœuds :</p>

<p class="paragraph-P2">Ouvrez le fichier des variables système pour le modifier.</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">sudo nano </span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">etc</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">sysctl</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">conf</span></span></p>

<p class="paragraph-P2">Ajoutez ou supprimez le commentaire de la ligne suivante en supprimant le # au début de la ligne.</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">net</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">ipv4</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">ip_forward</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1</span></span></p>

<p class="paragraph-P2"><span class="text-Strong_20_Emphasis">Enregistrez</span> le fichier et quittez l'éditeur.</p>

<p class="paragraph-P2">Ouvrez <span class="text-Source_20_Text">/etc/ufw/sysctl.conf</span>et décommentez ces lignes :</p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T3">net</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">ipv4</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">ip_forward</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T3">net</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">ipv6</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">conf</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T7">default</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">forwarding</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1</span></span></p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">net</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">ipv6</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">conf</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">all</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">forwarding</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1</span></span></p>

<p class="paragraph-P2">Appliquez les modifications avec la commande ci-dessous. Cette <span class="text-Source_20_Text">-p</span>option chargera les paramètres sysctl depuis <span class="text-Source_20_Text">/etc/sysctl.conf</span>le fichier. Cette commande conservera les modifications après un redémarrage du système.</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">sudo sysctl </span></span><span class="text-Source_20_Text"><span class="text-T4">-</span></span><span class="text-Source_20_Text"><span class="text-T3">p</span></span></p>
<h3 class="paragraph-Heading_20_3"><a id="a__Génération"><span/></a><a id="3-generating-wireguard-configuration-files-manually"/><a id="__RefHeading___Toc176_1111168717"/><span class="text-Emphasis"><span class="text-T2">Génération</span></span><span class="text-Emphasis"> </span></h3>

<p class="paragraph-P2">Commençons par configurer WireGuard en créant un nouveau fichier de configuration appelé <span class="text-Source_20_Text">wg0.conf</span>dans le <span class="text-Source_20_Text">/etc/wireguard</span>dossier de chaque nœud.</p>

<p class="paragraph-P2">Vous pouvez créer des fichiers de configuration WireGuard pour chaque nœud en suivant les étapes suivantes :</p>

<p class="paragraph-P2">Ouvrir <span class="text-Source_20_Text">wg0.conf</span>le fichier à l'aide d'un éditeur.</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">sudo nano /etc/wireguard/wg0.conf</span></span></p>

<p class="paragraph-P2">Ajoutez les directives suivantes au fichier de configuration. La configuration ci-dessous permettra à votre serveur WireGuard d'accepter <span class="text-Source_20_Text">51820</span>et d'autoriser les connexions vers un nœud dont la clé publique correspond à la clé privée générée précédemment.</p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-P6">
<!--Next 'span' is a draw:frame. -->
<span style="height:12.275cm;width:12.857cm; padding:0; " class="graphic-fr1" id="Image2"><img style="height:12.275cm;width:12.857cm;" alt="" src="data:image/png;base64,[encoded data, 69336 characters]"/></span></div>

<p class="paragraph-P6"># Name: Node1</p>

<p class="paragraph-P6">[Interface]</p>

<p class="paragraph-P6">PrivateKey = (contents-of-node1-privatekey)</p>

<p class="paragraph-P6">Address = (Node1-VPN-IP )</p>

<p class="paragraph-P6">ListenPort = 51820</p>

<p class="paragraph-P6">[Peer]</p>

<p class="paragraph-P6"># Node2</p>

<p class="paragraph-P6">PublicKey = (contents-of-node2-publickey)</p>

<p class="paragraph-P6">Endpoint = (Node2-Public-IP:51820)</p>

<p class="paragraph-P6">AllowedIPs = (Node2-VPN-IP), (Node2-LAN-Network-IP)</p>

<p class="paragraph-P6">PersistentKeepalive = 25</p>
<p class="paragraph-P6"> </p>
<p class="paragraph-P6">[Peer]</p>

<p class="paragraph-P6"># Node3</p>

<p class="paragraph-P6">PublicKey = (contents-of-node3-publickey)</p>

<p class="paragraph-P6">Endpoint = (Node3-Public-IP:51820)</p>

<p class="paragraph-P6">AllowedIPs = (Node3-VPN-IP), (Node3-LAN-Network-IP)</p>

<p class="paragraph-P6">PersistentKeepalive = 25</p>
<p class="paragraph-P6"> </p>
<p class="paragraph-P6">[Peer]</p>

<p class="paragraph-P6"># Node4</p>

<p class="paragraph-P6">PublicKey = (contents-of-node4-publickey)</p>

<p class="paragraph-P6">Endpoint = (Node4-Public-IP:51820)</p>

<p class="paragraph-P6">AllowedIPs = (Node4-VPN-IP), (Node4-LAN-Network-IP)</p>

<p class="paragraph-P6">PersistentKeepalive = 25</p>

<p class="paragraph-P6"><span class="text-Emphasis"/></p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-P6">
<!--Next 'span' is a draw:frame. -->
<span style="height:10.978cm;width:23.439cm; padding:0; " class="graphic-fr1" id="Image3"><img style="height:10.978cm;width:23.439cm;" alt="" src="data:image/png;base64,[encoded data, 138448 characters]"/></span></div>

<p class="paragraph-P6"><span class="text-Emphasis"/></p>

<p class="paragraph-P2"><span class="text-Emphasis"><span class="text-Strong_20_Emphasis">Enregistrez</span></span><span class="text-Emphasis"> et fermez le fichier.</span></p>

<p class="paragraph-P2">Répétez les étapes 1 à 3 sur tous les nœuds VPN, en remplaçant le <span class="text-Emphasis">nom</span> , <span class="text-Emphasis">la clé privée</span> , <span class="text-Emphasis">la clé publique</span> , le <span class="text-Emphasis">point de terminaison</span> et <span class="text-Emphasis">les adresses IP autorisées</span> par les valeurs correctes pour chaque nœud.</p>

<p class="paragraph-P2">Après avoir effectué les étapes ci-dessus, vous devriez disposer de fichiers de configuration VPN WireGuard sur tous les nœuds VPN, similaires aux fichiers d'exemple ci-dessous. N'utilisez pas les clés privées et publiques fournies dans les fichiers d'exemple suivants ; utilisez vos propres paires générées dans la première section.</p>

<p class="paragraph-P2">Le fichier de configuration VPN WireGuard généré pour <span class="text-Strong_20_Emphasis">Node1</span> ressemble à ceci :</p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-P2">
<!--Next 'span' is a draw:frame. -->
<span style="height:13.254cm;width:13.968cm; padding:0; " class="graphic-fr1" id="Image4"><img style="height:13.254cm;width:13.968cm;" alt="" src="data:image/png;base64,[encoded data, 81956 characters]"/></span></div>

<p class="paragraph-P2">Le fichier de configuration VPN WireGuard généré pour <span class="text-Strong_20_Emphasis">Node2</span> ressemble à ceci :</p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-P2">
<!--Next 'span' is a draw:frame. -->
<span style="height:13.069cm;width:13.942cm; padding:0; " class="graphic-fr1" id="Image5"><img style="height:13.069cm;width:13.942cm;" alt="" src="data:image/png;base64,[encoded data, 81676 characters]"/></span></div>

<p class="paragraph-P2">Le fichier de configuration VPN WireGuard généré pour <span class="text-Strong_20_Emphasis">Node3</span> ressemble à ceci :</p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-P2">
<!--Next 'span' is a draw:frame. -->
<span style="height:12.936cm;width:13.492cm; padding:0; " class="graphic-fr1" id="Image6"><img style="height:12.936cm;width:13.492cm;" alt="" src="data:image/png;base64,[encoded data, 79172 characters]"/></span></div>

<p class="paragraph-P2">Le fichier de configuration VPN WireGuard généré pour <span class="text-Strong_20_Emphasis">Node4</span> ressemble à ceci :</p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-P2">
<!--Next 'span' is a draw:frame. -->
<span style="height:12.91cm;width:13.704cm; padding:0; " class="graphic-fr1" id="Image7"><img style="height:12.91cm;width:13.704cm;" alt="" src="data:image/png;base64,[encoded data, 80908 characters]"/></span></div>
<h3 class="paragraph-Heading_20_3"><a id="a__Démarrage_du_serveur_WireGuard_et_activation"><span/></a><a id="4-starting-wireguard-server-and-enabling-it-at-boot"/><a id="__RefHeading___Toc178_1111168717"/>Démarrage du serveur WireGuard et activation </h3>

<p class="paragraph-P2">Maintenant que la configuration est terminée, nous sommes prêts à démarrer le serveur. WireGuard dispose d'un wrapper pratique appelé « » <span class="text-Source_20_Text">wg-quick</span>qui permet de démarrer de nouvelles interfaces sans avoir à entrer dans les détails de la configuration.</p>

<p class="paragraph-P2">Vous devez démarrer le service WireGuard sur tous les nœuds VPN. Pour démarrer le service WireGuard et activer l'interface WireGuard ( <span class="text-Source_20_Text">wg0</span>), exécutez la commande suivante sur le serveur :</p>

<p class="paragraph-P2">sudo wg-quick up wg0</p>

<p class="paragraph-P2">Cela chargera le fichier de configuration <span class="text-Source_20_Text">/etc/wireguard/wg0.conf</span>et vous devriez voir une sortie comme celle ci-dessous après avoir démarré avec succès l'interface :</p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-P2">
<!--Next 'span' is a draw:frame. -->
<span style="height:2.591cm;width:9.947cm; padding:0; " class="graphic-fr1" id="Image8"><img style="height:2.591cm;width:9.947cm;" alt="" src="data:image/png;base64,[encoded data, 16684 characters]"/></span></div>

<p class="paragraph-P2">Pour arrêter le service WireGuard sur un nœud VPN, exécutez la commande suivante :</p>

<p class="paragraph-P2">sudo wg-quick down wg0</p>

<p class="paragraph-P2">Vous pouvez utiliser le service systemd pour démarrer WireGuard en exécutant la commande suivante :</p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2">sudo systemctl start </span></span><a href="mailto:wg-quick@wg0.service" class="text-Internet_20_link"><span class="text-Emphasis"><span class="text-T2">wg-quick@wg0.service</span></span></a></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2"/></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2">Vous pouvez vérifier l'état et la configuration de WireGuard avec les commandes suivantes. Son statut doit être actif (sorti).</span></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2"/></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2">sudo wg show wg0</span></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2"/></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2">Vous devriez voir un résultat similaire à celui ci-dessous :</span></span></p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-P6"><span class="text-Emphasis">
<!--Next 'span' is a draw:frame. -->
<span style="height:12.46cm;width:13.518cm; padding:0; " class="graphic-fr1" id="Image9"><img style="height:12.46cm;width:13.518cm;" alt="" src="data:image/png;base64,[encoded data, 98392 characters]"/></span></span></div>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2"/></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2">Pour activer automatiquement l'interface WireGuard au démarrage du système, exécutez la commande suivante :</span></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2"/></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2">sudo systemctl enable wg-quick@wg0</span></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2"/></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2">Maintenant que le serveur WireGuard est opérationnel, il est prêt à accepter les connexions aux nœuds VPN.</span></span></p>

<p class="paragraph-P6"><span class="text-Emphasis"><span class="text-T2"/></span></p>
<h3 class="paragraph-Heading_20_3"><a id="a__Vérification_de_la_connectivité_VPN_Mesh"><span/></a><a id="__RefHeading___Toc180_1111168717"/><span class="text-Emphasis"><span class="text-T2">Vérification de la connectivité VPN Mesh </span></span></h3>

<p class="paragraph-P2">Vous pouvez exécuter la commande suivante sur chaque nœud VPN pour vérifier l’état de l’interface WireGuard :</p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">ip a show wg0</span></span></p>

<p class="paragraph-P2">Vous devriez voir une sortie similaire à celle ci-dessous pour <span class="text-Emphasis">Node1</span> :</p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> wg0</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">&lt;</span></span><span class="text-Source_20_Text"><span class="text-T8">POINTOPOINT</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T8">NOARP</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T8">UP</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T8">LOWER_UP</span></span><span class="text-Source_20_Text"><span class="text-T4">&gt;</span></span><span class="text-Source_20_Text"><span class="text-T3"> mtu </span></span><span class="text-Source_20_Text"><span class="text-T6">1420</span></span><span class="text-Source_20_Text"><span class="text-T3"> qdisc noqueue state </span></span><span class="text-Source_20_Text"><span class="text-T8">UNKNOWN</span></span><span class="text-Source_20_Text"><span class="text-T3"> group </span></span><span class="text-Source_20_Text"><span class="text-T7">default</span></span><span class="text-Source_20_Text"><span class="text-T3"> qlen </span></span><span class="text-Source_20_Text"><span class="text-T6">1000</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T3">link</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">none</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T3">inet </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.1.1</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">24</span></span><span class="text-Source_20_Text"><span class="text-T3"> scope global wg0</span></span></p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">valid_lft forever preferred_lft forever</span></span></p>

<p class="paragraph-P2">Vous pouvez essayer d'accéder à tous les autres nœuds depuis chaque nœud VPN en exécutant la commande ping. Chaque homologue VPN répond à la commande ping de l'autre homologue, indiquant que la connexion VPN est active.</p>

<p class="paragraph-P2">Dans notre exemple, exécutez les commandes suivantes sur <span class="text-Emphasis">le nœud 1.</span> Vous devriez alors accéder à tous les homologues VPN :</p>

<p class="paragraph-P12"><span class="text-Emphasis"><span class="text-Source_20_Text"><span class="text-T9"/></span></span></p>

<p class="paragraph-P13">ping <span class="text-Source_20_Text"><span class="text-T6">10.0.2.1</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.2.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.87</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.2.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">2</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">0.992</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.2.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">3</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.37</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.2.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">4</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.21</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.2.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">5</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.57</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.2.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.43</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T4">---</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.2.1</span></span><span class="text-Source_20_Text"><span class="text-T3"> ping statistics </span></span><span class="text-Source_20_Text"><span class="text-T4">---</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T3"> packets transmitted</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T3"> received</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">0</span></span><span class="text-Source_20_Text"><span class="text-T4">%</span></span><span class="text-Source_20_Text"><span class="text-T3"> packet loss</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T3"> time 5008ms</span></span></p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">rtt min</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">avg</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">max</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">mdev </span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">0.992</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">1.577</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">1.873</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">0.607</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T3">ping </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.3.1</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.3.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.87</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.3.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">2</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">0.992</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.3.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">3</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.37</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.3.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">4</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.21</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.3.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">5</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.57</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.3.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.43</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T4">---</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.3.1</span></span><span class="text-Source_20_Text"><span class="text-T3"> ping statistics </span></span><span class="text-Source_20_Text"><span class="text-T4">---</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T3"> packets transmitted</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T3"> received</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">0</span></span><span class="text-Source_20_Text"><span class="text-T4">%</span></span><span class="text-Source_20_Text"><span class="text-T3"> packet loss</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T3"> time 5008ms</span></span></p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">rtt min</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">avg</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">max</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">mdev </span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">0.992</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">1.577</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">1.873</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">0.607</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T3">ping </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.4.1</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.4.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.87</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.4.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">2</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">0.992</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.4.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">3</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.37</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.4.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">4</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.21</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.4.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">5</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.57</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> bytes </span></span><span class="text-Source_20_Text"><span class="text-T7">from</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.4.1</span></span><span class="text-Source_20_Text"><span class="text-T4">:</span></span><span class="text-Source_20_Text"><span class="text-T3"> icmp_seq</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T3"> ttl</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">64</span></span><span class="text-Source_20_Text"><span class="text-T3"> time</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T6">1.43</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T4">---</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.4.1</span></span><span class="text-Source_20_Text"><span class="text-T3"> ping statistics </span></span><span class="text-Source_20_Text"><span class="text-T4">---</span></span></p>

<p class="paragraph-P11"><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T3"> packets transmitted</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">6</span></span><span class="text-Source_20_Text"><span class="text-T3"> received</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">0</span></span><span class="text-Source_20_Text"><span class="text-T4">%</span></span><span class="text-Source_20_Text"><span class="text-T3"> packet loss</span></span><span class="text-Source_20_Text"><span class="text-T5">,</span></span><span class="text-Source_20_Text"><span class="text-T3"> time 5008ms</span></span></p>

<p class="paragraph-P9"><span class="text-Source_20_Text"><span class="text-T3">rtt min</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">avg</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">max</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">mdev </span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">0.992</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">1.577</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">1.873</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T6">0.607</span></span><span class="text-Source_20_Text"><span class="text-T3"> ms</span></span></p>
<h3 class="paragraph-Heading_20_3"><a id="a__Génération_automatique"><span/></a><a id="generating-key-pairs-and-wireguard-configuration-files-automatically Copie 1"/><a id="__RefHeading___Toc182_1111168717"/>Génération <span class="text-T10">automatique</span></h3>

<p class="paragraph-P2">La configuration manuelle d'un nombre important de nœuds dans un réseau maillé WireGuard est une tâche chronophage. Pour ajouter un nouveau nœud au réseau VPN maillé, l'administrateur doit modifier les paramètres du nœud O(n2) à chaque ajout de client.</p>

<p class="paragraph-P2">Plusieurs outils de maillage WireGuard permettent la création automatique de paramètres WireGuard pour une gestion fluide de vos réseaux maillés. Les outils de maillage WireGuard les plus courants sont présentés ci-dessous :</p>
<ol><li><p class="P14" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">1.</span><a href="https://www.zenarmor.com/docs/network-security-tutorials/how-to-install-and-configure-tailscale-on-opnsense" class="text-Internet_20_link">Tailscale</a> <span class="odfLiEnd"/> </p></li><li><p class="P15" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">2.</span>Headscale <span class="odfLiEnd"/> </p></li><li><p class="P15" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">3.</span>Netmaker <span class="odfLiEnd"/> </p></li><li><p class="P15" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">4.</span>Wesher <span class="odfLiEnd"/> </p></li><li><p class="P15" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">5.</span>Netbird <span class="odfLiEnd"/> </p></li><li><p class="P15" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">6.</span>wgmesh <span class="odfLiEnd"/> </p></li><li><p class="P15" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">7.</span>wiresmith <span class="odfLiEnd"/> </p></li><li><p class="P16" style="margin-left:0.752cm;"><span class="Numbering_20_Symbols" style="display:block;float:left;min-width:0.499cm;">8.</span>VxWireguard-Generator <span class="odfLiEnd"/> </p></li></ol>
<p class="paragraph-P2">Dans ce tutoriel, nous utiliserons un script Python nommé <span class="text-T11">WireGuard Mesh Configurator</span>, <span class="text-Source_20_Text">wgmesh </span>pour produire les fichiers de configuration de nos nœuds.</p>

<p class="paragraph-P2">Vous pouvez suivre les étapes suivantes sur l'un de vos nœuds VPN ou sur une machine Linux locale pour générer automatiquement les fichiers de configuration de maillage WireGurad :</p>

<p class="paragraph-P2"><span class="text-Emphasis"><span class="text-T2">Installez les packages git, python3-pip et python3 en exécutant la commande suivante :</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T3">apt install git python3</span></span><span class="text-Source_20_Text"><span class="text-T4">-</span></span><span class="text-Source_20_Text"><span class="text-T3">pip python3 libncurses</span></span><span class="text-Source_20_Text"><span class="text-T4">-</span></span><span class="text-Source_20_Text"><span class="text-T3">dev </span></span><span class="text-Source_20_Text"><span class="text-T4">-</span></span><span class="text-Source_20_Text"><span class="text-T3">y</span></span></p>

<p class="paragraph-P2">Clonez le référentiel GitHub du configurateur de maillage WireGuard, <span class="text-Source_20_Text">wgmesh</span>en exécutant la commande suivante :</p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T3">git clone https</span></span><span class="text-Source_20_Text"><span class="text-T4">://</span></span><span class="text-Source_20_Text"><span class="text-T3">github</span></span><span class="text-Source_20_Text"><span class="text-T5">.</span></span><span class="text-Source_20_Text"><span class="text-T3">com</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">k4yt3x</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">wg</span></span><span class="text-Source_20_Text"><span class="text-T4">-</span></span><span class="text-Source_20_Text"><span class="text-T3">meshconf</span></span></p>

<p class="paragraph-P2">Exécutez les commandes suivantes pour entrer dans votre répertoire et installer les packages requis pour<span class="text-Source_20_Text">wgmesh</span> :</p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T3">cd wg</span></span><span class="text-Source_20_Text"><span class="text-T4">-</span></span><span class="text-Source_20_Text"><span class="text-T3">meshconf</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T3">pip install </span></span><span class="text-Source_20_Text"><span class="text-T12">'wg-meshconf@git+https://github.com/k4yt3x/wg-meshconf.git'</span></span></p>

<p class="paragraph-P2">Exécutez la commande suivante pour démarrer un nouveau fichier de base de données, car vous devez d'abord y ajouter les informations des pairs. Par défaut, le fichier de base de données est nommé <span class="text-Source_20_Text">database.csv</span>. Vous pouvez également spécifier le nom du fichier via -d :</p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T3">wg-meshconf init</span></span></p>

<p class="paragraph-P2">Vous devez ajouter tous les homologues VPN à la base de données. Saisissez la commande suivante pour chaque homologue VPN à ajouter :</p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T3">wg-meshconf addpeer NAME --address VPN_IP_ADDRESS --address LAN_IP_ADDRESS --endpoint PUBLIC_IP_ADDRESS</span></span></p>

<p class="paragraph-P2">Cette commande générera automatiquement une nouvelle clé privée si elle n'est pas spécifiée et définira les valeurs par défaut de ListenPort sur <span class="text-Source_20_Text">51820</span>.</p>

<!--Next 'div' was a 'text:p'.-->
<div class="paragraph-P2"><span class="text-Emphasis">
<!--Next 'span' is a draw:frame. -->
<span style="height:2.141cm;width:14.524cm; padding:0; " class="graphic-fr1" id="Image10"><img style="height:2.141cm;width:14.524cm;" alt="" src="data:image/png;base64,[encoded data, 11712 characters]"/></span></span></div>

<p class="paragraph-P2"><span class="text-Emphasis"><span class="text-T2">Répétez cette étape pour tous les homologues VPN de votre réseau maillé. Dans notre exemple, nous exécutons les commandes suivantes :</span></span></p>

<p class="paragraph-Standard"><span class="text-Emphasis"><span class="text-T2">wg-meshconf addpeer NODE1 --address 10.0.1.1 --endpoint 11.11.11.1</span></span></p>

<p class="paragraph-Standard"><span class="text-Emphasis"><span class="text-T2">wg-meshconf addpeer NODE2 --address 10.0.2.1 --endpoint 11.11.11.2</span></span></p>

<p class="paragraph-Standard"><span class="text-Emphasis"><span class="text-T2">wg-meshconf addpeer NODE3 --address 10.0.3.1 --endpoint 11.11.11.3</span></span></p>

<p class="paragraph-Standard"><span class="text-Emphasis"><span class="text-T2">wg-meshconf addpeer NODE4 --address 10.0.4.1 --endpoint 11.11.11.4</span></span></p>

<p class="paragraph-P2"><span class="text-Emphasis"><span class="text-T2"/></span></p>

<p class="paragraph-P2"><span class="text-Emphasis"><span class="text-T2">Exécutez la commande suivante pour vous assurer que vos pairs ont été ajoutés correctement.</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T3">wg-meshconf showpeers</span></span></p>

<p class="paragraph-P2">Vous devriez voir un tableau similaire à celui ci-dessous :</p>

<p class="paragraph-P12"><span class="text-Emphasis"><span class="text-Source_20_Text"><span class="text-T13"/></span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4"/></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">----------------------------------------------------------------------------------------------</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T8">NAME</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T8">ADDRESS</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T8">LISTENPORT</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3">             </span></span><span class="text-Source_20_Text"><span class="text-T8">PRIVATEKEY</span></span><span class="text-Source_20_Text"><span class="text-T3">                      </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T8">ENDPOINT</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">----------------------------------------------------------------------------------------------</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T8">NODE1</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.1.1</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">51820</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> KHpX3JsGa1EQSqWzy32SatTMwiJTckFIqmIK</span></span><span class="text-Source_20_Text"><span class="text-T4">+</span></span><span class="text-Source_20_Text"><span class="text-T3">e</span></span><span class="text-Source_20_Text"><span class="text-T4">+</span></span><span class="text-Source_20_Text"><span class="text-T8">T</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T8">FQ</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">11.11.11.1</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">----------------------------------------------------------------------------------------------</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T8">NODE2</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.2.1</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">51820</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T8">GAT</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">al</span></span><span class="text-Source_20_Text"><span class="text-T4">+</span></span><span class="text-Source_20_Text"><span class="text-T3">KhZwSVw95XxAuOZ</span></span><span class="text-Source_20_Text"><span class="text-T4">+</span></span><span class="text-Source_20_Text"><span class="text-T3">ezs5qtgJgMpp3i0TNP0Y</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">11.11.11.2</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">----------------------------------------------------------------------------------------------</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T8">NODE3</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.3.1</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">51820</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> sLXHpUKvNIbZRqVeIMKb3gW</span></span><span class="text-Source_20_Text"><span class="text-T4">+</span></span><span class="text-Source_20_Text"><span class="text-T3">tK9NK0ECIbJPGCulN3w</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">11.11.11.3</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">----------------------------------------------------------------------------------------------</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T8">NODE4</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">10.0.4.1</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">51820</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> EJYvbLKcWqxzcQD1EESkZbdhjCS3R</span></span><span class="text-Source_20_Text"><span class="text-T4">/</span></span><span class="text-Source_20_Text"><span class="text-T3">A2RCFxh0CBjHE</span></span><span class="text-Source_20_Text"><span class="text-T4">=</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T6">11.11.11.4</span></span><span class="text-Source_20_Text"><span class="text-T3"> </span></span><span class="text-Source_20_Text"><span class="text-T4">--</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T4">----------------------------------------------------------------------------------------------</span></span></p>

<p class="paragraph-P2"><span class="text-Emphasis"><span class="text-T2">Pour générer les fichiers de configuration du VPN maillé WireGuard pour tous les homologues, exécutez la commande suivante. Pour exporter les paramètres d'un homologue spécifique, indiquez simplement son nom. Les fichiers de configuration seront nommés en fonction de ceux des homologues. Par défaut, tous les fichiers de configuration sont automatiquement enregistrés dans un sous-dossier appelé « output ».</span></span></p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T3">wg-meshconf genconfig</span></span></p>

<p class="paragraph-P2">Vous pouvez afficher les fichiers de configuration de WireGuard à l'aide de <span class="text-Source_20_Text">cat</span>la commande suivante. Dans notre exemple, nous pouvons afficher le fichier de configuration de Node1 en exécutant la commande suivante :</p>

<p class="paragraph-P17"><span class="text-Source_20_Text"><span class="text-T3">cat output/Node1.conf</span></span></p>

<p class="paragraph-P2">Transférez les fichiers de configuration WireGuard générés vers chaque nœud VPN en utilisant la technique de votre choix, comme SFTP. Assurez-vous que la configuration est enregistrée <span class="text-Source_20_Text">/etc/wireguard/wg0.conf</span>afin d'utiliser la <span class="text-Source_20_Text">wg-quick</span>fonction de configuration accélérée.</p>

<p class="paragraph-P2">Connectez-vous à chaque nœud.</p>

<p class="paragraph-P2">Démarrez le service WireGuard et testez les connexions VPN comme décrit dans la section précédente.</p>

<p class="paragraph-P2">Vous avez réussi à établir un réseau maillé avec WireGuard, permettant à vos nœuds d'interagir entre eux de manière sécurisée et privée. En l'absence de serveur central, le réseau restera opérationnel même en cas de panne de l'un des homologues.</p>
<h3 class="paragraph-Heading_20_3"><a id="a__Qu'est-ce_que_l'architecture_Hub_et_Spoke"><span/></a><a id="what-is-hub-and-spoke-architecture"/><a id="__RefHeading___Toc184_1111168717"/><span class="text-Emphasis"><span class="text-T2">Qu'est-ce que l'architecture Hub et Spoke</span></span></h3>

<p class="paragraph-P2">La topologie en étoile est une configuration réseau dans laquelle un périphérique central, appelé hub, est interconnecté à plusieurs autres périphériques, appelés spokes, afin d'échanger et de communiquer des données. Ce système offre une méthode simple et efficace pour diriger et superviser les données sur un réseau, à l'exception du hub qui représente un point de défaillance unique. Le hub central sert d'intermédiaire pour toutes les communications, facilitant la configuration des paramètres de sécurité et la surveillance du trafic. L'architecture en étoile est reconnue pour sa simplicité, sa capacité à gérer la croissance et ses fonctionnalités de sécurité améliorées, ce qui en fait une option intéressante pour les entreprises.</p>

<p class="paragraph-P2">En règle générale, les utilisateurs de VPN, y compris les utilisateurs de WireGuard, établissent une structure « hub and spoke », dans laquelle chaque périphérique client (tel qu'un ordinateur de bureau) se connecte à un « concentrateur » central ou à une passerelle VPN.</p>

<p class="paragraph-P2">La configuration de WireGuard est simplifiée : chaque nœud du réseau dispose des informations essentielles : clé publique, adresse IP publique et numéro de port de chaque nœud souhaité pour une connexion directe. Pour assurer une connectivité complète entre 10 nœuds, chaque nœud doit connaître 9 nœuds homologues, ce qui donne 90 points de terminaison de tunnel distincts. Un réseau en étoile est composé d'un nœud central et de 9 nœuds périphériques reliés par des rayons, ce qui simplifie considérablement sa structure. Le nœud central possède souvent une adresse IP fixe et une ouverture de pare-feu, facilitant sa découverte par tous les utilisateurs. Il peut ensuite recevoir des connexions entrantes de nœuds situés à des adresses IP différentes, même derrière un pare-feu, conformément à l'approche classique des protocoles Internet client-serveur.</p>
<h3 class="paragraph-Heading_20_3"><a id="a__Quels_sont_les_inconvénients_de_l'architecture_Hub_and_Spoke"><span/></a><a id="what-are-the-disadvantages-of-hub-and-spoke-architecture"/><a id="__RefHeading___Toc186_1111168717"/>Quels sont les inconvénients de l'architecture <a id="what-are-the-disadvantages-of-hub-and-spoke-architecture Copie 1"/>Hub and Spoke</h3>

<p class="paragraph-P2">Le modèle en étoile est efficace, mais il présente quelques inconvénients. Principalement, la plupart des organisations contemporaines ne possèdent pas de site spécifique qu'elles souhaitent identifier comme hub central. Elles possèdent plusieurs bureaux, des zones géographiques variées, plusieurs centres de données cloud et des clouds privés virtuels (VPC), entre autres. La conception d'un VPN en étoile ne permet pas aux nœuds de communiquer entre eux. Généralement, dans les configurations VPN classiques, les entreprises établissent un concentrateur VPN unique, puis des tunnels supplémentaires (souvent utilisant IPsec) reliant d'autres sites. Les utilisateurs distants sont dirigés vers le concentrateur VPN situé à un endroit, d'où leur trafic est ensuite acheminé vers sa destination finale située à un autre endroit.</p>

<p class="paragraph-P2">La mise à l'échelle est complexe avec cette configuration VPN classique en étoile. Il convient de noter que les utilisateurs distants peuvent être ou non à proximité du concentrateur VPN. S'ils sont éloignés, ils subiront des retards importants lors de l'établissement de la connexion. De plus, le centre de données souhaité peut être éloigné du concentrateur VPN. Dans ce cas, la latence augmentera considérablement. Prenons l'exemple d'un employé new-yorkais tentant d'établir une connexion avec un serveur new-yorkais via le concentrateur VPN de l'entreprise situé au siège social en Californie.</p>
<h3 class="paragraph-Heading_20_3"><a id="a__Comment_WireGuard_résout-il_le_problème_de_l'architecture_Hub_and_Spoke"><span/></a><a id="how-does-wireguard-solve-the-problem-of-hub-and-spoke-architecture"/><a id="__RefHeading___Toc188_1111168717"/>Comment WireGuard résout-il le problème de l'architecture Hub and Spoke</h3>

<p class="paragraph-P2">WireGuard présente des caractéristiques distinctes et un ensemble de tunnels ultra-légers. Ces tunnels sont suffisamment légers pour permettre la mise en place d'une configuration multi-hub sans difficulté. Le VPN maillé WireGuard permet des connexions directes entre tous les nœuds, permettant ainsi à chaque nœud de se connecter à tous les autres. Chaque nœud est connecté à chaque nœud du réseau VPN maillé WireGuard de manière efficace et fiable.</p>

<p class="paragraph-P2">Il est cependant essentiel que chaque centre de données soit équipé d'une adresse IP statique, d'un port pare-feu ouvert et d'un ensemble spécifique de clés WireGuard. Lors de l'ajout d'un nouvel utilisateur, il sera nécessaire de diffuser la nouvelle clé aux cinq serveurs. Lors de l'ajout d'un nouveau serveur, il sera nécessaire de diffuser sa clé à chaque utilisateur. Cependant, cela nécessite environ cinq fois plus d'efforts qu'un hub unique, ce qui représente une charge de travail minime.</p>
<h3 class="paragraph-Heading_20_3"><a id="a__Maillage_vs__Hub-and-Spoke"><span/></a><a id="mesh-vs-hub-and-spoke"/><a id="__RefHeading___Toc190_1111168717"/>Maillage vs. Hub-and-<span class="text-T14">Spoke</span></h3>

<p class="paragraph-P2">Un réseau maillé, ou réseau entièrement connecté, est un réseau dans lequel chaque nœud est directement connecté à tous les autres. <a href="https://www.zenarmor.com/docs/network-basics/what-is-mesh-topology" class="text-Internet_20_link">La topologie maillée</a> garantit des canaux de communication efficaces et sans entrave entre toutes les parties impliquées. Cependant, son administration devient complexe et difficile lorsque le nombre de nœuds augmente en raison du nombre de connexions.</p>

<p class="paragraph-P2">En comparaison, un réseau en étoile est plus simple, car chaque étoile se connecte directement au hub. La centralisation peut optimiser la coordination des activités, mais elle engendre une dépendance vis-à-vis du hub central. Un contrôle centralisé est plus adapté lorsqu'un contrôle centralisé est nécessaire ; en revanche, un réseau entièrement connecté est préférable lorsqu'un contact direct entre toutes les parties est essentiel.</p>

<p class="paragraph-P2"><span class="text-Emphasis"><span class="text-T2"/></span></p>

<p class="paragraph-P2"><span class="text-Emphasis"><span class="text-T2"/></span></p>
</body>

</html>
