OVH Cloud OVH Cloud

[FreeBSD] Problème routage

2 réponses
Avatar
F.Julien
Bonsoir,

J'ai besoin de vos lumières car j'ai un petit probleme de routage.
Voici la topologie du reseau: une machine sous FreeBSD-Stable avec ipf et ipnat
d'activé.
La machine possède 3 interfaces:
- xl0 qui est connecté à la freebox pour Internet
- vr0 qui est sur mon reseau en 172.16/16
- xl1 qui est sur un reseau en 192.168.0/8 (reseau pas secure du tout)
J'avais dans un premier temps configure mon FreeBSD comme etant ma passerelle
par default pour aller sur internet. J'ai maintenant ajouté l'interface xl1
pour accédé à un réseau de machines qui sont en 192.168.0/8.
Ce que je souhaiterais faire, c'est que de mon réseau en 172.168/16 je puisse
accéder à internet mais aussi à une machine en 192.168.0/8 si je le souhaite.
Malheureusement, je n'arrive pas à configurer le bazar :(
Pour ce qui est d'ipf, j'ai desactivé toutes les regles de firewall pour les
tests (accepte tout en in/out de toutes les interfaces) et mon fichier de
config d'ipnat ne possède que la ligne suivante :
map xl0 172.16.0.0/16 -> 0.0.0.0/32
qui permet à mes machines en 172.16/16 d'accéder à internet.

Merci d'avance pour vos conseils.

Cordialement.
F.Julien

2 réponses

Avatar
Yannick
Bonsoir,
Je trouve ton masque de sous réseau 192.168.0/8 un peu bizarre,
c'est pas plutôt 192.168.0/24 ?

Si oui, Voici un shell qui devrait aller :
-----------------------------------------------------
#!/bin/sh

fwcmd="/sbin/ipfw "
iif=xl1
iif2=vr0
oif=xl0

lan="( 192.168.0.0/24 or 172.16.0.0/16) "

ipanyany="ip from any to any"

${fwcmd} -f flush


${fwcmd} add permit ip from me to any keep-state
${fwcmd} add pass all from any to any via lo0
${fwcmd} add deny log all from any to 127.0.0.0/8
${fwcmd} add deny log ip from 127.0.0.0/8 to any

${fwcmd} add allow ip from ${lan} to any in via ${iif}
${fwcmd} add allow ip from ${lan} to any in via ${iif2}
${fwcmd} add allow ip from ${lan} to ${lan}

${fwcmd} add check-state

${fwcmd} add allow tcp from ${lan} to any via ${oif} keep-state setup
${fwcmd} add allow udp from ${lan} to any via ${oif} keep-state

${fwcmd} add allow ip from any to any established
${fwcmd} add allow udp from any 53,123 to me



${fwcmd} add deny log ip from any to any

${fwcmd} zero
-----------------------------------------------------

tu peux l'appeller /etc/ipfw.rules et mettre :
! sh -c "/etc/ipfw.rules"
dans ton /etc/ppp/ppp.linkup

Yannick.

PS:
je suppose que tu as bien mis
net.inet.ip.forwarding=1 dans ton /etc/sysctl.conf

Bonsoir,

J'ai besoin de vos lumières car j'ai un petit probleme de routage.
Voici la topologie du reseau: une machine sous FreeBSD-Stable avec ipf
et ipnat d'activé.
La machine possède 3 interfaces:
- xl0 qui est connecté à la freebox pour Internet
- vr0 qui est sur mon reseau en 172.16/16
- xl1 qui est sur un reseau en 192.168.0/8 (reseau pas secure du tout)
J'avais dans un premier temps configure mon FreeBSD comme etant ma
passerelle par default pour aller sur internet. J'ai maintenant ajouté
l'interface xl1 pour accédé à un réseau de machines qui sont en
192.168.0/8.
Ce que je souhaiterais faire, c'est que de mon réseau en 172.168/16 je
puisse accéder à internet mais aussi à une machine en 192.168.0/8 si je
le souhaite.
Malheureusement, je n'arrive pas à configurer le bazar :(
Pour ce qui est d'ipf, j'ai desactivé toutes les regles de firewall pour
les
tests (accepte tout en in/out de toutes les interfaces) et mon fichier
de config d'ipnat ne possède que la ligne suivante :
map xl0 172.16.0.0/16 -> 0.0.0.0/32
qui permet à mes machines en 172.16/16 d'accéder à internet.

Merci d'avance pour vos conseils.

Cordialement.
F.Julien







Avatar
F.Julien
Bonjour,

Bonsoir,
Je trouve ton masque de sous réseau 192.168.0/8 un peu bizarre,
c'est pas plutôt 192.168.0/24 ?


Oooops :) Effectivement, j'étais fatigué hier soir ! C'est biensur du /24.


Si oui, Voici un shell qui devrait aller :
-----------------------------------------------------


Hum, j'utilise pas ipfw je vais essayer d'adapter ton script !

#!/bin/sh

fwcmd="/sbin/ipfw "
iif=xl1
iif2=vr0
oif=xl0

lan="( 192.168.0.0/24 or 172.16.0.0/16) "

ipanyany="ip from any to any"

${fwcmd} -f flush


${fwcmd} add permit ip from me to any keep-state
${fwcmd} add pass all from any to any via lo0
${fwcmd} add deny log all from any to 127.0.0.0/8
${fwcmd} add deny log ip from 127.0.0.0/8 to any

${fwcmd} add allow ip from ${lan} to any in via ${iif}
${fwcmd} add allow ip from ${lan} to any in via ${iif2}
${fwcmd} add allow ip from ${lan} to ${lan}

${fwcmd} add check-state

${fwcmd} add allow tcp from ${lan} to any via ${oif} keep-state setup
${fwcmd} add allow udp from ${lan} to any via ${oif} keep-state

${fwcmd} add allow ip from any to any established
${fwcmd} add allow udp from any 53,123 to me



${fwcmd} add deny log ip from any to any

${fwcmd} zero
-----------------------------------------------------

tu peux l'appeller /etc/ipfw.rules et mettre :
! sh -c "/etc/ipfw.rules"
dans ton /etc/ppp/ppp.linkup

Yannick.

PS:
je suppose que tu as bien mis
net.inet.ip.forwarding=1 dans ton /etc/sysctl.conf



Oui:
gateway_enable="YES"
dans mon rc.conf.

Merci.

F.Julien.