> For the complete documentation index, see [llms.txt](https://docs.hessfr.fr/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hessfr.fr/server/wireguard-avec-un-endpoint-en-ipv6-avec-vos-propre-ipv6.md).

# Wireguard avec un endpoint en IPv6 (Avec vos propre IPv6 !)

Comment crée son propre VPN avec comme point d'entrer une IPv6, et en sortie de l'IPv4/IPv6 !

Pour cette exemple je vais utiliser une machine herberger sur Microsoft Oracle Cloud et Ubuntu 20.04 LTS, pensez a vérifier si votre hébergeur posséde sont propre pare-feu et d'ouvrir les port.

### I/ Récuperer votre bloc d'adresse Ip sur tunnelbroker

1. Inscrivez vous sur [TunnelBroker.net](https://tunnelbroker.net/)
2. Crée un tunnel dans la région la plus proche de votre serveur qui vous servira de vps (Ici au Pays Bas)

![Home page](https://689963959-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MN9uoTjD6PgXDQAB3CF%2Fuploads%2FMMKdLUDLmGdBmPFMeEei%2Fimage.png?alt=media\&token=434e3dcc-1d4f-42ab-a7e1-835db4b34614)

![Choix du pays du tunnel](https://689963959-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MN9uoTjD6PgXDQAB3CF%2Fuploads%2FmB5IIfyleNTWt8lLuE4I%2Fimage.png?alt=media\&token=2c7a7307-16a9-4d4a-9e4b-7684d8643ed0)

![Voila votre bloc d'IPv6](https://689963959-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MN9uoTjD6PgXDQAB3CF%2Fuploads%2FQ5NCLEpU0MC39ZAMmnMu%2Fimage.png?alt=media\&token=69a5fd36-f3c1-4698-9103-6bc4b000569c)

3\. Application de vos IPv6 a votre serveur.

(Si vous herbergeur propose des IPv6, Merci de les supprimer de votre configuration réseau)

* Allez dans "Exemple Configurations" -> Votre OS

![](https://689963959-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MN9uoTjD6PgXDQAB3CF%2Fuploads%2FOz3EKtowN37JKl6fpnsb%2Fimage.png?alt=media\&token=28391e05-3ab6-41dd-940e-06ff19cfe8cb)

* Copier la configuration dans `/etc/network/interfaces` &#x20;
* Si vous avez (comme moi) netplan, ce n'est pas si simple...

Vous allez devoir crée 3 fichier :&#x20;

\-- **`/etc/systemd/network/he-ipv6.network`**

```
[Match]

[Network]
Tunnel=he-ipv6
```

\-- **`/etc/systemd/network/he-ipv6-tunnel.netdev`**

```
[Match]                                                                                                                                                                                                            

[NetDev]                                                                                                                                                                                                           
Name=he-ipv6                                        
Kind=sit                                            

[Tunnel]
Independent=true                                            
Local=x.x.x.x #Votre IP Privé si le serveur est dans un NAT, sinon votre IP Publique                                  
Remote=x.x.x.x #L'IPv4 du TunnelBroker                         
TTL=255
```

\-- **/etc/netplan/yourconfigname.yaml (A ajouté a votre configuration)**

```
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
      he-ipv6:
          dhcp4: no
          dhcp6: no
          addresses: ['2001:470:xxx:xxx::2/64']
          gateway6: 2001:470:xxx:xxx::1
      enp0s3:
      ...
```

**executer la commande :** `systemctl restart systemd-networkd && netplan apply`

Et voila votre serveur a de l'IPv6 !

![Test de ping sur google](https://689963959-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MN9uoTjD6PgXDQAB3CF%2Fuploads%2Fszyoa3fNqZs5HR4GIGW8%2Fimage.png?alt=media\&token=7574a9d9-9288-435d-85d1-48e4b02b51af)

### II/ Installation du serveur wireguard

1. Verifiez que votre serveur a bien les derniére mise a jours
2. Installer les paquet suivant :&#x20;

   ```
   wireguard wireguard-tools resolvconf bash curl wget
   ```

![](https://689963959-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MN9uoTjD6PgXDQAB3CF%2Fuploads%2FazfdCun1c2s0srECsJ6W%2Fimage.png?alt=media\&token=a4b63e0f-9fbf-435b-9cd7-98b66214a090)

3\. On va utiliser un petit script interactif :&#x20;

```
curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
chmod +x wireguard-install.sh
bash wireguard-install.sh
```

![](https://689963959-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MN9uoTjD6PgXDQAB3CF%2Fuploads%2FhdXU3UAWFxBTxi6cIvBw%2Fimage.png?alt=media\&token=847ec788-334d-43bc-83de-db3ac2e2b013)

4\. Crée votre premier client :&#x20;

![](https://689963959-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MN9uoTjD6PgXDQAB3CF%2Fuploads%2F9MapTZq2LAvfL3ZcJcXf%2Fimage.png?alt=media\&token=ccaefe46-2f05-4ae2-8266-218bab5d9074)

Vous avez plus qu'a vous connecter via le client wireguard !
