openvpn, NAT, routing - VYRESENO

Marek Barton bivoj na pohoda.com
Úterý Srpen 2 11:16:56 CEST 2005


> > [LAN1]--[A]--[C(real ip)]--[B(non-real ip)]--[LAN2]
> > $IPTABLES -t nat -A POSTROUTING -s $LOCAL_NET -j SNAT --to-source $INET_IP
> Tu je problem. Maskaraduje totiz aj pakety iduce cez tunel. To
> vysvetluje aj, preco to jednym smerom ide a druhym nie. Pridaj do toho
> riadku -o $INET_INTERFACE a tym by sa to malo vyriesit.
>
> >po aplikaci -o $INET_INTERFACE vidim dokonce:
> >20:32:20.888626 IP 192.168.1.10 > 10.0.0.2: icmp 64: echo request seq 10
> >tzn. ze zde zadny nat zde neprobeh.
> Ano, tak som to myslel a podla mojej kresby je to tak spravne.

jojojo, mas pravdu, s timto to funguje. Skutecne byl problem v tom, ze
jsem prekladal i packtety jdouci pres tunel. Zmatlo me, ze na druhe
strane, kde je pouze jeden preklad, mam tu maskaradu uplne stejne, tzn. ze
prekladam i packtety jdouci tunelem a presto to funguje.

Kdyz na bodu B pustim opet tcpdump -i tun0 a pingnu z lan1 na vpn_ip_B
dostanu:

10:44:31.152289 IP 4.3.2.1 > 10.0.0.1: icmp 40: echo request seq 7424

4.3.2.1 - verejna ip bodu A

a ping se mi normalne vrati.


> >20:32:20.888626 IP 1.2.3.4  > 10.0.0.2: icmp 64: echo request seq 10
> Toto je blbost, lebo odpoved pojde inym smerom.

presto na druhe strane to takto funguje. Ale je to zjevne spatne, pridam
do maskarady output iface a melo by byt vse v poradku.

diky vsem

Marek Barton


Další informace o konferenci Linux