หวังว่าจะมีคนช่วยที่นี่ได้ เพราะฉันค้นหาคำตอบต่างๆ มากมายและฉันไม่สามารถทำงานอะไรได้เลย
ฉันมี 2 เครื่อง - เครื่อง 10.3.0.4 iptables ปัจจุบันได้รับการตั้งค่าดังนี้:
-P PREROUTING ยอมรับ
-P อินพุตยอมรับ
-P เอาต์พุตยอมรับ
-P หลังยอมรับ
-N MY_tcp
-A OUTPUT -o lo -p tcp -j MY_tcp
-A MY_tcp -p tcp -m iprange --dst-range 127.1.1.1-127.1.1.20 -j REDIRECT --to-ports 12000
สิ่งนี้ทำงานได้อย่างสมบูรณ์บนเครื่องนี้ และฉันต้องการทราบว่าสามารถส่งต่อไปยังเครื่องของฉันใน 10.3.0.6 ได้หรือไม่
ฉันได้ลองทำตามคำแนะนำด้านล่างแล้ว:
เปิดใช้งานการกำหนดเส้นทาง localhost
sysctl -w net.ipv4.conf.all.route_localnet=1
iptables -t nat -A OUTPUT -m addrtype --src-type LOCAL --dst-type LOCAL -p tcp --dport 8888 -j DNAT --to-destination 10.3.0.6
iptables -t nat -A POSTROUTING -m addrtype --src-type LOCAL --dst-type UNICAST -j MASQUERADE
ส่งต่อ tcp ทั้งหมดจาก 10.3.0.4 > 10.3.0.6
iptables -t nat -A PREROUTING -p tcp --destination 10.3.0.4 -j DNAT --to-destination 10.3.0.6
iptables -t nat -A POSTROUTING -p tcp --destination 10.3.0.6 -j SNAT --to-source 10.3.0.4