Nowe posty

Autor Wątek: IPtables - przekierowania  (Przeczytany 2120 razy)

wjt333

  • Gość
IPtables - przekierowania
« dnia: 2012-10-18, 14:32:04 »
Witam, mam problem z zadaniem bardziej teoretycznym niż praktycznym, ale chce sprawdzić jak to zrobić.

W sieci lan mam komputer 10.0.99.255/16, serwer 10.0.0.1/16 oraz drukarkę sieciową 172.23.31.133/25.

Chciałbym aby dla komputera drukarka była widoczna pod adresem 10.0.0.5 (dla wszystkich portów i protokołów).


Serwer ma ustawione 3 adresy ip na interfejsie eth1 - tj. 10.0.0.1/16, 10.0.0.5/16 i 172.23.31.135/25.

No i teraz pytanie - jak ustawić przekierowania.
Próbowałem tak:

iptables -t nat -A PREROUTING -s 10.0.99.255 -d 10.0.0.5 -j DNAT --to-destination 172.23.31.133

jednak ping 10.0.0.5 wykonany z komputera 10.0.99.255 nie trafiał do drukarki.

po przemyśleniach dołożyłem jeszcze
iptables -t nat -A POSTROUTING -d 172.23.31.133 -j SNAT --to-source 172.23.31.135

po dalszych przemyśleniach - ta reguła powinna trafić do OUTPUT - ale wywala mi błąd.

Pełna konfiguracja iptables (nat):

Chain PREROUTING (policy ACCEPT)
DNAT       all  --  10.0.99.255          10.0.0.5            to:172.23.31.133

Chain POSTROUTING (policy ACCEPT)
SNAT       all  --  anywhere             172.23.31.133       to:172.23.31.135
SNAT       all  --  10.0.0.0/16          anywhere            to:192.168.0.200

Chain OUTPUT (policy ACCEPT)


i iptables (filter)
Chain INPUT (policy ACCEPT)
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)

Chain OUTPUT (policy ACCEPT)



Proszę mądre głowy o nakierowanie mnie na rozwiązanie problemu. Jak to zrobić, jak żyć :)?

Pozdrawiam, Wojtek

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3069
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
IPtables - przekierowania
« Odpowiedź #1 dnia: 2012-10-18, 15:32:30 »
1. Czy serwer ma włączone forwardowanie pakietów?
#> sysctl net.ipv4.conf.all.forwarding                                                                                       

net.ipv4.conf.all.forwarding = 1
2. Adres dodatkowy powinien mieć maskę /32
3. Potrzebujesz tylko PREROUTING z DNAT
4. Czy iptables -vnL -t nat wyświetla jakieś hity w regułkę NAT?
5. Czy tcpdump -ieth1  wyświetla ruch przed i po DNAT (czyli każda ramka 2x)? Adresy i porty są OK?
6. Czy drukarka ma bramę skonfigurowaną na router?
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy