wiki/HowtoDebian/Reseau.md

189 lines
4.4 KiB
Markdown
Raw Normal View History

2016-12-29 11:25:39 +01:00
**Cette page a été importée automatiquement de notre ancien wiki mais n'a pas encore été révisée.**
# Howto Reseau sous Debian
## Configuration IP fixe
La configuration d'une interface réseau avec une IP fixée se passe dans
le fichier _/etc/network/interfaces_. Voici un exemple simple :
~~~
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.0.43.10
netmask 255.255.255.0
gateway 192.0.43.254
~~~
Pour l'IPv6 il faut rajouter :
~~~
iface eth0 inet6 static
address 2001:500:88:200::10
netmask 48
up /bin/ip route add 2000::0/3 via 2001:500:88:200::254
~~~
Si besoin d'exécuter des commandes après l'activation de l'interface (classiquement
des ajouts de routes), on utilise l'option _up_. Par exemple :
~~~
auto eth0
iface eth0 inet static
address 192.0.43.10
netmask 255.255.255.0
gateway 192.0.43.254
up /sbin/route add -net 192.0.42.0/24 gw 192.0.43.242
~~~
Pour ajouter des interfaces virtuelles, toujours via _/etc/network/interfaces_ on fera :
~~~
auto eth0:0
iface eth0:0 inet static
address 192.0.43.11
netmask 255.255.255.0
~~~
Note 1 : certains hébergeurs comme OVH préconisent une configuration un peu différente, voir [wiki:ServeurOVH#IPFailOver]
Note 2 : dans certains cas particuliers (comme le besoin de préciser le nom de l'interface
dans une commande _iptables_) on souhaite avoir un nom d'interface virtuelle sans les ":".
Il faudra donc passer par la commande _ip_ (voir ci-dessous).
Mais tout cela se gère également dynamiquement via les commande _ifconfig_ et _ip_.
Quelques exemples :
~~~
# ifconfig eth0 add 192.0.43.11 netmask 255.255.255.0
# ip addr add 192.0.43.12/24 dev eth0
# ip addr add 192.0.43.13/24 dev label eth0:3
# ip addr del 192.0.43.12/24
~~~
Attention, avec la commande _ip_ le résultat ne sera pas visible avec _ifconfig_
si aucun label du type eth0:N n'est donné à l'interface ; on ne verra l'adresse qu'avec un :
~~~
# ip addr show
~~~
Notons que dans certains cas particuliers (comme le besoin de préciser le nom de l'interface
dans une commande _iptables_) on souhaite avoir un nom d'interface virtuelle sans les ":".
On utilisera donc simplement un label sans ":" :
~~~
# ip addr add 192.0.43.13/24 dev label eth00
# iptables -t nat -A POSTROUTING -o eth00 [...]
~~~
## Configuration serveur(s) DNS
Le fichier _/etc/hosts_ permet d'indiquer manuellement des enregistrements DNS, du type :
~~~
127.0.0.1 ad.doubleclick.net
~~~
Pour note, ces enregistrements sont par défaut prioritaires sur les réponses des serveurs DNS
(et pour rappel, les commandes dig et host n'utilisent PAS _/etc/hosts_).
La configuration du (ou des) serveur(s) DNS s'effectue dans le fichier _/etc/resolv.conf_.
Voici un exemple classique :
~~~
search example.com
nameserver 192.0.42.53
nameserver 192.0.43.53
options timeout:2 attempts:2
~~~
Pour des précisions sur les options possibles : _man resolv.conf_
Note : si l'on utilise Postfix, il faut le redémarrer suite à un changement dans _/etc/resolv.conf_ (car il est chrooté par dédaut et il gère sa propre copie dans /var/spool/postfix)
## Bridge
Pour créer un bridge :
~~~
# brctl addbr br0
# brctl addif br0 eth0
# ifconfig eth0 up
~~~
Au niveau /etc/network/interfaces on aura ainsi :
~~~
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet manual
bridge_ports eth0
~~~
Et l'on listera les infos d'un bridge via :
~~~
# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.001e0beac6c0 no eth0
~~~
## VLAN
~~~
# aptitude install vlan
# modprobe 8021q
~~~
Pour ajouter dans le VLAN 42
~~~
# vconfig add eth0 42
# ifconfig eth0.42
~~~
Le fichier /etc/network/interfaces :
~~~
# cat /etc/network/interfaces
auto eth0.42
iface eth0.42 inet static
address 192.0.43.10
netmask 255.255.255.0
gateway 192.0.43.254
~~~
### Gestion des VLAN avec iproute
L'utilitaire ip (paquet iproute) permet aussi de gérer les VLAN.
Exemple :
~~~
# ip link add link eth0 name eth0.42 type vlan id 42
# ip addr add 192.168.1.1/24 dev eth0.42
# ip link set dev eth0.42 up
~~~
## Désactiver IPv6
De façon temporaire :
~~~
# sysctl -w net.ipv6.conf.all.disable_ipv6=1
~~~
De façon définitive :
~~~
# echo net.ipv6.conf.all.disable_ipv6=1 >> /etc/sysctl.conf
~~~
2017-01-20 23:57:24 +01:00
<https://vincent.bernat.im/fr/blog/2014-tcp-time-wait-state-linux.html>