# Routage Debian

# Adressage IP

### Adressage IP

Pour que le serveur prenne une adresse ip statique par défaut, il faut éditer et compléter le fichier **/etc/network/interfaces** qui contient tous les paramètres IP usuels.

**! Si la machine Debian servira de routeur, il ne faut pas préciser de "gateway" !**

Par exemple, la configuration IP d'un serveur Debian

```bash
allow-hotplug eth0
iface eth0 inet static
   address  192.168.1.12  
   netmask 255.255.255.0
   network  192.168.1.0
   gateway 192.168.1.1
```

Ou :

```bash
allow-hotplug eth0
iface eth0 inet static
   address  192.168.1.12/24
   gateway 192.168.1.1
```

### Appliquer les modifications

```bash
systemctl restart networking

OU

ifdown eth0 <-- eth0 doit être adapté au nom de votre interface
ifup eth0 <-- idem
```

# Activer le routage

## Vérifier l'état du routage IP

Pour vérifiez si le routage est activé ou pas (état de l'IP Forwarding) utilisez l'une des commandes suivantes :

```bash
cat /proc/sys/net/ipv4/ip_forward
sysctl net.ipv4.ip_forward
```

<div class="level2" id="bkmrk-si-la-commande-retou">- <div class="li">Si la commande retourne la **valeur 0**, c'est que l'IP Forwarding n'est **pas activé**.</div>
- <div class="li">Et si la commande retourne la **valeur 1**, c'est que l'IP Forwarding est **activé**.</div>

</div>## Activer le routage IP

Pour activer le routage, utilisez l'une des commandes suivantes :

```bash
echo 1 > /proc/sys/net/ipv4/ip_forward
sysctl -w net.ipv4.ip_forward=1
```

## Désactiver le routage IP

Pour désactiver le routage, utilisez l'une des commandes suivantes :

```bash
echo 0 > /proc/sys/net/ipv4/ip_forward
sysctl -w net.ipv4.ip_forward=0
```

## Rendre le routage IP permanent

Il faut éditer le fichier **/ect/sysctl.conf** :

```bash
nano /etc/sysctl.d/ipforward.conf
```

Ajouter cette ligne si elle n'existe pas ou la décommenter en enlevant le **\#** de début de ligne :

```bash
net.ipv4.ip_forward=1
```

Activer les changements effectués dans sysctl.conf avec la commande suivante :

```bash
sysctl -p /etc/sysctl.d/ipforward.conf
```

# Route statique et par défaut

### Adressage IP

Pour que le serveur prenne une adresse ip statique par défaut, il faut éditer et compléter le fichier **/etc/network/interfaces** qui contient tous les paramètres IP usuels.

! Si la machine Debian servira de routeur, il ne faut pas préciser de "gateway" !

Par exemple, la configuration IP d'un serveur Debian

```bash
iface eth0 inet static
   address  192.168.1.12  
   netmask 255.255.255.0
   network  192.168.1.0
   gateway 192.168.1.1
```

Ou :

```bash
iface eth0 inet static
   address  192.168.1.12/24
   gateway 192.168.1.1
```

### Appliquer les modifications

```bash
systemctl restart networking

OU

ifdown eth0 <-- eth0 doit être adapté au nom de votre interface
ifup eth0 <-- idem
```

### Ajouter une route persistante

Il faut modifier à nouveau le fichier **/etc/network/interfaces**

```bash
nano /etc/network/interfaces
```

Et entrer une route de ce genre :

```bash
up ip route add 172.17.250.0/24 via 172.17.10.141 dev eth0
```

Ce qui signifie lorsque l'on veut communiquer vers le réseau **192.168.1.0** on doit repartir par la passerelle **192.168.1.1**, sur la carte réseau **eth0**

D'autre exemple ci-dessous avec une route par défaut :

```bash
up ip route add default via 192.168.3.1 dev eth0
```

# Activer le NAT

<span class="fontstyle0">Utiliser la commande suivante :</span>

```
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
```

<span class="fontstyle0">**eth0** dans l’exemple correspond à l’interface externe du routeur, celle dont on va utiliser l’adresse IP comme </span><span class="fontstyle0">adresse IP connecté au WAN. Ce paramètre est à ajuster en fonction de votre configuration !</span>

<span class="fontstyle0">Sauvegarder la règle iptables :</span>

```
iptables-save > /etc/iptables_rules.save 
```