Καταμπερδεμένος με τα 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