[deconnexion.py] on retire les beuglantes sur les IPv6 pour les mettre dans un autre cron moins fréquent.

This commit is contained in:
Vincent Le Gallic 2013-05-11 17:56:33 +02:00
parent ec08d96426
commit 7de837b8d1
2 changed files with 23 additions and 10 deletions

23
surveillance/collisions_ipv6.py Executable file
View file

@ -0,0 +1,23 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
""" Pour détecter et signaler les collisions d'adresses IPv6 """
import psycopg2
# Connection à la base sql via pgsql
pgsql = psycopg2.connect(database='filtrage', user='crans')
# Il faudra remplacer la ligne ci-dessous par pgsql.set_session(autocommit = True) sous wheezy
pgsql.set_isolation_level(0)
curseur = pgsql.cursor()
# On regarde s'il y a deux ipv6 identiques avec des mac non identiques
collision_mac_ip_request = "SELECT DISTINCT a.date as date1, a.mac as mac1, a.ip as ip1, b.date as date2, b.mac as mac2, b.ip as ip2 FROM mac_ip as a, mac_ip as b where a.ip=b.ip AND a.mac != b.mac AND a.date >= b.date AND a.date - b.date < interval '3 day' ORDER BY a.date;"
curseur.execute(collision_mac_ip_request)
collision_mac_ip = curseur.fetchall()
if collision_mac_ip != []:
print "Collision d'addresses ipv6 : "
for (date1, mac1, ip1, date2, mac2, ip2) in collision_mac_ip:
print "%s %s %s" % (date1, ipt.mac_addr(mac1), ip1)
print "%s %s %s" % (date2, ipt.mac_addr(mac2), ip2)

View file

@ -166,16 +166,6 @@ curseur.execute(requete)
uploadeurs = curseur.fetchall()
# On regarde s'il y a deux ipv6 identiques avec des mac non identiques
collision_mac_ip_request = "SELECT DISTINCT a.date as date1, a.mac as mac1, a.ip as ip1, b.date as date2, b.mac as mac2, b.ip as ip2 FROM mac_ip as a, mac_ip as b where a.ip=b.ip AND a.mac != b.mac AND a.date >= b.date AND a.date - b.date < interval '3 day' ORDER BY a.date;"
curseur.execute(collision_mac_ip_request)
collision_mac_ip = curseur.fetchall()
if collision_mac_ip != []:
print "Collision d'addresses ipv6 : "
for (date1, mac1, ip1, date2, mac2, ip2) in collision_mac_ip:
print "%s %s %s" % (date1, ipt.mac_addr(mac1), ip1)
print "%s %s %s" % (date2, ipt.mac_addr(mac2), ip2)
# Table des avertis
###################