IPCOP 1.3 et problème avec DNSMASQ

Forum traitant de la distribution sécurisée montante nommée IP cop et basée sur la distribution Smoothwall. C'est à l'heure actuelle le forum le plus actif du site.

Modérateur: modos Ixus

IPCOP 1.3 et problème avec DNSMASQ

Messagepar ShonGail » 31 Mai 2006 17:33

Hello,

j'ai un ipcop 1.3.9 qui joue le rôle de proxy filtrant. Il tourne derrière un routeur netgear FR114P, relié à une ligne Wanadoo Pro

Il est configuré en statique sur l'interface RED.
Son serveur DHCP est activé et distribue les IP à une dizaine de postes clients en renseignant le serveur DNS comme étant lui-même.

Je ne travaille pas dessus en local mais à distance (putty et winscp)


Mon problème est le suivant :

De manière aléatoire (Je n'ai trouvé aucun déclencheur), le daemon DNSMASQ ne joue plus son rôle de serveur DNS.

Les symptômes alors sont les suivants :

Sur les postes clients comme sur l'IPCOP, la résolution des noms ne s'opére plus. Les requêtes vers des adresses IP elles s'opèrent bien.
Le daemon DNSMASQ n'est pas arrêté. Un "ps -ax" me le prouve.
Aucun message d'erreur dans le log (/var/log/messages)
Après recherche sur le forum, le seul topic que j'ai trouvé ressemblant sans plus de réponses est http://forums.fr.ixus.net/viewtopic.php ... ht=dnsmasq


Ce que je suis obligé de faire alors :

killer le processus DNSMASQ et le relancer (dnsmasq -l /var/lib/dhcp/dhcpd.leases -r /var/ipcop/red/resolv.conf)


Ce n'est pas gérable :/
J'ai donc renseigné les IP des serveurs DNS de wanadoo dans le serveur DHCP pour que les postes clients aillent directement taper dedans.
Mais j'aimerai savoir ce qui se passe ! C'est le seul IPCOP qui me fait ça (bon j'en ai pas installé des centaines ;) )


Questions :

Y'a t'il moyen d'avoir des log d'erreurs sur ce processus DNSMASQ ?
Peut-on imaginer un script sur l'IPCOP qui teste la résolution des noms et qui en cas de problème kill et relance DNSMASQ ?
Le problème peut-il avoir un quelconque lien avec le matériel ? (bien qu'il n'y ait aucune déconnexion de l'interface RED à aucun moment - je n'ai aucune rupture de ma connexion SSH lorsque le problème intervient)
J'ai dans "/var/lib/dhcp" le fichier "dhcpd.leases" et un autre "dhcpd.leases~". Pourquoi le second ? Puis-je le virer ? Puis-je effacer les infos dans le 1er ?
Ca vaut la peine de s'$%#&! ou je laisse les postes clients avec les DNS Wanadoo et basta ? ;)


Je sais que la 1.3 est loin pour vous mais DNSMASQ est tjs d'actualité dans les dernières versions, non ? :D


Merci :P
Avatar de l’utilisateur
ShonGail
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 21 Fév 2003 01:00

Messagepar ShonGail » 07 Juin 2006 15:47

La suite ...


rebonjour,

mon soucis est de retour !

aujourd'hui DNSMASQ a replanté (cela faisait plusieurs jours qu'il ne refaisait plus parler de lui) et les postes ont donc été privé d'Internet :evil:

Pourtant les postes clients obtiennent du serveur DHCP d'Ipcop d'aller directement taper dans les serveurs DNS du FAI !

Alors Que Passa ? :?:

Comment cela se peut-il que configurés pour établir les requêtes DNS vers les serveurs externes, les postes clients soient touchés par le plantage de DNSMASQ, la cache DNS d'IPCOP ?

Cela a t'il un rapport avec le fait que l'ipcop joue le rôle de proxy filtrant avec le combo SQUID+Dansguardian ?

Ces deux là necesitent-ils le fonctionnement de DNSMASQ ?

Merci à ceux qui peuvent m'aider avant que je me tape les 150km qui me sépare de la bécanne :/

Question supplémentaire : peut-on penser que ce problème de DNSMASQ puisse être en rapport avec le hardware ? RAM défectueuse, HDD posant soucis, etc. Sachant que c'est le seul problème qui se pose.
Avatar de l’utilisateur
ShonGail
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 21 Fév 2003 01:00

Messagepar Franck78 » 07 Juin 2006 17:14

dnsmasq 2.22 actuellement sur IPCop 1.4. Je sais pas sur 1.3. Si tu soupconnes le matos, n'importe quel processus deviendrait aléatoire (j'ai pas écris pilote).
Tu peux toujours emmener avec toi un IPCop 1.4.11 préparé et mettre à jour tranquillement l'ancien 1.3 non?

