====== Configuration IP ====== ---- ===== netplan (à partir d'Ubuntu 18.04) ===== La syntaxe des fichiers de configuration est au format yaml et donc l'indentation des lignes est importante. Le nom du fichier sous /etc/netplan dépend du type d'installation et du gestionnaire réseau :\\ « Serveur » avec systemd-networkd : 01-netcfg.yaml\\ « Cloud Image » avec systemd-networkd : 50-cloud-init.yaml\\ « Desktop » avec NetworkManager : 01-network-manager-all.yaml ==== DHCP ==== **/etc/netplan/01-netcfg.yaml** network: ethernets: ens160: dhcp4: true version: 2 ==== DHCP avec bonding ==== **/etc/netplan/01-netcfg.yaml** bonds: bond0: dhcp4: yes interfaces: - enp3s0 - enp4s0 parameters: mode: active-backup primary: enp3s0 Les différents modes possibles sont : balance-rr, active-backup, balance-xor, broadcast, 802.3ad, balance-tlb, balance-alb.\\ Voir cette [[https://help.ubuntu.com/community/UbuntuBonding?&_ga=2.231777375.1369656617.1539611592-962216848.1539611592#Descriptions_of_bonding_modes|page]] pour plus d'infos. === Basculement bond0 sur eth1 === sudo apt-get install ifenslave ifenslave -c bond0 eth1 ==== IP statique ==== **/etc/netplan/01-netcfg.yaml** network: ethernets: ens160: dhcp4: false addresses: - 10.35.130.71/26 routes: - to: default via: 10.35.130.126 nameservers: addresses: - 8.8.8.8 - 8.8.4.4 search: [] version: 2 ==== IP statique avec VLAN ==== **/etc/netplan/01-netcfg.yaml** network: version: 2 ethernets: ens3: addresses: - 192.168.122.201/24 routes: - to: default via: 192.168.122.1 nameservers: addresses: [192.168.122.1] ens8: {} vlans: vlan.101: id: 101 link: ens8 addresses: [192.168.101.1/24] vlan.102: id: 102 link: ens8 addresses: [192.168.102.1/24] ==== Network Manager ==== **/etc/netplan/01-network-manager-all.yaml** network: version: 2 renderer: NetworkManager === Désactivation === Editer le fichier **/etc/NetworkManager/NetworkManager.conf** et changer managed=false par managed=true dans la section ifupdown : [main] plugins=ifupdown,keyfile [ifupdown] managed=true [device] wifi.scan-rand-mac-address=no ==== Prise en compte ==== sudo netplan try # test une nouvelle configuration pour un temps donné sudo netplan apply # prise en compte nouvelle configuration ---- [[all:bibles:linux:reseau:02-configuration|Haut de page]] ===== Avant Ubuntu 18.04 ===== ==== Configuration manuelle ==== sudo ifconfig eth0 10.0.0.100 netmask 255.255.255.0 sudo route add default gw 10.0.0.1 eth0 Modifier le fichier **/etc/resolv.conf** pour la résolution DNS. Pour effacer la conf : ip addr flush eth0 ==== IP statique ==== **/etc/network/interfaces** auto lo iface lo inet loopback auto enp1s0 iface enp1s0 inet static address 10.1.90.227 netmask 255.255.255.128 network 10.1.90.128 broadcast 10.1.90.255 gateway 10.1.90.254 dns-search pproject.altran.com dns-nameservers 10.1.2.11 10.1.2.12 Pour un démarrage plus rapide sans attendre le réseau préférer **allow-hotplug enp1s0** à la place de **auto enp1s0** ==== DHCP ==== **/etc/network/interfaces** auto lo iface lo inet loopback auto enp1s0 iface enp1s0 inet dhcp ==== Network Manager ==== Lorsque la configuration est faite par l'interface graphique les fichiers mis à jour par le NetworkManager ne sont pas les mêmes. Ne pas essayer de mettre à jour le fichier /etc/network/interface. **/etc/NetworkManager/system-connections/Connexion filaire 1** [802-3-ethernet] duplex=full mac-address=00:0C:29:AB:87:3C [connection] id=Wired connection 4 uuid=99f48bd3-f1fd-43e5-8dce-6e8f020d8560 type=802-3-ethernet timestamp=1531129513 [ipv6] method=auto [ipv4] method=manual dns=10.1.2.11;10.1.2.12; address1=10.1.242.67/27,10.1.242.94 ---- [[all:bibles:linux:reseau:02-configuration|Haut de page]] ===== DHCP Client Daemon (Debian) ===== * [[https://www.jesus-forain.fr/blog/configuration-de-dhcpcd-52.html]] * [[https://sizious.com/fr/2015/08/28/configurer-une-ip-fixe-sur-le-raspberry-pi-avec-raspbian-20150505/]] * [[https://ressourcesinformatiques.com/article.php?article=312]] ---- [[all:bibles:linux:reseau:02-configuration|Haut de page]] ===== IPV6 ===== ==== Désactivation IPV6 ==== === Temporairement === sysctl -w net.ipv6.conf.all.disable_ipv6=1 sysctl -w net.ipv6.conf.default.disable_ipv6=1 sysctl -w net.ipv6.conf.lo.disable_ipv6=1 === Persistant === * Ajouter les lignes suivantes à la fin du fichier /etc/sysctl.conf net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6=1 net.ipv6.conf.lo.disable_ipv6 = 1 Semble ne plus fonctionner sur Ubuntu 20.04. Voir méthode Grub. * Redémarrer la machine * Vérifier l'absence de inet6 sur les interfaces réseaux * En cas de problème vérifier les valeurs en mémoire : cat /proc/sys/net/ipv6/conf/all/disable_ipv6 cat /proc/sys/net/ipv6/conf/default/disable_ipv6 cat /proc/sys/net/ipv6/conf/lo/disable_ipv6 === Persistant via Grub === * Editer le fichier /etc/default/grub pour ajouter l'option **ipv6.disable=1** au paramètre **GRUB_CMDLINE_LINUX_DEFAULT** GRUB_DEFAULT=0 GRUB_TIMEOUT_STYLE=hidden GRUB_TIMEOUT=0 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ipv6.disable=1" GRUB_CMDLINE_LINUX="" * Regénérer la configuration Grub. sudo update-grub * Redémarrer la machine. ---- [[all:bibles:linux:reseau:02-configuration|Haut de page]] ===== Commandes usuelles ===== ==== Interroger ses adresses IP ==== hostname -i ==== Prise en compte modifications ==== === A partir d'Ubuntu 18.04 === sudo netplan apply Possibilité d'avoir plus d'informations en ajoutant l'option debug :\\ sudo netplan %%--%%debug apply === A partir d'Ubuntu 16.04 === sudo systemctl restart networking === Avant Ubuntu 16.04 === sudo service networking restart === Network manager === sudo systemctl restart NetworkManager ==== Renouvellement adresse IP en DHCP ==== dhclient –r eth1 ⇒ force le client à libérer l'adresse IP dhclient –d eth1 ⇒ Récupérer une adresse IP auprès du serveur DHCP ==== Remplacement commandes réseau ==== | arp | ip neigh | | ifconfig | ip addr | | iptunnel | ip tunnel | | iwconfig | iw | | nameif | ip link | | netstat | ip route | | ::: | ss | | route | ip route | ==== Commandes IP V6 ==== | ping6 | | nslookup -type aaaa domain.fr | | netstat -A inet6 -nr | | service ip6tables stop | ---- [[all:bibles:linux:reseau:02-configuration|Haut de page]] ===== Wifi ===== ==== Configuration manuelle ==== === Liste les réseaux sans fil sur l’interface wlan0 === sudo iwlist wlan0 scan | egrep 'Cell |Encryption|Quality|Last beacon|ESSID' === Liste les réseau sans fil avec la puissance du signal sur l’interface wlan0 === sudo iw dev wlan0 scan | egrep "signal|SSID" === Configure l’interface wlan0 pour se connecter sur le réseau dont le ssid est SSID === sudo iwconfig wlan0 essid === Obtient une adresse via DHCP sur l’interface wlan0 === udhcpc –i wlan0 ==== Configuration via fichiers ==== * Créer ou éditer le fichier /etc/wpa_supplicant/wpa_supplicant.conf ctrl_interface=/var/run/wpa_supplicant update_config=1 network={ ssid="Network_SSID" psk="CLEF_DU_RESEAU" key_mgmt=WPA-PSK } * Possibilité de masquer la clef en la remplaçant par le résultat généré par la commande wpa_passphrase "Network_SSID" "CLEF_DU_RESEAU" * Modifier les droits d'accès du fichier sudo chmod 0600 /etc/wpa_supplicant/wpa_supplicant.conf * Créer un fichier de configuration sous /etc/network/interfaces.d === DHCP === auto wlan0 allow-hotplug wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf === IP statique === auto wlan0 allow-hotplug wlan0 iface wlan0 inet static address <@IP> netmask gateway <@IP gateway> dns-nameservers <@IP DNS> wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf * Arrêter les services sudo systemctl stop NetworkManager sudo systemctl stop wpa_supplicant sudo systemctl stop networking * Redémarrer les services en respectant l'ordre sudo systemctl start networking sudo systemctl start wpa_supplicant sudo systemctl start NetworkManager ==== Optimisation ==== Afin d'optimiser le Wifi il convient d'utiliser un canal qui n'est pas (ou peu) utilisé par le voisinage. Pour rechercher le meilleur canal on peut utiliser le logiciel [[https://doc.ubuntu-fr.org/inssider|LinSSID]]. === Installation === sudo apt-get install linssid === Utilisation === Lancer l'application par le menu ou en ligne de commande **linssid**. ---- [[all:bibles:linux:reseau:02-configuration|Haut de page]] ===== Autres fichiers de configuration ===== ==== /etc/hostname ==== Nom de la machine que l'on retrouve avec la commande : uname -n === Changement du hostname === hostnamectl set-hostname La modification peut être réalisé manuellement par : * Mise à jour du fichier /etc/hostname * Mise à jour du fichier /etc/hosts * Redémarrage de la machine ==== /etc/ethers ==== Fichier dans lequel on peut renseigner une liste d'adresse MAC pour des serveurs distants. ==== /etc/host ==== Liste des hosts pour résolution DNS. ==== /etc/resolv.conf ==== Nom du serveur DNS et du nom de domaine par défaut. La modification de ce fichier n'est plus persistante car il est reconstruit automatiquement. Il est tout de même possible de le modifier temporairement. ==== /etc/sysctl.conf ==== Quelques paramètres de configuration. === Activation IP forwarding === net.ipv4.ip_forward = 1 sudo sysctl -w net.ipv4.ip_forward=1 === Protection contre les attaques === net/ipv4/icmp_echo_ignore_broadcasts = 1\\ net/ipv4/icmp_ignore_bogus_error_responses = 1\\ net/ipv4/conf/all/accept_redirects = 0\\ net/ipv4/conf/all/send_redirects = 0\\ net/ipv4/conf/all/accept_source_route = 0 Les valeurs courantes peuvent être interrogées et modifiées dans\\ /proc/sys/net/ipv4/... ==== /etc/dhcp/dhclient.conf ==== Fichier de configuration du client DNS. Pour choisir son serveur DNS ajouter la ligne suivante en séparant les adresses par une virgule : supersede domain-name-servers @IP1,@IP2; ---- [[all:bibles:linux:reseau:02-configuration|Haut de page]] ===== Redhat/CentOS ===== ==== Configuration adresse IP ==== === adresse IP fixe === /etc/sysconfig/network-scripts/ifcfg-ensxxx TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="none" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="no" NAME="ens160" DEVICE="ens160" ONBOOT="yes" PREFIX=27 IPADDR=10.1.242.87 GATEWAY=10.1.242.94 HWADDR="00:0c:29:a1:d9:7f" DNS1=10.1.2.11 DNS2=10.1.2.12 === DHCP === /etc/sysconfig/network-scripts/ifcfg-ensxxx DEVICE="eth0" BOOTPROTO="dhcp" HWADDR="00:24:7E:10:96:B2" NM_CONTROLLED="yes" ONBOOT="yes" TYPE="Ethernet" ==== Prise en compte des modifications ==== systemctl restart network ---- ===== Dépannage ===== ==== Changement Hostname après reboot ==== === Problème === Après avoir changé le hostname la valeur revient à sa valeur précédente après redémarrage. === Solution 1 === * Désinstaller cloud-init définitivement sudo apt purge cloud-init cloud-initramfs-copymods cloud-initramfs-dyn-netconf === Solution 2 === * Effacer la conf cloud-init sudo cloud-init clean * Réinitialiser la conf cloud-init à partir de l'existant sudo cloud-init init [[https://askubuntu.com/questions/1028633/host-name-reverts-to-old-name-after-reboot-in-18-04-lts|Source]] ---- [[all:bibles:linux:reseau:02-configuration|Haut de page]]