Weiterleiten von Paketen von einer bestimmten Domäne (TLD) an einen bestimmten Computer im Netzwerk mithilfe von iptables

Weiterleiten von Paketen von einer bestimmten Domäne (TLD) an einen bestimmten Computer im Netzwerk mithilfe von iptables

Ich kann die Portweiterleitung mit den folgenden Befehlen durchführen:

iptables -t nat -A PREROUTING -p tcp -d XXX.XXX.XXX.XXX --dport 80 -j DNAT --to 192.168.161.31:80

iptables -t nat -A POSTROUTING -d 192.168.161.31 -j MASQUERADE

Ich wollte prüfen, ob es möglich ist, Pakete weiterzuleiten, die an einen Domänennamen statt an eine IP-Adresse wie XXX.XXX.XXX.XXX gerichtet sind.

Kann man zum Beispiel so etwas wie das Folgende machen und es funktioniert? Bei mir funktioniert es nicht!

iptables -t nat -A PREROUTING -p tcp -d XXX.XXX.XXX.XXX --dport 80 -j DNAT --to 192.168.161.31:80
iptables -t nat -A PREROUTING -p tcp -d www.example.com --dport 80 -j DNAT --to 192.168.161.32:80

Bitte beachten Sie, dass die vorhergehenden Befehle an unterschiedliche Maschinen weitergeleitet werden sollten.

Antwort1

Nein, das ist nicht möglich. Pakete sind auf TCP/IP-Ebene nie auf Domänennamen ausgerichtet.

Sie müssen eine Art Lastenausgleich verwenden (z. B. Apache mit ProxyPass), wenn Sie Anfragen an einen anderen Host/Port umleiten müssen.

Antwort2

Nein, so etwas können Sie nicht tun. DNS-Namen sind in Netfilter-Regeln nicht zulässig. Sie gelten nur auf TCP/IP- und ICMP-Ebene.

verwandte Informationen