我有一個應用程式在連接埠 Y (UDP) 上運行。是否可以在不接觸應用程式 A 的情況下建立鏡像,以在應用程式 A 中接收訊息,並在不同的連接埠 Y 上另外在應用程式 B(同一主機)中接收訊息?
我嘗試過
socat udp-listen:x,reuseaddr,fork udp:localhost:y
不幸的是,socat
在連接埠 X 上啟動偵聽器,且應用程式 a 沒有收到訊息。
我還閱讀了一些iptables
帶有 mangle 的解決方案 - 我的版本似乎不再支援它iptables
。
它需要在兩個不同的平台上運作:
- Ubuntu 20.04 與 iptables v1.8.4(舊版)
- SLES12SP5 v1.4.21
我無法在eth0
介面的子網路中使用第二個 IP 位址。
答案1
啊,你可以這樣做與IP表…
從該網站:
iptables -t mangle -A PREROUTING -p UDP --dport 162 -j TEE --gateway 127.0.0.2
iptables -t nat -A PREROUTING -d 127.0.0.2 -p UDP --dport 162 -j DNAT --to 127.0.0.1:1162
在我連結的網站上閱讀更多相關資訊。