Windows: IP 및 포트의 네트워크 트래픽을 로컬 시스템의 다른 IP 및 포트에 매핑

Windows: IP 및 포트의 네트워크 트래픽을 로컬 시스템의 다른 IP 및 포트에 매핑

Windows에서는 IP 주소(예: 10.255.255.255)의 모든 트래픽을 다른 IP 주소(예: 127.0.0.1)에 매핑해야 합니다.

나는 netsh 인터페이스 portproxy를 발견했고 그것을 시도했습니다.

netsh interface portproxy add v4tov4 listenaddress=10.255.255.255 listenport=7073 connectaddress=127.0.0.1 connectport=7071

목표는 사용자가 패킷을 보내는 것과 10.255.255.255:7073마찬가지로 패킷을 보내는 것입니다.127.0.0.1:7071

netsh interface portproxy show all

Listen on ipv4:             Connect to ipv4:

Address         Port        Address         Port
--------------- ----------  --------------- ----------
10.255.255.255  7073        127.0.0.1         7071

7073 포트에 대한 방화벽 규칙도 추가했습니다.

netsh advfirewall firewall add rule name="7073 port" protocol=TCP dir=in localport=7073 action=allow

이것은 Windows 11에 있습니다.

netstat -na|find "7073"의 결과는 비어 있으며 7071에 대한 동일한 결과는 다음과 같습니다.

netstat -na|find "7071"
  TCP    0.0.0.0:7071           0.0.0.0:0              LISTENING

내 응용 프로그램에서 먼저 우편 배달부에서 10.255.255.255:7073으로 요청을 보내려고 시도했지만 시간 초과가 발생했습니다. 동일한 요청이 127.0.0.1:7071로 성공적으로 전송될 수 있습니다.

7073에 텔넷을 하면 연결할 수 없습니다.

telnet 10.255.255.255 7073
Connecting To 10.255.255.255...Could not open connection to the host, on port 7073: Connect failed

IP Helper서비스도 실행되고 있는지 확인했습니다 .

내 의도는 사용자가 이미 에 요청을 보낼 수 있다면 127.0.0.1:7071포트 전달 후에 에 요청을 보내고 10.255.255.255:7073동일한 동작을 볼 수 있다는 것입니다. 내 응용 프로그램은 실제로 HTTP 요청을 보냅니다.

어떤 서비스도 실제로 7073들어오는 트래픽을 수신하고 있지 않습니다. 하지만 그게 요점입니다. 나는 이 포트로 무엇이든 보내는 사람이 있으면(아무도 듣고 있지 않더라도) 트래픽이 7071(누군가 듣고 있는) 포트로 이동하기를 원합니다.

소스 IP에서 대상 IP로 모든 네트워크 트래픽을 앞뒤로 전달하기 위해 IP:포트를 다른 포트로 매핑하는 것과 관련하여 내 접근 방식이 맞습니까?

그렇다면 여기서 무엇이 잘못되었을 수 있습니까?

감사해요

답변1

명령 의 문제점은 및 의 netsh매개변수를 지정할 때 발생합니다 .listenaddressconnectaddress주소 범위가 아닌 하나의 특정 IP 주소.

10.255.255.255따라서 사용한 구문은 전체 10.* 주소 범위가 아닌 정확한 IP 주소를 지정합니다.

에 대한 문서 Netsh 인터페이스 portproxy 명령 - v4tov4 추가 이렇게 말합니다:

연결주소

지정합니다IPv4 주소연결할 곳. 허용되는 값은 IP 주소, 컴퓨터 NetBIOS 이름 또는 컴퓨터 DNS 이름입니다. 주소가 지정되지 않은 경우 기본값은 로컬 컴퓨터입니다.

듣기주소

지정합니다IPv4 주소듣기 위해. 허용되는 값은 IP 주소, 컴퓨터 NetBIOS 이름 또는 컴퓨터 DNS 이름입니다. 주소가 지정되지 않은 경우 기본값은 로컬 컴퓨터입니다.

포트 프록시를 다시 생성하려면 먼저 다음을 사용하여 생성한 포트 프록시를 삭제해야 합니다. v4tov4 삭제.

관련 정보