한 Ubuntu 서버에서 다른 Ubuntu 서버로 UDP 및 TCP가 포함된 게임 서버(Minecraft) 포트 25565를 전달하려고 합니다. SSH -R 옵션을 사용하면 쉽게 이 작업을 수행할 수 있지만 tcp에서만 작동합니다. udp에서 이 작업을 수행하려면 어떻게 해야 합니까?
답변1
가장 쉬운 방법은 nc
양쪽에 FIFO를 사용하는 것입니다.
ssh -R
먼저 포트 25566에 다른 TCP 터널을 설정하십시오.소스 측: 대상 서버의 UDP 포트 25565를 TCP 포트 25566으로 연결합니다.
mkfifo /some/path/to.fifo
nc -l -p 25566 < /some/path/to.fifo | nc -u target.server.ip 25565 > /some/path/to.fifo
대상 측: TCP 포트 25566을 UDP 포트 25565와 연결
mkfifo /some/path/to.fifo
nc -l -u -p 25565 < /some/path/to.fifo | nc source.server.ip 25566 > /some/path/to.fifo
따라서 UDP 트래픽은 다른 포트의 TCP로 캡슐화되어 다음을 통해 전달됩니다.ssh
ssh -w
두 명의 참가자만으로 SSH를 통해 죽은 간단한 VPN을 만드는 방법을 살펴볼 수도 있습니다 . 그런 다음 tun
가상 장치를 통해 모든 트래픽을 전송할 수 있습니다.