|
@@ -0,0 +1,58 @@
|
|
|
+import subprocess
|
|
|
+from flask import Flask
|
|
|
+
|
|
|
+app = Flask(__name__)
|
|
|
+
|
|
|
+@app.route('/')
|
|
|
+def get_network_info():
|
|
|
+ try:
|
|
|
+ # Запустить команды для получения информации о сетевом интерфейсе и DNS
|
|
|
+ interface_info = subprocess.check_output('ip addr show enp3s0', shell=True, text=True)
|
|
|
+ dns_info = subprocess.check_output('cat /etc/resolv.conf | grep "nameserver"', shell=True, text=True)
|
|
|
+
|
|
|
+ # Получить IP-адрес, широковещательный адрес сети и шлюз по умолчанию
|
|
|
+ ip_address = subprocess.check_output('ip addr show enp3s0 | grep "inet " | awk \'{print $2}\'', shell=True, text=True).strip()
|
|
|
+ broadcast_ip = subprocess.check_output('ip addr show enp3s0 | grep "inet " | awk \'{print $4}\'', shell=True, text=True).strip()
|
|
|
+ default_gateway = subprocess.check_output('ip route show default | awk \'/default via/ {print $3}\'', shell=True, text=True).strip()
|
|
|
+
|
|
|
+ # Форматирование информации в HTML
|
|
|
+ info = f"""
|
|
|
+ <html>
|
|
|
+ <head>
|
|
|
+ <title>Информация о сетевом интерфейсе</title>
|
|
|
+ <style>
|
|
|
+ body {{
|
|
|
+ font-family: Arial, sans-serif;
|
|
|
+ background-color: #f0f0f0;
|
|
|
+ margin: 20px;
|
|
|
+ }}
|
|
|
+ h1 {{
|
|
|
+ background-color: #007bff;
|
|
|
+ color: #fff;
|
|
|
+ padding: 10px;
|
|
|
+ }}
|
|
|
+ p {{
|
|
|
+ background-color: #fff;
|
|
|
+ padding: 10px;
|
|
|
+ border: 1px solid #ccc;
|
|
|
+ margin: 5px 0;
|
|
|
+ }}
|
|
|
+ </style>
|
|
|
+ </head>
|
|
|
+ <body>
|
|
|
+ <h1>Настройки основного сетевого интерфейса - Created by gr704_opkol</h1>
|
|
|
+ <p>IP-адрес: {ip_address}</p>
|
|
|
+ <p>Широковещательный адрес сети: {broadcast_ip}</p>
|
|
|
+ <p>Шлюз по умолчанию: {default_gateway}</p>
|
|
|
+ <h2>Настройки DNS</h2>
|
|
|
+ <p>{dns_info.replace("nameserver", "DNS-сервер:")}</p>
|
|
|
+ </body>
|
|
|
+ </html>
|
|
|
+ """
|
|
|
+
|
|
|
+ return info
|
|
|
+ except Exception as e:
|
|
|
+ return f'Ошибка: {str(e)}'
|
|
|
+
|
|
|
+if __name__ == '__main__':
|
|
|
+ app.run(host='0.0.0.0', port=8080)
|