Mon réseau d’entreprise
29.2 La gestion du réseau en Python
La documentation de Python (https://docs.python.org) propose deux librairies pour utiliser Internet : urllib.request pour récupérer les données d’un serveur web et smtplib pour envoyer des mails. Pour les communications TCP ou UDP, il est possible d’utiliser les librairies socket et socketserver ;
D’autres librairies utiles pour la gestion du réseau en python sont :
- python3-netaddr
-
manipulation des diverses notations communes d’adresses de réseau – Python 3
- python3-netcdf4
-
interface de Python 3 pour la bibliothèque netCDF4 (network Common Data Form)
- python3-netdisco
-
Library to discover local devices and services (Python 3)
- python3-netifaces
-
informations portables sur l’interface réseau - Python 3.x
- python3-networkmanager
-
Python 3 interface to the NetworkManager D-Bus interface
- python3-network
-
python module for easy networking
- python3-nwdiag
-
generate network-diagram image file for Python3
- python3-paho-mqtt
-
MQTT client class (Python 3)
- python3-pyroute2
-
Python3 Netlink library - full package
- python3-scapy
-
Packet generator/sniffer and network scanner/discovery (Python 3)
- wifite
-
script Python pour un audit automatique de réseau sans fil avec les outils aircrack-ng
29.2.1 python3-network
python3-network https://github.com/wijnen/python-network
29.2.2 python3-netifaces
Le paquet python3-netifaces, documentation https://alastairs-place.net/projects/netifaces/, fournit des fonctions pour obtenir les informations sur les interfaces réseaux.
import netifaces nif=netifaces.interfaces() print(nif) print(netifaces.ifaddresses(nif[1])) print(netifaces.gateways()) print(netifaces.ifaddresses(nif[1])[netifaces.AF_LINK])
29.2.3 python3-netaddr
Le paquet python3-netaddr, documentation : https://netaddr.readthedocs.io/en/latest/ propose des fonctions pour gérer les adresses MAC et IP.