DNAT 조건에서 예기치 않은 netstat 출력

DNAT 조건에서 예기치 않은 netstat 출력

여기에 SOCKS5 프록시 수신을 위한 기본 설정이 있습니다. 아, 8123이라고 가정하겠습니다.

다음을 통해 TCP를 프록시로 리디렉션합니다.iptables

iptables관점 에서 iptables -t nat -v -L보면 모든 것이 완벽해 보입니다 .

DNAT tcp -- any any anywhere anywhere to:127.0.01:8123

"실제" 관점에서 보면 작동합니다(Google의 계정 활동, geoip 사이트 및http://ipleak.net/프록시의 외부 IP를 구체적으로 표시합니다.)

따라서 프록시가 예상대로 작동하는 것 같습니다.

그러나 을 수행하려고 하면 netstat다음과 같은 내용이 표시됩니다.

tcp 0 0 10.201.87.64:59949 74.125.141.104:443 ESTABLISHED [browser's PID]

74.125.141.104:443구글이에요.

내가 원하는 것예상되는 netstat표시되는 것은 원격 서버(google)의 IP가 아닌 프록시의 수신 IP(localhost)입니다.

어떤 이유로 브라우저가 iptable규칙을 '유출'합니까? 그렇다면 Google 계정 세부정보에 프록시 외부 IP의 연결이 표시되는 이유는 무엇인가요?

netstat아니면 DNAT가 일어나고 있다는 사실을 모르고 이상하게 생각하고 있는 걸까요 ?

답변1

귀하의 브라우저는 74.125.141.104에 연결됩니다. DNAT는 이 사실을 바꾸지 않습니다. 인터넷의 포트 80을 내부 웹 서버의 포트 80(예: 10.201.87.80)으로 DNAT하는 경우 원격 시스템의 netstat에서 10.201.87.80을 원격 IP로 표시하시겠습니까, 아니면 외부 IP로 표시하시겠습니까?

PS: 10.201.87.64:599449는 불가능합니다. 포트 번호는 65535 이하(16비트)입니다.

관련 정보