【发布时间】:2020-03-20 17:50:48
【问题描述】:
我想知道是否有可能在 Python 中为 UDP 使用透明代理。我的套接字定义为:
sock.setsockopt(socket.SOL_IP, IP_TRANSPARENT, 1)
sock.setsockopt(socket.SOL_IP, SO_ORIGINAL_DST, 1)
在哪里
IP_TRANSPARENT (19) and SO_ORIGINAL_DST (20)
是常数。现在,我想获取该套接字的原始 IP 和端口。对于 TCP,它像 sock.getsockname() 一样工作,但它不适用于 udp 套接字。当然,我先做这样的事情:
iptables -t mangle -I PREROUTING -d {ip} -p UDP --dport 20000:21000 -j TPROXY --on-port=8173 --on-ip={ip}
【问题讨论】:
标签: python sockets udp iptables transparentproxy