Notes d’apprentissage§
Configurer le réseau, c’est attribuer une adresse IP, définir une passerelle (route par défaut) et un résolveur DNS. La difficulté de l’examen : plusieurs gestionnaires coexistent selon la distribution, mais un seul commande réellement l’interface.
Modèle mental : l’outil de diagnostic vs l’outil de configuration persistante.
ip / ss → LIRE l'état et configurer TEMPORAIREMENT (perdu au reboot)
NetworkManager → configuration PERSISTANTE (nmcli) ◄─┐
Netplan → configuration PERSISTANTE (YAML, Ubuntu) ├─ selon la distrib
systemd-networkd → configuration PERSISTANTE (.network) │
/etc/network/interfaces → legacy Debian ◄┘
La commande ip est toujours disponible pour observer et tester, mais ses changements sont volatils. Pour persister, il faut passer par le gestionnaire de la machine. Identifier lequel est actif est la première étape (souvent NetworkManager sur RHEL/desktop, Netplan sur Ubuntu server).
La trousse ip (remplace ifconfig/route/arp) :
ip addr # adresses (ip a)
ip -br addr # vue condensée
ip route # table de routage
ip link # interfaces et MAC
ip neigh # table ARP (voisins)
Trois choses à ne pas confondre :
- Adresse IP : l’identité de l’interface (
192.168.50.10/24, le/24= masque). - Passerelle / route par défaut : où envoyer ce qui sort du réseau local.
- DNS : qui traduit les noms en IP (
/etc/resolv.conf, ouresolvectlavec systemd-resolved).
Le hostname se règle avec hostnamectl set-hostname (persistant, écrit /etc/hostname). Penser à cohérence avec /etc/hosts.
Pièges :
ip addr addest temporaire — un reboot l’efface ; pour persister, utiliser le gestionnaire (nmcli/netplan/…).netplan tryapplique avec rollback automatique si on perd la connexion — filet de sécurité précieux en SSH.- Configurer deux gestionnaires sur la même interface crée des conflits ; n’en piloter qu’un.
- La MAC est en lecture seule dans
/sys/class/net/<iface>/address. - Diagnostic réseau :
ping(joignabilité),dig/host(DNS),traceroute/mtr(chemin),tcpdump(capture).
Énoncé§
Solve this question on: web-srv1
- Assign the static IPv4 address
192.168.50.10/24to interfaceeth1, with gateway192.168.50.1and DNS1.1.1.1. Make it persistent. - Add a static route to
10.20.0.0/16via192.168.50.254. - Set the system hostname to
web-srv1.lanpersistently. - Write the MAC address of
eth0into/opt/course/31/mac.
Solution§
Inspect the current configuration§
ip addr show # ip a
ip -br addr # brief
ip link show
ip route # routing table
ip -6 route
ip neigh # ARP / neighbours
ss -tulnp # listening sockets
resolvectl status # DNS resolver (systemd-resolved)
cat /etc/resolv.conf
Step 1 — Static IP§
NetworkManager (nmcli) — RHEL/Fedora/Ubuntu desktop§
nmcli con show # list profiles
nmcli con add type ethernet ifname eth1 con-name eth1-static \
ipv4.method manual \
ipv4.addresses 192.168.50.10/24 \
ipv4.gateway 192.168.50.1 \
ipv4.dns "1.1.1.1 9.9.9.9"
nmcli con up eth1-static
nmcli con mod eth1-static ipv4.dns-search "lan"
Netplan (Ubuntu server)§
Edit /etc/netplan/01-netcfg.yaml:
network:
version: 2
renderer: networkd
ethernets:
eth1:
addresses: [192.168.50.10/24]
routes:
- to: default
via: 192.168.50.1
nameservers:
addresses: [1.1.1.1, 9.9.9.9]
Apply:
sudo netplan try # apply with rollback on failure
sudo netplan apply
systemd-networkd§
Create /etc/systemd/network/10-eth1.network:
[Match]
Name=eth1
[Network]
Address=192.168.50.10/24
Gateway=192.168.50.1
DNS=1.1.1.1
sudo systemctl restart systemd-networkd
/etc/network/interfaces (legacy Debian)§
auto eth1
iface eth1 inet static
address 192.168.50.10/24
gateway 192.168.50.1
dns-nameservers 1.1.1.1
sudo ifup eth1
Step 2 — Routes§
Temporary (lost on reboot):
sudo ip route add 10.20.0.0/16 via 192.168.50.254
sudo ip route del 10.20.0.0/16
sudo ip route add default via 192.168.50.1
Persistent via NetworkManager:
nmcli con mod eth1-static +ipv4.routes "10.20.0.0/16 192.168.50.254"
nmcli con up eth1-static
Step 3 — Hostname§
hostnamectl set-hostname web-srv1.lan
cat /etc/hostname
# also update /etc/hosts to map 127.0.1.1 web-srv1.lan web-srv1
Step 4 — MAC address§
ip -br link show eth0 | awk '{print $3}' > /opt/course/31/mac
# or:
cat /sys/class/net/eth0/address > /opt/course/31/mac
Diagnostics§
ping -c 4 1.1.1.1
ping6 -c 4 fe80::1%eth0
traceroute 8.8.8.8
mtr 8.8.8.8
dig +short example.com
nslookup example.com
host example.com
ss -s # socket summary
nmap -sn 192.168.50.0/24 # discover hosts (with permission)
tcpdump -i eth0 -nn port 80 # capture
IPv6 quick reference§
ip -6 addr add 2001:db8::1/64 dev eth0
ip -6 route add default via 2001:db8::ff
sysctl -w net.ipv6.conf.all.autoconf=0
sysctl -w net.ipv6.conf.all.accept_ra=0
Disable IPv6: see q25-sysctl-kernel-parameters.
Commentaires