V2ray 서버와 클라이언트를 실행하고 Inbound Socks5를 만들었습니다. 0.0.0.0:8443
IP와 포트 번호를 사용하여 원격 컴퓨터로 전달하고 싶습니다 .
v2ray에서 이 작업을 수행할 수 있다는 것을 알고 있지만 dokodemo-door
ISP가 이 프로토콜을 차단했습니다. 그래서 다른 해결책이 필요합니다. 일반적으로 양말 프록시를 통해 포트를 전달하는 솔루션이 있습니까?
답변1
dokodemo-door를 사용하지 않고 SOCKS 프록시를 통해 포트를 전달하려고 시도할 수 있는 몇 가지 솔루션이 있습니다. 가능한 두 가지 옵션은 다음과 같습니다.
SSH 터널링 사용
SSH 터널링을 사용하면 SSH 프로토콜을 사용하여 SOCKS 프록시를 통해 포트를 전달할 수 있습니다. 수행 방법은 다음과 같습니다.
- 다음 명령을 사용하여 원격 시스템에 대한 SSH 연결을 시작합니다.
ssh -D 1080 -f -C -q -N user@remote_machine_ip
이 명령은 원격 시스템에 대한 SSH 연결을 시작하고 로컬 시스템의 포트 1080에 SOCKS 프록시를 생성합니다.
- 포트 1080에서 SOCKS 프록시를 사용하도록 V2ray 클라이언트를 구성합니다.
- 다음 명령을 사용하여 원하는 포트를 전달하십시오.
ssh -L 8443:remote_machine_ip:remote_port user@remote_machine_ip
이 명령은 로컬 시스템의 포트 8443을 각각 Remote_ip 및 Remote_port에 지정된 원격 시스템의 IP 주소 및 포트 번호로 전달합니다.
socat 사용
socat는 두 엔드포인트 간에 양방향 데이터 스트림을 생성하는 데 사용할 수 있는 명령줄 유틸리티입니다. 이를 사용하여 SOCKS 프록시를 통해 포트를 전달하는 방법은 다음과 같습니다.
- 다음 명령을 사용하여 로컬 시스템의 포트 1080에서 SOCKS 프록시를 시작합니다.
socat TCP-LISTEN:1080,fork SOCKS4A:proxy_ip:remote_machine_ip:remote_port,socksport=1080
이 명령은 로컬 시스템의 포트 1080에서 SOCKS 프록시를 시작하고 수신 트래픽을 Proxy_ip의 SOCKS 프록시를 통해 각각 Remote_ip 및 Remote_port에 지정된 원격 시스템의 IP 주소 및 포트 번호로 전달합니다.
- 포트 1080에서 SOCKS 프록시를 사용하도록 V2ray 클라이언트를 구성합니다.
- 다음 명령을 사용하여 원하는 포트를 전달하십시오.
socat TCP-LISTEN:8443,fork SOCKS4A:proxy_ip:remote_machine_ip:remote_port,socksport=1080
이 명령은 로컬 시스템의 포트 8443을 Proxy_ip의 SOCKS 프록시를 통해 각각 Remote_ip 및 Remote_port에 지정된 원격 시스템의 IP 주소 및 포트 번호로 전달합니다.
두 경우 모두, Remote_machine_ip 및 Remote_port를 각각 원격 시스템의 IP 주소 및 포트 번호로 바꿔야 합니다. 또한 Proxy_ip를 SOCKS 프록시 서버의 IP 주소로 바꿔야 합니다.