On Wed, Dec 07, 2005 at 11:41:50AM +0100, Grzegorz Sójka wrote: > Sytuacja wygląda tak: > Jest sobie getway do internetu gdzie > ppp0 x.x.x.x p-t-p y.y.y.y - interface zewnętrzny > eth0 192.168.1.1/24 - sieć wewnetrzna > ppp1 192.168.1.1 p-t-p 192.168.2.1 tunel PPP-over-SSH do "lepszego > świata" (lepsze łącza) > Oczywiście na ppp0 jest MASQUERADA a default gw to y.y.y.y. > Cel który chcę osiągnąc to sytuacja w której trafic pochcodzący z sieci > wewnętrznej zamiast być maskowany i wysyłany w świat przez y.y.y.y był > najpierw routowany na drugi koniec tunelu a dopiero tam maskowany i > wysyłany na zewnątrz. W tym celu napisałem: > iptables -t mangle -A FORWARD -s 192.168.1.0/24 -d '!' 192.168.0.0/16 -j > ROUTE --gw 192.168.1.1 --oif ppp1 > Efekt jest taki, ze pakiet icmp wysłany z sieci wew. adres 192.168.1.2 > do kompa na zewnątrz rzeczywiście routowany jest przez 192.168.2.1. > Niestey, odpowiedź wchodząca przez ppp1 (tcpdump -i ppp1) ginie gdzieś w > kernelu i nie wychodzi przez eth0 (tcpdump -i eth0). Przy tym wszystkim > ping 192.168.2.1 wysłany z 192.168.1.2 działa jak trzeba. > Z początku myślałem, że to może firewall ale wywalenie wszystkich tabel > oprócz mangle tak aby powyższa regółka była jedyną w iptables nic nie > dało. Co ciekawsze zrobiłem ekspoeryment. Zamiast powyższej regułki > dodałem do tabeli routingu wpis mówiący, że droga do wspomianego hosta > zewnętrznego wiedzie przez tunel i wtedy było wszystko ok.
Nie jestem pewien, ale nie lepiej to zrobic poprzez route(8) lub ip(8). Co pochodzi z lanu rutowac na 192.168.2.1. Zastanawia mnie jeszcze ten sam ip na ppp1 i eth0, czy to nie wprowadza zamieszania. -- best regards q# _______________________________________________ pld-users-pl mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-users-pl
