Réseau
Apparence
Réseau
![]() |
La suite d'outils "net-tools" est remplacé par "iproute2" : guide de transition |
net-tools | iproute2 | |
---|---|---|
adresses ip | ifconfig | ip a |
addresses MAC | ip link show | |
table de routage | route | ip route |
cache ARP | arp | ip neigh |
# url externe du routeur
curl ipinfo.io
|
DHCP
# listez les noms des périphériques réseau
ls /sys/class/net
# activez le service DHCP pour le périphériques réseau enp3s0
dhcpcd enp3s0
# activez au démarrage le service DHCP pour le périphériques réseau enp3s0
systemctl enable dhcpcd@enp3s0
|
Disable ipv6
/etc/dhcpcd.conf |
noipv6rs noipv6 |
Fallback
/etc/dhcpcd.conf |
# define static profile
profile static_eth0
static ip_address=192.168.0.x/24
static routers=192.168.0.y
static domain_name_servers=192.168.0.y
# fallback to static profile on eth0
interface eth0
fallback static_eth0
|
![]() |
Ne semble pas marcher |
IP statique avec systemd-networkd
/etc/systemd/network/10-static-ethernet.network |
[Match]
Name=enp3s0
[Network]
Address=192.168.0.1/24
Gateway=192.168.0.254
# disable ipv6
LinkLocalAddressing=ipv4
IPv6AcceptRA=no
|
# activer l'ip statique au démarrage
sudo systemctl enable systemd-networkd.service
# désactiver DHCP au démarrage
sudo systemctl disable dhcpcd@enp3s0
|
Routing
Route
Définit la passerelle permettant d'accéder à un réseau.
Les ip des passerelles appartiennent toujours aux réseaux du routeur, sinon elles ne sont pas accessibles.
# show main routing table entries
ip route
# show local routing table entries
ip route show table local
# show all routing table entries
ip route show table all
# show where the package would go
ip route get [ip]
# add new route
ip route add 192.168.0.0/24 dev eth0
# add default route
ip route add default via 192.168.0.254
# change existing default route
ip route chg default via 192.168.0.254
# delete default route
ip route del default
|
Routing table
Il y a 255 tables. Il est possible de donner un nom à une table:
/etc/iproute2/rt_tables |
# reserved values
255 local # ne doit pas être modifiée à la main, gérée par le noyau
254 main
253 default
0 unspec
# new table
199 mytable
|
Rule
Set which routing table to use regarding origin or destination
# list the rules
ip rule
# default rules
# 0: from all lookup local # apply local routing table first
# 32766: from all lookup main # apply main routing table at the end
# 32767: from all lookup default # apply default routing table at the very end
# use the table table-name for traffic from ip
ip rule add from <ip> lookup <table-name>
# delete the above rule
ip rule del from <ip> lookup <table-name>
|
Wifi
Installation
# outils de connexion
pacman -S wireless_tools
# pour les réseaux encryptés avec une clé WPA
pacman -S wpa_supplicant
|
Connexion
# activer l'interface wlan0
ip link set wlan0 up
# désactiver l'interface wlan0
ip link set wlan0 down
# lister les points d'accès (avec sudo)
iwlist wlan0 scan | less
# connexion sans clé
iwconfig wlan0 essid "MonESSID"
# obtention d'une adresse ip
dhcpcd wlan0
|
Pilote
# identifier la carte wifi
lspci | grep -i net
|
Normalement udev charge automatiquement le pilote de la carte wifi.
# tester l'existance de l'interface wlan0
ip link
|
Normes
802.11 | Bande de fréquence | Débit théorique maximal | Portée | Congestion | Largeur canal | MIMO (Multiple-Input Multiple-Output) |
---|---|---|---|---|---|---|
a | 5 GHz | 54 Mbps | Faible | Faible | 20 MHz | Non |
b | 2,4 GHz | 11 Mbps | Correcte | Elevée | 20 MHz | Non |
g | 2,4 GHz | 54 Mbps | Correcte | Elevée | 20 MHz | Non |
n | 2,4 GHz et 5 GHz | De 72 à 450 Mbps | Bonne | Elevée et faible | 20 ou 40 MHz | Oui |
ac | 5 GHz | De 433 à 1300 Mbps | Bonne | Faible | 40 ou 80 MHz | Oui |
Sécurité
WEP | Utilisation d'une clé de 26 caractères hexadécimaux. Ne permet pas l'utilisation du WiFi n mais seulement du WiFi b/g |
WPA-PSK (TKIP) | Utilisation d'une clé d'au moins 8 caractères (alphanumérique et caractères spéciaux). Ce mode ne permet pas l'utilisation du WiFi n mais seulement du WiFi b/g |
WPA2-PSK (AES) | Utilisation d'une clé d'au moins 8 caractères (alphanumérique et caractères spéciaux). |
Obtenir le nom du PC depuis son IP
host 192.168.0.x
# host est installé avec le paquet bind-tools
nbtstat -a 192.168.0.x
|
WOL
Client
wol -i 192.168.0.255 AA:AA:AA:AA:AA:AA |
![]() |
Utilisez l'adresse IP de broadcast et non celle de la machine cible |
Service
![]() |
Pas de WOL entre sous-réseaux (VPN par exemple) |
# installer ethtool si besoin
# lister les interfaces: ls /sys/class/net
sudo ethtool [interface]
# Supports Wake-on: pumbg
# Wake-on: d (disabled)
# Wake-on doit être à g (magic packet activity)
sudo ethtool -s [interface] wol g
# test d'écoute du port 9 avec netcat
sudo nc --listen --udp --local-port=9 --hexdump
sudo nc -l -u -p 9 -x
|
Rendre la modification permanente
/etc/systemd/system/wol@.service |
[Unit]
Description=Wake-on-LAN for %i
Requires=network.target
After=network.target
[Service]
ExecStart=/usr/bin/ethtool -s %i wol g
Type=oneshot
[Install]
WantedBy=multi-user.target
|
systemctl start wol@enp3s0.service
systemctl enable wol@enp3s0.service
|
IPv6
xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx Forme contractée xxxx:xxxx:x:xxxx::yy xxxx:xxxx:000x:xxxx:0000:0000:0000:00yy Mask x:x:x:x::0/112 → x:x:x:x:0:0:0:0 - x:x:x:x:0:0:0:ffff x:x:x:x::0/96 → x:x:x:x:0:0:0:0 - x:x:x:x:0:0:ffff:ffff x:x:x:x::0/80 → x:x:x:x:0:0:0:0 - x:x:x:x:0:ffff:ffff:ffff x:x:x:x::0/80 → x:x:x:x:0:0:0:0 - x:x:x:x:0:ffff:ffff:ffff x:x:x:x::0/64 → x:x:x:x:0:0:0:0 - x:x:x:x:ffff:ffff:ffff:ffff
traceroute IPv6 pour obtenir l'IPv6 à partir de l'url.
NAT Loopback / hairpinning
Fonctionnalité qui permet:
- depuis un périphérique en LAN (ex: mon pc)
- d'accéder à un autre périphérique sur le même LAN (ex: mon serveur web)
- en utilisant l'url externe du routeur (ex: http://www.mon-serveur.fr)
Sans le NAT Loopback on se retrouve sur le site web d'administration du routeur au lieu du site web de mon serveur.
Obtenir une adresse depuis une IP
Calcul de masques et de ranges d'IP
DNS
/etc/dhcpcd.conf |
static domain_name_servers=192.168.0.X 192.168.0.Y
|
/etc/resolv.conf |
# Generated by dhcpcd from [interface].dhcp
nameserver 192.168.0.X
nameserver 192.168.0.Y
|