Route Route Route...

Route Route Route... - Installation - Linux et OS Alternatifs

Marsh Posté le 25-08-2003 à 13:55:14    


Hello,
 
J'ai un petit probleme de route je vais essayer d'etre clair
 
j'ai deux reseux imbriques un en 10.0.0.0/8 et un 10.55.25.0/24 les machines dans le 10.55.25.0/24 on comme gateway un linux en 10.55.25.254 le but etant de router les packets de 10.55.25.0/24 vers 10.0.0.0/8  
 
je dois donc faire du routage avec une seule interface  
 
pour le moment je peu pinger tout le monde du router mais pas du reseau 10.55.25.0 vers 10.0.0.1 par ex
 
???

Reply

Marsh Posté le 25-08-2003 à 13:55:14   

Reply

Marsh Posté le 25-08-2003 à 14:03:40    

mes routes sont bonnes n'y a t'il pas une finte avec rp_filter ???

Reply

Marsh Posté le 25-08-2003 à 14:28:55    

bah fait voir ta table de routage


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 25-08-2003 à 16:26:13    


 Réponse courte : sur la passerelle Linux, faire du proxy-arp
 
 Une réponse moins courte nécessite des précisions sur les 2 points suivants :
  - La machine sous Linux qui sert de passerelle entre les 2 réseaux a bien 2 interfaces, non ?  
  - C'est un réseau physique Ethernet ?
 
(pour la suite, je suppose que la réponse est "oui" à ces questions ; sinon, ben j'aurais répondu un peu à côté de la plaque, mais il faudra probablement se documenter sur le proxy-arp)
 
Ici, l'interface eth0 est celle branchée sur le réseau externe (10.0.0.0/8) et eth1 celle sur le réseau interne (10.55.25.0/24). La table de routage doit alors avoir cette tête là :


~#  /sbin/route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.0    0.0.0.0         255.0.0.0         U     0      0        0 eth0
10.55.25.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo


et les adresses IP de eth0 et eth1 :


 eth0: ip=10.0.0.100 netmask=255.0.0.0
 eth1: ip=10.55.25.254 netmask=255.255.255.0


L'adresse IP de eth0 NE doit PAS être dans le sous-réseau 10.55.25.0/24 (<mavie>ça paraît évident, mais j'ai déjà fait l'erreur en voulant créer un sous-réseau pour 16 IPs (/28) dans un réseau de 64 IPS (/26) avec cette technique :sarcastic:</mavie> ).  
 
 Une fois que les adresses IP sont configurées, il suffit d'activer l'IP Forwarding


 echo 1 > /proc/sys/net/ipv4/conf/all/proxy_arp


 
et le proxy-arp


 echo 1 > /proc/sys/net/ipv4/conf/all/proxy_arp


 
 Et voilà, le proxy-arp se fait "automagiquement". Ça marche avec Linux 2.2 ou +. Avec un noyau Linux 2.0, il faut utiliser la commande arp, mais je n'ai jamais eu l'occasion de le faire.
 
 
Pour info :
* Extrait "man arp" : remarquer la NOTE sur les noyaux 2.2.x


 << -s hostname hw_addr, --set hostname
              ...
              NOTE: As of kernel 2.2.0 it is no  longer  possible
              to  set  an  ARP  entry for an entire subnet. Linux
              instead does  automagic  proxy  arp  when  a  route
              exists   and  it  is  forwarding.  See  arp(7)  for
              details.
 >>


 
* Extrait "man 7 arp" :


   <<
       Support  for  proxy  arp entries for networks (netmask not
       equal 0xffffffff) was dropped in Linux 2.2. It is replaced
       by  automatic proxy arp setup by the kernel for all reach-
       able hosts on other interfaces (when forwarding and  proxy
       arp is enabled for the interface).
   >>


Reply

Marsh Posté le 25-08-2003 à 16:37:37    


 Ah oui, y a un truc aussi : rien n'empêche physiquement à un comique quelconque d'attribuer une adresse IP du sous-réseau 10.55.25./24 à une machine du réseau principal. Il faut bien sûr empêcher ça, même si cette IP n'est pas attribuée dans le sous-réseau, puisque, si on est sur de l'Ethernet, la passerelle Linux répondra toujours aux requêtes ARP pour ce sous-réseau.

Reply

Marsh Posté le 25-08-2003 à 21:14:58    

activer l'ip_forwarding?

Reply

Marsh Posté le 25-08-2003 à 23:36:40    

echo 1 > /proc/sys/net/ipv4/conf/all/forwarding

Reply

Marsh Posté le 26-08-2003 à 09:43:40    


 Euh, oui, pardon, activer l'IP forwarding (pour transférer des paquets d'une interface à l'autre), c'est aussi

echo 1 > /proc/sys/net/ipv4/ip_forward


 
(faudrait que je me relise avant de poster...)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed