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

Jimmy Angelakos vyruss at hellug.gr
Wed Feb 15 19:02:14 EET 2012


On 15/02/12 18:42, Antonis Christofides wrote:
> Έχω ένα σέρβερ (εφεξής 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 δεν κάνει port forwarding όταν το connection
> request γίνεται από τον εαυτό του. Τι έχω καταλάβει λάθος;
Καλά σου λέει, γιατί στο interface με IP 192.168.1.199 δεν υπάρχει κάτι 
να ακούει στο port 5432. Εσύ με αυτό το interface κάνεις forward από τον 
έξω κόσμο στον guest. Τοπικά όμως δεν γίνεται απόπειρα για forwarding...

Φιλικά
Μήτσος


More information about the Linux-greek-users mailing list