[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: problème réseau



Salut,

pascal a écrit :
[...]
Le problème est que depuis la passerelle je peux pinger la livebox,
accéder au net, faire fonctionner le serveur web mais ne peut pinger
aucune des deux cartes ni même "localhost" :

Un hôte ne pingue pas une interface réseau, et encore moins les siennes (s'il envoie un ping destiné à lui-même par une de ses interfaces vers l'extérieur, comment diable espère-t-il obtenir une réponse). Il pingue une adresse IP. Ce qui est parfois mal compris est qu'un paquet envoyé par un hôte à une des ses adresses locales, quelle que soit l'interface à laquelle cette adresse est affectée, passe par l'interface de loopback "lo". Par conséquent, il faut que lo soit activée et configurée et que les paquets soient autorisés en entrée et en sortie sur celle-ci.

PING localhost.localdomain (127.0.0.1) 56(84) bytes of data.
ping: sendmsg: Operation not permitted
...
3 packets transmitted, 0 received, 100% packet loss, time 2009ms

même résultats pour eth0 et eth1. Et ceci *avec* ou *sans* règles netfilter.

L'interface lo est-elle activée et configurée (ifconfig) ?
Le trafic en INPUT et OUTPUT sur lo est-il autorisé par iptables ?

Sans règles je ne peux même plus  pinger la livebox. J'obtiens alors le
même message (ping: sendmsg: Operation not permitted)

Que veut dire "sans règles" exactement ? Quelles sont les politiques par défaut dans ce cas ? Si elles sont à DROP, alors forcément sans règle rien ne passe.

Du réseau interne je ne peux pinger la machine "m64" et encore moins la
livebox. Mais ces machines obtiennent tout de même leur adresse IP grâce
au dhcpd de la machine "m64" (elles ont une adresse IP fixe) !!!

Il est possible que le démon DHCP utilise un accès réseau de bas niveau et court-circuite ainsi le routage IP normal et iptables.

iptables-save  :
[...]
*filter
:INPUT DROP [14:1884]
:FORWARD DROP [0:0]
:OUTPUT DROP [17:1955]

Si ça reste comme ça sans règles, rien ne passera.

-A INPUT -i ! eth0 -j ACCEPT

Dangeureux. Il vaut mieux lister explicitement les interfaces que l'on veut prendre en compte plutôt que le contraire avec une inversion.

-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

-A INPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A INPUT -p tcp -m tcp --dport 25 -m state --state NEW -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
(*)-A FORWARD -i eth1 -o eth0 -m state --state
NEW,RELATED,ESTABLISHED,UNTRACKED -j ACCEPT
-A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o eth0 -j ACCEPT

Je ne vois pas de règle autorisant le trafic sur lo en sortie.

A noter que le "UNTRACKED" de la règle (*) n'est pas de moi et semble
rajouté par netfilter.

Ce serait étonnant qu'iptables se permette de rajouter des trucs comme ça. Tu n'aurais pas plutôt une règle avec "-m state --state ! INVALID" ? Encore une fois, il vaut mieux lister explicitement les états qu'on souhaite prendre en compte plutôt que le contraire avec une inversion.



Reply to: