OVH Cloud OVH Cloud

pings ok, mais traceroute non.

6 réponses
Avatar
rantamplan
Bonjour,


Suite à la config d'un firewall linux avec les propriétés suivantes,

$fw -P INPUT DROP
$fw -A INPUT -p icmp -s $ipfab -j ACCEPT

Depuis une adresse free (linux-debian), j'arrive à pinger le serveur,
mais je n'arrive pas à tracerouter jusqu'à celui-ci.
7 access-53.33.41.213.rev.coltfrance.com (213.41.33.53)92.295 ms (...)
8 * *^X

Le 7ième saut correspond au routeur colt, et le 8ième à mon firewall.

D'un autre côté, depuis un autre serveur sous windows sur un tout autre
FAI, j'arrive à pinger et à tracerouter sans problème jusqu'au firewall.

Je ne comprends pas pourquoi sur la machine chez free, on arrive à
pinger, mais pas à tracerouter? J'ai oublié d'ouvrir un protocole?
traceroute, c'est pas de l'icmp?

J'ai relu la suite du script (que je n'ai pas créé), et je ne trouve
rien qui puisse justifier que pour la deuxième machine, les traceroutes
passent normalement.

Je viens de faire le teste depuis mon compte chez linux-france.org, et
là, comme rien n'est autorisé, ni les pings, ni les traceroutes ne
passent. Normal...

Vous avez une idée?

--
rantamplan

6 réponses

Avatar
Pascal Hambourg
Salut,


Suite à la config d'un firewall linux avec les propriétés suivantes,

$fw -P INPUT DROP
$fw -A INPUT -p icmp -s $ipfab -j ACCEPT

Depuis une adresse free (linux-debian), j'arrive à pinger le serveur,
mais je n'arrive pas à tracerouter jusqu'à celui-ci.
[...]

D'un autre côté, depuis un autre serveur sous windows sur un tout autre
FAI, j'arrive à pinger et à tracerouter sans problème jusqu'au firewall.


Par défaut, le traceroute d'Unix et dérivés envoie des paquets UDP
(ports destination à partir de 33434). L'option -I du traceroute de
Linux envoie des paquets ICMP echo-request (ping). Le traceroute de
Windows envoie toujours des paquets ICMP echo-request.

Les noeuds intermédiaires répondent avec un ICMP time-exceeded.
La destination finale répond au traceroute UDP par un un ICMP
port-unreachable, et au traceroute ICMP par un ICMP echo-reply.
Si la destination est injoignable (hors ligne, non routée), le dernier
routeur répond par un ICMP destination-unreachable.
Enfin, quand ils répondent...

Bloquer systématiquement, c'est mal.

Avatar
rantamplan
Pascal Hambourg wrote:
Salut,



Suite à la config d'un firewall linux avec les propriétés suivantes,

$fw -P INPUT DROP
$fw -A INPUT -p icmp -s $ipfab -j ACCEPT

Depuis une adresse free (linux-debian), j'arrive à pinger le serveur,
mais je n'arrive pas à tracerouter jusqu'à celui-ci.


[...]

D'un autre côté, depuis un autre serveur sous windows sur un tout
autre FAI, j'arrive à pinger et à tracerouter sans problème jusqu'au
firewall.



Par défaut, le traceroute d'Unix et dérivés envoie des paquets UDP
(ports destination à partir de 33434). L'option -I du traceroute de
Linux envoie des paquets ICMP echo-request (ping). Le traceroute de
Windows envoie toujours des paquets ICMP echo-request.

Les noeuds intermédiaires répondent avec un ICMP time-exceeded.
La destination finale répond au traceroute UDP par un un ICMP
port-unreachable, et au traceroute ICMP par un ICMP echo-reply.
Si la destination est injoignable (hors ligne, non routée), le dernier
routeur répond par un ICMP destination-unreachable.
Enfin, quand ils répondent...

Bloquer systématiquement, c'est mal.


Je résume pour accuser bonne réception du message:
En l'état actuel des choses, si je veux que mon traceroute passe
jusqu'au bout sous linux, je dois le faire avec un -I

Et si je ne veux pas le faire avec l'option -I, je dois ouvrir les ports
33434 et plus haut. (ce qui n'a rien de dramatique, puisque je l'ouvre
juste pour certaines adresses IP)

C'est ça?

Question, si les linux n'envoient pas des ICMP echo-request par défaut,
ils envoient quoi?

--
rantamplan


Avatar
Pascal Hambourg

En l'état actuel des choses, si je veux que mon traceroute passe
jusqu'au bout sous linux, je dois le faire avec un -I


Oui.

Et si je ne veux pas le faire avec l'option -I, je dois ouvrir les ports
33434 et plus haut. (ce qui n'a rien de dramatique, puisque je l'ouvre
juste pour certaines adresses IP)

C'est ça?


C'est une possibilité, mais le mieux est d'utiliser la cible REJECT
d'iptables pour les paquets indésirables mais néanmoins valides. Sinon,
pas besoin d'ouvrir *tous* les ports UDP au dessus de 33434. Avec les
options par défaut (3 paquets pour chaque valeur de TTL, 30 sauts maxi)
traceroute utilisera 90 ports maxi -> 33524.

Question, si les linux n'envoient pas des ICMP echo-request par défaut,
ils envoient quoi?


Des datagrammes UDP, comme je l'ai déjà dit.

Avatar
Eric Lalitte
"rantamplan" wrote in message
news:dun0no$39n$
Vous avez une idée?


La même que Pascal, qui a toujours de bonnes idées en passant ;-)

J'ai fait un petit laïus sur traceroute qui présente notamment ton
problème:
<http://www.lalitte.com/reseau.html#tracert>




--
Posted via Mailgate.ORG Server - http://www.Mailgate.ORG

Avatar
Pascal Hambourg

Vous avez une idée?


La même que Pascal, qui a toujours de bonnes idées en passant ;-)


Il ne faut pas croire, j'ai aussi de mauvaises idées. >:->
Mais en général j'évite de les exposer dans un forum public.

J'ai fait un petit laïus sur traceroute qui présente notamment ton
problème:
<http://www.lalitte.com/reseau.html#tracert>


Bien mais il manque la signification de "TTL". Ça pourrait perturber les
électroniciens (en électronique, TTL désigne une famille de technologies
de circuits logiques à transistors bipolaires).


Avatar
rantamplan
Pascal Hambourg wrote:


Vous avez une idée?



La même que Pascal, qui a toujours de bonnes idées en passant ;-)



Il ne faut pas croire, j'ai aussi de mauvaises idées. >:->
Mais en général j'évite de les exposer dans un forum public.

J'ai fait un petit laïus sur traceroute qui présente notamment ton
problème:
<http://www.lalitte.com/reseau.html#tracert>



Bien mais il manque la signification de "TTL". Ça pourrait perturber les
électroniciens (en électronique, TTL désigne une famille de technologies
de circuits logiques à transistors bipolaires).


et en photo, ttl veut dire through the lens (pour appareil reflex)
Mais je vous remercie pour vos interventions qui m'ont réellement aidé.
A ne pas bosser sur des firewalls tous les jours, on oublie un peu ses
cours TCP/IP d'il y a 6-7 ans.