Même si le routeur prend tout dans la tronche, t'es quand même pas en sécurité :wink:
Franck
L'art de poser une question sur ce site afin d'obtenir la réponse
A LIRE
Avatar de l’utilisateur
Franck78
Amiral
Amiral
 
Messages: 5625
Inscrit le: 20 Fév 2004 01:00
Localisation: Paris

Messagepar ShonGail » 07 Juin 2006 19:43

Hum je vais effectivement faire un essai pour voir si la dernière version de DNSMASQ pourrait fonctionner sur la 1.3

Parce que bon j'ai pas trop envie de faire les 150 bornes ...
Et puis j'ai une interface WEB de gestion perso sur cet IPcop. J'ai rien porté sur la 1.4 donc pas question d'install la 1.4 pour le moment.

Merci @ toi en tout cas de t'interesser à mon problème :D
Avatar de l’utilisateur
ShonGail
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 21 Fév 2003 01:00

Messagepar Franck78 » 08 Juin 2006 00:02

Tu es vraiment certain que c'est dnsmasq qui déconne ?

Tu as 'dig' sur une 1.3?
Il est pratique pour vérifier le dns.
Franck
L'art de poser une question sur ce site afin d'obtenir la réponse
A LIRE
Avatar de l’utilisateur
Franck78
Amiral
Amiral
 
Messages: 5625
Inscrit le: 20 Fév 2004 01:00
Localisation: Paris

Messagepar ShonGail » 08 Juin 2006 08:51

Le process tourne tjs car je le vois suite à un "ps -ax"

mais aucun ping sur un domaine ne passe. Sur les IP oui.

Si je kill le process et le redémarre, tout refonctionne.

DNSMASQ est donc bien au centre du problème.

PS : DIG n'est pas présent sur la 1.3
Avatar de l’utilisateur
ShonGail
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 21 Fév 2003 01:00

Messagepar Franck78 » 08 Juin 2006 09:29

Essaie de le mettre à jour. Il doit y avoir un bug qui est activé par une requète particulière.

Tu devras peut-être aussi ajouter des librairies 'linkées' avec la version à jour que tu utiliseras. Attention à ne pas remplacer celles déjà existante! Le mieux étant de compiler un IPCop 1.3 avec un dnsmasq à jour!
Franck
L'art de poser une question sur ce site afin d'obtenir la réponse
A LIRE
Avatar de l’utilisateur
Franck78
Amiral
Amiral
 
Messages: 5625
Inscrit le: 20 Fév 2004 01:00
Localisation: Paris

Messagepar ShonGail » 08 Juin 2006 20:03

Bon j'ai tenté autre chose :

en + d'avoir indiqué aux postes clients de taper dans les DNS du FAI, j'ai indiqué à IPCOP de le faire aussi en lui indiquant les IP de ces derniers dans /etc/resolv.conf

Du coup, même avec DNSMASQ stoppé, Ipcop est capable de résoudre les adresses :)

Cela bloquait surement à cet endroit avec SQUID ou Dansguardian qui s'appuyaient sur IPCOP pour établir des requêtes DNS.

Du coup, j'espère que DNSMASQ ne sert plus à personne et peut planter sans conséquences.

Si des experts de Linux et d'IPCOP pouvaient m'aider à mieux comprendre le système ...
parce que moi je fais dans l'empirique ;)
Avatar de l’utilisateur
ShonGail
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 21 Fév 2003 01:00

Messagepar ShonGail » 09 Juin 2006 10:38

Bon en fait, les postes clients ne sont tjs pas capables de surfer de manière stable si DNSMASQ est arrêté. Ca marche une fois, pas l'autre ....

Ras le $%#&! -> direction réinstall !
Avatar de l’utilisateur
ShonGail
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 21 Fév 2003 01:00

Messagepar ShonGail » 21 Juin 2006 01:20

Alors la suite de mon aventure DNSMASQ (bien que je sens que tout le monde s'en fout de la 1.3 ;) ) :

Réinstall sur une AUTRE machine ... et même soucis :cry:


Après quelques gouttes de sueur en m'en rendant compte (enfin plutôt quand on m'a appelé pour me le dire :? ), je décide pour ne pas me retaper les 150 bornes de suite avec un ipcop 1.4 qui n'est pas d'origine à ma sauce, de créer un script sous CRON qui testerait le ping et le cas échéant relancerait DNSMASQ.

Le script donne ça :

Code: Tout sélectionner
#!/bin/sh

dat=$(date '+%a %d/%m/%Y %k:%M')

if ping google.fr -c 1
then
echo $dat Ping google ok >>/etc/cron.min/log.txt

else
if ping yahoo.fr -c 1
then
echo $dat Ping yahoo ok >>/etc/cron.min/log.txt

else
if ping hardware.fr -c 1
then
echo $dat Ping hardware ok >>/etc/cron.min/log.txt

else
/usr/local/bin/beep -f 400 -l 2000 -r 3

max=$(cat /proc/sys/net/ipv4/ip_conntrack_max)
tcp=$(cat /proc/net/ip_conntrack | grep -c 'tcp')
udp=$(cat /proc/net/ip_conntrack | grep -c 'udp')

echo $dat Pas de ping / ip_conntrack_max : $max - TCP : $tcp - UDP : $udp / Redemmarage DNSMASQ >>/etc/cron.min/log.txt

killall dnsmasq
sleep 1
/usr/local/bin/dnsmasq -l /var/lib/dhcp/dhcpd.leases -r /var/ipcop/red/resolv.conf

fi
fi
fi


Je l'ai mis dans un dossier /etc/cron.min mais en fait je ne lance que lui dans le dossier, et ce chaque minute :
*/1 * * * * root /etc/cron.min/script.cmd

Bon tout ça pour dire que sans résoudre le soucis, cela devrait nettemet l'amoindrir et que j'aurai un log pour savoir exactement à quelle heure ca $%#&! (et donc me taper les autres logs à la recherche d'une explication). A tout hasard, j'ai aussi voulu des infos sur le nbre de connexions TCP et UDP; j'ai cru lire dans mes recherches qu'un dépassement pouvait être la cause de tels symptômes.

Si quelqu'un peut tjs m'apporter un indice utile ...

Car même si à terme la 1.4 va venir remplacer le tout, j'aimerai pour mon bonheur personnel trouver ce qui fait merder DNSMASQ !

Je l'aurai ! Je l'aurai !! :D
Dernière édition par ShonGail le 23 Juin 2006 09:55, édité 1 fois au total.
Avatar de l’utilisateur
ShonGail
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 21 Fév 2003 01:00

Messagepar ShonGail » 23 Juin 2006 09:54

Re Hello,


j'ai décidé de (enfin j'ai trouvé qu'on pouvait) logguer les queries faites à DNSMASQ en le lançant avec le paramètre -q

Ca va peut-être m'apporter une info importante au prochain plantage :)

Le seul truc qui me chagrine, c'est que les infos sont rajoutées au /var/log/messages

J'aimerai que les entrées propres à DNSMASQ soient dans un fichier log séparé.

J'imagine qu'il faut modifier le /etc/syslog.conf ... mais comment ?

Qui peut m'aider sur ce point ?

merci :)
Avatar de l’utilisateur
ShonGail
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 21 Fév 2003 01:00

Messagepar ShonGail » 24 Juin 2006 15:48

Bon j'avance dans ce qui n'est plus un topic mais un blog :/

J'ai modifié le syslog.conf de la manière suivante :

Code: Tout sélectionner
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none;daemon.none      /var/log/messages

daemon.*   /var/log/daemon


Ainsi, tout les logs relatifs aux daemons - dont DNSMASQ en majeure (totale ?) partie - vont dans /var/log/daemon et non plus /var/log/messages :)

Maintenant ma nouvelle question :

je lance donc DNSMASQ à la main avec le paramètre -q pour avoir des logs de ses actions.

Comment est-il possible de l'obliger à se lancer avec ce paramètre lors du boot d'ipcop ?
Pour m'éviter de moi-même me logguer et le relancer avec cette option ...


merci :)
Avatar de l’utilisateur
ShonGail
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 21 Fév 2003 01:00


Retour vers IPCop

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité