Καταμπερδεμένος με τα iptables

Thanasis thanasis at asyr.hopto.org
Thu Feb 16 12:59:56 EET 2012


on 02/15/2012 06:42 PM Antonis Christofides wrote the following:
> Έχω ένα σέρβερ (εφεξής host) με IP 192.168.1.199. Μέσα του τρέχει ένα
> VM (openvz container, εφεξής guest) με IP 10.1.3.1, ο οποίος τρέχει
> μια postgresql που ακούει στο port 5432. Το nat είναι ρυθμισμένο και
> δουλεύει καλά, o guest επικοινωνεί με τον έξω κόσμο, και έχω φτιάξει
> και το εξής iptables rule στο host (table nat) για να μπορεί ο έξω
> κόσμος να μιλήσει με το guest:
> 
> -A PREROUTING -p tcp -m multiport --dports 80,443,5432 -j DNAT
> --to-destination 10.1.3.1
> 
> Έχουμε λοιπόν (έστω "other" ένας άλλος υπολογιστής στο ίδιο δίκτυο).
> 
> Από other: nc -vn 192.168.1.199 5432     => OK
> Από guest: nc -vn 127.0.0.1     5432     => OK
> Από guest: nc -vn 10.1.3.1      5432     => OK
> Από guest: nc -vn 192.168.1.199 5432     => OK
> Από host:  nc -vn 10.1.3.1      5432     => OK
> 
> Από host:  nc -vn 192.168.1.199 5432     => Connection refused
> Από host:  nc -vn 127.0.0.1     5432     => Connection refused

Όταν από τον host στέλνεις πακέτα, η πορεία τους είναι από το Output
προς το Postrouting, δηλαδή δεν περνούν από το PREROUTING.

Όπως είπε και ο Παναγιώτης, καλύτερα να επικοινωνεί ο host με τον guest
μέσω της 10.1.3.1 .


More information about the Linux-greek-users mailing list