iptables는 트래픽을 투명 프록시로 전달합니다.

iptables는 트래픽을 투명 프록시로 전달합니다.

고스트투명한 프록시를 포함하여 여러 가지로 생각할 수 있게 해주는 네트워킹 모듈입니다.

해당 페이지에서투명 프록시UDP 트래픽을 투명 프록시로 전달하기 위해 iptables 규칙을 작성하는 방법이 있음을 알 수 있습니다.

그러나 그들의 iptables 규칙에는 내 문제가 발생하는 tproxy가 포함되어 있는 것 같습니다. 내가 이루고 싶은 것은 내가 원하는 것이다모두UDP 트래픽은 특정 포트에 대한 트래픽뿐만 아니라 gost로 전달됩니다. 그러나 iptables 규칙에서는 tproxy를 사용하여 규칙을 지정하는 것으로 나타납니다. 여기서 패킷은 특정 포트 번호로 전송되는 경우에만 표시됩니다.

내 질문은 내가하려는 일을 달성 할 수있는 방법이 있습니까? 즉, iptables를 사용하여 모든 UDP 트래픽을 투명 프록시로 전달하시겠습니까?

링크를 방문하고 싶지 않은 사람들을 위해 gost 웹사이트에 명시된 iptables 규칙은 다음과 같습니다.

iptables -t mangle -N GOST
iptables -t mangle -N GOST_LOCAL

iptables -t mangle -A GOST -d 255.255.255.255/32 -j RETURN
iptables -t mangle -A GOST -d 127.0.0.0/8 -p udp -j RETURN
iptables -t mangle -A GOST -d 192.168.0.0/16 -p udp -j RETURN
iptables -t mangle -A GOST -p udp -j TPROXY --on-port 12345 --on-ip 0.0.0.0 --tproxy-mark 1

iptables -t mangle -A GOST_LOCAL -d 255.255.255.255/32 -j RETURN
iptables -t mangle -A GOST_LOCAL -d 192.168.0.0/16 -p udp -j RETURN
iptables -t mangle -A GOST_LOCAL -d 1.2.3.4/32 -p udp -j RETURN
iptables -t mangle -A GOST_LOCAL -p udp -j MARK --set-mark 1

iptables -t mangle -A PREROUTING -j GOST
iptables -t mangle -A OUTPUT -j GOST_LOCAL

그렇다면 라우팅 테이블에 관한 몇 가지 규칙이 있는 것 같습니다. 그것이 무엇인지는 잘 모르겠지만, 철저하게 확인하기 위해 포함시켰습니다.

ip rule add fwmark 1 table 100
ip route add local 0.0.0.0/0 dev lo table 100

관련 정보