Maison  >  Article  >  développement back-end  >  Comment utiliser des scripts Python pour la surveillance réseau sur les serveurs Linux

Comment utiliser des scripts Python pour la surveillance réseau sur les serveurs Linux

王林
王林original
2023-10-05 11:29:141253parcourir

Comment utiliser des scripts Python pour la surveillance réseau sur les serveurs Linux

Comment utiliser les scripts Python pour la surveillance réseau sur les serveurs Linux

Introduction :
Avec le développement de la technologie et la popularité d'Internet, le réseau est devenu un élément indispensable de la vie et du travail des gens. Cependant, la stabilité et la sécurité du réseau ont toujours été des préoccupations importantes. Afin d’assurer le fonctionnement normal du serveur, la surveillance du réseau est indispensable. Cet article explique comment utiliser les scripts Python pour la surveillance du réseau sur les serveurs Linux et fournit des exemples de code spécifiques.

1. Installez les bibliothèques nécessaires
Avant de commencer, nous devons nous assurer que les bibliothèques liées à Python sont installées sur le serveur, y compris psutil, socket et time.

Pour Debian et Ubuntu, vous pouvez utiliser la commande suivante pour installer :

sudo apt-get install python-psutil

Pour CentOS et Fedora, vous pouvez utiliser la commande suivante pour installer :

sudo yum install python2-psutil

2. Obtenez l'adresse IP du serveur
Avant la surveillance du réseau, nous avons besoin pour obtenir l'adresse IP du serveur. Cette étape peut être réalisée via la bibliothèque de sockets. Voici un exemple :

import socket

def get_ip_address():
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.connect(("8.8.8.8", 80))
    ip_address = s.getsockname()[0]
    s.close()
    return ip_address

ip_address = get_ip_address()
print("服务器IP地址是:" + ip_address)

Le code ci-dessus crée une connexion socket et se connecte au serveur DNS de Google, puis obtient l'adresse IP du serveur.

3. Vérifiez la connexion réseau du serveur
Ensuite, nous utiliserons la bibliothèque psutil pour vérifier la connexion réseau du serveur et obtenir des informations associées sur la connexion réseau. Voici un exemple :

import psutil

def check_network_connection():
    connections = psutil.net_connections()
    for connection in connections:
        if connection.status == 'ESTABLISHED':
            print("本地地址:%s,远程地址:%s,状态:%s" % (connection.laddr, connection.raddr, connection.status))

check_network_connection()

Le code ci-dessus utilise la méthode net_connections de la bibliothèque psutil pour obtenir la liste des connexions réseau du serveur et imprime l'adresse locale, l'adresse distante et l'état de connexion de toutes les connexions avec un statut ESTABLISHED.

4. Surveiller la bande passante réseau du serveur
La surveillance de la bande passante réseau du serveur est très importante pour évaluer les conditions du réseau et optimiser les performances du serveur. Nous pouvons utiliser la bibliothèque psutil pour surveiller la bande passante du réseau. Voici un exemple :

import psutil

def measure_network_bandwidth():
    network_interface = psutil.net_io_counters(pernic=True)
    for interface, data in network_interface.items():
        print("接口:%s,接收字节数:%s,发送字节数:%s" % (interface, data.bytes_recv, data.bytes_sent))

measure_network_bandwidth()

Le code ci-dessus utilise la méthode net_io_counters de la bibliothèque psutil pour obtenir les données de l'interface réseau du serveur et imprimer le nombre d'octets reçus et envoyés pour chaque interface.

Conclusion : 
La surveillance du réseau sur les serveurs Linux est un moyen simple et efficace utilisant des scripts Python. Cet article explique comment utiliser les scripts Python pour obtenir l'adresse IP du serveur, vérifier les connexions réseau et surveiller la bande passante réseau. Ces fonctions peuvent nous aider à évaluer les conditions du réseau, à optimiser les performances du serveur et à détecter les problèmes potentiels en temps opportun.

Remarque : les exemples de code fournis dans cet article sont uniquement à titre de référence. L'application réelle peut nécessiter une modification et une optimisation appropriées en fonction des conditions réelles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn