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

Re: problème réseau



Pascal Hambourg a écrit :
> Salut,
Bonsoir
> 

> 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.

Oui oui ....je me suis très mal exprimé. Je parlais en fait de ping sur
les adresses des deux cartes ethernet. Je ne savais pas que tout passait
par lo.
> 
>> 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 ?
sortie de ifconfig :

eth0      Lien encap:Ethernet  HWaddr xxxxx
          inet adr:192.168.1.20  Bcast:192.168.1.255
	  Masque:255.255.255.0
          adr inet6: xxxxx Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9404 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9128 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000
          RX bytes:5149805 (4.9 MiB)  TX bytes:1637192 (1.5 MiB)
          Interruption:233 Adresse de base:0x4000

eth1      Lien encap:Ethernet  HWaddr xxxx
          inet adr:192.168.2.20  Bcast:192.168.2.255
	  Masque:255.255.255.0
          adr inet6: xxxx  Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9578 errors:0 dropped:1053 overruns:0 frame:0
          TX packets:50 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000
          RX bytes:635007 (620.1 KiB)  TX bytes:6114 (5.9 KiB)
          Interruption:66 Adresse de base:0xac00

lo        Lien encap:Boucle locale
          inet adr:127.0.0.1  Masque:255.0.0.0
          adr inet6: ::1/128 Scope:Hôte
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:6 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:0
          RX bytes:448 (448.0 b)  TX bytes:448 (448.0 b)

Ce qui laisse penser que "lo" est active.
> 
>> 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.
Par "sans règle" j'entendais à la suite de :

           iptables -F INPUT
           iptables -F OUTPUT
           iptables -F FORWARD
           iptables -P INPUT ACCEPT
           iptables -t nat -F

> 
>> 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.

Je me doutais d'un truc dans le genre.
>> 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.

ok aussi.
> 
>> -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" ?

Bien vu !

iptables -A FORWARD -i $LAN_IFACE -o $INET_IFACE -m state --state !
INVALID -j ACCEPT

> Encore une fois, il vaut mieux lister explicitement les états qu'on
> souhaite prendre en compte plutôt que le contraire avec une inversion.
> 
Et finalement...Merci car les pings remarchent une fois le traffic
autorisé en sortie sur "lo"...
Merci à S. Cavailles pour sa réponse et à vous pour la solution...
Bonne soirée et ...Je modifie mon script en tenant compte de vos conseils.
P.



Reply to: