我有以下設定:
客戶:
- DCHP 192.168.1.*
樹莓派網關:
- 192.168.1.20
樹莓派伺服器:
- 192.168.1.19
伺服器在連接埠 8000 上託管即時攝影機。
我想透過我的網關存取此即時來源,並且我想使用 iptables 來實現這一點。
我新增了以下規則:
sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 8000 -j DNAT --to-destination 192.168.1.19
當我訪問導航到 192.168.1.20:8000 時,連線逾時。讀了一下之後,我明白我需要製定另一條處理回覆的規則。這可以使用 SNAT 或 MASQUARADE 來完成。
我不想硬編碼回傳位址,因為「客戶端」可以有不同的 IP 位址。但是我如何告訴 iptables「記住」tcp 請求中提供的來源 IP 位址,並將其作為回覆中的「傳回寄件者」位址放回?
我剛剛嘗試過:
sudo iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE
它有效,但我不知道我現在在做什麼。假面舞會在做什麼?